ASN1

ASN1

Die Abstract Syntax Notation One (ASN.1) ist eine Beschreibungssprache zur Definition von Datenstrukturen sowie Festlegungen zur Umsetzung von Datenstrukturen und Elementen in ein netzeinheitliches Format. Sie ist gemeinsamer Standard der ITU-T (International Telecommunication Union – Telecommunication Standardization Sector) und der ISO (Internationale Organisation für Normung).

Der Standard dient der abstrakten Beschreibung von Datentypen, ohne auf die rechnerinterne Darstellung einzugehen. Die Notation ist in den ITU-T-Standards X.680ff definiert. Die zugehörigen Standards X.690ff definieren verschiedene Encoding Rules (Kodierungsregeln), wie die ASN.1-Datenwerte auf Bit-Ebene kodiert werden. Mit Hilfe von ASN.1 und einer gemeinsamen Encoding Rule können Systeme mit unterschiedlichen internen Datendarstellungen Nachrichten austauschen.

ASN.1 ist eine verbreitete Möglichkeit, die Nachrichtenelemente von Protokollen des OSI-Modells eindeutig zu beschreiben und wird von OSI-konformen Techniken wie X.500 und X.509, aber auch von Internetprotokollen wie SNMP oder LDAP verwendet. Breite Anwendung findet ASN.1 auch im Telekommunikationsbereich, z. B. bei den Standards GSM für die Abrechnung von Roaminggesprächen in TAP3-Dateien und UMTS.

Meist werden in ASN.1 spezifizierte Daten mit den einfach zu handhabenden Basic Encoding Rules (BER) kodiert. In Bereichen, bei denen eine platzsparende Kodierung erwünscht ist (zum Beispiel Mobilfunk), werden die Packed Encoding Rules (PER) bevorzugt. Weiterhin existieren die injektiven Canonical Encoding Rules (CER) und Distinguished Encoding Rules (DER), wobei letztere weiter verbreitet sind. Die Distinguished Encoding Rules sind eine Untermenge der BER und sind eine Codierung von ASN.1-Datenbeschreibungen, die auf Bitebene völlig eindeutig ist. Es gibt in DER also im Unterschied zu den BER für jeden ASN.1-Wert nur eine mögliche Codierung. Damit eignen sie sich für Fälle, in denen ASN.1-Daten digital signiert werden müssen und/oder plattformübergreifend ausgetauscht werden sollen, beispielsweise in digitalen Zertifikaten (siehe X.509).

Syntax und Semantik

ASN.1 wird in einer BNF-ähnlichen Darstellung beschrieben, z. B.:

Record ::= SEQUENCE { 
 kopf  Header,
 daten Data OPTIONAL
 }
Header ::= IA5String
Data ::= SET OF INTEGER

Im nächsten Beispiel wird ein Modul vereinbart. Es ist möglich dieses Modul auch mittels eines Object Identifiers zu finden. Dies geschieht indem man dem Modul eine Object Reference anlegt, z. B.:

Modul-name {1} DEFINITIONS ::= 
BEGIN 

 Daten-struktur ::= SEQUENCE 
  { 
   teil  INTEGER,
   fragment IA5String
  }   

END

Wie in diesem Beispiel ersichtlich ist, wird vor dem Begriff DEFINITIONS mittels der geschwungenen Klammern eine Objektreferenz, also eine ID angelegt. Die Objektreferenz verweist in einem Baum von Referenzen bzw. Vereinbarungen das richtige Objekt zu finden. Die ID aus diesem Beispiel verweist auf die erste Wurzel in der ersten Ebene der Verweisstruktur. Module, also ein Modul wie es oben vereinbart worden ist, sind nötig um eine Vereinbarung zu treffen wie Daten übertragen werden sollen. Daten, die wie das Beispiel es zeigt definiert werden, werden wie folgt übertragen: { 2, "Teil2" }.

