淺談端到端加密的優點與缺點

近年不少通訊服務都宣稱採用了端到端加密 (end-to-end encryption),包括全球有大量用戶的 Whatsapp 和 Zoom 在內,而當中的優點與缺點,以下將會逐一簡單地講解。

甚麼是端到端加密及其替代品
端到端加密是把計息在發送的裝置內加密,然後只有其發送的目標接收裝置能夠解密,訊息自發出到接收都在已加密的狀態。

至於替代品,其中一種是直接的文字傳輸 (clear text),完全沒有對訊息進行加密,也是最不安全的選項。例如 SMS 傳輸的資料便沒有加密,意味著理論上所有人都能截取訊息,幸好在實際情況下,截取 SMS 需要特別的儀器,某程度上限制了人截取文字訊息。

另一個選項是傳輸中加密 (encryption-in-transit),即是訊息自發送者裝置加密,傳送到伺服器解密,然後再加密並發送到接收者裝置進行解密,傳輸中加密顧名思義在傳輸時保護訊息,但過程中牽涉到中間人「伺服器」能讀取內容,這視符服務供應商的信用,有可能引起問題。

同時,傳輸中加密在通訊中牽涉伺服器,這樣容許單純傳輸資料以外更多的服務,例如伺服器能儲存舊訊息、連接使用其他渠道的人士參與對話 (例如使用手機參加視像會議) 和自動審核等等。傳輸中加密雖然解決最重要的問題,攔截從用戶到伺服器和從伺服器到用戶的資料,這也是訊息傳送中最危險的部份,所以並非所有服務都採用端到端加密,對用戶而言,方便和額加服務比資料安全可能更加重要。

端到端加密的作用
端到端加密的最大優點是它限制了除接收人以外進行資料傳輸,就像把一封寄出的信放在一個物理上無法打開的盒子內 (不論使用甚麼工具),除了收信人以外,端到端加密確保了用者的通訊私隱。

然而在物理世界中並不可能製作一個無法破壞的盒,但在資訊的世界內卻有可能,頂尖的數學加持續開發新加密系統和為舊系統提高強度。端到端加密訊息無法被收件人以外解密的另一個好處,是沒有人人能夠更改訊息,在現代的加密方法內如果某人更改已加密的資料,訊息在解密時便會亂碼,收件人立即可以清楚地發現,由於無法對加密訊息進行可預測的更改,那就無法替代當中的文字。

這種方法確保了訊息的真確性,如果你接收到成功解密的訊息,便可肯定訊息與發出時相同,在傳輸中沒有被篡改 (這步驟通訊軟件會自動替使用者執行)。

端到端加密「不」保護的地方
可能有人會覺得端到端加密是最理想的方案,然而它其實存在限制,首先,雖然端到端加密能讓用戶隱藏訊息的內容,但用戶傳送訊息給某人 (可複數) 的行為便變得明顯,儘管伺服器無法讀取訊息,但它絕對知道用戶在某時某日曾與某人通訊。

第二,如果某人能存取你用作通訊的裝置,他便能讀取你所有訊息,同時也能夠以你的身份發出訊息,所以保護端到端加密需要防護裝置和應用程式存取 (即使只有密碼也好),並小心避免裝置落入他人手中。因此,在裝置安裝防毒軟件也同樣重要,智能手機的惡意程式能讀取裝置上的訊息,就像真人物理上取得你的手機一樣,這一點不論是哪一種加密的方式都一樣。

最後是即使用戶完美地保護自己的裝置,並且知道無人能從你的裝置存取訊息,但對收訊息者的裝置也存在不確定因素,端到端加密在這方面並沒有幫助。

儘管有以上的限制,端到端加密仍然是現時傳送機制資料最安全的方式,所以有不少未採用的通訊服務供應,正陸續改為採用端到端加密技術。