什么决定了RSA中加密字符串的长度?

时间:2012-09-08 02:48:28

标签: iphone encryption rsa

我知道一些小的加密字符串的长度为:160,196 ..

决定尺寸的因素是什么?

1 个答案:

答案 0 :(得分:2)

加密的单个“块”的字节大小与密钥大小相同,密钥大小与模数的大小相同。私有指数通常大小相同,但可能更小。公共指数可以达到密钥大小,但通常小得多,以允许更有效的加密或验证。大部分时间它是费马的第四个数字,65537。

请注意,这是加密数据的位大小。必须填充普通数据。 PKCS#1 v1.5最多使用密钥大小 - 纯文本的11个字节填充。保持较高的利润当然是明智的,比如最小19个字节的填充(随机的16字节而不是随机的8字节填充)。

由于这个原因,并且因为执行RSA加密/解密很昂贵,RSA主要与AES等对称原语结合使用 - 在AES的情况下,随机AES对称密钥被加密而不是平原文本。然后,该密钥用于加密纯文本。