l Apple gives iOS app developers more time to encrypt communications
itMYti.com < New IT WebNews
Category: news    |    Added: 2016-12-23 09:55:06    |    View: 99

The iOS App Transport Security (ATS) will not become a requirement on Jan. 1, as previously announced

Apple iPhone 5S (1)

The fingerprint reader in the Apple iPhone 5S is integrated into the home button.

Credit: Martyn Williams
"; adDivString = "
" + adString + "
"; IDG.GPT.defineGoogleTagSlot(slotName ,[[320,50],[300,250],[300,50]]); } placementDiff = applyInsert($(this), adDivString); if (DEBUG) { console.log("Just placed an ad and the placementDiff is: " + placementDiff); } placementTarget = cumulativeHeight + placementDiff + INTERMODULE_HEIGHT + AD_HEIGHT_BUFFER; } else if (moduleCounter < articleDRRModuleList.length){ var elementId = "drr-mod-"+moduleCounter; var moduleDivString = "
"; modules.push(elementId); placementDiff = applyInsert($(this), moduleDivString); if (DEBUG) { console.log("Just placed a module and the placementDiff is: " + placementDiff); } placementTarget = cumulativeHeight + placementDiff + INTERMODULE_HEIGHT + MODULE_HEIGHT_BUFFER; moduleCounter++; } loopCounter++; } // Avoid placing elements too soon due to non-large figures inflating the cumulative height if ($(this).is("figure") && !$(this).is("figure.large")) { cumulativeHeight += GRAF_HEIGHT; } else { cumulativeHeight += $(this).height() + GRAF_HEIGHT; } } }); // end $("#drr-container").children().each() // clone Related Stories module to come in after eighth para in article body for mobile breakpoint display var $relatedStories = $('.related-promo-wrapper'); if ($relatedStories.length) { var $relatedStoriesClone = $relatedStories.clone(); $relatedStoriesClone.insertAfter( "#drr-container > p:eq(7)"); } // For mobile only, place ad after second paragraph. if (firstMobileAdHtml) { $(firstMobileAdHtml).insertAfter("#drr-container > p:eq(1)"); } var $insiderPromo = $('.insider-promo-wrapper'); if ($insiderPromo.length) { var $insiderPromoClone = $insiderPromo.clone(); $insiderPromoClone.insertAfter( "#drr-container > p:eq(1)"); } IDG.GPT.trackOmniture(); // Add Right rail module content var placeModule = function( data ) { var placementId = $(data).attr("data-placement-id"); $( "#"+placementId ).html( data ); }; for (i=0; i" + adString + "
"; } /** * @param jqo Original jquery object target * @param divString The div to be inserted. * @return Difference in height between original placement target and final target. * Checks first 6 elements for an allowable placement (600 pixel window). * If none, place element in first location that does not follow a reject element. */ function applyInsert(jqo, divString) { if (DEBUG) { console.log("applyInsert at top and jqo index is: " + jqo.index()); } for (var i=0; i<=6; i++) { $thisElement = jqo.nextAll().andSelf().slice(i, i+1); if (DEBUG) { console.log("Checking first six and i is: " + i + " and this element index is " + $thisElement.index() ); } if ($thisElement.index() < 0) { break; } if (allowPlacement($thisElement)) { return addElement(jqo, $thisElement, divString); } } if (DEBUG) { console.log("No nearby allows so just place in first spot that is not after reject."); } var numElements = jqo.nextAll().length; var startIndex = jqo.index(); for (var i=startIndex; i<=numElements; i++) { var $element = $("#drr-container").children().eq(i); // This element is eligible when not null, not in placement index, and previous element is not reject if ($element != null && (placementIndex == null || placementIndex.indexOf(i) == -1) && !isReject($element.prev())) { return addElement(jqo, $element, divString); } } if (DEBUG) { console.log("Not going to place element: return 0."); } return 0; } /** * @param jqo Original jquery object * @param allowElement Element that is good placement for module/ad * @param divString The div to be inserted before the good element * @return placementHeightDiff Diff in height between original placement target and current target. * * If element is not too close to the end the insert the div before allowable element. * Add element index to placementIndex to keep track of which elements already have placements */ function addElement(jqo, allowElement, divString) { var offset = allowElement.index() - jqo.index(); if (DEBUG) { console.log("addElement: jqo index is " + jqo.index() + " allowElement index is " + allowElement.index()); } if (elementNotNearEnd(allowElement, RIGHT_PIXEL_WINDOW)) { allowElement.before(divString); if (DEBUG) { console.log("addElement: Adding " + allowElement.index() + " to placementIndex."); } placementIndex.push(allowElement.index()); if (offset == 0) { return 0; } else { return getHeightDifference(jqo,allowElement); } } else { if (DEBUG) { console.log("addElement: Near the end so do NOT add."); } return 0; } } function getHeightDifference(jqo,allowElement) { var offset = allowElement.index() - jqo.index(), height = 0, children = null; if (offset > 0) { children = $("#drr-container").children().slice(jqo.index(), allowElement.index()); } else { children = $("#drr-container").children().slice(allowElement.index(), jqo.index()); } if (children != null) { children.each(function(i) { if (DEBUG) { console.log("About to add this element's height to heigh diff offset"); console.log($(this)); } height += $(this).height() + GRAF_HEIGHT; }); } if (offset < 0) { height *= -1; } if (DEBUG) { console.log("getHeightDifference: offset was " + offset + " and height diff is : " + height); } return height; } function allowPlacement(jqo) { if (jqo.prev() != null && isReject(jqo.prev())) { return false; } return true; } function isReject(jqo) { if (jqo != null) { if (jqo.is('h2') || jqo.is('h3') || jqo.is('h4') || jqo.is('h5')) { if (DEBUG) { console.log("isReject: found header"); } return true; } } return false; } // Returns true if height of all elements after this one is more than 500; false otherwise function elementNotNearEnd(element, pixelWindow) { if (pixelWindow === null) { pixelWindow = 500; } if (element === null) { return false; } var remainingHeight = 0, children = $("#drr-container").children().slice(element.index()); if (children === null) { return false; } children.each(function(i){ remainingHeight += $(this).height(); }); if ( remainingHeight > pixelWindow) { return true; } else { if (DEBUG) { console.log("Element too close to end. Remaining height is: " + remainingHeight + " and window is " + pixelWindow); } return false; } } } // end function executeDRRMobile() function executeDRRDesktop() { var heroImgHeight = $('figure.hero-img').outerHeight(true); if (heroImgHeight === null) { heroImgHeight = 0; } var galleryItemHeight = $('figure.thm-gallery').outerHeight(true); if (galleryItemHeight === null) { galleryItemHeight = 0; } var atAglanceTop = $('.at-a-glance.top').height(); if (atAglanceTop === null) { atAglanceTop = 0; } var drrContainerHeight = $('div#drr-container').outerHeight(true); var topIMUheight = $('#topimu').height(); if (topIMUheight === 0) { topIMUheight = 600; } var relatedPromoHeight = $('div.related-promo-wrapper').outerHeight(true); if (relatedPromoHeight === null) { relatedPromoHeight = 0; } var videoHowtoHeight = $('div#video-howto-wrapper').outerHeight(true); if (videoHowtoHeight === null) { videoHowtoHeight = 0; } var teadsInreadHeight = $('div.teads-inread').height(); if (teadsInreadHeight === null) { teadsInreadHeight = 0; } var unrulyAdHeight = $('.unruly_in_article_placement').height(); if (unrulyAdHeight === null) { unrulyAdHeight = 0; } //just in case the in article ads are picked up... var collapsibleAdHeight = unrulyAdHeight + teadsInreadHeight; var workingRRheight = ( (heroImgHeight + galleryItemHeight + atAglanceTop + drrContainerHeight) - (topIMUheight + relatedPromoHeight + videoHowtoHeight) ); workingRRheight = workingRRheight - collapsibleAdHeight; var DEBUG = false; if (DEBUG) { console.log('-----working RR height = ' + workingRRheight); } var articleDRRModuleList = ["dealposts","products.latest-reviews"], moduleUrls = [], modules = [], moduleCounter = 0, loopCounter = 0; var adPositions = new Array(0,1,3); // IMU, IMU, module, IMU, module if (false) { var dealpostsIdx = articleDRRModuleList.indexOf("dealposts"); if (dealpostsIdx > -1) { articleDRRModuleList.splice(dealpostsIdx, 1); adPositions = [0, 1, 2]; } } for (var i=0; i 650) { numItems = 1; } if (workingRRheight > 1350) { numItems = 2; } if (workingRRheight > 2300) { numItems = 3; } if (workingRRheight > 2950) { numItems = 4; } if (workingRRheight > 3650) { numItems = 5; } for (var currIndex=0;currIndex
"; adDivString = "
" + adString + "
"; IDG.GPT.defineGoogleTagSlot(slotName ,[[320,50],[300,250],[300,50]]); } //$('#drr-container > p').first().before(adDivString); //$('#drr-top-ad').append(adDivString); $(adDivString).appendTo('#drr-top-ad'); if (DEBUG) { console.log("-----Just placed an AD currIndex = " + currIndex); } } else if (moduleCounter < articleDRRModuleList.length){ var elementId = "drr-mod-"+moduleCounter; var moduleDivString = "
"; modules.push(elementId); //$('#drr-container > p').first().before(moduleDivString); $('#drr-top-ad').append(moduleDivString); if (DEBUG) { console.log("-----Just placed a MODULE and currIndex = " + currIndex); } moduleCounter++; } } //end for loop IDG.GPT.trackOmniture(); // Add Right rail module content var placeModule = function( data ) { var placementId = $(data).attr("data-placement-id"); $( "#"+placementId ).html( data ); }; for (i=0; i" + adString + "
"; } } // end function executeDRRDesktop()

