我知道一些小的加密字符串的长度为:160、196 ..
什么决定大小?
加密的单个“块”的字节大小与密钥大小相同,与模的大小相同。私有指数通常大小相同,但可能更小。公共指数的大小可以达到密钥大小,但通常要小得多,以允许更有效的加密或验证。大多数时候它是费马的第四个数,65537。
请注意,这是加密数据的位大小。必须填充纯数据。PKCS#1 v1.5 最多使用密钥大小 - 纯文本填充 11 个字节。不过,保持更高的边距当然是明智的,比如最少 19 字节的填充(填充的 16 字节随机而不是 8 字节的随机填充)。
出于这个原因,并且因为执行 RSA 加密/解密的成本很高,RSA 主要与对称原语(如 AES)结合使用——在 AES 的情况下,随机 AES 对称密钥被加密而不是纯文本。然后使用该密钥对纯文本进行加密。