解決方案
根據 Ars Technica 報導,Signal Messenger 於 2025 年 10 月發表一份技術說明,介紹 Signal 協定進一步的抗量子更新,接續 2023 年 PQXDH 握手變更。該握手可安全抵禦量子攻擊,但乒乓式 Diffie-Hellman 棘輪中的臨時金鑰則不然。Signal 選擇保留這套久經實戰考驗的棘輪,並在其上新增以 ML-KEM-768 建構的第三道棘輪,而非將其移除。
障礙在於大小:X25519 金鑰約 32 位元組,但 ML-KEM 金鑰加上密文合計 2,272 位元組,增幅達 71 倍,而這套協定必須能在不可靠或充滿敵意的網路上非同步運作。若只每 50 則訊息或每週傳送一次金鑰,一旦訊息遺失,或攻擊者丟棄較大的訊息,就會失效。若分成 71 個分塊傳送,只要對手持續丟棄其中一個分塊,同樣會失效。
Signal 的答案是抹除碼:將金鑰拆成多個片段,只需足夠的子集即可重建,藉此容忍封包遺失。KEM 運算也被拆成較小的步驟,讓部分公開金鑰與密文能並行傳送。
達成什麼
將龐大的金鑰拆成以抹除編碼處理的分塊,透過一般訊息傳送,因此即使部分分塊遭丟棄,只要足夠的子集仍在,就能重建金鑰。
為何奏效
保留既有棘輪可維持久經實戰考驗的程式碼,以及對當今古典攻擊者的防護。
抹除編碼意味著只要分塊足夠就能重建金鑰,因此訊息遺失不會使交換停滯。
攻擊者無法藉由丟棄某個特定封包來阻擋金鑰更新,因為沒有任何單一分塊是必需的。
將 KEM 運算拆分可讓工作並行執行,限制效能成本。
可套用之處
當新需求對單一封包而言過於龐大時,應將其拆分,讓容錯能力內建於編碼之中,而非寄望資料流保持完整。
後續發展
一位曾任職微軟的後量子負責人稱此設計是紮實且周延的改良,並指出其可將網路效能影響降至最低的種種最佳化。Ars 的報導將 Signal 描述為例外:當時《財星》500 大企業網路中僅 18% 支援抗量子 TLS,Cloudflare 內部的 TLS 連線支援比例也不到一半。該摘錄並未提供實測效能數據。
追溯依據
參考來源
- Why Signal's post-quantum makeover is an amazing engineering achievement Ars Technica · arstechnica.com ·