Abstract Syntax Notation One (ASN.1) is a notation system defined by the ITU-T in the ITU X.680 and ISO 8824 specifications that describes complex data and data structures in human readable format and converts the data itself into a binary format that can be exchanged between computers in a manner that is independent of programming language, transmission encoding and platform-specific constraints.
Protocols and Standards using ASN.1
- X.400 Messaging
- X.500 Directory Services - LDAP
- X.509 Digital Certificates
- Secure Electronic Transaction (SET) - Credit Card Transactions
- Simple Network Management Protocol - SNMP
- H.323 / T.120 Multimedia Communications - VoIP and Videoconferencing
Encoding Rules
There are several common encoding rules used in ASN.1. These rules define how information is encoded into an ASN.1-based message.
- BER - Basic Encoding Rules
- PER - Packed Encoding Rules
- DER - Distinguished Encoding Rules
- CER - Canonical Encoding Rules
- XER - XML Encoding Rules
Going Beyond
While it is useful to understand what ASN.1 is, it is not useful to understand it's inner workings unless you intend to write software utilizing ASN.1.
Warning: Technical Reading Ahead. Reading this material may interfere with your ability to stay awake. Side effects may include drowsiness, confusion and headache.
- Table of all ITU ASN.1 related documents (@ITU.int)
- ITU X.680 - basic notation
- ITU X.690
- ITU X.691 - Packed Encoding Rules (PER)
- ITU X.692 - Encoding Control Notation (ECN)
- ITU X.693 - XML Encoding Rules (XER)