2013-02-07 144 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#