XChat 的端對端加密是如何運作的
用白話說明在一款通訊 App 裡,端對端加密實際上代表什麼。
「端對端加密」是那種經常被掛在嘴邊、卻很少被好好解釋的詞。對 XChat 這樣的 App 來說,它實際上是這麼一回事。
你在 XChat 送出一則訊息時,手機上的 App 會在它離開之前先把內容打亂。用來還原的金鑰只存在你和對方的手機裡。訊息經過 X Corp 的伺服器時是加密狀態,伺服器看得到誰寄給誰——這是送達訊息的必要條件——卻看不到訊息本身寫了什麼。
這和「傳輸中加密」不一樣,後者只在訊息穿過網路的那段路上提供保護。也和「靜態加密」不一樣,那是保護存放在伺服器上的資料。端對端加密比這兩者都更嚴密,因為伺服器從頭到尾都拿不到金鑰。
具體來說:就算 X Corp 想讀你的 XChat 訊息——不論是迫於政府壓力、收到傳票,或是任何其他理由——他們也辦不到。密碼學本身就擋住了這件事。唯一能讀到訊息的方式,是實際拿到對話裡其中一支手機。
這裡有個小小的附註。加密保護的是訊息內容,而不是中繼資料:你和誰聯絡、什麼時候聯絡、聯絡得多頻繁。這些資訊是服務得以送達訊息的前提,也是每一款加密通訊軟體都無可避免會留下的痕跡。
如果你用過 Signal 或 WhatsApp,這套模型你會覺得很熟悉。底層的密碼學元件大同小異。