代码挺简单的,首先创建RSA加密实例,然后导入程序随机产生的公钥加密,解密时,ExportParameters使用true则公私钥一起导入了。其中牵涉到一些编码转换,这个还没研究过,按你需要的编码输出吧!
UnicodeEncoding ByteConverter =
new UnicodeEncoding();
byte[] dataToEncrypt = ByteConverter.GetBytes( "Data to Encrypt");
byte[] encryptedData;
byte[] decryptedData;
RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
RSA.ExportParameters( false);
encryptedData = RSA.Encrypt(dataToEncrypt, false);
Console.WriteLine( "Encrypted plaintext: {0}", ByteConverter.GetString(encryptedData));
RSA.ExportParameters( true);
decryptedData = RSA.Decrypt(encryptedData, false);
Console.WriteLine( "Decrypted plaintext:{0}", ByteConverter.GetString(decryptedData));
byte[] dataToEncrypt = ByteConverter.GetBytes( "Data to Encrypt");
byte[] encryptedData;
byte[] decryptedData;
RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
RSA.ExportParameters( false);
encryptedData = RSA.Encrypt(dataToEncrypt, false);
Console.WriteLine( "Encrypted plaintext: {0}", ByteConverter.GetString(encryptedData));
RSA.ExportParameters( true);
decryptedData = RSA.Decrypt(encryptedData, false);
Console.WriteLine( "Decrypted plaintext:{0}", ByteConverter.GetString(decryptedData));