J'essaie de vérifier la signature d'un paquet sur le site Web du paquet FreeBSD
wget http://pkg.freebsd.org/FreeBSD:11:amd64/latest/digests.txz
tar xf digests.txz
Cela donne trois fichiers: digests, digests.pub digests.sig
je suppose que digests.sigest une signature pour le fichier digestsavec digests.pubcomme clé publique. Mais j'ai essayé de confirmer que:
openssl dgst -verify digests.pub -signature digests.sig digests
et j'ai reçu le message
Verification Failure
Je suppose que j'ai quelque chose de mal - quelqu'un peut-il me dire ce qui me manque?
EDIT: Sur la base d'une recherche dans le code source, je pense que la fonction importante se trouve ici , appelée les rsa_verify_cert_cbappels RSA_verifyde la bibliothèque openssl. Mais je n'ai pas compris ce qui est alimenté, ni s'il est possible d'appeler cette fonction à l'aide des openssloutils de ligne de commande.
sha256sum digests
openssl rsautl -pubin -inkey digests.pub -verify -in digests.sig -asn1parsene semble pas correspondre non plus.