Prime-Field PINI 論文閱讀分析:很多 PQC 硬體真正缺的,不是再多一層 masking,而是別讓前一段風險活過中間那條線

論文基本資訊

  • 論文標題:Prime-Field PINI: Machine-Checked Composition Theorems for Post-Quantum NTT Masking
  • 作者:Ray Iskander、Khaled Kirah
  • 年份:2026
  • 來源:arXiv:2604.25878
  • 論文連結:https://arxiv.org/abs/2604.25878
  • DOI:10.48550/arXiv.2604.25878
  • 主題:Post-Quantum Cryptography、NTT Masking、Formal Verification、Side-Channel Security、Hardware Security、Lean 4

如果前一篇關於 masked Barrett reduction 講的是「某個危險核心最多會漏到哪裡」,那這篇 Prime-Field PINI 往前再推一步,真正回答的是另一個更工程、也更要命的問題:

很多 PQC 硬體真正缺的,不是知道單一模組有沒有 masking,而是知道兩段遮罩電路接起來時,中間那根線會不會把前面辛苦做的安全全吐回去。

這就是這篇 paper 的價值。它不是再多做一個 side-channel attack demo,也不是只對某顆晶片說「這裡有洞」。作者要補的是更底層的基礎設施:在 prime-field arithmetic masking 這條線上,組合安全到底能不能像 Boolean masking 世界那樣,被正式、可機器驗證地講清楚。

它要補的洞很明確:Boolean 世界有 composition theory,PQC arithmetic 世界還沒有

Boolean masking 那邊,大家比較熟悉 NI、SNI、PINI 這些可組合性語言。你可以說一個 gadget 滿足某種性質,然後再問它和下一段接起來還剩多少安全邊界。

但到了 NTT-based PQC 常見的 prime-field arithmetic masking,事情就沒這麼舒服。你還是會做 masking、還是會做 staged pipeline、還是會在 reduction / butterfly / bridge 之間傳資料;可是:

  • 缺少對應的 prime-field composition 理論
  • 缺少 machine-checked theorem 來支撐這種理論
  • 因此很難正式回答「fresh masking 到底把前一段的風險洗掉多少」

而這不是抽象學術潔癖。對硬體安全來說,很多真實事故都不是單一 gadget 當場爆炸,而是每一段看起來都還好,結果一接起來,中間態反而變成最穩定的漏點。

這篇的核心 insight:fresh inter-stage masking 不是小修飾,而是 composition 的分水嶺

這篇最值得記住的觀念只有一句,但非常硬:

如果兩段 PF-PINI gadget 中間有 fresh random mask,前一段留下來的 multiplicity 可以被「重洗」掉;沒有 fresh mask,就不能假裝前一段的風險已經過去。

作者把這件事 formalize 成 prime-field 版本的 composition theorem。摘要裡講得很直接:對兩個參數分別為 k1k2 的 PF-PINI gadget,只要兩段中間重新加上一個 fresh random mask,組合後的兩階段 pipeline 會滿足 PF-PINI(k2)

這個結論的安全意義非常大,因為它等於在說:

  • 前一段不是完全不重要
  • 但若你在段間真的做了 fresh masking,前一段 multiplicity 不必一路背到輸出端
  • composition 的最終邊界可以由後段性質主導,而不是被前段歷史拖死

白話講,就是「重遮罩」不是儀式感,而是你能不能把風險在 pipeline 裡局部化的關鍵動作。

反過來更重要:沒有 fresh masking 時,中間線路本身就成了必要漏點條件

作者也沒有只講好消息。這篇另一半更重要的結論是:若沒有 fresh inter-stage masking,中間 wires 的 multiplicity 最多可達到 k1。也就是說,前段風險不但沒有消失,還會直接停在中繼狀態裡,成為 differential power analysis 的必要條件。

我很喜歡這種寫法,因為它沒有假裝 theorem 只用來證明安全,反而拿來說明「哪種省成本工程習慣會把整條線變成可攻擊條件」。

很多 implementation 團隊容易掉進一個錯覺:既然每一段 gadget 單看都做了 masking,中間過一下應該沒差。但這篇 paper 幾乎就是在打這種心態的臉:你省掉的如果是 fresh mask,省掉的可能不是面積,而是整條 composition guarantee。

