-
隨機預言機
鎖定
在密碼學裏面,
隨機預言機(英語:Random oracle)是一部預言機(簡單説像是理論的黑箱),對任何輸入都回傳一個真正均勻隨機的輸出(請參考
離散型均勻分佈),不過對相同的輸入,該預言機每次都會用同一方法輸出。換句話説,隨機預言機是一個將所有可能輸入與輸出作隨機映射的函數。
- 中文名
-
隨機預言機
- 外文名
-
Random oracle
- 所屬學科
-
計算機密碼
限制
任何有限的函數均不是一個隨機預言函數,因為隨機預言機的定義要求其是一個無限大的函數
[1]
。
事實上,一些刻意設計的簽名和加密方式被證明如果使用隨機預言機的話是安全的,但是使用其他的函式替代隨機預言的話則明顯不安全。另外,對任何比較自然的安全協定,在隨機預言機模型之下證明為安全,是協定的“實用”可靠性的有力證據。
大體上説,一個作法被證明是安全的的話,要攻擊此作法就必需要突破該證明的假設;例如,一個加密法的安全證明是基於
質因數分解的困難度(像是
RSA算法),那麼打破此證明的方法就是找到快速質因數分解的算法(像是秀爾算法就被視為是一個可能的攻擊)。在這裏,要打破隨機預言假設,我們就必須找到實際雜湊函式與隨機預言機未知且不好的不同之處。對於一般被認為不存在這種弱點,夠好的雜湊函式來説(這種雜湊函式現在蠻可靠的,像是SHA-3),相關的協定因此可證明是安全的。
- 參考資料
-
-
1.
Ran Canetti, Oded Goldreich and Shai Halevi, The Random Oracle Methodology Revisited, STOC 1998, pp. 209–218