Provable-Security
估計 Rabin 簽名的安全級別
我試圖弄清楚模數有多長 $ n $ 必須在 Rabin 簽名方案中,以提供 128 位安全性。
我們假設使用的雜湊函式“足夠安全”。那麼天真的方法如下:
由於事實證明偽造簽名與分解 $ n $ ,簽名方案的安全級別約為。等於位長 $ n $ . 因此對於 128 位安全性, $ n $ 應該至少是一個數字,這樣最快的分解算法需要 2^180 次嘗試。但是這樣的數字有多長?
我當然知道,它說 RSA 密鑰應該在 3072 位左右才能達到 128 位秒。另一方面,與 Rabin 相比,RSA 對數字分解沒有嚴格的減少。
因此有人可以解釋如何估計拉賓模量嗎?
通過正確選擇密鑰和填充,對 Rabin 簽名和 RSA(加密和簽名)的最有效的純加密已知攻擊是相同的:分解公共模數。因此,公共模數的尺寸建議是相同的。如果 3072 位 RSA 通過某些標準實現了 128 位的安全性,Rabin 做到了。
請注意,可能存在特定於 Rabin 及其 Jacobi 計算的實現攻擊,這些攻擊不適用於 RSA。此外,Rabin 簽名對一些糟糕的填充(尤其是確定性的)是不可原諒的:當它仍然是 RSA 簽名中的存在偽造時,它可以退化為完全中斷(公共模數的分解)。