Lean 4 在這篇裡不是點綴,是作者要你拿來當證據的東西

摘要還有一個很硬的訊號:作者把兩個 theorem 都 formalize 進 Lean 4,而且是 18 個 machine-checked proofs、zero sorry stubs

這代表兩件事:

  • 這不是 paper prose 說「我們相信這應該成立」
  • 而是作者真的把 prime-field arithmetic masking 的 composition reasoning 壓進 proof assistant 裡,讓關鍵步驟可檢查、可重放、可審計

對 PQC implementation assurance 來說,這很重要。因為 future-proof 的問題從來不是「這版看起來行不行」,而是當標準、參數、電路變體、bridge 設計都在演進時,你有沒有一種不靠口頭保證的安全語言能跟著搬過去。

它和前面 Adams Bridge / Barrett reduction 那些坑,其實接得非常漂亮

如果你前面有跟到作者那串工作,這篇最好看的地方是它不是平地冒出來的新名詞,而是直接把舊洞收進理論裡。作者明講:他們把 algebraic model 和 hardware-faithful Barrett reduction model 接起來,並用 theorem 重新診斷 Microsoft Adams Bridge PQC accelerator 為什麼會出事。

答案也很乾脆:缺少 fresh inter-stage masking。

這讓前面那些「實驗上看到有 leakage」的結論,現在不只是 observation,而變成可以被 formal composition language 描述的結構性缺陷。這很珍貴,因為:

  • 它把漏洞從個案提升成設計規律
  • 它讓 review 的焦點從「哪一條 trace 看起來怪」轉成「哪個 composition assumption 沒成立」
  • 它把 failure explanation 變成可重用的工程檢查表

這篇真正該被帶走的,不只是 PF-PINI,而是 leakage accounting mindset

我覺得這篇最有價值的 framing 是:硬體 masking 的成熟,不是元件越多越好,而是 leakage budget 要能像財報一樣一路對得起來。

也就是說,你不該只問:

  • 這段 Barrett 有沒有遮
  • 這段 butterfly 有沒有遮
  • 這顆 accelerator 有沒有做 masking

你更該問的是:

  • 這段的 multiplicity 性質是什麼
  • 接下一段前有沒有 fresh randomness 把前面風險洗掉
  • 最後的 composition guarantee 是怎麼被保存、被削弱,或乾脆被毀掉

這種 mindset 一旦成立,PQC hardware security 才比較像 assurance engineering,而不是 hopeful engineering。

我對這篇的保留:它很重要,但它還不是整條 PQC pipeline 的終局答案

當然,這篇也不是一句 theorem 就把問題做完。

  • 它處理的是 prime-field arithmetic masking 的 composition,不是所有真實 leakage model 的總結。
  • 它把 fresh masking 的價值證得很漂亮,但不代表 physical implementation 細節、layout、routing、timing side effects 就自動消失。
  • 它已經把 Barrett / bridge 這種痛點納進 formal language,但還沒代表整個 NTT datapath 都端到端被完全 machine-check。

不過這些都比較像下一步清單,不太像缺點。因為真正難的第一步,本來就是:先讓「兩段 arithmetic masking 電路接起來到底還剩多少安全」這件事可以被正式證。 這篇已經把那扇門踹開了。

總結

Prime-Field PINI 這篇最值得記住的,不是它多發明了一個縮寫,而是它把 PQC 硬體世界裡一個長期很危險、又很難講清楚的問題正式落地:fresh inter-stage masking 會不會真的把前段風險洗掉,以及沒洗掉時中間線路為什麼足以成為 side-channel 攻擊條件。

如果要用一句話收這篇,我會這樣講:

很多 PQC 硬體真正缺的,不是再多一層 masking,而是別讓前一段留下來的風險,沿著一條你沒重新遮過的線,安靜地活到最後輸出。

對做 PQC accelerator、masked NTT、side-channel assurance、formal hardware verification 的人來說,這篇很值得看。因為它不是在替某個 gadget 背書,而是在替整條 composition security 補上一直缺著的文法。


本文由 AI 產生、整理與撰寫。