多年來,為了保護人們消息的隱私,WhatsApp默認提供了端到端加密,消息只有發(fā)送者和接收者才能看到,中間沒有人看到?,F(xiàn)在,我們計劃讓人們可以選擇使用端到端加密來保護他們的WhatsApp備份。
人們已經可以通過Google Drive和iCloud等基于云的服務來備份他們的WhatsApp消息歷史記錄。WhatsApp無權訪問這些備份,它們由單獨的基于云的存儲服務保護。
但是現(xiàn)在,如果人們選擇啟用端到端加密(E2EE)備份一旦可用,WhatsApp和備份服務提供商都將無法訪問他們的備份或備份加密密鑰。
E2EE備份的工作原理
生成加密密鑰和密碼
為了啟用E2EE備份,我們開發(fā)了一個全新的加密密鑰存儲系統(tǒng),適用于iOS和Android。啟用E2EE備份后,備份將使用唯一的、隨機生成的加密密鑰進行加密。人們可以選擇手動或使用用戶密碼來保護密鑰。當有人選擇采用密碼,密鑰存儲在基于一種稱為硬件安全模塊(HSM)組件的內置備份密鑰庫-專業(yè),可用于安全存儲加密密鑰的安全硬件。當帳戶所有者需要訪問他們的備份時,他們可以使用他們的加密密鑰訪問它,或者他們可以使用他們的個人密碼從基于HSM的備份密鑰庫中檢索他們的加密密鑰并解密他們的備份。
基于HSM的備份密鑰保管庫將負責強制執(zhí)行密碼驗證嘗試,并在嘗試訪問密鑰失敗的次數(shù)有限后使密鑰永久無法訪問。這些安全措施可防止暴力嘗試檢索密鑰。WhatsApp只會知道HSM中存在一個密鑰。它不會知道密鑰本身。
將密鑰存儲在備份密鑰保管庫中
WhatsApp的前端服務ChatD處理客戶端連接和客戶端-服務器身份驗證,并將實施一個協(xié)議,將密鑰發(fā)送到WhatsApp的服務器和從WhatsApp的服務器發(fā)送的備份??蛻舳撕突贖SM的Backup Key Vault將交換加密消息,ChatD本身無法訪問其內容。
基于HSM的備份密鑰保管庫將位于ChatD之后,并為備份的加密密鑰提供高度可用和安全的存儲。備份本身將作為連續(xù)數(shù)據流生成,并使用生成的密鑰使用對稱加密進行加密。啟用E2EE備份后,在加密后,備份可以存儲在設備之外(例如,存儲到iCloud或Google Drive)。
WhatsApp為超過20億人提供服務,該產品的核心挑戰(zhàn)之一是確?;贖SM的Backup Key Vault可靠運行。為幫助確保系統(tǒng)始終可用,基于HSM的Backup Key Vault服務將在地理上分布在多個數(shù)據中心,以在數(shù)據中心中斷時保持其正常運行。
備份可以使用64位加密密鑰進行端到端加密。
還可以使用密碼保護備份,在這種情況下,加密密鑰將保存到基于HSM的備份密鑰保管庫。
基于HSM的Backup Key Vault和加密解密過程
當帳戶所有者使用個人密碼來保護其端到端加密備份時,基于HSM的備份密鑰保管庫將對其進行存儲和保護。
當有人想要檢索他們的備份時:
1.他們輸入自己的密碼,該密碼經過加密,然后由備份密鑰保管庫進行驗證。
2.驗證密碼后,Backup Key Vault會將加密密鑰發(fā)送回WhatsApp客戶端。
3.有了密鑰,WhatsApp客戶端就可以解密備份。
或者,如果帳戶所有者選擇單獨使用64位密鑰,他們將必須自己手動輸入密鑰以解密和訪問他們的備份。
E2EE備份將在未來幾周內在iOS和Android上可用。