Apple has backtracked on a plan to force iOS developers to encrypt their app communications by the end of the year.

The company had previously announced at its Worldwide Developers’ Conference in June that all apps submitted to the App Store will need support the App Transport Security (ATS) feature starting January 1st, 2017. It has not yet set a new deadline.

ATS is a feature first introduced in iOS 9 that forces apps to communicate with internet servers using encrypted HTTPS (HTTP over SSL/TLS) connections. It’s an improvement over the third-party frameworks that developers previously used to implement HTTPS because it ensures that only industry-standard encryption protocols and ciphers are used.

Even if ATS is enabled by default in iOS, on a technical level app developers can disable some of its features or can opt out of it entirely through various exception settings that ATS makes available.

A recent study performed by security firm Appthority on the top 200 apps present on iOS enterprise devices showed that 97 percent of them bypassed at least some ATS requirements and weakened the default and recommended configuration.

Apple planned to include ATS compliance as a requirement in its App Store review process starting next year and to require reasonable justifications for any exceptions. However, as the Appthority study showed, many developers are unprepared to fully enable ATS in their apps.

“At WWDC 2016 we announced that apps submitted to the App Store will be required to support ATS at the end of the year,” Apple said in an announcement on its developer site Wednesday. “To give you additional time to prepare, this deadline has been extended and we will provide another update when a new deadline is confirmed.”

