Difference between revisions of "My ASN.1 Notes"
m (→Resources) |
m (→My Notes) |
||
Line 40: | Line 40: | ||
== My Notes == | == My Notes == | ||
Source: [https://www.etsi.org/standards ETSI TS 101 671 V3.15.1 (2018-06)] | |||
[[Computing|Back to Computing]] | <pre>TimeStamp ::= CHOICE | ||
{ | |||
localTime [0] LocalTimeStamp, | |||
utcTime [1] UTCTime | |||
} | |||
LocalTimeStamp ::= SEQUENCE | |||
{ | |||
generalizedTime [0] GeneralizedTime, | |||
winterSummerIndication [1] ENUMERATED | |||
{ | |||
notProvided(0), | |||
winterTime(1), | |||
summerTime(2), | |||
... | |||
} | |||
}</pre> | |||
[https://www.oss.com/asn1/resources/asn1-made-simple/types.html List of common ASN.1 Types] which includes UTCTime and GeneralizedTime in TimeStamp example above. | |||
<center>[[Computing|Back to Computing]]</center> |
Revision as of 12:45, 21 August 2020
Resources
ETSI ASN.1 Object Identifiers Tree
Mobile Application Part (MAP) CommonDataTypes.asn
Python ASN.1 Resources
Pycrate is a french word for qualifying bad wine. The present software library has nothing to do with bad wine, it is simply a Python library for manipulating various digital formats in an easy way. It is the glorious successor of libmich, which was started 8 years ago and served well.
It provides basically a runtime for encoding and decoding data structures, including CSN.1 and ASN.1. Additionally, it features a 3G and LTE mobile core network.
pyasn1 is a free and open source implementation of ASN.1 types and codecs as a Python package. It has been first written to support particular protocol (SNMP) but then generalized to be suitable for a wide range of protocols based on ASN.1 specification.
asn1ate is a Python library for translating ASN.1 into other forms. It is intended for code generation from formal ASN.1 definitions, and a code generator for pyasn1 is included.
Python-ASN1 is a simple ASN.1 encoder and decoder for Python 2.6+ and 3.3+.
asn1tinydecoder.py is a simple and fast ASN.1 decoder without external libraries designed to parse large files.
Nice examples
Example explaining CHOICE tagging
Example to understand IMPLICIT tagging
TBCD
Telephony Binary-Coded Decimal strings are not part of the ASN.1 standard, but their use is prevalent in many telephony-related ASN.1 specifications.
Conversion of these types into standard numeric text strings is supported by Objective Systems software.
In general, BCD strings pack two numeric digits into a single byte value by using a four-bit nibble to hold each digit. By convention, the digits are reversed in TBCD strings, but there are no official standards for this encoding.
My Notes
Source: ETSI TS 101 671 V3.15.1 (2018-06)
TimeStamp ::= CHOICE { localTime [0] LocalTimeStamp, utcTime [1] UTCTime } LocalTimeStamp ::= SEQUENCE { generalizedTime [0] GeneralizedTime, winterSummerIndication [1] ENUMERATED { notProvided(0), winterTime(1), summerTime(2), ... } }
List of common ASN.1 Types which includes UTCTime and GeneralizedTime in TimeStamp example above.