Товары в корзине: 0 шт Оформить заказ
Стр. 1 

47 страниц

В настоящем стандарте определен набор правил уплотненного кодирования, который может быть использован для получения синтаксиса передачи значений типов, определенных в ГОСТ Р ИСО/МЭК 8824-1. Правила уплотненного кодирования также применимы для декодирования указанного синтаксиса передачи с целью идентификации переданных значений данных.

Правила кодирования, определенные в настоящем стандарте:

- используются во время передачи;

- предназначены для использования в случаях, когда при выборе правил кодирования большое значение имеет минимизация размера представления значений;

- допускают расширение абстрактного синтаксиса путем добавления дополнительных значений, сохраняя кодирование существующих значений, для всех видов расширения, описанных в ГОСТ Р ИСО/МЭК 8824-1

 Скачать PDF

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16
Стр. 17
стр. 17
Стр. 18
стр. 18
Стр. 19
стр. 19
Стр. 20
стр. 20
Стр. 21
стр. 21
Стр. 22
стр. 22
Стр. 23
стр. 23
Стр. 24
стр. 24
Стр. 25
стр. 25
Стр. 26
стр. 26
Стр. 27
стр. 27
Стр. 28
стр. 28
Стр. 29
стр. 29
Стр. 30
стр. 30

ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Информационная технология ПРАВИЛА КОДИРОВАНИЯ АСНЛ

Часть 2

Спецификация правил уплотненного кодирования (PER)

БЗ 4-2002/58


И здание официальное

ГОССТАНДАРТ РОССИИ Москва

Предисловие

1    РАЗРАБОТАН Федеральным государственным унитарным предприятием Государственный научно-исследовательский и конструкторско-технологический институт «ТЕСТ* Министерства Российской Федерации по связи и информатизации

ВНЕСЕН Министерством Российской Федерации по связи и информатизации

2    ПРИНЯТ И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от 13 мая 2003 г. № 141-ст

3    Настоящий стандарт содержит полный аутентичный текст ИСО/МЭК 8825-2—98 - Информационная технология. Правила кодирования АСН.1. Часть 2. Спецификация правил уплотненного кодирования (PER)» с Изменением № I (1999 г.) и Дополнением № I (2000 г.)

4    ВВЕДЕН ВПЕРВЫЕ

© И ПК Издательство стандартов. 2003

Настоящий стандарт не может быть полностью или частично воспроизведен, тиражирован и распространен в качестве официального издания без разрешения Госстандарта России

II

ГОСТ Р ИСО/МЭК 8825-2—2003

Солержание

1    Область применения......................................................1

2    Нормативные ссылки......................................................I

3    Определения............................................................2

3.1    Определение услуг уровня представления...................................2

3.2    Спецификация основной нотации.........................................2

3.3    Спецификация информационного объекта..................................2

3.4    Спецификация ограничения.............................................2

3.5    Спецификация параметризации ACH.I.....................................2

3.6    Правша основною кодирования..........................................2

3.7    Дополнительные определения............................................2

4    Сокращения.............................................................5

5    Нотация................................................................5

6    Соглашения.............................................................5

7    Правша кодирования, определенные в настоящем стандарте........................6

8    Соответствие............................................................7

9    Подход к кодированию, используемый PER.....................................7

9.1    Применение нотации типа...............................................7

9.2    Использование тегов для обеспечения канонического порядка...................7

9.3    Видимые для PER ограничения...........................................7

9.4    Модель типа и значения, используемые для кодирования.......................9

9.5    Структура кода.......................................................9

9.6    Кодируемые типы.....................................................10

10    Процедуры кодирования...................................................10

10.1    Сохтаиис полного кодирования..........................................10

10.2    Поля открытого типа..................................................10

10.3    Кодирование как неотрицательное двоичное целое...........................II

10.4    Кодирование как двоично-дополнительное до 2 целое.........................II

10.5    Кодирование ограниченного целого числа..................................12

10.6    Кодирование обычно маленькою неотрицательною целою числа................13

