RSA Private Key Retrieval in .net from pem Format
dans .net, la lecture d'une clé privée RSA formatée et l'initialisation d'une clé publique correspondante nécessite une instance spécifique pour le décrypting des données en utilisant en utilisant la clé publique correspondante des étapes spécifiques. Cet article décrit deux approches pour accomplir cette tâche.
. Net 5 et ultérieurement
en commençant par .net 5, une capacité intégrée est disponible pour lire les clés privées PEM:
var privateKey = @"-----BEGIN RSA PRIVATE KEY----- { the full PEM private key } -----END RSA PRIVATE KEY-----"; var rsa = RSA.Create(); rsa.ImportFromPem(privateKey.ToCharArray());
bibliothèques préinstallées
Pour les versions antérieures de .net ou si la fonctionnalité intégrée ne convient pas, les bibliothèques externes comme le byscycastle fournissent une solution:
var bytesToDecrypt = Convert.FromBase64String("la0Cz.....D43g=="); // string to decrypt, base64 encoded AsymmetricCipherKeyPair keyPair; using (var reader = File.OpenText(@"c:\myprivatekey.pem")) // file containing RSA PKCS1 private key keyPair = (AsymmetricCipherKeyPair)new PemReader(reader).ReadObject(); var decryptEngine = new Pkcs1Encoding(new RsaEngine()); decryptEngine.Init(false, keyPair.Private); var decrypted = Encoding.UTF8.GetString(decryptEngine.ProcessBlock(bytesToDecrypt, 0, bytesToDecrypt.Length));
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3