asn1parse
Outil d'interprétation ASN.1
- Provided by: manpages-fr-extra (Version: 20140201)
- Report a bug
Outil d'interprétation ASN.1
openssl asn1parse [-inform PEM|DER] [-in fichier] [-out fichier] [-noout] [-offset nombre] [-length nombre] [-i] [-oid fichier] [-strparse position] [-genstr chaîne] [-genconf fichier]
La commande asn1parse est un utilitaire de diagnostic permettant d'interpréter des structures ASN.1. Il peut aussi être utilisé pour extraire des informations de données au format ASN.1.
Le résultat se présente typiquement de la façon suivante :
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 est une partie d'un certificat autosigné. Chaque ligne débute avec la position en décimal. d=XX désigne le niveau de profondeur actuel. Cette profondeur est incrémentée pour chaque SET ou SEQUENCE. hl=XX donne la longueur de l'en-tête (octets de la balise et de l'en-tête) du type en cours. l=XX précise la longueur du contenu.
Avec l'option -i l'affichage est plus lisible.
Quelques connaissances de la structure ASN.1 sont nécessaires pour interpréter la sortie.
Dans cet exemple, la clef publique du certificat est le BIT STRING à la position 229. Les octets du contenu contiennent l'information de la clef publique. Cela peut être examiné en utilisant 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 identifiant d'objet (OID) ne figure pas dans la table interne d'OpenSSL, il sera représenté sous forme numérique (par exemple 1.2.3.4). Le fichier fourni avec l'option -oid permet d'inclure des OID supplémentaires. Chaque ligne contient trois colonnes, la première étant l'OID sous forme numérique et doit être suivi d'espace. La deuxième colonne est le « short name » (libellé court), un seul mot suivi d'espace. La dernière colonne est le reste de la ligne contenant le libellé long (« long name »), affiché par asn1parse. Exemple :
"1.2.3.4 nomCourt un nom long"
Interpréter un fichier :
openssl asn1parse -in file.pem
Interpréter un fichier DER :
openssl asn1parse -inform DER -in file.der
Créer une UTF8String simple :
openssl asn1parse -genstr 'UTF8:Salut le monde'
Créer et écrire une UTF8String, sans afficher la sortie analysée :
openssl asn1parse -genstr 'UTF8:Salut le monde' -noout -out utf8.der
Créer en utilisant 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:une chaîne aléatoire
Des options devraient permettre de modifier le format des lignes de l'entrée. La sortie de certains types ASN.1 n'est pas proprement gérée voire pas du tout.
Cette page de manuel a été traduite par stolck en 2002 et est maintenue par la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.