Интегрированные сети ISDN

         

Одной из наиболее сложных систем



4.4.13.2 Нотация ASN.1

Одной из наиболее сложных систем сегодня являются открытые системы связи OSI (Open System Interconnection). OSI представляет собой достаточно формализованную стандартную архитектуру управления межкомпьютерными коммуникациями. Для описания этой системы была разработана абстрактный синтаксис нотаций ASN.1 (Abstract Syntax Notation; См. A Layman’s Guide to a Subset of ASN.1, BER, and DER. Burton S. Kaliski Jr., RSA Data Security, Inc. Redwood City, CA, 1991). ASN.1 является формальным языком, который обладает двумя основными чертами.

Используемая в документах нотация легко читаема и понимаема, а в компактном кодовом представлении информация может использоваться коммуникационными протоколами. Неотъемлемой частью ASN.1 являются базовые правила кодирования BER (Basic Encoding Rules), которые позволяют определить большое разнообразие типов данных. BER описывает то, как представить или закодировать любую величину в рамках стандарта ASN.1. Практически все величины здесь представляются в виде последовательности 8-битных октетов. Восьмой бит октета всегда считается самым старшим. BER позволяет закодировать величину более чем одним способом. Имеется также поднабор правил кодирования DER (Distinguished Encoding Rules, описаны в документе Х.509), которые определяют однозначные способы кодирования величин ASN.1.

Ниже приведены базовые правила обозначений метасинтаксиса ASN.1.





n
(полужирный курсив) обозначает переменную
[] (квадратные скобки, напечатанные полужирным шрифтом) указывают на то, что терм является опционным.
{} (фигурные скобки, напечатанные полужирным шрифтом) группируют родственные термы.
| (вертикальная черта, напечатанная полужирным шрифтом) выделяет альтернативные значения.
(многоточие,

напечатанное полужирным шрифтом) обозначает повторения.
= (знак равенства, напечатанный полужирным шрифтом) описывает терм как субтерм.
ASN.1 имеет четыре разновидности типов: простые типы, не имеющие компонент, структурные типы, имеющие компоненты, помеченные (tagged) типы, которые получаются из других типов, а также прочие типы, которые включают в себя типы CHOICE и ANY.
Типам и значениям могут присваиваться имена с помощью оператора (::=). Эти имена в дальнейшем могут использоваться для определения других типов и величин.

Все типы ASN.1 кроме CHOICE и ANY имеют метки, которые состоят из класса и неотрицательного кода метки. Типы ASN.1 тождественны, если их числовые метки совпадают. Существует четыре класса меток.

universal для типов, значения которых является неизменным для всех приложений. Эти типы определены в документе Х.208.
application для типов со значением, специфическим для приложений, таких как служба каталогов Х.500. Типы двух разных приложений могут иметь одну и ту же метку и разные значения.
private для типов, которые являются специфическими для данного предприятия.
content-specific для типов со значением, специфическим для данного структурного типа.
Ниже приведена таблица 4.4.13.2.1 типов и их меток универсального класса.


Содержание раздела