Keytool

Création d’un truststore

keytool -import -noprompt -trustcacerts -alias ac_racine -keystore truststore.jks -storepass changeit/motdepasse -file ac_racine.pem
keytool -import -alias ac_intermediaire -keystore truststore.jks -storepass changeit/motdepasse -file ac_intermediaire.pem

Création d’un keystore

keytool -genkey -alias idserveur -keyalg RSA -keysize 2048 -keystore keystore.jks -storetype JKS -storepass changeit/motdepasse
keytool -certreq -alias idserveur -file marequete.csr -keystore keystore.jks -storepass changeit/motdepasse

après génération du certificat par l’AC :

keytool -import -noprompt -trustcacerts -alias ac_racine -keystore keystore.jks -storepass changeit/motdepasse -file ac_racine.pem
keytool -import -alias ac_intermediaire -keystore keystore.jks -storepass changeit/motdepasse -file ac_intermediaire.pem
keytool -import -alias idserveur -keystore keystore.jks -storepass changeit/motdepasse -file moncertificat.crt

Conversion de keystore

JCEKS vers JKS

keytool -importkeystore -srckeystore jcekeystore.jce -destkeystore jkskeystore.jks -srcstoretype jceks -deststoretype jks -srcstorepass motdepasse_jceks -deststorepass motdepasse_jks

ne pas oublier de changer le mot de passe de la clé (si présent, si voulu) :

keytool -keypasswd -alias monaliasdeclé -keypass motdepasse_orig -new motdepasse_nouveau -keystore keystore.jks -storepass motdepasse_keystore

Ajout d’une autorité de certification sur Android

Récupérer le provider BouncyCastle permettant de gérer les conteneur au format « BKS »
* http://www.bouncycastle.org/latest_releases.html

Le placer dans le répertoire lib/ext du JRE (C:\Program Files\Java\jre6\lib\ext)
Puis avec les outils d’Android :

adb pull /system/etc/security/cacerts.bks
keytool -import -noprompt -trustcacerts -alias ac_gentilkiwi -keystore cacerts.bks -storepass changeit -storetype BKS -provider org.bouncycastle.jce.provider.BouncyCastleProvider -file AC_Gentil_Kiwi_Network.crt
adb shell mount -o remount,rw /system
adb push cacerts.bks /system/etc/security/
adb shell mount -o remount,ro /system