language, standard, protocol
(ASN.1, X.208, X.680) An ISO/ITU-T standard for transmitting structured data on networks, 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.
OSI Application layer protocols such as X.400 MHS electronic mail, X.500 directory services and SNMP use ASN.1 to describe the PDUs they exchange.
Documents describing the ASN.1 notations: ITU-T Rec. X.680, ISO 8824-1; ITU-T Rec. X.681, ISO 8824-2; ITU-T Rec. X.682, ISO 8824-3; ITU-T Rec. X.683, ISO 8824-4
Documents describing the ASN.1 encoding rules: ITU-T Rec. X.690, ISO 8825-1; ITU-T Rec. X.691, ISO 8825-2.
[M. Sample et al, "Implementing Efficient Encoders and Decoders for Network Data Representations", IEEE Infocom 93 Proc, v.3, pp. 1143-1153, Mar 1993. Available from Logica, UK].
See also snacc.