J'ai une paire de clés RSA codée DER créée en Crypto ++, ainsi qu'un chiffrement. Ils sont la chaîne Base64Encoded. Je décode d'abord les données de Base64 en tableau d'octets, mais je ne suis pas sûr de savoir comment les charger en RSACryptoServiceProvider
.Charger une paire de clés RSA codée ASN.1/DER en C#
static void Main()
{
string pbkeystr = "mypublickey";
string pvkeystr = "myprivatekey";
string cipherstr = "mycipher";
byte[] pbkey = Convert.FromBase64String(pbkeystr);
byte[] pvkey = Convert.FromBase64String(pvkeystr);
byte[] cipher = Convert.FromBase64String(cipherstr);
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
//Set keys here..
//Decrypt the cipher using private key
rsa.Decrypt(pvkey, false);
}
Il n'existe aucune fonction permettant de définir des clés. La seule chose que j'ai trouvé était ImportParameters
méthode, qui prend RSAParameters
classe qui se compose de p
, q
, n
, module, exposant etc. Je n'ai pas accès à ceux-ci.
Est-il possible de charger les clés sous forme de chaîne? Comment puis-je charger la clé dans RSACryptoServiceProvider
?
Que contient la chaîne encodée en Base64? Une clé DER/PEM ASN.1, ou autre chose? – yaakov
C'est DER à partir de Crypto ++ – Kyojin