1
1
mirror of https://github.com/wader/fq.git synced 2024-11-27 14:14:58 +03:00
fq/format/asn1/testdata/help_asn1_ber.fqtest
Mattias Wadman e3ae1440c9 interp: Rename to/from<format> functions to to_/from_<format>
Feels less cluttered, easier to read and more consistent.

Still keep tovalue, tobytes etc that are more basic functions this
only renamed format related functions.
Also there is an exceptin for to/fromjson as it comes from jq.

Also fixes lots of spelling errors while reading thru.
2022-12-21 17:48:39 +01:00

40 lines
1.1 KiB
Plaintext

$ fq -h asn1_ber
asn1_ber: ASN1 BER (basic encoding rules, also CER and DER) decoder
Decode examples
===============
# Decode file as asn1_ber
$ fq -d asn1_ber . file
# Decode value as asn1_ber
... | asn1_ber
Supports decoding BER, CER and DER (X.690).
- Currently no extra validation is done for CER and DER.
- Does not support specifying a schema.
- Supports torepr but without schema all sequences and sets will be arrays.
Can be used to decode certificates etc
======================================
$ fq -d bytes 'from_pem | asn1_ber | d' cert.pem
Can decode nested values
========================
$ fq -d asn1_ber '.constructed[1].value | asn1_ber' file.ber
Manual schema
=============
$ fq -d asn1_ber 'torepr as $r | ["version", "modulus", "private_exponent", "private_exponen", "prime1", "prime2", "exponent1", "exponent2", "coefficient"] | with_entries({key: .value, value: $r[.key]})' pkcs1.der
References
==========
- https://www.itu.int/ITU-T/studygroups/com10/languages/X.690_1297.pdf
- https://en.wikipedia.org/wiki/X.690
- https://letsencrypt.org/docs/a-warm-welcome-to-asn1-and-der/
- https://lapo.it/asn1js/