2013-02-07 113 views
2

我有一个X509证书,我想用它来加密/解密密码。但是,我只能使用AES-256算法。如何使用X509Certificate和AES-256算法加密/解密文本

我在互联网上发现的一切都建议使用RSACryptoServiceProvider,但不会执行AES-256加密。

我对加密没有太多了解,所以一些基本的代码示例会有很大的帮助。

+1

我会从[RijndaelManaged](http://msdn.microsoft.com/en-us/library/system.security.cryptography.rijndaelmanaged.aspx)开始并指定密钥大小。此外,[文章](http://msdn.microsoft.com/en-us/magazine/cc164055.aspx)中有一个代码示例,它执行AES256 – oleksii

回答

3

AES是一种对称密钥算法,这意味着同一个密钥用于加密和解密数据。

RSA是一种非对称密钥算法。公共证书中的密钥用于加密。私钥然后用于解密。

RSA加密操作非常耗时。通常的做法是生成一个随机的AES密钥,用RSA加密密钥,然后用AES加密纯文本。

how to use RSA to encrypt files (huge data) in C#

1

不要自己做加密,很容易出错,即使你知道你在做什么。使用高级库。由于这个原因,我移植了Kecyzar in C#