Чтение открытого ключа PEM RSA только с использованием Bouncy Castle
Я пытаюсь использовать C # для чтения в.pem
файл, который содержит только открытый ключ RSA. У меня нет доступа к информации о секретных ключах, и мое приложение этого не требует. Файлmyprivatekey.pem
файл начинается с
-----BEGIN PUBLIC KEY-----
и заканчивается
-----END PUBLIC KEY-----
.
Мой текущий код выглядит следующим образом:
Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair keyPair;
using (var reader = File.OpenText(@"c:\keys\myprivatekey.pem"))
keyPair = (Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair)new Org.BouncyCastle.OpenSsl.PemReader(reader).ReadObject();
Однако код бросаетInvalidCastException
с сообщением
Unable to cast object of type 'Org.BouncyCastle.Crypto.Parameters.DsaPublicKeyParameters' to type 'Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair'.
Как я могу использовать Bouncy Castle?PemReader
читать только открытый ключ, когда информация о секретном ключе недоступна?