Comment générer un KeyPair RSA avec une clé privée chiffrée avec un mot de passe?
Je veux générer un privatekey PKCS8 format crypté avec un mot de passe, et j'ai essayer avec ce code:
String password = "123456";
KeyPairGenerator gen = KeyPairGenerator.getInstance("RSA");
gen.initialize(2048);
KeyPair key = gen.generateKeyPair();
PrivateKey privateKey = key.getPrivate();
PublicKey publicKey = key.getPublic();
FileOutputStream pvt = new FileOutputStream("d:\\pvt123456.der");
try {
pvt.write(privateKey.getEncoded());
pvt.flush();
} finally {
pvt.close();
}
FileOutputStream pub = new FileOutputStream("d:\\pub123456.der");
try {
pub.write(publicKey.getEncoded());
pub.flush();
} finally {
pub.close();
}
Mais je ne sais pas comment crypter un mot de passe avec 3des pour être compatible avec openssl format.
source d'informationauteur Ricardo
Vous devez vous connecter pour publier un commentaire.
Je sais que c'est un peu tard, mais j'ai aussi été à la recherche d'un moyen pour faire cela, et alors que j'étais à la recherche, j'ai trouvé votre question, maintenant que j'ai trouvé un moyen de faire cela, j'ai décidé de revenir et de partager cette:
Cet exemple de code est basé sur le code suivant, j'ai trouvé: http://www.jensign.com/JavaScience/PEM/EncPrivKeyInfo/EncPrivKeyInfo.java
mais les suivantes ressource m'a aussi aidé à comprendre un peu mieux: http://java.sun.com/j2se/1.4.2/docs/guide/security/jce/JCERefGuide.html