OS Prompt >keytool -genkey -alias GePs -keyalg RSA -storetype JCEKS
-keystore My.keystore
Il keystore viene creato, e posso visualizzare le entry con il
comando:
OS Prompt >keytool -list -rfc -storetype JCEKS -keystore
My.keystore
Quando però provo a firmare un Jar...
OS Prompt >jar -cvf prova.jar *.*
OS Prompt >jarsigner -keystore My.keystore -storetype JCEKS
prova.jar GePs
ottengo sempre questa eccezione:
jarsigner error: java.lang.NullPointerException
I keystore JCEKS non riesco nemmeno a inizializzare una factory di
gestori di chiavi da usare
in un SSLContext:
SSLContext sc = SSLContext.getInstance("TLS");
KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
KeyStore ks = KeyStore.getInstance("jceks");
char[] password = args[1].toCharArray();
ks.load(new FileInputStream(args[0]), null);
kmf.init(ks, password);
l'ultima istruzione mi da una NullPointerException:
java.lang.NullPointerException
at com.sun.crypto.provider.SunJCE_z.a(DashoA6275)
at com.sun.crypto.provider.JceKeyStore.engineGetKey(DashoA6275)
at java.security.KeyStore.getKey(Unknown Source)
at com.sun.net.ssl.internal.ssl.X509KeyManagerImpl.<init>(Unknown
Source)
at com.sun.net.ssl.internal.ssl.KeyManagerFactoryImpl.engineInit(Unknown
Source)
at javax.net.ssl.KeyManagerFactory.init(Unknown Source)
at MiaClasse.main(MiaClass.java:30)
Ho provato anche a cambiare la riga di java.security per impostare
JCEKS come storetype di
default, ma niente da fare.
Con il JKS invece tutto ok.
Suggerimenti? Grazie per l'attenzione, ciao.
GePs