Rsa

RSA 是否全面下滑?

  • December 8, 2019

根據我從網際網路收集的資訊(來源),2019 年及以後的推薦做法是避免 RSA 並使用 ECDH 和 ECDSA。

這是一般情況嗎?

用於密鑰交換的RSA正在迅速下降,不推薦使用,因為它不提供前向保密。如果沒有前向保密,如果有人闖入伺服器並獲得私鑰,他們將能夠完全追溯解密在該密鑰下加密的所有記錄流量。ECDH 沒有這個問題,因為私鑰和公鑰是即時生成的,並在使用後丟棄。這是可能的,因為 ECDH(和 DH)密鑰生成在 CPU 上輕而易舉,而 RSA 則不然。為每個密鑰交換生成一個新的 RSA 密鑰對是絕對禁止的。

另一方面,用於證書的RSA仍然很活躍,並且仍然被認為是行業標準。不過,ECDSA 有一些好處,例如更小的公鑰和簽名大小,這相當於減少了網路使用量,但使用 ECDSA 進行驗證比使用 RSA 慢一些。

是的,現在 RSA 不被認為是我們現在擁有的所有公鑰加密需求的*事實上的算法。*但是,它仍然無處不在,而且這種情況不太可能很快改變。

例如,TL​​S 1.3 已經放棄了 RSA 密鑰交換,因為它缺乏前向保密性。所以你可能會認為 RSA 正在失去一些吸引力,但這並不意味著證書不能再使用 RSA 密鑰,而只是 TLS 伺服器和客戶端現在只能使用 RSA 算法進行簽名,並且客戶端不再可能向伺服器發送一個 RSA 加密的 premaster 密鑰。(也請參閱Forest對該主題的回答。)

RSA確實有一些缺點:

  • RSA 的簽名速度比 ECDSA 慢,這對於應該同時處理許多請求的 TLS 伺服器來說通常很重要,而且簽名速度慢得多。openssl speed以下是我設備上 使用的一些數字:
                      sign/s  verify/s
   ecdsa (nistp256)    37232.9    9515.5
   rsa 2048             1441.4   48517.4
   rsa 3072              438.3   21926.7  

您還可以在此處找到一些基準。但正如對另一個答案的評論中提到的,注意 RSA 驗證仍然比 ECDSA(或 EdDSA)更快。

這並不意味著 RSA 已經消失,對2017 年在野外發現的公鑰進行的一項研究表明,在網際網路上可以找到的 94.48% 的公鑰仍然是 RSA 密鑰。(但是這可能是有偏見的,因為它正在考慮 TLS 證書的集合,並且這些證書仍然絕大多數使用 RSA 密鑰。)

雖然大多數證書頒發機構現在已經實現了對基於 ECDSA 的證書的支持,但仍有許多依賴 RSA 的遺留系統,而這絕對不會很快改變。

此外,值得一提的是,多年來,RSA 算法已經受到學術界和工業界的更多審查,並且有很多對策可以在特定硬體上執行 RSA,以使其免受故障攻擊側面攻擊。渠道,而 ECDSA 和 EdDSA 等“較新”的方案仍然經常 容易受到此類攻擊

最後,您應該明確閱讀Thomas對相關問題的回答(“與 RSA 相比,為什麼橢圓曲線密碼學沒有被廣泛使用? ”),因為它(像往常一樣)非常徹底。

引用自:https://crypto.stackexchange.com/questions/67145