10.7    Кодирование полуограниченного целого числа..............................13

10.8    Кодирование неограниченного целого числа................................13

10.9    Общие правша кодирования детерминанта шины............................14

11    Кодирование булевского типа...............................................16

12    Кодирование целочисленного типа...........................................17

13    Кодирование перечислимого типа............................................17

14    Кодирование действительною типа...........................................18

15    Кодирование типа «битовая строка»...........................................18

16    Кодирование типа «строка октетов»...........................................19

17    Кодирование вырожденного типа.............................................20

18    Кодирование типа «последовательность».......................................20

III

19    Кодирование типа «последовательность-из».................................... 21

20    Кодирование типа «множество»............................................. 22

21    Кодирование типа «множество-из»........................................... 22

22    Кодирование выборочного типа............................................. 23

23    Кодирование типа «идентификатор объекта».................................... 23

24    Кодирование типа «встроенное-здп».......................................... 24

25    Кодирование значения внешнего типа........................................ 24

26    Кодирование ограниченных типов симводьных строк............................. 25

27    Кодирование неограниченного типа симводьных строк............................ 27

28    Идентификаторы объектов синтаксисов передачи................................ 28

Приложение А Пример кодирования........................................... 29

А. 1 Запись, которая не использует ограничения подтипа.......................... 29

А.2 Запись, которая использует ограничения подтипа............................ 31

А.З Запись, используемая маркеры расширения................................. 34

А.4 Запись, которая использует расширяющие дополнительные группы............... 37

Приложение В Объединения видимых для PER ограничений......................... 40

Приложение С Поддержка алгоритмов PER...................................... 41

Приложение D Поддержка правил расширения АСЫ. I.............................. 42

Приложение Е Руководство по сцеплению кодирований PER......................... 42

Приложение F Присвоенные значения идентификаторов объектов..................... 42

IV

ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Информационная технология ПРАВИЛА КОДИРОВАНИЯ АСИЛ Ч а с т ь 2

С пецификация правил уплотненного кодирования (РЕК)

Information technology. ASM. I encoding rules.

Part 2. Specification of Packed Encoding Rules (PER)

Дата введения 2004-07-01

1    Область применения

В настоящем стандарте определен набор правил уплотненного кодирования, который может быть использован ятя получения синтаксиса передачи значений типов, определенных в ГОСТ Р ИСО/МЭК 8824-1. Правила уплотненного кодирования также применимы ятя декодирования указанного синтаксиса передачи с целью идентификации переданных значений данных.

Правила кодирования, определенные в настоящем стандарте:

-    используются во время передачи;

-    предназначены ятя использования в случаях, когда при выборе правил кодирования большое значение имеет минимизация размера представления значений;

-    допускают расширение абстрактного сингаксиса путем добавления дополнительных значений. сохраняя кодирование существующих значений, ятя всех видов расширения, описанных в ГОСТ Р ИСО/МЭК 8824-1.

2    Нормативные ссылки

В настоящем стандарте использованы ссылки на следующие стандарты:

ГОСТ 34.971-91 (ИСО 8822—88) Системы обработки информации. Взаимосвязь открытых систем. Спецификация услуг уровня представления ятя режима с установлением соединения (см. также Рекомендацию МСЭ-Т X. 216)

ГОСТ 34.972-91 (ИСО 8823—88) Системы обработки информации. Взаимосвязь открытых систем. Спецификация протокола уровня представления ятя режима с установлением соединения (см. также Рекомендацию МСЭ-Т X. 226)

ГОСТ Р ИСО/МЭК 7498-1—97 Информационная технология. Взаимосвязь открытых систем. Базовая эталонная модель. Часть I. Базовая модель (см. также Рекомендацию МСЭ-Т X. 200)

ГОСТ Р ИСО/МЭК 8824-1—2001 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН. I). Часть I. Спецификация основной нотации (см. также Рекомендацию МСЭ-Т X. 680)

