iCloudin salaus
Tietojen salaus iCloudissa on tiiviisti sidoksissa tietojen tallennusmalliin. Se alkaa CloudKit-sovelluskehyksistä ja rajapinnoista, jotka mahdollistavat apeille ja järjestelmäohjelmistoille tietojen tallentamisen iCloudiin käyttäjän puolesta ja pitävät kaiken ajan tasalla eri laitteissa ja verkossa.
CloudKitin salaus
CloudKit on sovelluskehys, joka mahdollistaa appikehittäjille avainarvodatan, rakenteisen datan ja resurssien (suuren datan, joka tallennetaan erillään tietokannasta, kuten kuvat ja videot) tallentamisen iCloudiin. CloudKit tukee sekä julkisia että yksityisiä tietokantoja säiliöihin ryhmiteltyinä. Julkiset tietokannat ovat yleisesti jaettuja ja niitä käytetään tyypillisesti yleisluontoisille resursseille eikä niitä salata. Yksityisiin tietokantoihin tallennetaan kunkin käyttäjän iCloud-tiedot.
CloudKit käyttää avainhierarkiaa, joka vastaa tietojen rakennetta. Kunkin säiliön yksityinen tietokanta on suojattu avainhierarkialla, jonka juuri on epäsymmetrinen avain nimeltä CloudKit-palveluavain. Nämä avaimet ovat erilaiset jokaiselle iCloud-käyttäjälle, ja ne muodostetaan käyttäjän luotetussa laitteessa. Kun tietoja kirjoitetaan CloudKitiin, kaikki tietueavaimet muodostetaan käyttäjän luotetussa laitteessa ja salataan asiaankuuluvalla avainhierarkialla ennen minkään tietojen lataamista palvelimelle.
Monissa Applen palveluissa, jotka on lueteltu Applen tukiartikkelissa iCloudin suojauksen yleiskatsaus, käytetään päästä päähän ‑salausta ja CloudKit-palveluavainta, joka on suojattu samalla tavoin kuin iCloud-avainnpun synkronointi. Näitä CloudKit-säiliöitä varten palveluavaimet ovat saatavilla vain käyttäjän luotetuilla laitteilla, eikä Apple tai kukaan kolmas osapuoli voi käyttää niitä. Nämä avaimet synkronoidaan käyttäjän laitteiden kesken, vaikka käyttäjä päättää olla käyttämättä iCloud-avainnippua salasanojensa, pääsyavaintensa ja muiden käyttäjätietojen synkronointiin. Mikäli laite katoaa, käyttäjä voi palauttaa iCloud-avainnipun tiedot käyttämällä iCloud-avainnipun suojattua palautusta, tilin palautuksen yhteyshenkilöitä tai tilin palautusavainta.
Salausavainten hallinta
CloudKitin salattujen tietojen suojaus perustuu vastaavien salausavainten suojaukseen. CloudKit-palveluavaimet jaetaan kahteen kategoriaan: päästä päähän salattuihin ja todennuksen jälkeen saatavilla oleviin.
Päästä päähän salatut palveluavaimet: Päästä päähän salattuihin iCloud-palveluihin tarvittavat CloudKit-palvelun yksityiset avaimet eivät koskaan ole Applen palvelinten saatavilla. Palveluavainparit, jotka sisältävät yksityiset avaimet, luodaan paikallisesti käyttäjän luotetussa laitteessa ja siirretään käyttäjän muihin laitteisiin käyttäen iCloud-avainnipun suojausta. Vaikka Applen palvelimet toimivat välittäjinä iCloud-avainnipun palautuksessa ja synkronoinnissa, pääsy käyttäjän avainnipputietoihin on estetty näiltä palvelimilta salauksen avulla. Siinä pahimmassa tapauksessa, että käyttäjä menettää keinonsa käyttää iCloud-avainnippua ja kaikkia sen palautusmekanismeja, myös päästä päähän salatut tiedot CloudKitissä menetetään. Apple ei voi auttaa palauttamaan näitä tietoja.
Todennuksen jälkeen saatavilla olevat palveluavaimet: Muiden palveluiden, kuten Kuvien ja iCloud Driven, palveluavaimet tallennetaan iCloudin laitteiston suojausmoduuleihin Applen datakeskuksissa, ja jotkin Applen palvelut voivat käyttää niitä. Kun käyttäjä kirjautuu iCloudiin uudella laitteella ja suorittaa todennuksen Apple ID:llään, Applen palvelimet voivat käyttää näitä avaimia ilman, että käyttäjältä tarvitaan enää muita toimia. Esimerkiksi kun käyttäjä on kirjautunut iCloud.comiin, hän voi saman tien katsella kuviaan verkossa. Tällaiset palveluavaimet ovat todennuksen jälkeen saatavilla olevia avaimia.