Произошла ошибка при декодировании заполнения OAEP - PullRequest
2 голосов
/ 04 июня 2009

Я на полпути через мою проблему .. Пожалуйста, помогите ..

Я успешно зашифровал текст с помощью открытого ключа цифровых подписей, но при расшифровке я получаю сообщение об ошибке.

Ошибка при декодировании заполнения OAEP.

Мой код следующий.

#region
Test Encryption 
public void a() 
{
using (var rsa = new RSACryptoServiceProvider()) 
{
// This String consists only Public Key Information 
String publicKeyOnly = rsa.ToXmlString(false); 
// This String consists both Private/Public Key information 
String publicPrivate = rsa.ToXmlString(true); 
}
}
//encrypt 
public byte[] b(String publicKeyOnly) 
{
byte[] encryptedData; 
using (var rsaPublicOnly = new RSACryptoServiceProvider()) 
{
rsaPublicOnly.FromXmlString(publicKeyOnly);
encryptedData = rsaPublicOnly.Encrypt(
Encoding.UTF8.GetBytes("This String is to be Secured."), true); 
}
return encryptedData; 
}
//Decrypt 
public String c( byte[] encryptedData) 
{
String decryptedPassword ; 
using (var rsaPublicPrivate = new RSACryptoServiceProvider()) 
{
RSACryptoServiceProvider.UseMachineKeyStore = true; 
// Providing Private key information to RSA Object 
rsaPublicPrivate.FromXmlString(_PrivateKeyXML);
// Decrypting the encrypted data by using RSA object "rsaPublicPrivate" 
decryptedPassword = rsaPublicPrivate.Decrypt(encryptedData,
true).ToString(); 
}
return decryptedPassword; 
}
#endregion
...