ГОСТ Р ИСО/МЭК 8824-2—2001 Информационная технология. Абстрактная синтаксическая нотация версии один (ACM. I). Часть 2. Спецификация информационного объекта (см. также Рекомендацию МСЭ-Т X. 681)

ГОСТ Р ИСО/МЭК 8824-3—2002 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН. I). Часть 3. Спецификация ограничения (см. также Рекомендацию МСЭ-Т X. 682)

ГОСТ Р ИСО/МЭК 8824-4—2003 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН. 1). Часть 4. Параметризация спецификаций АСН. I (см. также Рекомендацию МСЭ-Т X. 683)

11 мин нс официальное

ГОСТ Р ИСО/МЭК 8825-1—2003 Информационная технология. Правила кодирования АСН. I. Спецификация правил основного (BER). канонического (СЕЮ и различающего (DER) кодирований (см. также Рекомендацию МСЭ-Т X. 690)

ИСО/МЭК 10646-1—93* Информационная технология. Универсальный, многооктетный кодовый набор символов (UCS). Часть I. Архитектура и основная многоязычная плоскость

ИСО/МЭК 646—91* Ин(|юрмаииониая технология. 7-битнокодированный набор символов ИСО для обмена информацией

3 Определения

В настоящем стандарте используют следующие термины с соответствующими определениями.

3.1    Определение услуг у ровня представления

В настоящем стандарте используют следующие термины, определенные в ГОСТ 34.971:

а)    множество определенных контекстов:

б)    идентификатор контекста уровня прсдставдсния.

3.2    Спецификация основной нотации

В настоящем стандарте используют все определения из ГОСТ Р ИСО/МЭК 8824-1.

3.3    Спецификация информационного объекта

В настоящем стандарте используют все определения из ГОСТ Р ИСО/МЭК 8824-2.

3.4    Спецификация ограничения

В    настоящем    стандарте    используют    следующие    термины,    определенные    в

ГОСТ Р ИСО/МЭК 8824-3:

а)    ограничение свяш компонентов:

б)    табличное ограничение.

3.5    Спецификация    параметризации ЛСН. I

В    настоящем    стандарте    используют    следующий    термин,    определенный    в

ГОСТ Р ИСО/МЭК 8824-4. — переменит* ограничение.

3.6    Правила основного кодирования

В    настоящем    стандарте    используют    следующие    термины,    определенные    в

ГОСТ Р ИСО/МЭК 8825-1:

а)    динамическое соответствие:

б)    статическое соответствие:

в)    значение данных;

г)    кодирование (значений данных);

д)    отправитель;

е)    получатель.

3.7    Дополнительные определения

В настоящем стандарте используют следующие определения:

3.7.1    двоично-дополнительное до 2 целое кодирование: Кодирование целого числа в выровненном по октету поле битов заданной длины или в количестве октетов, минимально необходимом для размещения этого числа, закодированного как целое двоичное дополнение до 2. обеспечивающее представление целых чисел, которые равны, больше зет меньше нуля, как определено в 10.4.

Г1 р 31 м с ч а н и я

1    Значение целого двоичного дополнения числа до 2 получается путем нумерации битов в октетах содержимого, начиная с бита I последнего октета как бита 0 и заканчивая битом 8 первого октета. Каждому биту присваивается числовое значение 2\ где .V— номер бита в описанной выше нумерации. Значение целого двоичного дополнения чиста до 2 получается суммированием присвоенных числовых значений тех битов, которые равны единице, исключая бит 8 первого октета. 13 последующего уменьшения этой суммы на числовое значение, присвоен иск биту 8 первого октета, если тот бит равен единице.

2    Целое число в данном контексте является синонимом математического термзнза «целое число». Его следует отличать от цслоч мелен кого типа integer АСН. I.

3.7.2    з1зачснис абстрактного синтаксиса: Значение из абстрактного синтаксиса (определенного как множество значений единственного типа АСН. I). которое должно быть закодировано PER или которое должно быть получено декодированием PER.

