Aceasta este comanda asn1parsessl care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS
PROGRAM:
NUME
asn1parse - instrument de analiză ASN.1
REZUMAT
OpenSSL asn1parse [-informa PEM|DER] [-în nume de fișier] [-afară nume de fișier] [-noout] [-decalaj
număr] [-lungime număr] [-i] [-oid nume de fișier] [- haldă] [-dlimit o] [-strparse compensa]
[-genstr şir] [-genconf fişier]
DESCRIERE
asn1parse comanda este un utilitar de diagnosticare care poate analiza structurile ASN.1. Poate deasemenea
să fie utilizat pentru a extrage date din datele formatate ASN.1.
OPŢIUNI
-informa DER|PEM
formatul de intrare. THE este format binar și PEM (implicit) este codificat în base64.
-în nume de fișier
fișierul de intrare, implicit este intrarea standard
-afară nume de fișier
fișier de ieșire pentru a plasa datele codificate DER în. Dacă această opțiune nu este prezentă, atunci nu
datele vor fi scoase. Acest lucru este cel mai util atunci când este combinat cu -strparse opțiune.
-noout
nu scoateți versiunea analizată a fișierului de intrare.
-decalaj număr
offset de pornire pentru a începe analiza, implicit este începutul fișierului.
-lungime număr
numărul de octeți de analizat, implicit este până la sfârșitul fișierului.
-i indentează ieșirea în funcție de „adâncimea” structurilor.
-oid nume de fișier
un fișier care conține IDENTIFICATORI DE OBIECT (OID) suplimentari. Formatul acestui fișier este
descrise în secțiunea NOTE de mai jos.
- haldă
descărcați datele necunoscute în format hex.
-dlimit o
ca - haldă, dar numai primul o sunt ieșiți octeți.
-strparse compensa
analizați octeții de conținut ai obiectului ASN.1 începând cu compensa. Această opțiune poate fi
folosit de mai multe ori pentru a „detalia” într-o structură imbricată.
-genstr şir, -genconf fişier
generați date codificate pe baza şir, fişier sau ambele folosind ASN1_generate_nconf(3)
format. Dacă fişier doar este prezent atunci șirul este obținut din secțiunea implicită
folosind numele asn1. Datele codificate sunt trecute prin parserul ASN1 și tipărite
ca și cum ar proveni dintr-un fișier, conținutul poate fi astfel examinat și scris într-un
fișier folosind afară opțiune.
REZULTATE
Ieșirea va conține de obicei linii ca aceasta:
0:d=0 hl=4 l= 681 contra: SECVENȚA
.....
229:d=3 hl=3 l= 141 prim: BIT STRING
373:d=2 hl=3 l= 162 contra: cont [ 3 ]
376:d=3 hl=3 l= 159 contra: SECVENȚA
379:d=4 hl=2 l= 29 contra: SECVENȚA
381:d=5 hl=2 l= 3 prim: OBJECT :X509v3 Subject Key Identifier
386:d=5 hl=2 l= 22 prim: STRING OCTET
410:d=4 hl=2 l= 112 contra: SECVENȚA
412:d=5 hl=2 l= 3 prim: OBJECT :X509v3 Authority Key Identifier
417:d=5 hl=2 l= 105 prim: STRING OCTET
524:d=4 hl=2 l= 12 contra: SECVENȚA
.....
Acest exemplu face parte dintr-un certificat autosemnat. Fiecare linie începe cu offset-ul în
zecimal. d=XX specifică adâncimea curentă. Adâncimea este mărită în sfera oricărei
SET sau SEQUENCE. hl=XX oferă lungimea antetului (eticheta și lungimea octeților) curentului
tip. l=XX dă lungimea octeților de conținut.
-i opțiunea poate fi folosită pentru a face rezultatul mai lizibil.
Sunt necesare anumite cunoștințe ale structurii ASN.1 pentru a interpreta rezultatul.
În acest exemplu, șirul de biți de la offset 229 este cheia publică a certificatului. Conținuturile
octeții din aceasta vor conține informațiile cheii publice. Acest lucru poate fi examinat folosind
opțiune -strparse 229 a ceda:
0:d=0 hl=3 l= 137 contra: SECVENȚA
3:d=1 hl=3 l= 129 prim: INTEGER :E5D21E1F5C8D208EA7A2166C7FAF9F6BDF2059669C60876DDB70840F1A5AAFA59699FE471F379F1DD6A487E7D5409AB6A88D4A9746E24B91D8CF55DB3521015460C8EDE44EE8A4189F7A7BE77D6CD3A9AF2696F486855CF58BF0EDF2B4068058C7A947F52548DDF7E15E96B385F86422BEA9064A3EE9E1158A56E4A6F47E5897
135:d=1 hl=2 l= 3 prim: INTEGER :010001
NOTE
Dacă un OID nu face parte din tabelul intern al OpenSSL, acesta va fi reprezentat în formă numerică
(de exemplu 1.2.3.4). Dosarul a trecut la -oid opțiunea permite OID-uri suplimentare să fie
inclus. Fiecare linie este formată din trei coloane, prima coloană este OID-ul numeric
format și ar trebui să fie urmată de spațiu alb. A doua coloană este „numele scurt” care
este un singur cuvânt urmat de spațiu alb. Coloana finală este restul liniei și este
„numele lung”. asn1parse afișează numele lung. Exemplu:
„1.2.3.4 shortName Un nume lung”
EXEMPLE
Analizați un fișier:
openssl asn1parse -in file.pem
Analizați un fișier DER:
openssl asn1parse -inform DER -in file.der
Generați un simplu UTF8String:
openssl asn1parse -genstr „UTF8:Hello World”
Generați și scrieți un UTF8String, nu imprimați rezultatul analizat:
openssl asn1parse -genstr „UTF8:Hello World” -noout -out utf8.der
Generați folosind un fișier de configurare:
openssl asn1parse -genconf asn1.cnf -noout -out asn1.der
Exemplu de fișier de configurare:
asn1=SEQUENCE:seq_sect
[seq_sect]
field1=BOOL:TRUE
field2=EXP:0, UTF8:un șir aleatoriu
Utilizați asn1parsessl online folosind serviciile onworks.net