n’importe quel corps peut expliquer les parameters de RSAParameters que j’avais vu les parameters comme p, d, e, q, … j’ai besoin de la clé privée et de la clé publique
j’ai eu le lien
http://msdn.microsoft.com/en-us/library/system.security.cryptography.rsaparameters%28v=vs.90%29.aspx[^]
J’utilise l’exemple de code comme celui-ci. Tout le monde peut dire qu’il avait raison ou non du code exemple:
//Generate a public/private key pair. RSACryptoServiceProvider RSA = new RSACryptoServiceProvider(); //Save the public key information to an RSAParameters structure. RSAParameters RSAKeyInfo = RSA.ExportParameters(true); //public key TextBox5.Text = Convert.ToBase64Ssortingng(RSAKeyInfo.Exponent); // private key TextBox6.Text = Convert.ToBase64Ssortingng(RSAKeyInfo.D);
ils avaient donné comme que la clé publique est {e, n} où n = résultat de la (P * Q) clé privée est {d, n} où n = résultat de la (P * Q)
où je l’avais fait est la bonne chose ou non dans l’exemple de code pour les clés publique et privée
Merci beaucoup
Utilisation de l’API BouncyCastle
et quelque chose de semblable à ce qui suit;
public AsymmesortingcCipherKeyPair GenerateKeys(int keySizeInBits) { RsaKeyPairGenerator r = new RsaKeyPairGenerator(); r.Init(new KeyGenerationParameters(new SecureRandom(), keySizeInBits)); AsymmesortingcCipherKeyPair keys = r.GenerateKeyPair(); return keys; }
Vous pouvez accéder à un object qui aura un. Public
et. Private
privée avec les chaînes correctement formatées.
J’ai eu un problème similaire il y a quelque temps et c’était la meilleure solution que je pouvais trouver. Je n’ai pas le code exact sous la main, mais je le posterai quand j’entrerai dans le bureau si nécessaire, mais ce qui précède devrait fonctionner.
Mis à jour avec le code
C’est le code que j’ai utilisé pour générer des clés publiques / privées.
public static AsymmesortingcCipherKeyPair GenerateKeys(int keySizeInBits) { var r = new RsaKeyPairGenerator(); r.Init(new KeyGenerationParameters(new SecureRandom(),keySizeInBits)); var keys = r.GenerateKeyPair(); return keys; } static void Main(ssortingng[] args) { var keys = GenerateKeys(2048); var publicKey = keys.Public.ToSsortingng(); var textWriter = new StreamWriter("private.key"); var pemWriter = new PemWriter(textWriter); pemWriter.WriteObject(keys.Private); pemWriter.Writer.Flush(); textWriter.Close(); textWriter = new StreamWriter("public.key"); pemWriter = new PemWriter(textWriter); pemWriter.WriteObject(keys.Public); pemWriter.Writer.Flush(); textWriter.Close(); Console.ReadKey(); }