Openssl valider le fichier en utilisant une signature

0

J'ai la signature de fichier dans ce format. Quel genre de format est-ce? Comment puis-je valider le fichier en utilisant la ligne de commande openssl

--=</Begin Signed File Fingerprint\>=--
Fingerprint Length: 000876
Key: label_4096
Hash: sha512
Signature: LJh6yt9PkAu4UGL7X0wCBmgfKDjA4Hv1i97K/glPmfJvB6pNPxrBDKPrVgsz7qNdP+mfOazHZcHmQyAAmpHoG/ztJzqbcMOFK8dYD8lqqu4O9O1Guhmx9WP3E47BI/Sby1OSqAeEu7fWsp+i3fUYeOujozBQ7oKULEIvxh61L/D9vDzRmm3UwD52I5g/PNwv1t4Llmqxg25uE9orn2u8cg40qmK1wyZiztOyIO8a4v42aEzRqxp9g//lN/+rsn9Ci4tz6XbIBPDqpYyXgYCtMf0f3N5QijlSt2bi97vzOVDFiyqAAIZL827tW+wFwaIMpmPZAtBBfSEBhY8VUlEd9fiZVuPo/RvC8NLgZphNa2PhergItu1MoKKv/fuwh8qVmAtMCp1FreTtky4hXiaxrq05Aun8Iyyh/lEx1t8M4zBpRnvCEexx0Htj24800bi4fpKacIMQh7HD0oC+tNCH3vlmRihd4ZZ2D8LrHnH+fHtdCpHQJoKYfobIbskQpVvK7eekyuG0lHPhAVwG4+Dh8Re/PugKPgmg0EcT0bp7g4RaiUDMzkD/zlRJSBM3pQX98EJFy1U38tkYkTO1m5aFUIgsy8YADpMfCyLjzJFA7O0E9SOk3dXCpYQ9zL9hN8MStJluNvhJBEjDq470iWPeOo3xApdeZr3YhEPGVxxuFL0=
Fingerprint Length: 000876
--=</End Signed File Fingerprint\>=--

si je prends la signature: part et en utilisant la commande

openssl dgst -sha512 -verify -inkey key.pub -signature <signature content in the above file> <filetoverify>

Ça valide. Comment faire OpenSL lire le fichier directement

Srikan
la source

Réponses:

0

Si vous utilisez Linux, vous devriez pouvoir le faire en ligne de commande en utilisant grep et cut. Cela prendra juste la valeur de la signature du fichier texte:

-signature `cat sigfile.sig | grep  'Signature: ' | cut -d: -f2-`

La commande finale serait quelque chose comme

openssl dgst -sha512 -verify -inkey key.pub -signature `cat sigfile.sig | grep  'Signature: ' | cut -d: -f2-` filetoverify 

Il existe peut-être une approche plus rationnelle à cet égard, mais je ne suis pas trop familiarisé avec openssl.

mt025
la source