首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >何时使用RSACryptoServiceProvider与AESCryptoServiceProvider?

何时使用RSACryptoServiceProvider与AESCryptoServiceProvider?
EN

Security用户
提问于 2012-06-04 11:37:47
回答 2查看 2.9K关注 0票数 1

我对在SmartCard上存储各种用途的证书感兴趣。自这个答案说明了RSA和AES之间有多么令人困惑的区别和相似之处.以来

什么时候应该使用一个类而另一个类获得最大的互操作性?如果类不像设置那么重要,那么最合适的设置是什么。

我的目的是了解跨平台和跨API (Java,第三方)最适合使用哪个API (和相应的设置)。我会在Crypto论坛上发布这篇文章,但这似乎更多是关于理论的,而不是关于编码的。

EN

回答 2

Security用户

回答已采纳

发布于 2012-06-04 12:47:19

这是唯一相关的部分:

RijndaelManaged类是.net框架中Rijndael算法的一种实现,它没有在NIST (国家标准和技术研究所)密码模块验证程序( CMVP )下进行验证。但是,类调用使用RSAENH.DLL的Windows,并在CMVP中被NIST验证。

您应该使用符合NIST规范的那个。否则,就无法证明RSA算法如您所认为的那样安全,也无法证明它是否与其他RSA实现兼容。

票数 1
EN

Security用户

发布于 2017-12-05 22:20:24

很抱歉,我回答了一个很老的问题,但这是在我的搜索,所选的答案是不正确的。也许选择的答案能回答OP的真正问题,但正如所述的问题是关于RSACryptoServiceProviderAESCryptoServiceProvider的,而答案是关于RjindaelManagedAESCryptoServiceProvider

RjindaelManaged是Rjindael算法的一个实现,后来被NIST选为AES加密标准的基础。AESCryptoServiceProvider是实现AES/Rjindael算法的最佳选择。AES和Rjindael都是对称密码。

RSA是一个完全不同的非对称密码系统.它与AES/Rjindael完全无关。

何时使用RSACryptoServiceProviderAESCryptoServiceProvider的正确答案取决于使用非对称和对称密码。

在RSA中,您有一个公钥和私钥对。如果您想要交换公钥,或者希望您的密钥由另一方签名,则需要RSA。但RSA的速度相对较慢,正确的做法是单向的:公钥加密,私钥解密.

如果你有很多你想加密的文本,你需要AES。它的速度要快得多,许多计算机也为此进行了优化。但只有一把钥匙。任何拥有密钥的人都可以加密和解密,这使得共享密钥成为一个优先事项。

最好是使用RSA公钥加密和传输AES密钥,然后使用AES进行通信。

票数 2
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/15626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档