ASN.1

Un article de Wikipédia, l'encyclopédie libre.
Aller à : Navigation, rechercher
Pile de protocoles
7. Application
6. Présentation
5. Session
4. Transport
3. Réseau
2. Liaison
1. Physique

Modèle Internet
Modèle OSI

ASN.1 (Abstract Syntax Notation One) est un standard international spécifiant une notation destinée à décrire des structures de données dans le secteur des télécommunications et des réseaux informatiques. La description en ASN.1 d'une structure de données a pour but d'obtenir une spécification de la structure qui est indépendante d'un encodage lié à un matériel particulier et sans ambiguïté.

L'ASN.1 est un standard défini conjointement par l'organisation internationale de normalisation, la commission électrotechnique internationale et l'union internationale des télécommunications.

Sommaire

Historique [modifier]

À l'origine, ce standard est spécifié en 1984 dans une partie du standard CCITT X.409:1984. Toutefois, en 1988, faisant suite à son large usage, la spécification de l'ASN.1 devient l'objet du document CCITT X.208. Finalement, ce document sera retiré en 2002 et le standard ASN.1 est maintenant décrit par les documents X.680 à X.683 mis à jour en 2009 (les documents ISO/IEC ont pour références 8824-1 à 8824-4). Plusieurs encodages de l'ASN.1 font l'objet des standards X.690 à X.695, notamment, les encodages BER, CER et DER sont spécifiés par le X.690.

Caractéristiques [modifier]

Il existe plusieurs encodages pour les données décrites par l'ASN.1, par exemple les encodages BER, DER ou encore CER.

Exemple [modifier]

Client ::= SEQUENCE {
  nom PrintableString (SIZE (1..40)),
  rue PrintableString (SIZE (1..50)) OPTIONAL,
  codepostal NumericString (SIZE (10)),
  ville PrintableString (SIZE (1..30)),
  pays PrintableString (SIZE (1..20))
          DEFAULT pays-pardefaut }
  pays-pardefaut PrintableString ::= "France"

Domaines d'application [modifier]

Ce standard est mis en œuvre dans un grand nombre d'applications (gestion de réseaux, messagerie, sécurité, téléphonie, Internet, etc.).

L'ASN.1 est par ailleurs l'un des formats utilisés par le NCBI.

Implémentations [modifier]

GNU Libtasn1 [modifier]

GNU Libtasn1[1] est une bibliothèque C permettant la manipulation d'objets ASN.1, y compris pour les encodages BER/DER. C'est un logiciel libre écrit à l'origine par Fabio Fiorina et aujourd'hui maintenu pour le projet GNU par Simon Josefsson et Nikos Mavrogiannopoulos. Cette brique logicielle est utilisée par GnuTLS pour traiter la structure de certificats X.509 et par GNU Shishi pour le traitement de structures Kerberos version 5.

Notes et références [modifier]

  1. (en) Nikos Mavrogiannopoulos (24-11-2012), « GNU Libtasn1 3.1 released », info-gnu..

Voir aussi [modifier]

Article connexe [modifier]

Liens externes [modifier]