web-dev-qa-db-fra.com

Créer un fichier de clés avec une seule commande

J'ai un script qui crée et signe un fichier de clés pour une application Android.

Il fonctionne parfaitement bien mais je préfère le faire fonctionner sans intervention humaine

ce que je dois créer le magasin de clés:

keytool -genkey -v -keystore my-release-key.keystore
-alias alias_name -keyalg RSA -keysize 2048 -validity 10000

Cela m'invite ensuite à saisir manuellement les valeurs suivantes à l'aide du terminal: mot de passe du magasin de clés, nom complet, unité d'organisation, nom de l'organisation, ville, état, code de comté, mot de passe de clé.

ce que je dois signer l'application:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1
-keystore my-release-key.keystore my_application.apk alias_name

Cela m'invite ensuite à saisir la phrase secrète pour le magasin de clés.

Existe-t-il de toute façon que je peux transmettre ces valeurs en tant que paramètres afin que le script complet s'exécute sans autre interaction nécessaire?

PS: j'utilise ubuntu 14.04 LTS.

Merci pour votre temps :)

12
PeterG

Vous pouvez faire quelque chose comme ceci pour générer le fichier de clés:

keytool -genkey -alias replserver \
    -keyalg RSA -keystore keystore.jks \
    -dname "CN=Mark Smith, OU=JavaSoft, O=Sun, L=Cupertino, S=California, C=US" \
    -storepass password -keypass password

Voici une bonne référence: https://pubs.vmware.com/continuent/tungsten-replicator-3.0/deployment-ssl-stores.html . Et pour le jarsigner, il existe un paramètre "storepass" pour le mot de passe du magasin de clés. Et si vous mettez les deux dans un script, vous devriez être bon.

35
Sanjeev