
Tietojen suojauksen yleiskatsaus
Apple käyttää teknologiaa nimeltä Tietojen suojaus, jolla suojataan flash-muistiin tallennettuja tietoja Applen järjestelmäpiirin sisältävissä laitteissa, kuten iPhonessa, iPadissa, Applen sirulla varustetussa Macissa, Apple TV:ssä, Apple Watchissa ja Apple Vision Prossa. Tietojen suojauksen ansiosta laite voi reagoida yleisiin tapahtumiin, kuten saapuviin puheluihin, mutta samalla käyttäjätiedot voidaan salata korkeatasoisesti. Tietyt järjestelmäapit (kuten Viestit, Mail, Kalenteri, Yhteystiedot ja Kuvat) sekä Terveys-apin data-arvot käyttävät oletuksena Tietojen suojausta. Muiden valmistajien apit saavat tämän suojauksen automaattisesti.
Toteutus
Tietojen suojaus toteutetaan luomalla ja hallitsemalla avainhierarkiaa. Se perustuu laitteiston salausteknologioihin, jotka on sisäänrakennettu Applen laitteisiin. Tietojen suojausta hallitaan tiedostokohtaisesti määrittämällä jokaiselle tiedostolle luokka. Saatavuus määritetään sillä perusteella, onko luokka-avaimet avattu. APFS:n (Apple File System) ansiosta tiedostojärjestelmä voi jakaa avaimet alakategorioihin tilakohtaisesti (tiedoston osioilla voi olla eri avaimet).
Aina, kun datataltioon luodaan tiedosto, tietojen suojaus luo uuden 256-bittisen avaimen (tiedostokohtainen avain) ja antaa sen laitteiston AES-komponentille, joka salaa tiedoston tällä avaimella, kun se kirjoitetaan flash-muistiin. A14–A18- sekä M1–M4-laitteissa salaus käyttää AES-256:ta XTS-tilassa. Siinä 256-bittiseen tiedostokohtaiseen avaimeen käytetään avaimen derivointifunktiota (NIST Special Publication 800-108), jotta saadaan 256-bittinen tweak-avain ja 256-bittinen salausavain. A9–A13- sekä S5–S9-laitteissa salaus käyttää AES-128:aa XTS-tilassa. Siinä 256-bittinen tiedostokohtainen avain jaetaan, jotta saadaan 128-bittinen tweak-avain ja 128-bittinen salausavain.
Applen sirulla varustetussa Macissa tietojen suojauksen oletusluokka on C (katso Tietojen suojausluokat), mutta se käyttää tilakohtaisen tai tiedostokohtaisen avaimen sijaan taltioavainta. Tämä luo käyttäjätiedoille käytännössä FileVaultin suojausmallin. Käyttäjien täytyy silti edelleen valita FileVault käyttöön, jotta he saavat täyden suojauksen, jossa salausavainhierarkia sidotaan heidän salasanaansa. Kehittäjät voivat myös valita korkeamman suojausluokan, joka käyttää tiedosto- tai tilakohtaista avainta.