1
我試圖設置一個簡單的服務器端RSA加密的一小塊信息是要在客戶端解密。就像概念證明一樣,我寫了幾行代碼來確保公鑰和私鑰可以從xml加載。不過,我努力讓我的機器上,即使是最簡單的東西的工作:C#RSA加密/解密拋出異常
byte[] bytes = Encoding.UTF8.GetBytes("Some text");
bool fOAEP = true;
// seeding a public and private key
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
var publicKey = rsa.ToXmlString(false);
var privateKey = rsa.ToXmlString(true);
//server side
RSACryptoServiceProvider rsaServer = new RSACryptoServiceProvider();
rsaServer.FromXmlString(privateKey);
var encrypted = rsaServer.Encrypt(bytes, fOAEP);
//client side
RSACryptoServiceProvider rsaClient = new RSACryptoServiceProvider();
rsaClient.FromXmlString(publicKey);
var decrypted = rsaClient.Decrypt(encrypted, fOAEP);
最後調用解密拋出一個帶有消息CryptographicException「而解碼OAEP填充時發生錯誤。」我必須在這裏錯過一些非常明顯的東西。我是否需要更多的rsa實例設置或者最初的rsa種子實例?
感謝尼古拉......我期待着這樣的東西:) – 2009-10-27 11:04:19
:)不客氣。 – 2009-10-27 11:15:21