Difference between revisions of "ASN.1"

From MgmtWiki
Jump to: navigation, search
(Solution)
(Solution)
Line 15: Line 15:
 
<pre>
 
<pre>
 
Data Types
 
Data Types
Tag Tag Type
+
Tag Tag
 
(dec) (hex) Type
 
(dec) (hex) Type
 +
1 02 BOOLEAN
 
2 02 INTEGER
 
2 02 INTEGER
 
3 03 BIT STRING
 
3 03 BIT STRING
Line 22: Line 23:
 
5 05 NULL
 
5 05 NULL
 
6 06 OBJECT IDENTIFIER
 
6 06 OBJECT IDENTIFIER
 +
9 09 REAL
 +
10 0A ENUMERATED
 
12 0C UTF8String
 
12 0C UTF8String
 
16 10 (and 30)* SEQUENCE and SEQUENCE OF
 
16 10 (and 30)* SEQUENCE and SEQUENCE OF

Revision as of 13:30, 30 June 2021

Full Title

Abstract Syntax Notation version 1 = ASN.1. Since there is no version 2, ASN is the typical abbreviation here.

Context

In the time before internet there was the 7 layer ISO model and a bunch of PTOs (mostly government postal and telegraphy organizations) worried by this new technology that wanted to dominate the identity layer of the internet. The result was a series of CCITT (now ITU-T) committees establish to translate the telephone industry white pages into the identity of every entity on the internet. This expanded to include X.400 series standards on electronic mail which went beyond that to create a security system base on ASN.1 X.500 series standards. The only legacy of that is the use of Distinguished Names in email directories, like Microsoft Outlook.

Abstract Syntax Notation One (ASN.1), which is defined in CCITT Recommendation X.208, is a way to specify abstract objects that will be serially transmitted. The set of ASN.1 rules for representing such objects as strings of ones and zeros is called the Distinguished Encoding Rules (DER), and is defined in CCITT Recommendation X.509, Section 8.7. These encoding methods are currently used to create the TLS certificates that are used to establish secure interchanges using HTTPS.

Problem

  1. Bureaucracy
  2. Complexity

Solution

  • Convert it all to json format so we don't need to spend so much effort understanding an syntax that was unnecessarily complex.
  • Visual studio editing tool
Data Types
Tag	Tag	
(dec) (hex)	Type
1	02	BOOLEAN
2	02	INTEGER
3	03	BIT STRING
4	04	OCTET STRING
5	05	NULL
6	06	OBJECT IDENTIFIER
9	09	REAL
10	0A	ENUMERATED
12	0C	UTF8String
16	10 (and 30)*	SEQUENCE and SEQUENCE OF
17	11 (and 31)*	SET and SET OF
19	13	PrintableString
22	16	IA5String
23	17	UTCTime
24	18	GeneralizedTime

References