J'ai un certificat racine auto-signé avec juste l'extension de signature de code (pas d'autres extensions) dans mon trousseau de Mac; Je l'utilise pour signer tout le code sortant de ∞labs en utilisant l'outil de codesign d'Apple et ça marche très bien. Je cherchais à me développer un peu et à faire du développement Java. Je sais que Apple propose une implémentation KeyStore qui lit le porte-clés, et je peux énumérer tous les certificats que j'ai dans la « chaîne avec:Comment signer une applet Java à l'aide d'un certificat dans mon trousseau Mac?
keytool -list -provider com.apple.crypto.provider.Apple -storetype KeychainStore -keystore NONE -v
Cependant, chaque fois que j'essaie d'utiliser jarsigner pour signer un fichier JAR de test simple, Je me retrouve avec:
$ jarsigner -keystore NONE -storetype KeychainStore -providerName Apple a.jar infinitelabs_codesigning_2
Enter Passphrase for keystore: <omitted>
jarsigner: Certificate chain not found for: infinitelabs_codesigning_2. infinitelabs_codesigning_2 must reference a valid KeyStore key entry containing a private key and corresponding public key certificate chain.
Qu'est-ce que je fais mal?
(Le certificat a été créé à la suite Apple's instructions for obtaining a signing identity.)
L'alias d'entrée du magasin de clés a raison, si c'est celui affiché par la première commande keytool -list et pas autre chose que je ne connais pas. – millenomi