There are many reasons why developers might not be ready or even able to encrypt all of their apps’ traffic. For example, many apps integrate with third-party advertising, analytics and media hosting services and the adoption of HTTPS by those services is not something that app developers can control.

As of December 22, the 3 percent ATS readiness figure among iOS apps had grown to only 5 percent, the Appthority researchers said Thursday in a blog post. “We assume that Apple, too, realized that an unacceptably high number of apps would fail to meet the ATS deadline unless it was extended.”

The researchers believe that even if Apple hasn’t abandoned its plans for full ATS compliance, this is not something that can be achieved very soon, which is probably why a new deadline hasn’t been announced yet.

“In light of this new development, we recommend that enterprises track the state of apps’ ATS compliance and consider alternatives to apps that access sensitive corporate data and don’t secure their network connections using ATS,” they said.

To comment on this article and other PCWorld content, visit our Facebook page or our Twitter feed.
Shop Tech Products at Amazon
Notice to our Readers
We're now using social media to take your comments and feedback. Learn more about this here.
source: Pcworld

Category: news    |    32 seconds ago    |    View: 0

Samsung says the HBM2E, called Flashbolt, can reach 3.2 Gbps per pin. Not only is it faster than its predecessor, but it also doubles the density to 16 gigabits per die and comes in stacks of eight. That equals a&hellip;

Category: news    |    11 hours ago    |    View: 143

Epic's approach to taking on Steam has been a controversial one, but that hasn't stopped the company so far.

Category: news    |    12 hours ago    |    View: 2

During the company's GDC 2019 presentation, Epic claimed that Metro Exodus sold 2.5 times better on the Epic Games Store than its predecessor, Metro: Last Light, did on Steam.

Category: news    |    13 hours ago    |    View: 15

There are currently six pages worth of listings for Lucasfilm games on the Disney jobs board. It appears it is looking for a full staff from producers on down. Positions indicate it will be releasing games on various platforms including&hellip;

Category: news    |    14 hours ago    |    View: 79

Nintendo as part of its Nindies Showcase Spring 2019 video on Wednesday announced a new game based on its popular Legend of Zelda franchise.

Category: news    |    15 hours ago    |    View: 3

It’s called the “MegaGrant program” and is actually an expansion of its earlier, smaller-scale grant initiative that it began in 2015. Epic CEO Tim Sweeney said that it was his way of giving back to the community for the overwhelming&hellip;

Category: news    |    16 hours ago    |    View: 5

Oculus at the Game Developers Conference on Wednesday unveiled the next generation of its Rift virtual reality headset, the Oculus Rift S.

Category: news    |    17 hours ago    |    View: 56

Amazon has announced a new base model Kindle which features a front light, the first time the illumination technology has ever been implemented in an entry-level reader from the company.

Category: news    |    17 hours ago    |    View: 1

Konami in celebration of its 50th birthday has announced a new anniversary collection series that bundles together many of its iconic arcade and console classics for modern platforms.

