| |||||||||
In telecommunications and computer networking abstract syntax notation one (ASN.1) is a standard, flexible method that describes data structures for representing, encoding, transmitting, and decoding data. It provides a set of formal rules for describing the structure of objects independent of machine-specific encoding techniques and is a precise, formal notation that removes ambiguities.
ASN.1 is an ISO/ITU-T standard, originally defined in 1984 as part of CCITT X.409 '84. ASN.1 moved to its own standard, X.208, in 1988 due to wide applicability. The substantially revised 1995 version is covered by the X.680 series.
ASN.1 defines the abstract syntax of information but does not restrict the way the information is encoded. Various ASN.1 encoding rules provide the transfer syntax (a concrete representation) of the data values whose abstract syntax is described in ASN.1. The standard ASN.1 encoding rules include BER (Basic Encoding Rules - X.209), CER (Canonical Encoding Rules), DER (Distinguished Encoding Rules), and PER (Packed Encoding Rules).
ASN.1 together with specific ASN.1 encoding rules facilitates the exchange of structured data especially between application programs over networks by describing data structures in a way that is independent of machine architecture and implementation language.
Application layer protocols such as X.400 electronic mail, X.500 directory services, H.323 (NetMeeting) and SNMP use ASN.1 to describe the PDUs they exchange. It is also extensively used in the Access and Non-Access Strata of UMTS.
It is considered equivalent to the more modern XML (which is also used by several Internet protocols).
The Sample Neufeld ASN.1 Compiler to C/C++ (Federal Standard 1037C
This article was originally based on material from the Free On-line Dictionary of Computing and is used under the GFDL.