我可以在.NET中加载一个128位RSA密钥,并将其用于解密。但我似乎无法生成128位(或更低)的密钥,我总是得到错误'指定的无效标志'。当我尝试512位密钥大小时,一切正常。那么对于.NET来说,512位的最小密钥大小是多少?.NET RSA加密:最小密钥大小?
1
A
回答
3
每个AsymmetricAlgorithm和SymmetricAlgorithm都有一个属性LegalKeySizes,可以帮助您确定密钥大小是否对算法有效。从链接,您可以打印出的有效密钥大小的算法使用的是:
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
for (int i = 0; i < rsa.LegalKeySizes.Length; i++)
{
KeySizes key_size = rsa.LegalKeySizes[i];
Console.WriteLine(String.Format("[Key Size {0}] - min: {1}, max: {2}, step: {2}",
i, key_size.MinSize, key_size.MaxSize, key_size.SkipSize));
}
对于RSACryptoServiceProvider,这将打印:
[密钥大小0] - 最小:384,最大: 16384,步骤:16384
5
512位(技术上)是RSA密钥的最小大小,但它不安全。现在1024位是绝对最小值,推荐2048位。
注意,RSA中的1024位在安全级别上对应于128位对称算法。也许你混淆了这些值,认为128位对于非对称和对称加密是相同的,但不是,它们不是。
相关问题
- 1. 具有大密钥大小的RSA加密
- 2. RSA加密输出大小
- 3. RSA的最小密钥长度
- 4. .NET DSACryptoServiceProvider密钥大小
- 5. 试图了解Java RSA密钥大小
- 6. .NET中的最小邮件大小公钥加密
- 7. .NET私钥Rsa加密
- 8. RSA加密 - 如何加密到更小的尺寸比密钥
- 9. 大密钥大小的加密算法
- 10. 使用大于密钥大小的密钥加密消息
- 11. RSA加密,密钥存储
- 12. 加密密钥大小和算法
- 13. 使用公钥进行RSA加密。基于密钥的数据大小
- 14. RSA解密后AES密钥大小无效
- 15. JSEncrypt RSA 2048加密输出大小
- 16. RSA加密数据块大小
- 17. Cassandra的最大密钥大小
- 18. PBE中的最大密钥大小?
- 19. NSDictionary数据密钥的最大大小
- 20. TLS 1.2 - 密钥对大小和加密密钥长度
- 21. Java中小于512位的RSA密钥大小
- 22. 如何设置使用aspnet_regiis创建的RSA密钥的密钥大小?
- 23. RSA加密公钥?
- 24. C#和PHP加密/解密密钥大小的PHP问题
- 25. Java RSA加密 - 解密.NET
- 26. RSA .NET加密Java解密
- 27. iPhone - 使用SecKeyGeneratePair的iOS RSA算法中的最小密钥大小(InBits)
- 28. .Net RSA加密,Java RSA解密
- 29. RSA密钥加密/解密问题
- 30. 无法解密RSA加密密钥
您可以更具体地了解您正在使用的API吗? – 2011-01-31 15:35:39
你为什么在意?低于512位的RSA密钥被完全破坏。 – CodesInChaos 2012-04-18 14:51:18