技術 · AiThao

端對端加密詳解

端對端加密意味著內容在你的手機上加鎖,只在目標手機上解鎖。下面一步步說明 AiThao 是怎麼做的。

它為你做了什麼

  • 只有對話中的手機能讀取內容;伺服器存儲并投递它無法打開的副本。
  • 一把被盗的金鑰無法解開對話的其餘部分。
  • 通過核對安全碼,你可以確認中間沒有其他人。

如何運作

每台裝置都有自己的金鑰;伺服器只保存公開的那一半,其他手機取用它來開始聊天。第一條訊息通過 Signal 协議的金鑰协商建立共享秘密,此後每條訊息都會推進金鑰(雙棘輪算法),因此某一時刻的金鑰無法打開之前或之後的訊息。

在群組中,每位成員都有一把傳送者金鑰,通過一對一加密工作階段共享;有人加入或退出時,金鑰會被替换。相片、檔案和語音訊息各自用一把新金鑰加密,这把金鑰隨加密訊息一起傳递。

如果對方还沒有金鑰,應用程式會選择不傳送,而不是退回明文。

它止步於何處

翻譯需要讀到文字,所以要翻譯的訊息會在你的手機上解密後傳送給翻譯服務。安全中心列出了端對端加密不适用的每一種情況。

底層技術

Signal 协議 · 雙棘輪算法 · libsignal

常見問題

这和 Signal 用的是同一種加密嗎?

是同一個协議,通過 libsignal 庫實現。AiThao 是一個獨立的應用程式,有自己的伺服器。

什麼是安全碼?

由雙方金鑰計算出的一串代碼。如果你的與對方的一致,你的訊息就只會發往對方的手機。