蘋果如何做到“查找離線設備”?
蘋果在iOS 13 和macOS Catalina 中將“查找我的iPhone”和“查找我的Friend”整合到一個叫“查找”的應用程序當中,而且還加入了一個實用性更強的“查找離線設備”功能。
由於使用的是GPS定位技術,以往的“查找我的iPhone ”功能往往會受到很多限制,其中最大的門檻應該是需要網絡的支持,這也導致了“查找我的iPhone”十分容易被“破解” :只要偷走或者撿到你的iPhone的人將手機切換至飛行模式,那麼你將無法通過“查找我的iPhone”來鎖定它的位置。
但在iOS 13 和macOS Catalina 中,新加入的“查找離線設備”不再需要遺失的設備接入網絡也能完成定位,也就是說即使遺失的設備開啟了飛行模式,你依舊有可能從“查找”應用中接受到設備的定位信息。
蘋果在介紹頁面中這樣解釋這一功能:“遺失的設備未連接Wi-Fi 或蜂窩網絡時,也可以使用來自人群的位置信息進行定位。當你將設備標記為遺失,且附近有另一位Apple 用戶的設備,其他設備可以檢測到遺失設備的藍牙信號並向你報告設備位置。”
“查找離線設備”之所以行得通,是因為它將千千萬萬蘋果設備作為“嗅探器”。在“查找”應用中將設備標記為遺失之後,即使這一設備沒有網絡連接甚至處於關機的情況下,也會不斷向外界發出藍牙信號,而一旦被附近的蘋果設備捕獲,這一信號將會被上傳至蘋果服務器並傳回原用戶的設備中,最終達到查找離線設備的目的。
雖然“查找離線設備”彌補了舊功能容易被“破解”的短板,但它的“實現方式”卻難免會讓人產生隱私洩露的擔憂,畢竟含有設備位置信息的藍牙信號要先通過陌生人的蘋果設備和蘋果服務器才會傳到你的手裡。
蘋果在W WD C19宣布“查找離線設備”功能之後,外媒就對針對這一功能可能會涉及到的隱私問題和蘋果進行了交流,而蘋果也解釋了“查找離線設備”功能是如何做到避免洩露隱私,採訪原文中有幾個有趣的信息點值得和大家分享:
1. 要使用“查找離線設備”,使用者除了需要事先在遺失的設備中登入Apple ID,還需要另一台登入同一Apple ID 的蘋果設備。因為當使用者在設備中登入Apple ID 並啟用“查找”之後,蘋果會在設備中生成一把“私鑰”,並通過端到端加密技術存儲到第二台登入同一Apple ID 的設備上,之後每一台擁有“私鑰”的設備會各種產生一系列與“私鑰”對應的“公鑰”,並且這些“公鑰”會定期更換,以確保不會被惡意獲取;
2. 當使用者的設備處於遺失狀態時,這款設備即使處於斷網甚至關機的狀態下,仍然會向外界發出“公鑰”的藍牙信號;而周圍那些接入網絡的蘋果設備一旦捕捉到這個信號,就會將自己的地理位置通過這一“公鑰”加密,並將加密的信息發送到蘋果的服務器,而由於提供地理位置的第三方蘋果設備沒有提供任何可以被識別的個人信息,所以其他人(包括蘋果)自然也無法通過這個“公鑰”來識別它的身份,這也就保證了那些第三方蘋果設備的隱私;
3. 最後,再回到第一步;當使用者在第二台蘋果設備中發出“查找離線設備”的指令之後,第二台蘋果設備會將遺失設備過去一段時間的公鑰加密信息上傳至蘋果服務器作為“識別碼”,此時蘋果會從資料庫中篩選出對應的“公鑰”並傳回,使用者便可以通過第二台設備上的“私鑰”來進行解密(這也是為什麼需要兩台蘋果設備的原因,保證了含有位置信息的’公鑰’只能在你的設備上進行解密),從而獲得離線設備的位置信息。
蘋果新的“查找”功能運用了許多密碼學的原理來保證所有參與者的隱私,將所有蘋果設備從獨立的個體“孤島”結合在一起,最大化了群體“互幫互助”的能力,這在一定程度上也體現了“蘋果生態”的魅力。