Tilin palautuksen yhteyshenkilön suojaus
Käyttäjät voivat lisätä jopa viisi luottamaansa henkilöä tilin palautuksen yhteyshenkilöiksi, jotka voivat auttaa käyttäjiä palauttamaan iCloud-tilinsä ja ‑tietonsa, mukaan lukien kaikki päästä päähän salatut tiedot, riippumatta siitä, onko edistyksellinen tietosuojaus käytössä. Sen enempää Applella kuin palautuksen yhteyshenkilölläkään ei yksinään ole tarvittavia tietoja käyttäjän päästä päähän salattujen iCloud-tietojen palauttamiseen.
Palautuksen yhteyshenkilö on suunniteltu käyttäjän yksityisyyttä ajatellen. Käyttäjän valitsemat palautuksen yhteyshenkilöt eivät ole Applen tiedossa. Applen palvelimet saavat tietoa palautuksen yhteyshenkilöstä vasta palautusyrityksen myöhäisessä vaiheessa, kun käyttäjä pyytää yhteyshenkilöltä apua ja yhteyshenkilö aloittaa varsinaisen palautuksessa avustamisen. Tätä tietoa ei säilytetä, kun palautus on valmis.
Palautuksen yhteyshenkilön suojausprosessi
Kun käyttäjä ottaa käyttöön tilin palautuksen yhteyshenkilön, avain, jolla pääsee käyttäjän iCloud-tietoihin (mukaan lukien päästä päähän salatut iCloudKit-tiedot), salataan vahvalla satunnaisella avaimella. Tämä satunnainen avain jaetaan palautuksen yhteyshenkilölle ja Applelle annettaviin osiin. Palautusta tehtäessä alkuperäinen avain saadaan käyttöön ja käyttäjän iCloud-tietoihin päästään ainoastaan, kun nämä kahtia jaetun avaimen osat liitetään takaisin yhteen.
Kun tilin palautuksen yhteyshenkilö otetaan käyttöön, käyttäjän laite viestii Applen palvelimien kanssa lähettääkseen niille Applen haltuun tulevan avaintieto-osan. Sen jälkeen se luo päästä päähän salatun CloudKit-säiliön palautuksen yhteyshenkilön kanssa tämän tarvitseman osan jakamista varten. Sekä Apple että palautuksen yhteyshenkilö saavat lisäksi käyttäjältä saman valtuutussalaisuuden, jota tarvitaan myöhemmin palautukseen. Palautuksen yhteyshenkilöiden kutsumisen ja hyväksymisen tietoliikenne tapahtuu käyttäen molemmin puolin todennettua IDS-kanavaa. Palautuksen yhteyshenkilön vastaanottamat tiedot tallennetaan automaattisesti hänen iCloud-avainnippuunsa. Apple ei pääse CloudKit-säiliön sisältöön eikä myöskään tämän tiedon tallentavaan iCloud-avainnippuun. Kun jakaminen suoritetaan, Applen palvelimet näkevät vain palautuksen yhteyshenkilön anonyymin tunnuksen.
Kun käyttäjän myöhemmin tarvitsee palauttaa tilinsä ja iCloud-tietonsa, hän voi pyytää apua palautuksen yhteyshenkilöltään. Silloin palautuksen yhteyshenkilön laite muodostaa palautuskoodin, jonka palautuksen yhteyshenkilö antaa käyttäjälle ulkoista reittiä pitkin (esimerkiksi kasvokkain tai puhelinsoitolla). Käyttäjä syöttää tämän palautuskoodin laitteeseensa muodostaakseen SPAKE2+-protokollaa käyttäen laitteiden välille suojatun yhteyden, jonka sisältö ei ole Applen käytettävissä. Applen palvelimet koordinoivat tätä vuorovaikutusta, mutta Apple ei voi panna palautusprosessia alulle.
Kun suojattu yhteys on muodostettu ja kaikki vaadittavat turvatarkistukset on tehty, palautuksen yhteyshenkilön laite palauttaa takaisin palautusta pyytävälle käyttäjälle osansa avaintiedosta sekä aikaisemmin luodun valtuutussalaisuuden. Käyttäjä esittää tämän valtuutussalaisuuden Applen palvelimelle, ja se antaa käyttöön Applen säilyttämän avaintiedon. Valtuutussalaisuuden esittämisellä saadaan myös valtuutus tilin salasanan nollaamiseen, jotta pääsy tilille saadaan palautettua.
Lopuksi käyttäjän laite liittää Applelta ja tilin palautuksen yhteyshenkilöltä saadun avaintiedon takaisin yhteen ja käyttää sitten sitä käyttäjän iCloud-tietojen salauksen purkamiseen ja palauttamiseen.
Käytössä on suojauskeinoja, joiden on tarkoitus estää palautuksen yhteyshenkilöä aloittamasta palautusta ilman käyttäjän suostumusta. Yksi keino on käyttäjän tilin toiminnan aktiivisuuden tarkistaminen. Jos tili on aktiivisessa käytössä, palautukseen palautuksen yhteyshenkilön avulla vaaditaan myös laitteen viimeaikaisen pääsykoodin tai iCloud-suojakoodin tietämistä.