Bul güvenliği
Apple aygıtları için Bul uygulaması, ileri düzey açık anahtar şifreleme temelleri üzerine kurulmuştur.
Genel Bakış
Bul uygulaması; iOS’te, iPadOS’te ve macOS’te iPhone’umu Bul ve Arkadaşlarımı Bul uygulamalarını tek bir uygulamada birleştirir. Bul, kullanıcıların kayıp bir aygıtı hatta çevrimdışı bir Mac’i bulmasına yardımcı olabilir. Çevrimiçi bir aygıt, konumunu kullanıcıya iCloud yoluyla kolayca bildirebilir. Bul, kayıp aygıttan yakındaki diğer Apple aygıtları tarafından saptanabilecek kısa mesafeli Bluetooth sinyalleri göndererek çevrimdışı çalışır. Daha sonra bu yakındaki aygıtlar kayıp aygıtın saptanan konumunu iCloud’a aktarır, böylece kullanıcılar aygıtın yerini Bul uygulamasında görebilir. Bu işlemler, sürece dahil olan tüm kullanıcıların gizliliği ve güvenliği korunarak gerçekleştirilir. Bul, çevrimdışı ve uyku durumunda olan bir Mac’le bile çalışır.
Kullanıcı, Bluetooth’u ve dünya çapında kullanılan yüz milyonlarca iOS, iPadOS ve macOS aygıtını kullanarak kayıp aygıtını (aygıt bir Wi-Fi ağına veya hücresel ağa bağlanamıyor bile olsa) bulabilir. Bul ayarlarında “çevrimdışı bulma”nın etkin olduğu herhangi bir iOS, iPadOS veya macOS aygıtı “bulucu aygıt” olarak davranabilir. Bu, aygıtın Bluetooth kullanarak başka bir kayıp çevrimdışı aygıtın varlığını saptayabileceği ve daha sonra ağ bağlantısını kullanarak yaklaşık konumu aygıtın sahibine bildirebileceği anlamına gelir. Aygıtta çevrimdışı bulma etkinse kendisi de diğer katılımcılar tarafından aynı şekilde bulunabilir demektir. Bu etkileşimin tamamı uçtan uca şifrelenir, anonimdir ve pil ve veri açısından verimli olacak şekilde tasarlanmıştır. Pil ömrü ve hücresel veri planı kullanımı üzerinde minimum etkisi vardır ve kullanıcı gizliliği daha iyi korunur.
Not: Bul, bazı ülkelerde veya bölgelerde kullanılamayabilir.
Uçtan uca şifreleme
Bul, ileri düzey açık anahtar şifreleme temelleri üzerine kurulmuştur. Bul ayarlarında çevrimdışı bulma etkinleştirildiğinde, {d,P} şeklinde (d gizli anahtar, P ise açık anahtardır) bir eliptik eğri (EC) P-224 gizli şifreleme anahtarı çifti doğrudan aygıtta oluşturulur. Ayrıca 256 bitlik bir sır SK0 ve bir sayaç i sıfırlanır. Bu gizli anahtar çifti ve sır asla Apple’a gönderilmez ve yalnızca kullanıcının diğer aygıtları arasında iCloud Anahtar Zinciri kullanılarak uçtan uca şifreli bir şekilde eşzamanlanır. Sır ve sayaç, aşağıdaki tekrarlamalı yapıyla şu anki simetrik anahtar SKi’sini türetmek için kullanılır: SKi = KDF(SKi-1, “update”).
Skii anahtarı baz alınarak, iki büyük tam sayı olan ui ve vi, (ui,vi) = KDF(SKi, “diversify”) ile hesaplanır. Sonra, hem d olarak gösterilen P-224 gizli anahtarı hem de P denilen ilgili açık anahtar, kısa ömürlü bir anahtar çifti hesaplamak üzere iki tam sayının da bulunduğu bir Afin bağıntısı kullanılarak türetilir: Türetilen gizli anahtar di şu formülle hesaplanır: di = ui * d + vi (P-224 eğrisinin derecesinin modu) ve ilgili açık kısmı Pi’dir ve şunu doğrular: Pi = ui*P + vi*G.
Bir aygıt kaybolursa ve Wi-Fi ağına veya hücresel ağa bağlanamazsa (örneğin bir MacBook Pro parktaki bir bankta bırakılırsa) bu türetilen Pi açık anahtarını bir Bluetooth verisinde sınırlı bir süre için düzenli aralıklarla yayımlamaya başlar. P-224 kullanıldığında açık anahtar gösterimi tek bir Bluetooth verisine sığabilir. Çevredeki aygıtlar da aygıtın konumunu açık anahtara şifreleyerek çevrimdışı aygıtın bulunmasına yardımcı olabilir. Kullanıcının kalıcı bir tanıtıcıyla takip edilememesi için yaklaşık her 15 dakikada bir açık anahtar, artırılmış sayaç değeri ve yukarıdaki işlem kullanılarak yenisiyle değiştirilir. Türetme mekanizması, çeşitli Pi açık anahtarlarının aynı aygıtla bağlantılı olmasını engellemek için tasarlanmıştır.
Kullanıcıların ve aygıtların adını gizli tutma
Konum bilgilerinin ve diğer verilerin tamamen şifrelendiğinden emin olmanın yanı sıra katılımcıların kimlikleri de hem birbirlerinden hem de Apple’dan gizli kalır. Bulucu aygıtlar tarafından Apple’a gönderilen trafiğin ne başlıklarında ne de içeriğinde kimlik doğrulama bilgisi bulunmaz. Sonuç olarak Apple, bulucunun kim olduğunu veya kimin aygıtının bulunduğunu bilmez. Dahası Apple, bulucunun kimliğini ortaya çıkaracak herhangi bir günlük bilgisi tutmaz ve herhangi birinin bulucu ile aygıtın sahibini ilişkilendirmesini sağlayacak herhangi bir bilgi bulundurmaz. Aygıtın sahibi, aygıtı kimin bulduğuna dair herhangi bir bilgi olmadan yalnızca şifresi çözülüp Bul uygulamasında görüntülenen şifreli konum bilgilerini alır.