Category: news    |    18 hours ago    |    View: 63

Following the announcement of its two new iPads and an update to the iMac, Apple has debuted the latest generation of AirPods. They feature the new H1 chip, which brings several improvements.




Download Latest PC Softwares

Category:     |    Added: 11 minutes ago    |    View: 0
MeldaProduction - MAudioPlugins 2019 VST Free Download - downloadwise.com

MeldaProduction - MAudioPlugins 2019 VST Free Download. Offline installer standalone setup of MeldaProduction - MAudioPlugins 2019 12.12.

MeldaProduction – MAudioPlugins 2019 VST is an imposing collection of effects, instruments as well as utilities that can improve capabilities of your digital audio workstation. Creating high quality music involves numerous different steps and it requires involvement several professionals for every stage of operation. Audio plugins makes this job simple and easy and add various interesting features to your digital audio workstation. You can also download LUXONIX Ravity VST Bundle.

Category:     |    Added: 11 minutes ago    |    View: 0
Native instruments Session Horns KONTAKT Library Download - downloadwise.com

Native instruments Session Horns KONTAKT Library Download. It is full offline installer standalone setup of Native instruments Session Horns.

Native instruments Session Horns KONTAKT Library is an imposing application for enhancing your sounds. This is a versatile and a playable horn section that will quickly perk up your productions. The trombone, tenor sax as well as two trumpets have been sampled to perfection and it deliver rich and authentic sound which is playable by anyone. You can also download Native Instruments Discovery Series Middle East KONTAKT Library.

Category:     |    Added: 1 hour ago    |    View: 0
MeldaProduction - MAudioPlugins 2019 VST Free Download - downloadwise.com

MeldaProduction - MAudioPlugins 2019 VST Free Download. Offline installer standalone setup of MeldaProduction - MAudioPlugins 2019 12.12.

MeldaProduction – MAudioPlugins 2019 VST is an imposing collection of effects, instruments as well as utilities that can improve capabilities of your digital audio workstation. Creating high quality music involves numerous different steps and it requires involvement several professionals for every stage of operation. Audio plugins makes this job simple and easy and add various interesting features to your digital audio workstation. You can also download LUXONIX Ravity VST Bundle.

Category:     |    Added: 1 hour ago    |    View: 0
Native instruments Session Horns KONTAKT Library Download - downloadwise.com

Native instruments Session Horns KONTAKT Library Download. It is full offline installer standalone setup of Native instruments Session Horns.

Native instruments Session Horns KONTAKT Library is an imposing application for enhancing your sounds. This is a versatile and a playable horn section that will quickly perk up your productions. The trombone, tenor sax as well as two trumpets have been sampled to perfection and it deliver rich and authentic sound which is playable by anyone. You can also download Native Instruments Discovery Series Middle East KONTAKT Library.

Category:     |    Added: 2 hours ago    |    View: 0
MeldaProduction - MAudioPlugins 2019 VST Free Download - downloadwise.com

MeldaProduction - MAudioPlugins 2019 VST Free Download. Offline installer standalone setup of MeldaProduction - MAudioPlugins 2019 12.12.

MeldaProduction – MAudioPlugins 2019 VST is an imposing collection of effects, instruments as well as utilities that can improve capabilities of your digital audio workstation. Creating high quality music involves numerous different steps and it requires involvement several professionals for every stage of operation. Audio plugins makes this job simple and easy and add various interesting features to your digital audio workstation. You can also download LUXONIX Ravity VST Bundle.

Category:     |    Added: 2 hours ago    |    View: 0
Native instruments Session Horns KONTAKT Library Download - downloadwise.com

Native instruments Session Horns KONTAKT Library Download. It is full offline installer standalone setup of Native instruments Session Horns.

Native instruments Session Horns KONTAKT Library is an imposing application for enhancing your sounds. This is a versatile and a playable horn section that will quickly perk up your productions. The trombone, tenor sax as well as two trumpets have been sampled to perfection and it deliver rich and authentic sound which is playable by anyone. You can also download Native Instruments Discovery Series Middle East KONTAKT Library.

Category:     |    Added: 3 hours ago    |    View: 0
MeldaProduction - MAudioPlugins 2019 VST Free Download - downloadwise.com

MeldaProduction - MAudioPlugins 2019 VST Free Download. Offline installer standalone setup of MeldaProduction - MAudioPlugins 2019 12.12.

MeldaProduction – MAudioPlugins 2019 VST is an imposing collection of effects, instruments as well as utilities that can improve capabilities of your digital audio workstation. Creating high quality music involves numerous different steps and it requires involvement several professionals for every stage of operation. Audio plugins makes this job simple and easy and add various interesting features to your digital audio workstation. You can also download LUXONIX Ravity VST Bundle.