ECC演算法與RSA演算法的優劣?

時間 2021-05-31 04:28:50

1樓:

大家都說ECC對資源的消耗相較RSA更少,但是,TLS通訊中,不管是ECC還是RSA都是只在握手-交換會話秘鑰(session key)的過程中會用到。一旦這大概300ms的握手流程結束,後面就都是高效率的對稱加密,沒有ECC/RSA啥事兒了。從我個人認為,ECC節省資源是個偽命題。

節選自維基百科:

TLS包含幾個基本階段:

1.對等協商支援的TLS版本,和支援的密碼包。

2.基於非對稱金鑰的身份認證,通常是基於PKI證書的身份認證。伺服器將其X.

509證書傳送給客戶端,由客戶端驗證伺服器的身份。如果伺服器要驗證客戶端的證書,則客戶端可能會將客戶端證書傳送給伺服器。通常僅驗證伺服器,不驗證客戶端。

3.基於對稱金鑰的資料加密。客戶端生成隨機數作為會話金鑰,並使用伺服器公鑰(伺服器公鑰在伺服器證書中)加密會話金鑰,最後將已加密的會話金鑰傳送給伺服器。

由伺服器的私鑰解密出會話金鑰。最後使用此會話金鑰加密資料。

2樓:Gworg

RSA演算法:國際標準演算法,應用較早,最為普及,比ECC演算法的適用範圍更廣,相容性更好,一般採用 2048 位的加密長度,但是對服務端效能消耗高。

ECC演算法:中文名稱為橢圓加密演算法,新一代演算法趨勢主流,一般採用 256 位加密長度,加密速度快,效率更高,對伺服器資源消耗低,而且最重要的是更安全,抗攻擊型更強。

ECC 和 RSA 相比,在許多方面都有對絕對的優勢,主要體現在以下方面:

抗攻擊性強

CPU 占用少

內容使用少

網路消耗低

加密速度快

隨著安全等級的增加,當前加密法的金鑰長度也會成指數增加,而 ECC 金鑰長度卻只是成線性增加。例如,128 位安全加密需要 3,072 位 RSA 金鑰,卻只需要乙個 256 位 ECC 金鑰。增加到 256 位安全加密需要乙個 15,360 位 RSA 金鑰,卻只需要乙個 512 位 ECC 金鑰。

ECC 具有如此卓越的按位比率加密的效能,預計其特點將成為安全系統關注的重點。

ECC 的這些特點使它必將取代 RSA,成為通用的公鑰加密演算法。比如 SET 協議的制定者已把它作為下一代 SET 協議中預設的公鑰密碼演算法。

3樓:Zhang Rui

ECC的演算法複雜度是所使用素數的位長度t的立方:1)底層的主要操作模乘法是位長度的平方;2)標量乘法又貢獻了乙個t。

RSA的演算法複雜度也是O(t^3):1)模乘法是位長度的平方;2)指數快速運算也貢獻乙個t

同樣的位長度,ECC的安全性要高於RSA;換而言之,同樣的安全性,由於ECC金鑰只需要更短的金鑰(一般認為160位金鑰的ecc安全性相當於1024位金鑰的rsa),ECC的計算量要少於RSA。

應用場景

1)金鑰交換

ECDH優於RSA,RSA有前向安全性問題。

2)數字簽名

為什麼RSA還在廣泛使用?ECC還沒有取代RSA?ECC有什麼不足?

4樓:turing

ecc優勢在於金鑰位數短,一般認為160位金鑰的ecc安全性相當於1024位金鑰的rsa,256位相當於3072位,所以它在嵌入式記憶體受限的環境下有優勢。但ecc的基本運算比rsa複雜很多。要比較效能得看具體怎樣的實現,比如軟體實現的話可以看看這個:

5樓:巨蟹

A (relatively easy to understand) primer on elliptic curve cryptography有提到,這裡是乙個翻譯得不是特別好的中文版本:乙個關於橢圓曲線密碼學的初級讀本(相當容易懂)

RSA中,加密演算法和和解密演算法完全相同嗎?

TZ Yu 不知道這是哪本書,公鑰可用來加密,但卻不能用來解密 這個表述是有問題的.我感覺這個誤導你了,可以建議換書了.他下面附的公式是 這個應該是要說明 不能用同乙個金鑰 PK B 進行加 解密操作 這就是非對稱加密演算法 RSA是非對稱加密演算法中的經典 的特徵,也是和對稱加密演算法的重要區別,...

傳統優化演算法與智慧型優化演算法與凸優化演算法如何界定其區別?都屬於最優化演算法嗎?

養生的控制人 個人理解 本質上都是求解最優化問題 乙個目標函式在給定區域內的最小值就是約束優化,不考慮給定區域就是無約束優化 傳統優化演算法可以理解為比較general的優化演算法但是針對不同問題可能並不適用,且考慮的最優只能是區域性最優 凸優化則是優化問題中的一種特殊情況,因為凸性可以保證全域性最...

如果黎曼猜想被證明會對RSA演算法產生影響嗎?

Chizhong Jin 沒有任何影響。簡單的說,假設現在基於黎曼猜想,甚至擴充套件黎曼猜想找到了某個方法可以攻擊RSA。那麼黎曼猜想正確與否就不關鍵了,因為攻擊者完全可以嘗試這個攻擊是否生效。如果攻擊成功了,OK,那就是成功了。如果說證明了黎曼猜想,可以證明這個攻擊100 有效。但是我不care啊...