Международные стандарты — во ВНИИКИ Госстандарта России.

ГОСТ I» ИСО/МЭК 8825-2-2003

Примем а и и с — Единственный тип ACII.I. связанный с абстрактным синтаксисом, формально идентифицируется объектом класса ABS-TRACT-SYNTAX.

3.7.3    битовое пате: Результат некоторой части метода кодировании, состоящий из упорядоченного набора битов, число которых не обязательно кратно восьми и которые в полном кодировании значения абстрактного синтаксиса не обязательно начинаются на границе октета.

3.7.4    каноническое кодирование: Полное кодирование значения абстрактного синтаксиса, полученное применением правил кодирования, которые не имеют зависящих от реализации опции; такие правила приводят к определению однозначного отображения между недвусмысленными и уникальными битовыми строками в синтаксисе передачи и значениями в абстрактном синтаксисе.

3.7.5    составной тип: Тип «множество», «последовательность», «множество-из», «последователь-ность-из», «встроенное-здп», выборочный, внешний или неограниченный тип символьных строк.

3.7.6    составное значение: Значение составного типа.

3.7.7    ограниченное целое число: Целое число, которое ограничено видимым для PER требованием. находится в диапазоне от lb до ub. где 1Ь меньше или равно ub. и значения lb и ub являются допустимыми.

При меч а и и е — Ограниченные целые числа встречаются в кодировании, идентифицирующем: выбранную альтернативу из выборочного типа, длину строк символов, октетов и битов, которая ограничена некоторой максимальной длиной видимым для РЕК образом, счетчик числа компонентов в типе • Поспелова-тсдыюсть-из» или «множссгво-из». максимальное число которых ограничено видимым для РЕК образом, значение целочисленного типа, которое ограничено видимым для РЕК обра юм. и значение, которое обо значает перечисление в перечислимом типе.

3.7.8    эффективное ограничение ра змера (для ограничения типов строк): Единственное конечное ограничение размера, которое может быть применено к встроенному типу строки, результатом которого является допущение всех строк и только тех длин, которые могут иметь строкз! ограничиваемого типа.

П р и м с ч а н и с — Например, следующая нотация имеет эффективное ограничение размера:

