jarsigner ajoute une signature numérique au fichier jar spécifié ou, si l'option -verify est spécifiée, il vérifie la ou les signatures numériques déjà attachées au fichier JAR. Le signataire spécifié est un surnom ou un alias insensible à la casse pour l'entité dont la signature doit être utilisée. Le nom de signataire spécifié est utilisé pour rechercher la clé privée qui génère la signature.
Si vous rencontrez l'erreur ci-dessous lors de l'exécution de la commande jarsigner :
jarsigner: command not found
vous pouvez essayer d'installer le package ci-dessous selon votre choix de distribution.
Répartition | Commande |
---|---|
Debian | apt-get install gcj-4.7-jdk |
Ubuntu | apt-get install openjdk-12-jdk-headless |
Arch Linux | pacman -S java-environment-common |
Kali Linux | apt-get install openjdk-11-jdk-headless |
Fédora | installation dnf java-9-openjdk-devel-debug-1 |
Raspbian | apt-get install openjdk-8-jdk |
Options de commande
Option | Description |
---|---|
-certs | Si cette option est spécifiée avec l'option -verify ou -verbose, jarsigner affiche les détails des certificats de clé publique associés au fichier JAR signé. |
-J javaoption | Passe l'option javaspécifiée directement à l'interpréteur Java. |
-mot de passe keypass | Spécifie le mot de passe qui crypte la clé privée du signataire spécifié. Si cette option n'est pas spécifiée, jarsigner vous demande le mot de passe. |
-URL du magasin de clés | Un keystore est un fichier qui contient des clés et des certificats. |
-sigfile nom de base | Spécifie les noms de base des fichiers .SF et .DSA ajoutés au répertoire META-INF/ du fichier JAR. |
-fichier de sortie signé jar | Spécifie le nom du fichier JAR signé créé par jarsigner. |
-mot de passe storepass | Spécifie le mot de passe qui vérifie l'intégrité du magasin de clés (mais ne chiffre pas la clé privée). Si cette option est omise, jarsigner vous demande le mot de passe. |
-type de type de magasin | Spécifie le type de keystore spécifié par l'option -keystore. |
-verbeux | Affiche des informations supplémentaires sur le processus de signature ou de vérification. |
-vérifier | Spécifie que jarsigner doit vérifier le fichier JAR spécifié plutôt que de le signer. |
Exemples de commandes jarsigner
1. Signez un fichier JAR :
# jarsigner path/to/file.jar keystore_alias
2. Signez un fichier JAR avec un algorithme spécifique :
# jarsigner -sigalg algorithm path/to/file.jar keystore_alias
3. Vérifiez la signature d'un fichier JAR :
# jarsigner -verify path/to/file.jar
4. Signez un fichier .jar par plusieurs utilisateurs :
$ jarsigner test.jar geek ## User geek signs it $ jarsigner test.jar geeky ## User geeky signs it
Conclusion
La commande jarsigner signe ou vérifie les fichiers .jar. L'ajout d'une signature numérique à un fichier .jar améliore sa sécurité, car la modification du contenu rend la signature invalide. jarfile est le fichier original à signer ; alias est un alias reconnu pour l'identité du signataire. Par défaut, le jarsigner remplace le fichier d'origine par celui signé. Cela peut être modifié avec l'option -signedjar.