Asimetrik şifrelemeyi kullanarak dosyaları şifrelemeye ve sonra şifrelemeye çalışıyorum. Makecert kullanarak bir test sertifikası oluşturdum ve kişisel yerel makinemdeki mağazaya kurdum. Gelecekte bu sertifikayı birkaç sunucuya yüklemem gerekecek, bu yüzden bunu "-pe" bayrağıyla oluşturdum, yani ihraç edilebilir özel anahtarla. Sertifikalar başarıyla oluşturuldu ve yüklendi, "Bu sertifikaya karşılık gelen özel bir anahtarınız var" notu mmc olarak görüyorum.Dışa aktarılabilir özel anahtar içeren sertifikalar için "Hatalı anahtar" istisnası
Şimdi verileri .NET 3.5'deki RSACryptoServiceProvider ile şifrelemeye çalışıyorum. Ve başarılı olur. Ama şifresini çözmeyi denediğimde, "Kötü anahtar" istisnası alıyorum.
"-pe" seçeneği olmayan bir sertifika oluşturursam, aynı kod şifre çözme için iyi çalışır.
EnvelopedCms envelope = new EnvelopedCms();
envelope.Decode(encryptedText);
envelope.Decrypt();
byte[] plainText = envelope.ContentInfo.Content;
sonuç ... Herkes aynı yardımcı olabilir edildi: Ayrıca ben System.Security.Cryptography.Pkcs ad kullanarak, başka bir yöntemi denedim
RSA rsaKey = (RSA)myCertificate.PrivateKey;
RSACryptoServiceProvider rsaCsp = (RSACryptoServiceProvider)rsaKey;
byte[] plainText = rsaCsp.Decrypt(encryptedText, true);
: İşte kodudur ?
Teşekkür ederim bayım, tam olarak neyim eksik – KodeKreachor
Bu gününü kurtardı .. Teşekkürler cevap ve açıklama için teşekkürler. – granadaCoder