2011-04-05 7 views
4

J'ai remarqué que dans la documentation keytool "jarsigner [...] vérifie si la clé publique de ce certificat est" approuvée ", c'est-à-dire contenue dans le fichier de clés spécifié." alors que les états de la page de manuel jarsigner "Un keystore n'est pas requis lors de la vérification de [...]", et que l'utilitaire vérifie toujours par rapport au certificat fourni avec le pot. D'après ce que je vois, cela irait à l'encontre du but, car cela certifierait seulement que le pot n'a pas été modifié depuis sa signature mais pas qu'il a été signé par une autorité/un fournisseur spécifique.Vérification de jarsigner en utilisant uniquement des certificats de confiance?

Existe-t-il un moyen de faire échouer la vérification si le certificat utilisé pour signer le fichier JAR n'est pas connu/approuvé sur le système d'exécution? Ou dois-je utiliser un script pour appeler jarsigner -verify -verbose -keystore ... et analyser la sortie pour voir s'il existe une entrée pour le certificat de signature dans le magasin de clés local (runtime)?

Confused, Peter

Répondre

0

jarsigner utilitaire est tout à fait inutile pour la vérification de la signature JAR, car il ne vérifie pas le certificat du signataire, ne vérifie pas horodatages confiance à la signature et ne fournit pas de sortie résultat utilisable (console L'analyse syntaxique est pas une bonne solution).

Pour éviter ces limitations, nous avons choisi d'écrire notre propre utilitaire verify_jar.

Questions connexes