Ich versuche mit C # eine .pem
-Datei einzulesen, die nur einen öffentlichen RSA-Schlüssel enthält. Ich habe weder Zugriff auf die Informationen zum privaten Schlüssel, noch benötigt meine Anwendung dies. Die Datei myprivatekey.pem
beginnt mit
-----BEGIN PUBLIC KEY-----
und endet mit
-----END PUBLIC KEY-----
.
Mein aktueller Code ist wie folgt:
%Vor% Allerdings gibt der Code ein InvalidCastException
mit der Nachricht
Das Objekt des Typs kann nicht umgewandelt werden 'Org.BouncyCastle.Crypto.Parameters.DsaPublicKeyParameters' einzugeben 'Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair'.
Wie kann ich Bouncy Castle PemReader
verwenden, um nur einen öffentlichen Schlüssel zu lesen, wenn keine privaten Schlüsselinformationen verfügbar sind?
Als Antwort auf c0d3Junk13 hatte ich das gleiche Problem für einen privaten PEM-Schlüssel, und ich brauchte den ganzen Nachmittag, um die Lösung mit C # BouncyCastle Version 1.7 und Visual Studio 2013 Desktop Express zu finden. Vergessen Sie nicht, den Projektverweis zu BouncyCastle.Crypto.dll
hinzuzufügen %Vor%Hier ist eine mögliche Lösung, die sowohl öffentliche als auch private PEM-Dateien in RSACryptoServiceProvider liest:
%Vor%Hoffe das hilft jemandem.
Tags und Links c# bouncycastle public-key pem