Apple在自家服務引入同態加密(Homomorphic Encryption)技術保護用戶隱私,同時也把該加密技術Swift實例開源出來,讓開發者可以更簡單地在程序中應用同態加密。
同態加密技術可以在不解密的情況下,對加密數據進行計算,也就是計算過程不需要披露數據的原始內容,而且計算結果也是加密的,唯有擁有解密密鑰的一方,才能解密並查看最終結果。同態性是這種加密技術的關鍵,也就是加密數據和解密數據上進行數學運算後,會產生相同的結果,當明文數據執行同態操作結果是A,則對應加密數據經過同一操作後,解密後的結果也會是A。
對開發者來說,客戶端可以將加密的數據發送到伺服器中,伺服器在加密數據上進行操作並回傳結果,而伺服器執行過程中不需解密原始數據,也沒有訪問解密密鑰的權限。這種方法應用在雲計算服務,可進行敏感數據計算並保護用戶數據隱私安全。
傳統私密資訊截取(Private Information Retrieval,PIR)的實例方法,是讓伺服器把整個資料庫發送到客戶端進行本地端處理,如此可以避免伺服器掌握正在查詢的關鍵字,但僅適用於小型且不會頻繁更新的資料庫。
而使用同態加密技術則可擴大應用場景,Apple在自家使用同態加密技術的具體案例之一,是iOS 18的Live Caller ID Lookup功能,該新功能提供來電顯示和垃圾電話過濾服務,Live Caller ID Lookup會使用同態加密發送加密查詢至伺服器,伺服器便會根據電話號碼資訊進行查詢,但是又不會知道請求中具體的電話號碼。
Apple所開源Swift同態加密組件使用了Swift Crypto中高性能低端加密原語,支持伺服器端Swift,並且可使用Benchmark函數庫進行簡單的基準測試。