Ho una chiave privata memorizzata nel file in formato DER PKCS8 e protetta da password. Qual è il modo più semplice per leggerlo?Come leggere una chiave crittografata con password con java?
Ecco il codice che uso per caricare in chiaro uno:
InputStream in = new FileInputStream(privateKeyFilename);
byte[] privateKeydata = new byte[in.available()];
in.read(privateKeydata);
in.close();
KeyFactory privateKeyFactory = KeyFactory.getInstance("RSA");
PKCS8EncodedKeySpec encodedKeySpec = new PKCS8EncodedKeySpec(privateKeydata);
PrivateKey privateKey = privateKeyFactory.generatePrivate(encodedKeySpec);
Funziona bene per le chiavi in chiaro con la stessa specifica. A proposito, sto usando BouncyCastle.
si può visionare quest'oggetto chiave privata utilizzando seguente comando openssl
openssl pkcs8 -in ./privatekey.key -inform DER -passin pass:thisismypass
prega, Aiuto !!!
Ho inserito alcune soluzioni nella mia risposta a questo argomento. Ma continuo a porre una domanda senza risposta nel caso in cui qualcuno possa aiutarlo a farlo funzionare senza libreria extra, solo BouncyCastle.
+1 per non-ancora-commons-ssl. Allora non hai nemmeno bisogno di Castello gonfiabile. – Thilo
Per la seconda soluzione. Puoi incollare il codice qui? Non riesco ad aprire quel link. Che biblioteca hai usato? – BRabbit27
Questo funziona davvero per me. –