不可區分混淆(英語:Indistinguishability obfuscation,常作iO[1]:1),是一種形式化定義了程式混淆的密碼原語。白話地說,混淆隱藏了程式的內部實現,但用戶仍可運行它。[2]
此條目包含過多行話或專業術語,可能需要簡化或提出進一步解釋。 (2021年8月1日) |
候選構造
最早基於具體困難性假設,可證安全的候選構造在2013年提出。該假設和多線性映射有關,但後來該假設被推翻了。[3][4]
一系列後續工作試圖將iO基於更標準的假設。賈殷(Jain)、林和薩海於2020年出版的研究將iO建基於XDH假設、LWE假設和LPN假設。[4][1]此外,該構造還需要NC0實現的超線性延展的偽隨機數生成器。[1]直至2006,即使只考慮亞線性延展的NC0偽隨機數生成器,其存在性一直是未解問題。[5]
可能應用場合
若不可區分混淆器存在,它們可用於海量的密碼學構造裡。[2][4]具體地說,不可區分混淆器可用於以下的場合:
- 公鑰密碼學(以及其IND-CCA—安全版本)[6]
- 短數字簽名[6]
- IND-CCA—安全的密鑰封裝方案[6]
- 完美零知識的非交互零知識證明和簡賅的非交互論證(即證明方計算能力有限的證明)[6]
- 常數輪交互並行的零知識協議[1]
- 有限多項式次數的多重線性映射 (密碼學)[1]
- 單射陷門函數[6]
- 全同態加密[1]
- 見證加密[1]
- 任何單調NP語言的秘密分享[1]
- 半誠實不經意傳輸[6]
- 抵賴加密(不論是發送者抵賴還是完全抵賴)[6][1]
- 多方,非交互密鑰交換[1]
- 適應性安全簡賅的亂碼(Garbled)RAM[1]
- RAM模型任意程式的不可區分混淆[1]
- 關係難尋(Correlation intractible)函數[1]
- 屬性加密[1]
- PPAD困難性。[1]
不過,iO不是萬能的:例如,甚至在假設陷門排列的情況下,都無法通過黑盒構造由iO構造出抗撞的密碼雜湊函數,除非允許指數級的安全性損失[7]。
參見
- 黑箱混淆,一種更強,但一般情況下不可能實現的混淆形式。
參考文獻
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.