openssl-asn1parse
Commande d'analyse ASN.1
- Provided by: manpages-fr (Version: 4.29.1-1)
- Source: manpages-l10n
- Report a bug
Commande d'analyse ASN.1
openssl asn1parse [-help] [-inform DER|PEM|B64] [-in fichier] [-out fichier] [-noout] [-offset nombre] [-length nombre] [-i] [-oid fichier] [-dump] [-dlimit nombre] [-strparse décalage] [-genstr chaîne] [-genconf fichier] [-strictpem] [-item nom]
Cette commande est un utilitaire de diagnostic capable d'analyser les structures ASN.1. Elle peut aussi être utilisée pour extraire des données à partir de données au format ASN.1.
La sortie contiendra typiquement des lignes comme celles-ci :
0:d=0 hl=4 l= 681 cons: SEQUENCE
.....
229:d=3 hl=3 l= 141 prim: BIT STRING 373:d=2 hl=3 l= 162 cons: cont [ 3 ] 376:d=3 hl=3 l= 159 cons: SEQUENCE 379:d=4 hl=2 l= 29 cons: SEQUENCE 381:d=5 hl=2 l= 3 prim: OBJECT :X509v3 Subject Key Identifier 386:d=5 hl=2 l= 22 prim: OCTET STRING 410:d=4 hl=2 l= 112 cons: SEQUENCE 412:d=5 hl=2 l= 3 prim: OBJECT :X509v3 Authority Key Identifier 417:d=5 hl=2 l= 105 prim: OCTET STRING 524:d=4 hl=2 l= 12 cons: SEQUENCE
.....
Cet exemple fait partie d'un certificat auto-signé. Chaque ligne débute par le décalage en décimal. « d=XX » indique la profondeur actuelle. La profondeur est augmentée dans la portée d’un SET ou d'une SEQUENCE. « hl=XX » donne la longueur de l'en-tête (octets d'étiquette et de longueur) du type actuel. « l=XX » donne la longueur des octets du contenu.
L'option -i peut être utilisée pour rendre la sortie plus lisible.
Certaines connaissances sur la structure ASN.1 sont nécessaires pour interpréter la sortie.
Dans cet exemple, la chaîne de bits (BIT STRING) au décalage 229 correspond à la clé publique du certificat. Les octets de ce contenu contiendront les informations de la clé publique. Cela peut être examiné à l'aide de l'option « -strparse 229 » pour obtenir :
0:d=0 hl=3 l= 137 cons: SEQUENCE
3:d=1 hl=3 l= 129 prim: INTEGER :E5D21E1F5C8D208EA7A2166C7FAF9F6BDF2059669C60876DDB70840F1A5AAFA59699FE471F379F1DD6A487E7D5409AB6A88D4A9746E24B91D8CF55DB3521015460C8EDE44EE8A4189F7A7BE77D6CD3A9AF2696F486855CF58BF0EDF2B4068058C7A947F52548DDF7E15E96B385F86422BEA9064A3EE9E1158A56E4A6F47E5897
135:d=1 hl=2 l= 3 prim: INTEGER :010001
Si un OID ne fait pas partie de la table interne d'OpenSSL, il sera représenté sous forme numérique (par exemple 1.2.3.4). Le fichier transmis à l'option -oid permet que d'autres OID supplémentaires soient inclus. Chaque ligne consiste en trois colonnes, la première est l'OID au format numérique suivi d'une espace. La seconde colonne est le « nom court » qui est un mot unique suivi d'une espace. La dernière colonne, le reste de la ligne, est le « nom long ». Exemple :
« 1.2.3.4 Nomcourt Un nom long »
Pour tout OID associé à un nom court et un nom long, cette commande affichera le nom long.
Analyser un fichier :
openssl asn1parse -in fichier.pem
Analyser un fichier DER :
openssl asn1parse -inform DER -in fichier.der
Générer une chaîne UTF-8 (UTF8String) simple :
openssl asn1parse -genstr 'UTF8:Bonjour le monde'
Générer et écrire une chaîne UTF-8 (UTF8String), ne pas afficher la sortie analysée :
openssl asn1parse -genstr 'UTF8:Bonjour le monde' -noout -out utf8.der
Générer à l'aide d'un fichier de configuration :
openssl asn1parse -genconf asn1.cnf -noout -out asn1.der
Exemple de fichier de configuration :
asn1=SEQUENCE:seq_sect [seq_sect] field1=BOOL:TRUE field2=EXP:0, UTF8:some random string
Des options devraient exister pour modifier le format des lignes de sortie. La sortie de certains types ASN.1 n'est pas bien gérée (voire pas du tout).
Copyright 2000-2023 Les auteurs du projet OpenSSL. Tous droits réservés.
Sous licence Apache 2.0 (la « Licence »). Vous ne pouvez utiliser ce fichier que conformément à la Licence. Vous trouverez une copie dans le fichier LICENSE de la distribution du source ou à l'adresse <https://www.openssl.org/source/license.html>.
La traduction française de cette page de manuel a été créée par Nicolas François <nicolas.francois@centraliens.net>, David Prévot <david@tilapin.org>, Oliver Hamm <oliver.c.hamm@gmail.com> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.