К lASString (SIZE(l..4)|SIZE(10..IS»t так как она может быть переписана с единственным ограничением размера, который относится ко всем значениям:

А :: = lASString (SIZE(I..4Ц0..15». тогда как следующая нотация нс имеет эффективного ограничения размера, гак как строка может быть прои (вольной .пины, сети она не содержит никаких символов, кроме ’а’, 'Ь' и 'с*:

В :: = lASString (SIZE! 1..4>|1КОМ («abc»))

3.7.9    эффективное ограничение допустимого алфавита «PermHtedAJphabct* (для ограниченных типов символьных строк): Единственное ограничение PermittedAlphabet. которое может быть применено к встроенному типу символьной строки известной кратности, результатом которого является допущение всех строк, содержащих только те символы, которые могут присутствовать в любой позиции любого значения ограниченного типа символьных строк.

Примечание —Ограничением эффективного допустимого алфавита (PermittedAlphabet) является либо весь алфавит неограниченного типа символьных строк, либо спецификация PermittedAlphabet. которая может оказаться супсрмножсством всех ограничений PermittedAlphabet. наложенных на пт. Например, в

Ах :: = lASString (FROM («АВ»)|1 ROM («CD»))

Вх :: - lASString (SIZE (l..4)|FROM («abc»))

•Ах» имеет эффективное ограничение PermittedAlphabet. которое состоит из веек» алфавита lASString. гак как пег ограничения PermittedAlphabet. применимого ко всем значениям «Ах». То же самое справедливо и для -Вх«. С другой стороны, следующий пример имеет эффективное ограничение PermittedAlphabet «ABCDE». гак как существует ограничение PermittedAlphabet. применимое ко всем значениям:

А :: - lASString (FROM («AB-)|FROM («CD»)|FROM («ABCDE»))

3.7.10    индекс перечисления: Неотрицательное целое число, связанное с «EnumerationItem» в перечислимом типе. Индексы перечисления определяются сортировкой «EnumerationItem» в возрастающем порядке их значений перечисления и назначением индексов перечисления, начиная с нуля для первого «Enumerationltem», единицы — для второго, и далее до последнего «Enumerationltem» в отсортированном перечне.

Примечание — «Enumerationltem- в «RootEnumeracion- сортируются отдельно от элементов перечисления в -AdditionalEnumcracion-.

3

3.7.11    расширяемый для кодирования PER: Свойство типа, определение которого содержит маркер расширения, влияющий на кодирование PER.

3.7.12    список полей: Упорядоченное множество значений битовых полей и (или) выровненных по октету битовых полей, которые создаются в результате применения настоящих правил кодирования для компонентов значения.

При м е ч а и и е — В модели, применяемой в настоящем стандарте, использован термин «список полей» для указания связанного списка буферов, каждый из которых содержит кодирование «битового поля» иди •выровненного по октету битового поля», его длину в битах и указатель выравнивания по октету. Каждое кодирование является кодированием значения типа АСИ. I. Указатель выравнивания по октету сообщает, должно ли кодирование был. выравнено в полном кодировании по границе октета, когда оно используется для формирования полного кодирования значения абстрактного синтаксиса, или оно должно быть добавлено непосредственно после последнего бита предыдущего кодирования. Термин «список полей» существует только для целей описания, а не предлагает метод реализации.

3.7.13    неопределенная .глина: Кодирование, длина которого более 64К—1 или максимальная длина которого нс может быть определена из нотации АСН. I.

3.7.14    тип фиксированной длины: Тип. в кодировании которого крайнее значение детерминанта длины может быть определено (используя методы, установленные в настоящем стандарте) из нотации типа (после применения ограничений, видимых для PER), и ло значение относится ко всем допустимым значениям типа.

3.7.15    фиксированное значение: Значение, которое может быть определено (используя методы, установленные в настоящем стандарте) как единственное допустимое значение (после применения ограничений, видимых для PER) управляющего типа.

3.7.16    тип символьной строки известной кратности: Ограниченный тип символьной строки, число октетов в кодировании которой для всех допустимых значений символьной строки равно произведению известного фиксированного числа на число символов в строке. Типами символьных строк известной кратности являются IASString. PrintableString, VisibleString. NumericString, Univcr-salString и BMPString.

3.7.17    детерминант длины: Счетчик (битов, октетов, символов или компонентов), определяющий длину части или всего кодирования PER.

3.7.18    обычно маленькое неотрицательное целое число: Часть кодирования, которая представляет значения неограниченного неотрицательного целого, в которой маленькие значения встречаются с большей вероятностью, чем большие.

3.7.19    обычно маленькая длина: Длина кодирования, которая представляет значения неограниченной длины, маленькие значения которой встречаются с большей вероятностью, чем большие.

3.7.20    выровненное по октету битовое поле: Результат некоторой части метода кодирования, состоящий из упорядоченного набора битов, число которых не обязательно кратно восьми, но которые в полном кодировании значения абстрактного синтаксиса должны начинаться на границе октета.

3.7.21    неотрицательное двоичное целое кодирование: Кодирование ограниченного или полуог-ранмченного целого числа либо в битовом поле заданной длины, либо в выровненном по октету битовом поле заданной длины, либо в минимальном количестве октетов, в которых поместится зло целое число, закодированное как неотрицательное двоичное целое, обеспечивающее представление для целых чисел, больших или равных нулю, как установлено в 10.3.

Примечание — Значение дополнения ло 2 двоичного числа получается нумерацией битов в октетах содержимого, начиная с бит 1 последнего октет как бита 0 и {оканчивая битом 8 первого октет. Каждому бигу присваивается числовое И1аченмс 2 , тле N — номер бит в описанной выше нумерации. Значение дополнения ло 2 двоичного числа получается суммированием присвоенных числовых значений битов, равных единице.

3.7.22    видимое для PER ограничение: Использовании нотации ограничения АСН. I. которое влияет на кодирование значения PER.

3.7.23    надежно передающее кодирование: Полное кодирование значения абстрактного синтаксиса. которое может быть декодировано (включая любые вложенные кодировании) без знания множества определенных контекстов уровня представления, формирующих среду, в которой было выполнено кодирование.

3.7.24    полуограниченное целое число: Целое число, ограниченное видимым для PER образом

ГОП I» ИСО/МЭК 8825-2-2003

так, что оно должно быть больше или равно некоторому значению lb. но нс являющееся ограниченным целым числом.

Примечание — Палуограниченные целые числа встречаются в кодировании: длин неограниченных (или некоторых ограниченных) типов строк символов, октетов и битов, счетчиков числа компонентов в неограниченных (или некоторых ограниченных) типах «послсдоватслыюсть-из», «множество-из» и значений иелочистейного типа, ограниченных тем. что должны быть больше некоторого минимального значения.

3.7.25    простой тип: Тип. не яатяюшийся составным.

3.7.26    текстуально тавиенмый: Применяется для идентификации случая, когда некоторое ссылочное имя используется ятя вычисления множества элементов; значение множества элементов рассматривается как зависящее от этого имени, лаже если фактически сформированное окончательное арифметическое множество не зависит от фактического значения множеств;! элементов, присвоенного ссылочному имени.

Примечание — Например следующее определение «Foo* текстуально ы висит or -Ваг*, хотя -Ваг» нс влияет на набор шачений «Foo* (таким образом, согласно 9.3.4. ограничение на »Foo» не янлистся видимым ятя PFK. так как ятя -Ваг- устанавливается табличное ограничение, a «Foo» текстуально зависит от «Ваг»).

MY-CLASS :: - CLASS {&name PrintableString. &age INTEGER! WITH SYNTAX (&name. &age}

MyObjcctSct MY-CLASS :: = {{«Jack». 7Ц{«Л11». 5}}

Bar:: = MY CLASS. &age ({MyObjectSetj)

Foo:: - INTEGER (BailL. 100)

3.7.27    неограниченное целое число: Целое число, которое не ограничивается видимым ятя PER образом.

Примечание — Неограниченные целые числа встречаются только при кодировании значений целого

типа.

4    Сокращения

В настоящем стандарте используют следующие сокращения:

АСЫ. I — абстрактная синтаксическая нотация версии I;

ВОС — взаимосвязь открытых систем;

здп — значение данных уровня представления;

BER — правила основного кодирования (Basic Encoding Rules) ACH. I;

PER — правила уплотненного кодирования (Packed Encoding Rules) ACH. I:

CER — правила канонического кодирования (Canonical Encoding Rules) ACH. I;

DER (DER) — правила различающего кодирования (Distinguished Encoding Rules) ACH. I;

I6K - 16384;

32К - 32768;

48K -49152;

64К - 65536.

5    Нотация

В настоящем стандарте использована нотация, определенная в ГОСТ Р ИСО/МЭК 8824-1.

6    Соглашения

6.1    В настоящем стандарте значения октетов в кодировании определены с использованием терминов «старший значащий бит» и «младший значащий бит».

П р и м с ч а н и с — В спецификациях нижних уровней используют ге же самые обошачения язя определения порядка передачи битов в последовательной линии связи или язя распределения битов в параллельных каналах.

6.2    В настоящем стандарте биты октета нумеруют от 8 до I, где бит 8 — «старший значащий бит», а бит I — «младший значащий бит».

6.3    В настоящем стандарте термин «октет» используют вместо термина «восемь бит*. Приме-

нение лого термина нс подразумевает какого-либо выравнивания. Когда речь одет о выравнивании, это явно указывается в настоящем стандарте.

7 Правила кодирования, определенные в настоящем стандарте

7.1    В настоящем стандарте определены четыре правила кодирования (и связанные с ним идентификаторы объектов), которые могут быть использованы для кодирования и декодирования значении абстрактного синтаксиса, определенного как значения одного (известного) типа АСН. 1. Настоящий раздел описывает эти правила и их свойства.

7.2    Без знания типа закодированного значения невозможно определить структуру кодирования (по любому из алгоритмов правил кодирования PER). В частности, коней кодирования не может быть определен из самого кодирования без знания типа закодированного значения.

7.3    Кодирование PER всегда является надежно передающим при условии, что абстрактные значения типов EXTERNAL. EMBEDDED PDV и CHARACTER STRING не содержат идентификаторы контекста уровня представления.

7.4    Алгоритмом наиболее общего правила кодирования, из определенного в настоящем стандарте, является BASIC-PER, который в общем случае не приводит к каноническому кодированию.

7.5    Вторым алгоритмом правила кодирования, определенным в настоящем стандарте, является CANONICAL-PER, который приводит к каноническим кодированиям. Он определен как ограничение на зависящие от реализации альтернативы в кодировании BASIC-PER. CANONICAL-PER приводит к каноническим кодированиям, которые применяются, когда к абстрактным значениям необходимо применять аутентификаторы, как описано в ГОСТ Р ИСО/МЭК 8825-1.

Приме ч а и и с — Любая реал и зация. соответствующая кодированию CANONICAL-PER. удовлетворяет и кодированию BASIC-PER. Любая реализация, соответствующая декодированию BASIC-PER. удовлетворяет декодированию CANONICAL-PER. Таким образом, кодирования, созданные по CANONICAL-PER. являются кодированиями, которые допускаются BASIC-PER.

7.6    Если тип, кодируемый по BASIC-PER или CANONICAL-PER. содержит типы EMBEDDED PDV. CHARACTER STRING или EXTERNAL, то внешнее кодирование перестает быть надежно передающим, если синтаксис передачи, используемый для всех типов EMBEDDED PDV. CHARACTER STRING и EXTERNAL, не является надежно передающим. Если тип. кодируемый по BASIC-PER или CANONICAL-PER. содержит типы EMBEDDED PDV. CHARACTER STRING или EXTERNAL, то внешнее кодирование перестает быть каноническим, если синтаксис передачи, используемый для всех типов EMBEDDED PDV. CHARACTER STRING и EXTERNAL, не является каноническим.

Примечание — Символьные синтаксисы передачи, поддерживающие все символьные абстрактные синтаксисы вила (iso standard 10646 level-1 (I). . . являются каноническими. Символьные синтаксисы передачи, которые поддерживают {iso standard 10646 level-2 (2). . . .| и {iso standard 10646 level-3 (3). . . .}. не всегда являются каноническими. Все вышеуказанные символьные синтаксисы передачи являются надежно передающими.

7.7    Как BASIC-PER. так и CANONICAL-PER содержат по два варианта: ALIGNED (с выравниванием) и UNALIGNED (без выравнивания). В варианте ALIGNED вставляются заполняющие биты для восстановления выравнивания по октету. В варианте UNALIGNED заполняющие биты никогда не вставляются.

7.8    Между вариантами ALIGNED и UNALIGNED взаимодействие невозможно.

7.9    Кодирование PER является саморазграниченным. только если известен тип кодируемого значения. Кодовые представления всегда кратны восьми битам. При передаче в типе EXTERNAL кодирования должны передаваться в альтернативе OCTET STRING, если только сам тип EXTERNAL не кодируется по PER. когда значение может быть закодировано как единственный тип АСН. I (то есть открытый тип). При передаче в протоколе у ровня представления ВОС должно использоваться •полное кодирование» (как определено в ГОСТ 34.972) с выбранной альтернативой OCTET STRING.

7.10    Правила настоящего стандарта применяют к обоим алгоритмам и вариантам, если не оговорено иное.

7.11    Приложение С является справочным и содержит рекомендации, в каких комбинациях следует реализовывать PER для увеличения вероятности взаимодействия.

6