NOM¶
asn1parse - Outil d'interprétation ASN.1
SYNOPSIS¶
openssl asn1parse [
-inform PEM|
DER] [
-in
fichier] [
-out fichier] [
-noout] [
-offset
nombre] [
-length nombre] [
-i] [
-oid
fichier] [
-dump] [
-dlimit nombre]
[
-strparse position] [
-genstr chaîne]
[
-genconf fichier]
DESCRIPTION¶
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.
OPTIONS¶
- -inform DER|PEM
- Le format d'entrée. DER est le format binaire et PEM
(par défaut) est encodé en base64.
- -in fichier
- Le fichier d'entrée, par défaut l'entrée
standard.
- -out fichier
- Le fichier de sortie où les données encodées au
format DER sont stockées. Sans cette option, aucune donnée
ne sera créée. C'est en particulier utile en combinaison
avec l'option -strparse.
- -noout
- Ne pas afficher la version interprétée du fichier
d'entrée.
- -offset nombre
- Position initiale avant le début de l'interprétation, par
défaut c'est le début du fichier.
- -length nombre
- Nombre d'octets à interpréter, par défaut
jusqu'à la fin de fichier.
- -i
- Indentation du fichier de sortie en fonction de la profondeur de la
structure.
- -oid fichier
- Fichier contenant des identifiants d'objets (« OBJECT
IDENTIFIER », OID) supplémentaires. Le format
utilisé pour ce fichier est décrit dans la section
NOTES ci-dessous.
- -dump
- Vider les données inconnues au format hexadécimal.
- -dlimit nombre
- Comme -dump, mais seuls les nombre premiers octets sont
affichés.
- -strparse position
- Interpréter le contenu de l'objet ASN.1 à partir de l'octet
indiqué par position. Cette option peut être
appelée plusieurs fois afin de descendre dans une structure
imbriquée.
- -genstr chaîne, -genconf fichier
- Créer des données encodées à partir de
chaîne, de fichier ou des deux, en utilisant le
format de ASN1_generate_nconf(3). Si seul fichier est
présent, alors la chaîne est obtenue dans la section par
défaut en utilisant le nom asn1. Les données
encodées sont passées à un analyseur ASN1 et
affichées même si elles proviennent d'un fichier. Le contenu
peut ainsi être examiné et écrit dans un fichier en
utilisant l'option -out.
SORTIE¶
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
NOTES¶
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"
EXEMPLES¶
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
BOGUES¶
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.
VOIR AUSSI¶
ASN1_generate_nconf(3)
TRADUCTION¶
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.