ASN.1 kennt dazu

  • Elementare Typen, z. B.
    • BOOLEAN
    • INTEGER
    • BIT STRING (binäre Zeichenfolge)
    • IA5String (nach IA5-Tabelle kodierte Zeichenfolge, siehe ISO 646)
  • Zusammengesetzte Typen, z. B.
    • SEQUENCE (geordnete Abfolge verschiedener Typen)
    • SEQUENCE OF <Typ> (geordnete Abfolge gleichen Typs)
    • SET (ungeordnete Abfolge verschiedener Typen)
    • SET OF <Typ> (ungeordnete Abfolge gleichen Typs)
    • CHOICE (Summentyp)
  • Spezielle Datentypen, z. B.

Standards

  • X.208: ersetzt durch X.680
  • X.209: ersetzt durch X.690
  • X.680: Specification of Basic Notation
  • X.681: Information Object Specification
  • X.682: Constraint Specification
  • X.683: Parameterization of ASN.1 Specifications
  • X.690: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)
  • X.691: Specification of Packed Encoding Rules (PER)
  • X.692: Specification of Encoding Control Notation (ECN)
  • X.693: XML Encoding Rules
  • X.694: Mapping W3C XML Schema Definitions into ASN.1

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • ASN1 — ASN.1 Pile de protocoles 7 • Application 6 • Présentation 5 • Session 4 • Transport …   Wikipédia en Français

  • ASN1 — abbr. Abstract Syntax Notation One (OSI, ISO, IS 8824) Syn: ASN.1 …   United dictionary of abbreviations and acronyms

  • Abstract Syntax Notation One — In telecommunications and computer networking, Abstract Syntax Notation One (ASN.1) is a standard and flexible notation that describes data structures for representing, encoding, transmitting, and decoding data. It provides a set of formal rules… …   Wikipedia

  • ASN.1 — Die Abstract Syntax Notation One (ASN.1) ist eine Beschreibungssprache zur Definition von Datenstrukturen sowie Festlegungen zur Umsetzung von Datenstrukturen und Elementen in ein netzeinheitliches Format. Sie ist gemeinsamer Standard der ITU T… …   Deutsch Wikipedia

  • Distinguished Encoding Rules — Die Abstract Syntax Notation One (ASN.1) ist eine Beschreibungssprache zur Definition von Datenstrukturen sowie Festlegungen zur Umsetzung von Datenstrukturen und Elementen in ein netzeinheitliches Format. Sie ist gemeinsamer Standard der ITU T… …   Deutsch Wikipedia

  • Chemical file format — This article discusses some common molecular file formats, including usage and converting between them. Contents 1 Distinguishing formats 2 Chemical Markup Language 3 Protein Data Bank Format 4 G …   Wikipedia

  • ISO 9834 — In der Informatik ist ein Object Identifier (OID) ein weltweit eindeutiger Bezeichner, der benutzt wird um ein Informationsobjekt zu benennen (vgl. URN). Ein OID stellt einen Knoten in einem hierarchisch zugewiesenen Namensraum dar, der durch den …   Deutsch Wikipedia

  • Basic Encoding Rules — The Basic Encoding Rules (BER) is one of the encoding formats defined as part of the ASN.1 standard specified by the ITU in X.690.DescriptionThe Basic Encoding Rules were the original rules laid out by the ASN.1 standard for encoding abstract… …   Wikipedia

  • Fast Infoset — (or FI) is an international standard that specifies a binary encoding format for the XML Information Set ( XML Infoset ) as an alternative to the XML document format. It aims to provide more efficient serialization than the text based XML… …   Wikipedia

  • Transaction Capabilities Application Part — Transaction Capabilities Application Part, from ITU T recommendations Q.771 Q.775 or ANSI T1.114 is a protocol for Signalling System 7 networks. Its primary purpose is to facilitate multiple concurrent dialogs between the same sub systems on the… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”