Apple aygıtlarında veri koruma
Veri Koruma olan Apple aygıtlarında her dosya, dosyaya özel (veya alana özel) bir anahtarla korunur. NIST AED anahtar paketleme algoritması kullanılarak paketlenen bu anahtar, dosyaya nasıl erişilmek istendiğine bağlı olarak birçok sınıf anahtarından biriyle de paketlenir. Sonra da paketlenmiş dosyaya özel bu anahtar, dosyanın üst verilerinde saklanır.
APFS biçimindeki aygıtlar dosyaların klonlanmasını destekleyebilir (yazarken kopyalama (copy‑on‑write) teknolojisi kullanan sıfır maliyetli kopyalar). Bir dosya klonlandıysa klonun her bir yarısı gelen yazma işlemlerini kabul etmek için yeni bir anahtar alır; böylece yeni veriler yeni anahtarla ortama yazılır. Zaman içinde dosya, her biri farklı anahtarlarla eşlenen çeşitli alanlardan (veya bölümlerden) oluşur hâle gelebilir. Ancak, bir dosyayı oluşturan alanların tümü aynı sınıf anahtarı tarafından korunur.
Bir dosya açıldığında, dosyanın üst verilerinin şifresi, dosya sistemi anahtarıyla çözülür ve paketlenmiş dosyaya özel anahtarla birlikte bu anahtarı hangi sınıfın koruduğuna ilişkin bir açıklama gösterilir. Dosyaya özel (veya alana özel) anahtarın paketi sınıf anahtarıyla açılır ve daha sonra anahtar, dosyayı flaş depolamadan okurken şifresini çözen donanım AES Motoru’na iletilir. Paketlenmiş dosya anahtarının işlenmesi tümüyle Secure Enclave’de gerçekleşir ve dosya anahtarı uygulama işlemcisi tarafından asla doğrudan görülmez. Başlangıçta Secure Enclave, AES Motoru ile bir kısa ömürlü anahtar kararlaştırır. Secure Enclave dosyanın anahtarlarının paketini açtığında, bunlar kısa ömürlü anahtarla tekrar paketlenir ve uygulama işlemcisine geri gönderilir.
Veri disk bölümü dosya sistemindeki tüm dosyaların üst verileri, işletim sistemi ilk kez yüklendiğinde veya aygıt kullanıcı tarafından silindiğinde yaratılan bir rasgele disk bölümü anahtarıyla şifrelenir. Bu anahtar, uzun dönemli depolama için yalnızca Secure Enclave tarafından bilinen bir anahtar paketleme anahtarı ile şifrelenir ve paketlenir. Anahtar paketleme anahtarı, kullanıcının aygıtını her silişinde değişir. A9 (ve daha yeni) SoC’lerde Secure Enclave, silinebilirliği sağlamak ve diğer varlıklarla beraber anahtar paketleme anahtarını da korumak için yeniden göndermeyi önleme sistemleri tarafından desteklenen entropiye güvenir. Daha fazla bilgi için Güvenli kalıcı depolama konusuna bakın.
Dosyaya özel veya alana özel anahtarlarda olduğu gibi, veri disk bölümünün üst veri anahtarı da uygulama işlemcisine asla doğrudan verilmez; Secure Enclave bunun yerine kısa ömürlü, başlatmaya özel bir sürüm sağlar. Şifreli dosya sistemi anahtarı saklanırken Secure Enclave yeniden göndermeyi önleme mekanizması ile korunan Silinebilir Saklama Alanı’nda saklı bir “silinebilir anahtar” ile veya bir ortam anahtarı paketleme anahtarı kullanılarak paketlenir. Bu anahtar, veriye ek gizlilik sağlamaz. Bunun yerine, istendiğinde (kullanıcı tarafından “Tüm İçerikleri ve Ayarları Sil” seçeneği kullanılarak veya kullanıcı ya da yönetici tarafından bir mobil aygıt yönetimi (MDM) çözümünden, Microsoft Exchange ActiveSync’ten ya da iCloud’dan uzaktan silme komutu verilerek) hızla silinecek şekilde tasarlanmıştır. Anahtarın bu şekilde silinmesi, tüm dosyaları şifreyle erişilemez hâle getirir.
Bir dosyanın içeriği bir veya birden fazla dosyaya özel (veya alana özel) anahtarla şifrelenebilir; bu anahtarlar bir sınıf anahtarıyla paketlenmiştir ve dosyanın üst verilerinde saklanır; üst veriler de dosya sistemi anahtarıyla şifrelenmiştir. Sınıf anahtarı, donanım UID’siyle ve bazı sınıflar için kullanıcı parolasıyla korunur. Bu hiyerarşi hem esneklik hem de performans sağlar. Örneğin bir dosyanın sınıfının değiştirilmesi için yalnızca dosyaya özel anahtarının yeniden paketlenmesi gerekir; parola değişikliğinde de sadece sınıf anahtarı yeniden paketlenir.