RSA-OAEP 是否已棄用?
我需要 JavaScript 中的非對稱 pub/private keypair 加密。Web 瀏覽器支持 RSA-OAEP,它完全符合我的需要。但是有一個表格列出了在https://diafygi.github.io/webcrypto-examples/上支持的網路加密算法……並且 RSA-OAEP 使用紅色標記(不鼓勵,僅用於向後兼容)。
RSA-OAEP 有什麼問題嗎?它應該被不同的算法取代嗎?還是您認為寫表的人將 RSA-OAEP 標記為紅色是錯誤的?謝謝
RSA 通常被認為對新項目“不鼓勵”。多年來,口號一直是“轉向橢圓曲線”,但現在有人呼籲直接採用所謂的“後量子”方案。
RSA 受益於經受住了許多公眾審查(可以說,整數分解是一個至少已經研究了三千年的問題),雖然在密碼分析方面取得了實質性進展,但 2048 位 RSA 密鑰很可能仍然是安全的很長時間。使用 RSA 進行非對稱加密也有好的和壞的方法,但是 RSA-OAEP 和 RSA 一樣好,所以沒關係。
橢圓曲線提供更好的性能(在解密方面)並且更時尚。這意味著,在真正被破壞之前,RSA 可能會被廢棄,這意味著您將遇到互操作性問題,並且在某些時候實現的維護會很差。在我看來,這些都不重要。
量子電腦早餐吃 RSA 密鑰;但是,它們也會在午餐時間穿過橢圓曲線,因此這不是切換到曲線的好論據。幸運的是,量子電腦還沒有真正存在(它們是否會在某個時候存在是一個懸而未決的問題)。“後量子”方案是似乎可以抵抗量子電腦的算法(具體來說,這些算法是已知沒有有效的量子解決攻擊的算法——這並不意味著這種攻擊不存在!)。經典算法還沒有真正的後量子替代品(有很好的候選者,但仍需要大量標準化和實施部署)。
您必須詢問該網站的作者他們為什麼進行該評估。
儘管沒有技術理由更喜歡 RSA-OAEP 而不是更簡單(實施和研究)的 RSA-KEM,但 RSA-OAEP 被更廣泛地標準化和部署,就像PKCS#1 v2 中的 RSAES-OAEP。
還有其他基於 RSA 的公鑰加密方案,但由於該站點沒有列出其中任何一個,我唯一的猜測是該站點的作者更喜歡基於 ECDH 的公鑰密鑰封裝方法,而不是所有RSA-基於公鑰的加密方案。
但在很大程度上,WebCrypto 是基於滿是首字母縮略詞湯的鸚鵡學舌標準,以向後兼容古老的密碼學門神殿,而不是仔細分析像NaCl這樣的新應用程序的密碼工程需求。那麼誰能說出這個過程的產物有什麼韻律或原因呢?
該表本身並沒有幫助將許多不相關的操作和安全屬性混雜到一個表中,就好像有任何理由將 RSASSA-PSS 和 RSAES-OAEP 以及 AES-CMAC 和 AES-CTR 並排放在一個表中一樣就好像它們是可比較的對像類型一樣——帶有不同按鈕子集的魔法加密黑匣子,你可以按下它來召喚加密精靈。