我有一个大小为42的字节数组。
我正在使用RSACryptoServiceProvider
对象加密:
$keySize = 16384
$rsaProvider = New-Object System.Security.Cryptography.RSACryptoServiceProvider($keySize)
你是否需要一台cray超级计算机来解密使用大的密钥?
在内存等方面使用$keySize = 2048
而不是16384有什么好处吗?
答案 0 :(得分:1)
使用更高的密钥大小会导致更大的质数和模数,这使得模数分解更难以从中获取质数,然后显示私钥。
RSA基于模运算。更高的密钥大小也意味着必须执行更大数字的运算取幂。密钥生成和解密会慢得多。加密会慢一些。
2048是今天的最低建议。您可能想要使用4096,但16384对于您的用例几乎肯定是太多了。但这取决于攻击模型和攻击者的能力。