2013-09-21 158 views
-1

我讀了一些關於RSA加密的白皮書。我發現這個說法。但我不明白爲什麼? 陳述是RSA加密和解密的時間取決於密鑰的大小,但不取決於輸入數據的大小和內容,如果這個陳述正確意味着wehen加密1000字節,同時10000字節的加密和解密?爲什麼RSA加密和解密的時間取決於密鑰大小而不是輸入長度?

+0

通常情況下,您不會使用RSA加密超過100個字節。您使用AES等快速加密方式加密實際數據,然後使用RSA加密AES密鑰。這樣,每個消息只需要一個昂貴的RSA操作(或者在TLS的情況下甚至是連接)。 – CodesInChaos

+0

好的。但我想知道關於RSA時使用密鑰長度1024或2048或3072位比較性能與他們。每種情況應輸入多少位。 –

+1

密鑰大小和最大輸入長度是相同的。這是你整個問題的答案。 – EJP

回答

4

時間總是相同的,因爲輸入長度總是相同的。

純文本被填充到RSA模量的大小。如果純文本太長,則無法使用RSA對其進行加密。當然,你可以分開純文本並使用獨立的RSA操作對每個塊進行加密,但這不是該算法打算如何使用的方式。

RSA加密最適合作爲密鑰傳輸算法。您選擇一個對稱密鑰,並使用RSA公鑰對其進行加密。對稱密鑰可用於使用AES等算法對大量數據進行加密。這比使用公鑰加密來加密和解密批量數據要快得多。

+0

謝謝大家。 –