Génération de paire de clés à l'aide de Château Gonflable

J'ai un code Java pour générer la paire de clés à l'aide de colombie-britannique comme suit:

KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
        keyGen.initialize(1024);
        KeyPair key = keyGen.generateKeyPair();
        PrivateKey priv = key.getPrivate();
        PublicKey pub = key.getPublic();
        String privateKey = new String(Base64.encode(priv.getEncoded(), 0,priv.getEncoded().length, Base64.NO_WRAP));
        String publicKey1 = new String(Base64.encode(pub.getEncoded(), 0,pub.getEncoded().length, Base64.NO_WRAP));
        String publicKey = new String(Base64.encode(publicKey1.getBytes(),0, publicKey1.getBytes().length, Base64.NO_WRAP));

Maintenant, je veux faire la même en C# à l'aide de la colombie-britannique. J'ai téléchargé WP8BouncyCastle de la bibliothèque via le gestionnaire de package nuget. J'ai écrit que:

var kpgen = new RsaKeyPairGenerator();

            kpgen.Init(new KeyGenerationParameters(new SecureRandom(new CryptoApiRandomGenerator()), 1024));

            var keyPair = kpgen.GenerateKeyPair();
            AsymmetricKeyParameter privateKey = keyPair.Private;
            AsymmetricKeyParameter publicKey = keyPair.Public;


            string prvKey = Convert.ToBase64String(UTF8Encoding.UTF8.GetBytes(privateKey.ToString()));
            string pubKey = Convert.ToBase64String(UTF8Encoding.UTF8.GetBytes(publicKey.ToString()));
            string pubKey1 = Convert.ToBase64String(UTF8Encoding.UTF8.GetBytes(pubKey.ToString()));

Mais j'ai besoin de getEncoded() méthode en Java, ce qui n'est pas disponible en colombie-britannique bibliothèque en C#. Cette getEncoded() méthode est utilisée pour convertir une donnée clé dans X. 509 clé codée.Dans le cas de Java, de la clé publique obtenez deux fois converti (getencoded() et getBytes()) ,je ne suis pas en mesure de le faire en C#.

Est-il une solution?

OriginalL'auteur Vaibhav | 2014-02-25