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

32 страницы

456.00 ₽

Купить официальный бумажный документ с голограммой и синими печатями. подробнее

Официально распространяем нормативную документацию с 1999 года. Пробиваем чеки, платим налоги, принимаем к оплате все законные формы платежей без дополнительных процентов. Наши клиенты защищены Законом. ООО "ЦНТИ Нормоконтроль".

Наши цены ниже, чем в других местах, потому что мы работаем напрямую с поставщиками документов.

Способы доставки

  • Срочная курьерская доставка (1-3 дня)
  • Курьерская доставка (7 дней)
  • Самовывоз из московского офиса
  • Почта РФ

Устанавливает формат и правила создания, позволяющие пользователям образовывать 128-битные идентификаторы, которые являются либо гарантировано глобально уникальными, либо глобально уникальными с высокой вероятностью.

Универсально уникальные идентификаторы, созданные в соответствии с требованиями настоящего стандарта, пригодны для временного использования с созданием универсально уникальных идентификаторов каждые 100 наносекунд или в качестве постоянных идентификаторов.

Настоящий стандарт разработан на основе более ранних нестандартизированных универсально уникальных идентификаторов и методов их создания и технически идентичен этим ранним спецификациям.

Настоящий стандарт устанавливает основанные на сетевых технологиях процедуры работы уполномоченных по регистрации универсально уникальных идентификаторов.

Настоящий стандарт также устанавливает и допускает использование универсально уникальных идентификаторов (зарегистрированных или незарегистрированных) в качестве компонентов ИДО ниже дуги {joint-iso-itu-t uuid(25)}, что позволяет пользователям создавать ИДО без каких-либо процедур регистрации.

Настоящий стандарт также устанавливает и допускает использование универсально уникальные идентификаторы (зарегистрированных или незарегистрированных) для создания ЕИР

Показать даты введения Admin

Страница 1

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

НАЦИОНАЛЬНЫЙ

СТАНДАРТ

РОССИЙСКОЙ

ФЕДЕРАЦИИ

ГОСТ Р исо/мэк 9834-8-2011

Информационная технология

ВЗАИМОСВЯЗЬ ОТКРЫТЫХ СИСТЕМ. ПРОЦЕДУРЫ РАБОТЫ УПОЛНОМОЧЕННЫХ ПО РЕГИСТРАЦИИ ВОС

Часть 8

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

ISO/IEC 9834-8:2005 Information technology — Open Systems Interconnection —

Procedures for the operation of OSI Registration Authorities —

Part 8: Generation and registration of Universally Unique Identifiers (UUIDs) and their use as ASN.1 Object Identifier components (IDT)

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

Москва

Стандартинформ

2012

Страница 2

Предисловие

Цели и принципы стандартизации в Российской Федерации установлены Федеральным законом от 27 декабря 2002 г. № 184-ФЗ «О техническом регулировании*, а правила применения национальных стандартов Российской Федерации — ГОСТ Р 1.0-2004 «Стандартизация в Российской Федерации. Основные положения*

Сведения о стандарте

1    ПОДГОТОВЛЕН Федеральным государственным унитарным предприятием «Государственный научно-исследовательский и конструкторско-технологический институт «ТЕСТ» (ФГУП «ГосНИИ «ТЕСТ») на основе собственного аутентичного перевода на русский язык международного стандарта, указанного в пункте 4

2    ВНЕСЕН Техническим комитетом по стандартизации ТК22 «Информационные технологии»

3    УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 7 сентября 2011 г. No 256-ст

4    Настоящий стандарт идентичен международному стандарту ИСО/МЭК 9834-8:2005 «Информационная технология. Взаимосвязь открытых систем. Процедуры работы уполномоченных по регистрации ВОС. Часть 8. Создание, регистрация универсально уникальных идентификаторов (УУИд) и их использование в качестве компонентов идентификатора объекта АСН.1» (ISO/IEC 9834-8:2005 «Information technology — Open Systems Interconnection — Procedures for the operation of OS I Registration Authohties — Part 8: Generation and registration of Universally Unique Identifiers (UUIDs) and their use as ASN.1 Object Identifier components»).

Наименование настоящего стандарта изменено относительно наименования указанного международного стан дарта для приведения в соответствие с ГОСТ Р 1.5-2004 (подраздел 3.5).

При применении настоящего стандарта рекомендуется использовать вместоссылочных международных стандартов соответствующие им национальные стандарты Российской Федерации, сведения о которых приведены в дополнительном приложении ДА

5    ВВЕДЕН ВПЕРВЫЕ

Информация об изменениях к настоящему стандарту публикуется в ежегодно издаваемом информационном указателе «Национальные стандарты», а текст изменений и поправок — в ежемесячно издаваемых информационных указателях «Национальные стандарты». В случав пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячно издаваемом информационном указателе «Национальные стандарты». Соотввтспюу-ющая информация, уведомление и тексты размещаются также в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет

© Стандартинформ. 2012

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

и

Страница 3

ГОСТ Р ИСО/МЭК 9834-8—2011

Содержание

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

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

2.1    Идентичные рекомендации | международные стандарты.........................1

2.2    Другие нормативные ссылки...........................................2

3    Термины и определения................................................2

3.1    Нотация АСН.1....................................................2

3.2    Уполномоченные по регистрации........................................2

3.3    Термины сети....................................................2

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

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

5    Обозначения........................................................3

6    Структура и представление УУИд...........................................3

6.1    Структура полей УУИд...............................................3

6.2    Двоичное представление.............................................4

6.3    Представление в виде единственного целого значения ..........................4

6.4    Шестнадцатиричное представление......................................4

6.5    Формальный синтаксис шестнадцатиричного представления......................4

7    Использование УУИд для образования ИДО....................................5

8    Использование УУИд для образования ЕИР....................................5

9    Правила сравнения и упорядочения УУИд....... 5

10    Валидация........................................................6

11    Биты варианта......................................................6

12    Использование полей УУИд и порядок передачи байтов............................6

12.1    Общие положения.................................................6

12.2    Версия........................................................7

12.3    Время.........................................................8

12.4    Временная последовательность........................................8

12.5    Узел..........................................................8

13    Установка полей в основанном на времени УУИд................................9

14    Установка полей основанного на имени УУИд....... 9

15 Установка полей основанного на случайном числе УУИд..........................10

16    Регистрация УУИд и их использование в качестве компонентов ИДО...................10

16.1    Дерево ИДО АСН.1................................................10

16.2    Назначение уполномоченных по регистрации...............................11

16.3    Оплата . ............ 11

16.4    Процедуры регистрации............................................12

16.4.1    Заявление на регистрацию......................................12

16.4.2    Процесс подтверждения.......................................12

in

Страница 4

ГОСТ Р ИСО/МЭК 9834-8—2011

16.4.3 Содержание заявления........................................12

16.5 Сопровождение регистра в сети.......................................12

Приложение А (справочное) Алгоритмы эффективного создания основанных на времени УУИд ... 13

Приложение В (справочное) Свойства основанного на имени УУИд.....................15

Приложение С (справочное) Генерация случайных чисел в системе.....................16

Приложение D (справочное) Пример реализации.................................17

Приложение ДА (справочное) Сведения о соответствии ссылочных международных стандартов ссылочным национальным стандартам Российской Федерации (и действующим

в этом качестве межгосударственным стандартам).....................27

Библиография........................................................28

IV

Страница 5

ГОСТ Р ИСО/МЭК 9834-8—2011 НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Информационная технология

ВЗАИМОСВЯЗЬ ОТКРЫТЫХ СИСТЕМ.

ПРОЦЕДУРЫ РАБОТЫ УПОЛНОМОЧЕННЫХ ПО РЕГИСТРАЦИИ ВОС

Часть 8

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

Information technology. Open systems interconnection. Procedures for the operation of OSI registration authorities. Part 8. Generation and registration of universally unique identifiers (UUIDs) and their use as ASN.1 object identifier

components

Дата введения — 2012—06—01

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

Настоящий стандарт устанавливает формат и правила создания, позволяющие пользователям образовывать 128-битные идентификаторы, которые являются либо гарантированно глобально уникальными. либо глобально уникальными с высокой вероятностью.

Универсально уникальные идентификаторы (УУИд). созданные в соответствии с требованиями настоящего стандарта, пригодны для временного использования с созданием УУИд каждые 100 наносекунд или в качестве постоянных идентификаторов.

Настоящий стандарт разработан на основе более ранних нестандартизированных УУИд и методов их создания и технически идентичен этим ранним спецификациям.

Настоящий стандарт устанавливает основанные на сетевых технологиях процедуры работы уполномоченных по регистрации УУИд.

Настоящий стандарт также устанавливает и допускает использование УУИд (зарегистрированных или незарегистрированных) в качестве компонентов ИДО ниже дуги {joint-iso-itu-t uuid(25)}, что позволяет пользователям создавать ИДО без каких-либо процедур регистрации.

Настоящий стандарт также устанавливает и допускает использование УУИд (зарегистрированных или незарегистрированных) для создания ЕИР.

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

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

2.1 Идентичные рекомендации | международные стандарты

Рекомендация МСЭ-Т Х.660 (2004) | ИСО/МЭК 9834-1:2004 Информационная технология. Взаимосвязь открытых систем. Процедуры работы полномочных органов регистрации ВОС. Часть 1. Общие процедуры

Рекомендация МСЭ-Т Х.680 (2002) | ИСО/МЭК 8824-1:2002 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации

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

1

Страница 6

ГОСТ Р ИСО/МЭК 9834-8—2011

2.2 Другие нормативные ссылки

ИСО/МЭК 8802-3:2000 Информационная технология. Телекоммуникации и информационный обмен между системами. Локальные и городские сети. Специфические требования. Часть 3: Метод многостанционного доступа с обнаружением несущей и предотвращением конфликтов (CSMA/CD) и спецификации физического уровня

ИСО/МЭК 10118-3:2004 Информационная технология. Методы безопасности. Функции хэширования. Часть 3. Специальные функции хэширования

ИСО/МЭК 10646:2003 Информационная технология. Универсальный многооктетный набор кодовых символов (UCS)

FIPS PUB 180-2:2002 Федеральный стандарт обработки информации. Стандарт безопасной хэш-функции (SHS)

IETFRFC 1321 (1992) Алгоритм обработки сообщений MD5

IETF RFC 2141 (1997) Синтаксис URN

3 Термины и определения

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

3.1    Нотация АСН.1

В настоящем стандарте применены следующие термины, определенные в Рекомендации МСЭ-Т Х.680 | ИСО/МЭК 8824-1:

a)    всемирное скоординированное время (Coordinated Universal Time — UTC);

b)    идентификатор объекта (АСН.1).

3.2    Уполномоченные по регистрации

В настоящем стандарте применены следующие термины, определенные в Рекомендации МСЭ-Т Х.660 | ИСО/МЭК 9834-1:

a)    дерево идентификаторов объектов (или дерево ИДО);

b)    регистрация;

c)    уполномоченный по регистрации;

d)    процедуры регистрации.

3.3    Термины сети

В настоящем стандарте применен следующий термин, определенный в ИСО/МЭК 8802-3:

а) адрес КДС.

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

3.4.1    случайное число криптографического качества (cryptographicquality random-number): Случайное или псевдослучайное число, созданное способом, который гарантирует достаточно протяженный диапазон повторно сгенерированных значений для того, чтобы способ был приемлемым для использования в криптографических целях (и используется в этих целях).

3.4.2    версия, основанная на имени (name-based version): УУИд, созданный с использованием криптографического хеширования имени пространства имен и имени в этом пространстве имен.

3.4.3    пространство имен (name space): Система для создания имен объектов, которая гарантирует недвусмысленную идентификацию в пределах этого пространства имен.

Примечание — Примерами пространств имен являются система имен области сети. ЕИР. ИДО. отличающие имена справочника (см. (5)) и зарезервированные слова в языках программирования.

3.4.4    ворсия, основанная на случайном числе (random-number-based version): УУИд. созданный с использованием случайного или псевдослучайного числа.

3.4.5    стандартный вариант УУИд (standard UUID variant): Вариант возможного формата УУИд, установленный настоящим стандартом.

Примечание — Ранее существовали другие спецификации форматов УУИд. отличные от варианта, установленного а настоящем стандарте. УУИд. созданные в соответствии с этими вариантами форматов, являются различными.

3.4.6    версия, основанная на вромени (time-based version): УУИд, в котором уникальность достигается использованием адреса КДС для идентификации системы, а значение времени основано на текущем времени UTC.

Страница 7

ГОСТ Р ИСО/МЭК 9834-8—2011

3.4.7 универсально уникальный идентификатор; УУИд (Universally Unique Identifier; UUID): 128-битовое значение, созданное в соответствии с требованиями настоящего стандарта или в соответствии с одной из ранних спецификаций и являющееся уникальным в различных системах и во времени (см. также 3.4.5).

4    Сокращения

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

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

ГУ ИД — глобально уникальный идентификатор;

ЕИР (URN) — универсальное имя ресурса (Uniform Resource Name);

ИДО — идентификатор объекта АСН.1;

КДС — контропь доступа к среде;

ОС5 — алгоритм 5 обработки сообщений;

УР — уполномоченный по регистрации;

УПР (URL) — универсальное положение ресурса (Uniform Resource Locator);

УУИд (UUID) — универсально-уникальный идентификатор (Universally Unique Identifier);

ХАБ-1 — хеш-алгоритм безопасности 1;

IEEE — Institute of Electrical and Electronics Engineers. Inc. — Институт инженеров-электриков и электронщиков;

UTC — Coordinated Universal Time — всемирное скоординированное время.

5    Обозначения

5.1    В настоящем стандарте установлена последовательность октетов для УУИд в терминах первого и последнего октетов. Первый октет также называется «октет 15», а последний — «октет 0».

5.2    Биты внутри УУИд также пронумерованы от «бит 127» до «бит 0». где бит 127 — старший бит октета 15, а бит 0 — младший бит октета 0.

5.3    На рисунках и в таблицах, представленных в настоящем стандарте, старший октет (и старший бит) помещается слева, что соответствует порядку передачи октетов, при котором самый певый октет передается первым.

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

5.5    Эти обозначения испопьзуются исключительно для целей настоящей спецификации. Пред-ставпение в памяти компьютера не стандартизируется и зависит от системной архитектуры.

6    Структура и представление УУИд

6.1    Структура полей УУИд

6.1.1    УУИд определен как упорядоченная последовательность из шести полей. УУИд определен в терминах сцепления этих полей УУИд. Поля УУИд называются следующим образом;

a)    поле «TimeLow»;

b)    поле «TimeMid»;

c)    поле «VersionAndTimeHigh»;

d)    поле «VariantAndClockSeqHigh»;

e)    поле «ClockSeqLow»;

0 поле «Node».

6.1.2    По определению поля УУИд имеют старшинство в перечисленном выше порядке, где «TimeLow» является самым старшим полем (бит 31 поля «TimeLow» является битом 127 УУИд), а «Node» — самым младшим (бит 0 поля «Node» является битом 0 УУИд).

6.1.3    Содержимое этих полей УУИд определено в терминах целых без знака значений версии, варианта, времени, временной последовательности и узла (фиксированной длины в битах каждое). Установка этих значений представлена в разделе 12, а их отображение в указанные выше поля УУИд —в 12.1.

3

Страница 8

ГОСТ Р ИСО/МЭК 9834-8—2011

Примечание —В качестве частей имен некоторые из полей УУИд (например. TimeLow, TimeMid и TimeHIgh) подразумевают, что последовательный порядок битов в УУИд (от бита 127 до бита 0). полученный из частичного значения целого без знака (например, от бита 59 до бита 0 значения времени Time), не является тем же. что и последовательный порядок битов в этом целом без знака значения. Такой порядок установипся исторически.

6.2 Двоичное представление

6.2.1    УУИд должен быть представлен в виде двоичного значения из 16 октетов, образованного сцеплением в один ипи несколько октетов, закодированных целыми без знака значениями фиксированной длины каждого из его полей. Для каждого поля должно использоваться следующее число октетов:

a)    поле «TimeLow» — четыре октета;

b)    none «TimeMid» — два октета;

c)    none «VersionAndTimeHigh» — два октета;

d)    поле «VariantAndClockSeqHigh» — один октет;

e)    поле «ClockSeqLow» — один октет;

f)    поле «Node» — шесть октетов.

Примечание — Такой порядок полей УУИд является обычным представлением в компьютерных системах и шестнадцатиричном текстовом представлении (см. 6.4).

6.2.2    Старший значащий бит целого без знака каждого поля УУ Ид допжен быть старшим битом его первого октета (октета N — самого старшего октета), а младший бит целого без знака кодирования должен быть младшим битом последнего октета (октета 0 — самым младшим битом).

6.2.3    Поля УУИд должны быть сцеплены в порядке старшинства (см. 6.1.2), где самое старшее попе является первым, а самое младшее — последним.

6.3    Представление в виде единственного целого значения

УУИд может быть представпен в виде единственного целого значения. Для получения единственного цепого значения УУИд 16 октетов двоичного представления следует трактовать как целое без знака кодирование, в котором самым старшим битом целого кодирования является самый старший бит (бит 7) первого из 16 октетов (октета 15). а самым младшим битом — самый младший бит (бит 0) последнего из 16 октетов (октет 0).

Примечание — Единственное целое значение используется тогда, когда УУИд образует часть ИДО. как определено в разделе 7.

6.4    Шестнадцатиричное представление

В шестнадцатиричном формате октеты двоичного формата должны быть представпены в виде строки шестнадцатиричных цифр, с использованием двух шестнадцатиричных цифр на каждый октет двоичного формата, первая из которых является значением четырех старших битов октета 15, вторая — четырех младших битов октета 15 и так далее до последней цифры, которая является значением младших битов октета 0 (см. 6.5). Между шестнадцатиричными представлениями каждой пары смежных полей должен быть вставлен символ HYPHEN-MINUS (45) (см. ИСО/МЭК 10646), за исключением полей «VariantAndClockSeqHigh» и «ClockSeqLow» (см. пример в разделе 8).

6.5    Формальный синтаксис шестнадцатиричного представления

6.5.1    Формальная спецификация синтаксиса шестнадцатиричного представления УУИд дана с помощью расширенной нотации БНФ, опредепенной в Рекомендации МСЭ-Т Х.680 | ИСО/МЭК 8824-1, раздел 5, за исключением того, что отсутствуют пробелы между лексическими единицами.

6.5.2    В спецификации БНФ испопьзуется лексическая единица «hexdigit» и определена следующим образом:

Название лексической единицы — hexdigit.

Лексическая единица «hexdigit» должна состоять из одного из следующих символов;

ABCDEFabcdefOI 23456789

6.5.3    Шестнадцатиричное представление УУИд должно быть следующей продукцией «UUID»:

UUID::=

TimeLow

‘-"TimeMid

VersionAndTimeHigh VariantAndClockSeqHigh ClockSeqLow ■*" Node TimeLow ::=

Страница 9

ГОСТ Р ИСО/МЭК 9834-8—2011

HexOctet HexOctet HexOctet HexOctet TimeMid::=

HexOctet HexOctet VersionAndTimeHigh ::=

HexOctet HexOctet VariantAndClockSeqHigh ::=

HexOctet ClockSeqLow ::=

HexOctet

Node::=

HexOctet HexOctet HexOctet HexOctet HexOctet HexOctet HexOctet ::=

hexdigit hexdigit

6.5.4 Программное обеспечение, создающее шестнадцатиричное представление УУИд, не должно использовать (прописные) буквы верхнего регистра.

Примечание — Рекомендуется, чтобы шестнадцатиричное представление, используемое в любых человекочитаемыхформатах. было ограничено строчными буквами. Однако программное обеспечение, обрабатывающее это представление, обязательно должно принимать как строчные, та* и прописные буквы, какопределено в 6.5.2.

7    Использование УУИд для образования ИДО

ИДО. образованный с использованием УУИд. должен иметь вид:

{joint-iso-itu-t uuid(25) <uuid-single-integer-value>} где <uuid-single-integer-value> — единственное целое значение УУИд. опредепенное в 6.3.

Примечание — Подробности использования УУИд дпя образования ИДО приведены в раздепе 16. а в 16.1.3 приведено руководство по обеспечению уникальности ИДО. созданных таким методом.

8    Использование УУИд для образования ЕИР

ЕИР (см. IETF RFC 2141). образованное с использованием УУИд. должно быть строкой, состоящей из <cum:uuid:» с последующим шестнадцатиричным представлением УУИд. определенным в 6.4.

Пример — Примером строки, представляющей собой УУИд в качестве ЕИР. является Urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6

Примечание — Существует апьтернативный формат ЕИР (см. (6)). но он не рекомендуется для ЕИР. созданных с использованием УУИд. В этом альтернативном формате используется единственное целое значение УУИд. определенное в 6.3. и приведенный выше пример выглядит как «urn:oid:2.25.329800735698586629295641978511506172918*.

9    Правила сравнения и упорядочения УУИд

9.1    Для сравнения двух УУИд значения соответствующих полей (см. 6.1) каждого УУИд сравниваются в порядке старшинства (см. 6.1.2). Два УУИд эквивапентны тогда и только тогда, когда эквивалентны все соответствующие поля.

Примечание 1 — Этот алгоритм сравнения двух УУИд эквивалентен сравнению значений представлений в виде единственного целого, определенного в 6.3.

Примечание 2 — 8 этом сравнении используются физические поля, определенные в 6.1.1. а не значения. перечиспенные в 6.1.3 и определенные в разделе 12 (время, временная поспедоватепьность. вариант, версия и узел).

9.2    УУИд считается больше другого УУИд. если имеет большее значение самого старшего попя, которым эти два УУИд различаются.

9.3    При лексикографическом упорядочении шестнадцатиричных представлений УУИд (см. 6.4) больший УУИд должен следовать за меньшим УУИд.

5

Страница 10

ГОСТ Р ИСО/МЭК 9834-8—2011

10    Валидация

Кроме определения того, корректно ли установлены биты варианта и не относится ли к будущему значение времени, использованное в основанном на времени УУИд (и которое, следовательно, еще не могло быть использовано), отсутствуют способы определения валидности УУИд в каком-либо реальном смысле, и могут встретиться все возможные значения УУИд.

11    Биты варианта

11.1    Биты варианта являются тремя самыми старшими битами (биты 7.6 и 5) октета 7, который, в свою очередь, является самым старшим октетом поля «VariantAndClockSeqHigh».

11.2    Все УУИд, соответствующие требованиям настоящего стандарта, должны иметь следующие биты варианта: бит 7 октета 7 равен 1, бит б октета 7 равен 0. Бит 5 октета 7 является самым старшим битом временной последовательности и должен быть установлен в соответствии с 12.4.

Примечание — Бит 5 приведен здесь как бит варианта потому, что его значением различаются исторически сложившиеся форматы. Строго говоря, он не является частью значения варианта по настоящему стандарту, а котором для варианта испопьзуются топько два бита.

11.3    Информация об использовании других значений битов варианта приведена в таблице 1.

Таблица 1 — Использование битое варианта

Би! 7

Бит в

Би? 5

Описание

0

Зарезервировано для обеспечения обратной совместимости с компанией NCS

1

0

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

1

1

0

Зарезервировано для обеспечения обратной совместимости с компанией Microsoft

1

1

1

Зарезервировано для последующего использования в настоящем стандарте

12 Использование полей УУИд и порядок передачи байтов

12.1    Общие положения

12.1.1    Положения и краткое описание назначения полей УУИд в двоичном представлении приведены в таблице 2.

Таблица 2 — Положения и назначение полей УУИд

Попе

Номера октетов в УУИд

Описание

eTimeLow»

15—12

Младшие биты значения времени (32 бита)

oTimeMId»

11—10

Средние биты значения времени (16 битов)

«VerslonAndTimeH»ghi*

9-8

Версия (4 бита) с последующими старшими битами значения времени (12 битов)

• VarlantAndClockSeqHigh»

7

биты варианта (2 бита) с последующими старшими битами временной последовательности (6 битов)

« ClockS eq Low»

6

Младшие биты временной последовательности (8 битов)

«Node»

5-0

Узел (см. 12.5) (48 битов)

6

Страница 11

ГОСТ Р ИСО/МЭК 9834-8—2011

12.1.2 Положение полей УУИд в двоичном представлении показано на рисунке 1. Опм 1*11,7,а ОкяыЧ1ав,2 <кяы1***1 Оюяы 12;*4,0

Первый

СжгВг

7 □

7 01

7 D|7 0

Последний

ОКРвТ

(октет 0)

■ThneLcnr»

(октет 15)

«TlrmMdi

<VMtsiAntfTbnH0i»

«VMrttndCtoc*

eaqtfgh»

*С1п(1г*1*^ пу<г»

«Nod*» (парим дм октете)

«Node (тюслконм чкшрв октета)

Рисунок 1 — Положение полей УУИд в двоичном представлении

12.1.3 Рекомендуется, чтобы это двоичное представление использовалось при передаче с помощью средств коммуникации, когда 16 октетов двоичного представления передаются как непрерывный набор битов с первым октетом (октет 15). предшествующим последнему (октет 0).

Примечание 1 — Порядок битов в октете определяется спецификацией метода коммуникации.

Примечание 2 — Использование 16 последовательных октетов в указанном выше порядке для передачи УУИд. но спецификации протоколов могут использовать альтернативные способы передачи УУИд. вкпючая фрагментацию или передачу только частей УУИд (таких, как части, входящие в значение времени).

12.2 Версия

12.2.1    Идентифицировано три альтернативных способа создания УУИд (основанный на времени, имени и случайном числе) и они различаются по четырем самым старшим битам поля « VersiortAndTimeHigh» (биты с 7-го по 4-й октета 9 УУИд). УУИд. созданные с использованием этих разных способов, называются «разными версиями УУИд».

Примечание — Термин «разные версии УУИд* отчасти вводит в заблуждение, но используется как исторически сложившийся. Для форматов УУИд нет традиционного понятия «номер версии* в тех случаях, когда новые версии могут быть определены при пересмотре настоящего стандарта. Новые форматы УУИд. которые могут потребоваться в будущем, будут идентифицироваться различными значениями битов варианта.

12.2.2    Определенные в настоящее время «версии УУИд». использующие первые четыре бита поля «VersionAndTimeHigh» (биты с 7-го по4-й октета 9 УУИд). приведены в таблице 3. В таблице 3 так же присвоены целые значения «версии» для каждой комбинации битов.

Примечание — Значение версии 2 не используется для совместимости с исторически сложившимися определениями УУИд. Значения версий 0 и с 6-й до 15-й зарезервированы для последующего использования.

Таблица 3 — Определенные в настоящее время версии УУИд

Бит 7

Битв

Бит 5

Бит 4

Значение

версии

Описание

0

0

0

1

1

Основанная на времени версия, определенная в настоящем стандарте(см.раздел 13)

0

0

1

0

2

Зарезервировано для версии безопасности распределенной вычислительной среды (Distributed Computing Environment — DCE) со встроенными УУИд POSIX

0

0

1

1

3

Основанная на имени версия, определенная в настоящем стандарте(см.раздел 14)

0

1

0

0

4

Основанная на случайном числе версия, определенная в настоящем стандарте(см.раздел 15)

0

1

0

1

5

Основанная на имени версия, определенная в настоящем стандарте, с хешированием ХАБ-1 (см. раздел 14)

7

Страница 12

12.3 Время

12.3.1    Время должно быть 60-битовым значением.

Примечание — Термин «время» соответствует основанной на времени версии УУИд (версии 1). но используется также и для содержимого соответствующих значений в других версиях УУИд (версиях 3 и 4).

12.3.2    Для основанной на времени версии УУИд время должно отсчитываться в 100 наносе-куидных интервалах всемирного скоординированного времени (UTC), начиная от полуночи 15 октября 1582 г. (дата григорианской реформы христианского календаря).

Примечание 1— До появления Всемирного бюро времени (Bureau International de ГНеиге) каждая минута содержала ровно 60 с. Затем, по мере необходимости, вводились дополнительные секунды, увеличивающие (или потенциально уменьшающие) число секунд в году.

Примечаиие2 — У переносимых систем могут быть проблемы с определением времени UTC. т. к. часто они замкнуты на локальное время своей домашней базы. При условии, что они непрерывно используют это локальное время или изменяют значение временной последовательности (см. 12.4). созданные ими УУИд будут оставаться уникальными.

Примечание 3 — Для систем, которые не имеют доступа к широковещательным сигналам времени, может использоваться местное время системных часов с добавлением разницы во времени при условии, что УУИд не создаются в период сезонного времени или изменения значения временной последовательности (см. 12.4).

12.3.3    Для основанной на имени версии УУИд время должно быть 60-битовым значением, построенным из глобально уникального имени, как определено в разделе 14.

Примечание — Примерами глобально уникальных имен являются ИДО. ЕИР и отличающие имена справочника (см. [5]).

12.3.4    Для основанной на случайном числе версии УУИд время должно быть случайным или псевдослучайным 60-битовым значением, созданным как определено в разделе 15.

12.4    Временная последовательность

12.4.1    Для основанной на времени версии УУИд временная последовательность используется с целью избежать дублирований, которые могут возникнуть, если устанавливается прошедшее значение времени или изменяется значение узла.

Примечание — Термин «временная последовательность» полностью соответствует основанной на времени версии УУИд. но используется также и для содержимого соответствующих значений в основанных на имени и на случайном числе версиях УУИд.

12.4.2    Если устанавливается прошедшее значение времени или оно могло быть установлено (например, пока система была выключена), то генератору УУИд не может быть известно, был ли уже сгенерирован УУИд со значением времени, большим, чем то значение времени, котороо устанавливается. В такой ситуации должна быть изменена временная последовательность.

Примечание — Если известно предыдущее значение временной последовательности, то оно должно быть увеличено, иначе это значение должно быть установлено равным случайному или псевдослучайному значению криптографического качества.

12.4.3    Аналогично значение временной последовательности должно быть изменено, если изменилось значение узла (например, из-за того, что сетевая карта была перенесена на другую машину).

12.4.4    Временная последовательность должна быть первоначально (т. е. один раз за время жизни системы, создающей УУИд) проинициализирована случайным числом, полученным не на основе значения узла.

Примечание — Это делается для минимизации корреляции между системами, тем самым обеспечивая максимальную защиту от быстрого перемещения или переключения от системы к системе адресов КДС.

12.4.5    Для основанной на имени версии УУИд временная последовательность должна быть 14-битовым значением, построенным из имени, как определено в разделе 14.

12.4.6    Для основанной на случайном числе версии УУИд временная последовательность должна быть случайным или псевдослучайным 14-битовым значением, созданным так. как определено в разделе 15.

12.5 Узел

12.5.1 Для основанной на времени версии УУИд значение узла должно состоять из адреса КДС (см. ИСО/МЭК 8802-3). который обычно является адресом хоста некоторого сетевого интерфейса.

Страница 13

ГОСТ Р ИСО/МЭК 9834-8—2011

12.5.2    Для систем с кратными адресами КДС может использоваться любой доступный адрес, за исключением многоканального. Октет 5 УУИд (первый октет поля «Node») должен быть установлен равным первому октету адреса КДС. который передается системой, соответствующей ИСО/МЭК 8802-3.

Примечание 1 — Этот октет содержит биты глобальный/локальный и одноканальный/многоканальный. Требуется, чтобы бит одноканальный/многоканальный был установлен как одноканальный для того, чтобы избежать конфликта с адресами, созданными в соответствии с 12.5.3.

Примечание 2 — От уполномоченного по регистрации адресов КДС можно получить блок адресов КДС <см. (4)).

12.5.3    Для систем без адреса КДС может быть использовано случайное или псевдослучайное число криптографического качества (см. приложение С). Для таких адресов должен быть установлен многоканальный бит.

Примечание — Этот алгоритм гарантирует, что сгенерированные адреса никогда не будут конфликтовать с адресами, полученными от сетевой карты, как определено в 12.S.2.

12.5.4    Для основанного на имени УУИд значение узла должно быть 48-битовым значением, построенным путем канонизации и хеширования из глобально уникального имени, как определено в разделе 14.

12.5.5    Для основанного на случайном числе УУИд значение узла должно быть 48-битовым случайным или псевдослучайным значением, сгенерированным, как определено в разделе 15.

13    Установка полей в основанном на времени УУИд

Поля в основанном на времени УУИд должны быть установлены следующим образом:

-    определяют значения для основанных на UTC времени и временной последовательности, которые должны быть использованы в УУИд. как определено в 12.3 и 12.4;

-    для целей настоящего алгоритма рассматривают время как 60-битовое целое без знака, а временную последовательность — как 14-битовое целое без знака. Биты в каждом значении считают от младшего бита, который считают нулевым:

•    устанавливают поле «TimoLow» равным 32 младшим битам (битам с 31-го по 0-й) времени в том же порядке значимости:

•    устанавливают поле «TimeMid» равным битам времени с 47-го по 32-й в том же порядке значимости;

-устанавливают 12 младших битов (биты с 11-го по 0-й) поля «VersionAndTimeHigh» равными битам времени с 59-го по 48-й в том же порядке значимости:

-    устанавливают четыре старших бита (биты с 15-го по 12-й) поля «VersionAndTimeHigh» равными четырехбитовому номеру версии, определенному в 12.2;

-    устанавливают поле «ClockSeqLow» равным восьми младшим битам (битам с 7-го по 0-й) временной последовательности в том же порядке значимости;

•    устанавливают шесть младших битов (биты с 5-го по 0-й) поля «VariantAndCiockSeqHtgh» равными шести старшим битам (биты с 13-го по 8-й) временной последовательности в том же порядке значимости;

-    устанавливают два старших бита (биты 7 и 6) поля «VarianlAndClockSeqHigh» равными 1 и 0 соответственно;

-    устанавливают поле узла равным 48-битовому адресу КДС в том же порядке значимости.

14    Установка полей основанного на имени УУИд

В настоящем разделе определены процедуры создания основанного на имени УУИд. В подразделе 14.1 определены общие процедуры для произвольной функции хеширования (см. ИСО/МЭК 10118-3). В подразделе 14.2 определено использование ОС5, а в 14.3 — ХАБ-1.

Примечание — Использование ОС5 ограничено случаями, требующими обратной совместимости с существующими УУИд, тогда как ХАБ-1 обеспечивает алгоритм хеширования с наименьшей вероятностью того, что одно и тоже значение будет появляться при хешировании разных данных (см. раздел С.4. приложение С).

14.1 Поля основанного на имени УУИд должны быть установлены следующим образом.

•    выделяют УУИд для использования в качестве «идентификатора пространства имен» для всех УУИд. создаваемых из имен этого пространства.

9

Страница 14

Примечание — В разделе D 9 приложения О рекомендованы УУИд для применения в четырех обычно используемых пространствах имен.

-    преобразуют имя в каноническую последовательность октетов (как определено стандартами или соглашениями для данного пространства имен);

-    вычисляют 16-октетное хеш-значение идентификатора пространства имен, сцепленного с именем, используя хеш-функцию, определенную в 14.2 или 14.3. Нумерация октетов в хеш-значении ведется от 0 до 15. как определено в IETF RFC 1321 (дляОС5) или в FIPS PUB 180-2 для ХАБ-1;

-    устанавливают октеты с 3-го по 0-й поля «TimeLow» равными октетам с 3-го по 0-й хеш-значения;

-    устанавливают октеты 1 и 0 поля «TimeMid» равными октетам 5 и 4 хеш-значения:

-    устанавливают октеты 1 и 0 поля «VersionAndTimeHigh» равными октетам 7 и 6 хеш-значения;

-    устанавливают четыре самых старших бита (биты с 15-го по 12-й) поля «VersionAndTimeHigh» равными четырехбитному номеру версии в соответствии с 12.2. таблица 3 для использованной хеш-функции;

-    устанавливают поле «VariantAndClockSeqHigh» равным октету 8 хеш-значения;

-    устанавливают два самых старших бита (биты 7 и 6) поля «VariantAndCk>ckSeqH»gh» равными 1 и О соответственно:

-    устанавливают поле «ClockSeqLow» равным октету 9 хеш-значения;

-    устанавливают октеты с 5-го по 0-й поля «Node» равными октетам с 15-го по 10-й хеш-значения.

14.2    В настоящем подразделе определен основанный на имени УУИд. использующий ОС5 в качестве хеш-функции, однако ОС5 не должен использоваться для вновь создаваемых УУИд (см. раздел С.4 приложения С). Для хеш-функции ОС5 указанное в 14.1 хеш-значение является 16-октетным значением. определенным в IETF RFC 1321. с октетами от 0 до 15.

Примечание — Определение УУИд на основе ОС5 с соответствующим номером версии включено а настоящий стандарт только в целях обратной совместимости с более ранними спецификациями.

14.3    В настоящем подразделе определен основанный на имени УУИд. использующий ХАБ-1 в качестве хеш-функции. Для хеш-функции ХАБ-1 хеш-значение, указанное в 14.1. должно быть октетами с 0-го по 15-й 20-октетного значения, полученного из 160-битового значения цифрового сообщения, определенного в FIPS PUB 180-2. Октеты с 16-го по 19-й этого 20-октетного значения должны бытьотбро-шеиы. 20-октетное значение должно быть получено из 160-битового значения цифрового сообщения FIPS PUB 180-2 путем помещения самого старшего бита 160-битового значения в самый старший бит первого октета (октета 0) 20-октетного значения, а самого младшегобита — в последний октет (октет 19) 20-октетного значения.

15    Установка полей основанного на случайном числе УУИд

15.1    Поля основанного на случайном числе УУ Ид должны быть установлены следующим образом:

-    устанавливают два самых старших бита (6иты7и6)поля «VariantAndClockSeqHigh» равными 1 и О соответственно;

-    устанавливают четыре самых старших бита (биты с 15-го по 12-й) поля «VersionAndTimeHigh» равными четырехбитному номеру версии, определенному в 12.2;

-    устанавливают остальные биты УУИд равными сгенерированному случайному (или псевдослучайному) значению.

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

15.2    Руководство по генерации в системах случайных чисел приведено в приложении С.

16    Регистрация УУИд и их использование в качестве компонентов ИДО

16.1    Дерево ИДО АСН.1

Примечание — В настоящем подразделе приведена сводка основных положений Рекомендации МСЭ-T Х.660 I ИСО/МЭК 9834-1.

16.1.1    В настоящем стандарте определены процедуры работы уполномоченных по регистрации УУИд. Эта регистрация позволяет также использовать УУИд в качестве дуг дерева ИДО ниже дуги {joint-iso-itu-tuuid(25)} (см. также раздел 7).

Ю

Страница 15

ГОСТ Р ИСО/МЭК 9834-8—2011

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

16.1.2    ИДО являются формой всемирно недвусмысленной идентификации, основанной на иерархической древовидной структуре и независимых иерархических уполномоченных по регистрации. Дерево ИДО имеет корень, дуги ниже этого корня, дуги каждой из этих дуг и т.д. на произвольную глубину. Дуги идентифицируются неотрицательными целыми значениями (см. 16.1.5), что обеспечивает недвусмысленную идентификацию дуг в пределах старшего узла. Дугам также могут быть присвоены имена (состоящие из одной или нескольких строчных или прописных букв, цифр и дефисов, начинающиеся со строчной буквы, не содержащие двух дефисов подряд и не заканчивающиеся дефисом), но они являются дополнительными к цифровым значениям и необязательными. Объект идентифицируется последовательностью значений для дуг (числовых или для начальных дуг также и именами) от корневого узла до объекта.

Примечание — Полное описание дерева ИДО см. в Рекомендации МСЭ-Т X 6601 ИСО/МЭК 9834-1 и Рекомендации МСЭ-Т X 680 | ИСО/МЭК 8824-1.

16.1.3    (Руководство) Важно отметить, что незарегистрированные УУИд могут быть использованы ниже той же дуги, что и зарегистрированные УУИд (см. 16.1.1). Таким образом, могут быть использованы идентичные значения для зарегистрированного и незарегистрированного УУИд (или для двух незарегистрированных УУИд), хотя вероятность этого очень мала. Вероятность возрастает, если УУИд генерируются из хеш-значений ОС5 или псевдослучайных чисел, а не из хеш-значений ХАБ-1 или случайных чисел криптографического качества. Это может вызвать путаницу для пользователей ИДО и спровоцировать злонамеренное использование подобных совпадений. Уполномоченный по регистрации УУИд отвечает за коллизии между зарегистрированными УУИд. но не за коллизии между зарегистрированными и незарегистрированными УУИд. т. к. он не управляет незарегистрированными УУИд. Если такая коллизия имеет место, то предпочтение отдается семантике, связанной с зарегистрированным УУИд; семантика, связанная с незарегистрированным УУИд. не должна использоваться. Таким образом, регистрация ИДО с УУИд не гарантирует того, что ИДО является более однозначным, чем его УУИд. Регистрация должна рассматриваться, главным образом, как способ опубликования УУИд и его семантики.

16.1.4    В машинном представлении ИДО можно подразумевать (в контексте данного машинного представления) идентификацию части пути от корневого узла до объекта в дереве ИДО. Таким образом, если известно, что ИДО сформирован так, как определено в разделе 7. то машинное представление может состоять из одного только значения УУИд.

16.1.5    Компоненты ИДО являются неограниченными неотрицательными целыми.

16.2 Назначение уполномоченных по регистрации

16.2.1    Организация регистрации в соответствии с требованиями настоящего стандарта входит в полномочия МСЭ-Т | ИСО/МЭК. Для этого МСЭ-Т | ИСО/МЭК назначает в соответствии со своими внутренними требованиями и правилами организацию, которая должна действовать как УР в соответствии с требованиями настоящего стандарта.

Примечание — Для регистрации используется ЕРП httpJMww.ltu.inl/ITU-T/asnl/uuld.hlml (сайт МСЭ-Т проекта АСН.1).

16.2.2    Уполномоченный по регистрации не несет ответственности за какие-либо недостатки в работе по настоящим процедурам или действия, относящиеся к обязанностям, определенным в настоящем стандарте, за исключением того, что УР может быть освобожден от выполнения этих обязанностей соответствующими Исследовательской группой МСЭ-Т | Подкомитетом СТК1 ИСО/МЭК без штрафных санкций. Уполномоченный по регистрации не несет ответственности за какое-либо использование незарегистрированных значений ИДО. являющихся теми же. что и зарегистрированные значения ИДО. т. к. он не контролирует использование таких значений (см. 16.1.3).

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

16.3 Оплата

16.3.1 Организация, являющаяся УР, должна осуществлять эту деятельность на основе возмещения издержек. Структура оплаты должна быть такой, чтобы покрывать расходы на работу УР, публикацию регистрационной информации в сети, обеспечение уникальности запросов и исключение необоснованных и многократных запросов.

и

Страница 16

16.3.2    Размер оплаты должен определяться УР и подлежит одобрению соответствующими Исследовательской группой МСЭ-Т | Подкомитетом СТК 1 ИСО/МЭК. Оплата может взыматься при:

a)    регистрации;

b)    справочном запросе.

c)    публикации в сети;

d)    запросе обновления.

16.3.3    Оплата не должна зависеть от страны создания заявления, не считая флуктуаций обменного курса.

16.4    Процедуры регистрации

В настоящем подразделе определены процедуры, которым нужно следовать при регистрации УУИд. Процедуры предназначены для обеспечения открытости и обязательности процесса работы УР.

16.4.1    Заявление на регистрацию

16.4.1.1    Организация направляет заявление на регистрацию УУИд непосредственно УР. заполняя форму на его веб-сайте. Содержание заявления определено в 16.4.3.

16.4.1.2    При успешном завершении процедур регистрации 128-битовое значение УУИд считается зарегистрированным как присвоенное представившей заявление организации и должно быть опубликовано.

16.4.2    Процесс подтверждения

Успешная регистрация подтверждается ответом на веб-сайте и публикацией в сети.

16.4.3    Содержание заявления

16.4.3.1    В настоящем подразделе определена информация, необходимая УР для проведения процесса регистрации.

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

16.4.3.2    Для регистрации необходима следующая информация:

a)    страна, в которой находится головной офис регистрирующей организации;

b)    название организации с регистрационной информацией страны, если регистрируется компания, благотворительная организация и т. д„ или указанием отношения к известной международной организации;

c)    имя и должность, почтовый адрес, адрес электронной почты, номер телефона и факса для контактов в регистрирующей организации;

d)    информация в свободной форме о добропорядочности регистрирующей организации как средство для аудита и исключения подложных регистраций;

e)    (факультативно) ЕРП. через который можно получить доступ к дополнительной информации об использовании УУИд.

16.4.3.3    Содержание заявления на ИДО определено в Рекомендации МСЭ-Т Х.6601 ИСО/МЭК 9834-1. раздел 8.

16.5    Сопровождение регистра в сети

16.5.1    УР должен поддерживать веб-сайт со всеми регистрациями.

16.5.2    Информация об организациях, участвующих в регистрации, должна обновляться УР. если УР подробно приводит название компании или аналогичную информацию с соответствующей авторизацией изменений. Методы реализации должны быть определены УР и объявлены на сайте.

12

Страница 17

ГОСТ Р ИСО/МЭК 9834-8—2011

Приложение А (справочное)

Алгоритмы эффективного создания основанных на времени УУИд

В настоящем приложении описан алгоритм, который может быть использован для быстрого создания основанных на времени УУИд в компьютерной системе.

А.1 Основной алгоритм

А.1.1 Следующий алгоритм является простым, корректным, но неэффективным:

-    получают глобальную общесистемную блокировку.

-    из общесистемной совместно используемой стабильной памяти (например, из файла) считывают состояние генератора УУИд: значения времени, временной последовательности и узла, использованные при создании последнего УУИд;

-получают текущее время в виде 60-битового отсчета 100-наносекундных интервалов от 00:00:00.00. 15октября 1582 г. в качестве значения времени;

-    получают текущее значение узла;

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

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

-    записывают состояние (текущие значения времени, временнбй последовательности и узла) обратно в стабильную память;

-    освобождают глобальную блокировку;

-    формируют УУИд из текущих значений времени, временнбй последовательности и узла в соответствии с алгоритмом, описанным в разделе 13.

А.1.2 Если нет необходимости часто генерировать УУИд. то приведенный выше алгоритм может оказаться вполне адекватным. Однако при высоких требованиях к производительности проявляются следующие проблемы основного алгоритма;

-    чтение состояния из стабильной памяти каждый раз является неэффективным;

-    разрешение системных часов может не составлять 100 наносекунд;

-    запись состояния а стабильную память каждый раз является неэффективной.

-    совместное использование состояния через границы процессов может быть неэффективным.

А.1.3 Каждая из этих проблем может быть решена локальными улучшениями модульным способом в тех функциях, которые читают и записывают состояние и читают время. Эти проблемы также рассмотрены в последующих разделах настоящего приложения.

А.2 Чтение стабильной памяти

А.2.1 Состояние необходимо читать из стабильной памяти только один раз во время загрузки при условии, что оно будет прочитано а переменную, общесистемную, совместно используемую память (и будет обновляться при каждом обновлении стабильной памяти).

А.2.2 Если реализация не имеет какой-либо доступной стабильной памяти, то она всегда может считать, что значения являются недействительными. Такая реализация является менее желательной, т. к. повышает частоту создания новых временных последовательностей, что повышает вероятность появления дубликатов.

А.2.3 Если значение узла не может никогда измениться (например, сетевая карта неотделима от системы) или любые изменения приводят к новой установке временнбй последовательности к новому случайному значению, то вместо хранения этого значения в стабильной памяти допускается возвращать текущее значение узла.

А.З Разрешение системных часов

А.3.1 Значение времени генерируется из системного времени, разрешение которого может быть меньше, чем требуемое для времени разрешение

А.3.2 Если нет необходимости в частой генерации УУИд. то время может быть просто системным временем, умноженным на число 100-наносекундных интервалов в интервале системного времени.

А.3.3 Если система перегружает генератор, запрашивая слишком много УУИд за один интервал системного времени, то услуга УУИд должна либо возвращать ошибку, либо приостановить генератор УУИд до захвата следующего системного времени.

А.3.4 Высокое разрешение значения времени может быть имитировано сохранением подсчета числа сгенерированных УУИд с одним и тем же значением системного времени и использованием его для построения низших битов значения времени. Подсчет должен вестись в диапазоне от нуля до числа 100-наносекундных интервалов в интервале системного времени.

13

Страница 18

Примечание — Если процессоры часто переполняют генератор УУИд. то системе могут быть выделены дополнительные адреса КДС. что позволит повысить скорость выделения УУИд. сделав для каждого значения времени потенциально доступными несколько УУИд.

А.4 Запись в стабильную память

Состояние не обязательно записывать в стабильную память при каждой генерации УУИд. Значение времени в стабильной памяти может периодически устанавливаться равным значению большему, чем любое использованное ранее в УУИд. До тех пор. пока сгенерированные УУИд имеют значение времени меньшее, чем это значение, а значения временной последовательности и узла остаются неизменными, необходимо обновлять только совместно используемую изменчивую копию состояния. Более того, если значение времени в стабильной памяти уходит вперед меньше, чем на типичное время перезагрузки системы, то авария системы не приведет к переустановке вре-менной последовательности.

А.5 Совместное использование состояния процессами

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

14

Страница 19

ГОСТ Р ИСО/МЭК 9834-8—2011

Приложение В (справочное)

Свойства основанного на имени УУИд

В.1 Основанный на имени УУИд предназначен для генерации УУИд из имени, полученного из некоторого пространства имен и уникального в этом пространстве. Понятия имени и пространства имен должны толковаться широко и не ограничиваться текстовыми именами Методы или соглашения для выделения имен и обеспечения их уникальности в пространстве имен не относятся к области применения настоящего стандарта.

Примечание — Во избежание проблем с рекурсией основанные на имени УУИд не должны генерироваться из ИДО. заканчивающихся основанным на имени УУИд.

8.2 Основанные на имени УУИд. созданные в соответствии с разделом 14 при соответствующем выборе пространства имен, будут иметь следующие свойства:

-    УУИд. созданные в разное время из одного и того же имени в одном и том же пространстве имен, должны быть равны;

-    УУИд. созданные из двух разных имен в одном и том же пространстве имен, должны быть различными с весьма высокой вероятностью;

-    УУИд. созданные из одного и того же имени в двух разных пространствах имен, должны быть различными с весьма высокой вероятностью;

-    если два основанных на имени УУИд равны, то с весьма высокой вероятностью они были сгенерированы из одного и того же имени в одном и том же пространстве имен.

15

Страница 20

Приложение С (справочное)

Генерация случайных чисел в системе

С.1 Если система не имеет возможности генерировать случайные числа криптографического качества, то в большинстве систем обычно имеется достаточно большое число источников рандомизации, на основании которых можно генерировать такие числа. Эти источники являются специфическими для системы, но обычно включают в себя:

-    процент используемой памяти.

-    размер основной памяти в байтах:

-    количество свободной основной памяти в байтах:

-    размер файла страничного обмена или свопинга в байтах.

-    свободные байты файла страничного обмена или свопинга:

-    общий размер пользовательского виртуального адресного пространства в байтах:

-    общее число доступных байтов пользовательского адресного пространства:

•    размер загрузочного диска в байтах;

-    свободное дисковое пространство на загрузочном диске в байтах.

•    текущее время;

-    количество времени с перезагрузки системы;

•    индивидуальные размеры файлов в различных справочниках системы.

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

-    факторы инициализации различных ресурсов системы;

-    текущее положение курсора мыши;

-    текущее положение каретки;

-    текущее число выполняемых процессов, связок;

-    обработчика или ID окна стола и активного окна.

-    значение указателя стека вызова;

-    идентификатор процесса и связки вызова;

-    различные специфические для архитектуры процессора счетчики выполнения (выполняемые инструкции, потери кеша, буфер TLB ипи его потери).

С.2 Кроме того, такие эпементы. как имя компьютера и операционной системы, хотя и не являются очень случайными. но помогают дифференцировать результаты от полученных в других системах.

С.З Точный механизм генерации значения узла является специфичным для системы, т. к. доступные данные и функции для их получения часто бывают очень специфичными для системы. Однако общий подход состоит в сборе данных из как можно большего числа источников в буфер, использовании обработки сообщений такой, например. как ХАБ-1, выборе произвольных шести октетов из хеш-значения и установке биты многоканальности так. как описано выше.

С.4 Могут быть испопьзованы и другие хеш-функции, такие как ОС5 и хеш-функция, определенная в ИСО/МЭК 10118. Единственное требование состоит в том. чтобы результат был пригодно случайным (в том смысле. что выходы от набора однородно распределенных входов сами были однородно распределенными) и можно ожидать, что изменение одного бита на входе вызовет изменение половины битое на выходе (однако использовать ОС5 для новых УУИд не рекомендуется, т. к. последние исследования показали, что выходные значения не являются однородно распределенными).

16

Страница 21

Приложение О (справочное)

ГОСТ Р ИСО/МЭК 9834-8—2011

Пример реализации

0.1 Описание файлов

Данная реализация состоит из шести файлов: copyrt.h. uuld.h. uuld.c, sysdep.h. sysdep.c и utest.c. Файлы uuld.' являются системно независимой реализацией алгоритмов генерации УУИд. описанных в разделах 13, 14 и 15. со всеми оптимизациями, описанными в приложении А (за исключением эффективного состояния, совместно используемого процессами). Код подразумевает поддержку 64-битового целого, что делает его более ясным.

П р и м е ч а н и е — Код был протестирован в системах Linux (Red Hat 4.0) с GCC (2.7.2) и Windows NT 4.0 с VC ♦ ♦5.0.

0.2 Файл copyrt.h

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

Г

" Copyright (с) 1990— 1993,1996 Open Software Foundation. Inc.

'• Copyright (c) 1989 by Hewlett-Packard Company. Palo Atto. Ca. &

*• Digital Equipment Corporation. Maynard. Mass.

*• Copyright (c) 1998 Microsoft.

" To anyone who acknowledges that this fite is provided “AS IS*

** without any express or implied warranty: permission to use. copy.

" modify, and distribute this file for any purpose is hereby •* granted without fee. provided that the above copyright notices and " this notice appears In all source code copies, and that none of "the names of Open Software Foundation. Inc.. Hewlett-Packard ** Company, or Digital Equipment Corporation be used In advertising " or publicity pertaining to distribution of the software without " specific, written prior permission. Neither Open Software " Foundation. Inc.. Hewlett-Packard Company. Microsoft, nor Digital " Equipment Corporation makes any representations about the *• suitability

** of this software for any purpose.

V

0.3 ФайлиЫй.Ь

«include'copyrt.h*

«undef uu!d_t typedef stmct {

unslgned32 tlmejow;

unsigned 16 time_mid.

unsigned 16 tlme_hi_and_verslon;

unsigned8clock_seq_hi_and_reserved;

unstgned8 clock_seq Jow;

byte node[6];

)uuid_t;

/* uuid_create — сгенерировать УУИд V Int uuid_create(uuld_t * uuid);

Г uuid_create_from_name - создать УУИд. используя 'имя* из'пространства имен* V void uuid_create_from_name(

uuid_t *uuld. Г результирующий УУИд V uuid_t nsid. Г УУИд пространства имен */ void 'name. Г имя. из которого генерируется УУИд 7 tntnamelen    /* длина имени 7

).

17

Страница 22

/* uuid_compare -- Сравнить два УУИд 'лексически" и вернуть -1    и 1 лексически до и2

0    и1 лексически равен и2

1    ul лексически после u2 Лексическое упорядочение не является временным!

•I

int uuld_compare(uuid_t *u1. uuld_t *u2);

D.4 Файл uuid.c «include 'copyrt.h'

«include <slring.h>

«include <stdio.h>

«include <stdlib.h>

«include <time.h>

«include'sysdeph* ffifndef_WINDOWS_

«include <arpa/inet.h>

«endrf

«include «uutd.h*

/* Различные начальные декларации 7

static Int read_state(unslgned16 'clockseq. uuid_time_t 'timestamp.

uuid_node_t'node); static void write_state(unsigned16 clockseq. uuld_time_t timestamp.

uuid_node_tnode); static void <ormat_uuid_v1 (uuid_t *uuid. unsigned16 clockseq.

uuid_tlme_t timestamp. uuid_node_t node): static void format_uuid_v3(uutd_t *uuid. unsigned char hashfl6]); static void get_current_time(uuld_time_t 'timestamp), static unslgned16 tfue_random(void);

Г uuld_create -- генератор УУИд 7 Int uuid_create(uuid_t 'uuid)

(

uuid_tlme_t timestamp. Iast_time; unsigned 16 clockseq: uutd_node_t node; uuid_node_t last_node: mt f;

Г запросить общесистемную блокировкуV LOCK;

Г получить время, идентификатор узла, сохраненное состояние из неизменяемой памяти V get_current_time(&timestamp); get_leee_node_identifier(8lnode); f = read_state(&clockseq. &last_time. &last_node);

Г если состояние невалидно, или часы отошли назад, или изменился идентификатор узла (например, новая сетевая карта), изменить clockseq V if (!f || memcmp(&node, &last_node. slzeof node)) clockseq = true_random(); else if (timestamp < last_tlme) clockseq**;

/' сохранить состояние для следующего раза V wrlte_state(clockseq. timestamp, node).

UNLOCK;

)' установить поля в УУИд V

Страница 23

ГОСТ Р ИСО/МЭК 9834-8—2011

format_uu»d_v1 (uuid, clockseq, timestamp, node); return 1;

}

Г format_uuld_v1 -- создать УУИд из timestamp, clockseq и node *V

void format_uuid_v1(uu»d_t* uuld. unslgned16 clock_seq, uuid_bme_t timestamp, uuld_node_t node)

{

/’ Построить УУИд версии 1 с уже собранной информацией плюс некоторые постоянные. ’/ uuid->tlme_low = (unsigned long)(timestamp & OxFFFFFFFF); uuid->tlme_mid = (unsigned short)((timestamp >> 32) & OxFFFF); uuid->time_hi_and_verslon *

(unsigned short)((tlmestamp >> 48) & OxOFFF). uuid->tlme_hl_and_verslon |= (1 << 12); uuid->clock_seqJo\v = clock_seq & OxFF; uuid->ctock_seq_hi_and_reserved = (ctock_seq & Ox3FOO)» 8; uuld->ctock_seq_hi_and_reserved |» 0x80; memcpy(iuuid->node. inode. sizeof uuid->node);

>

/* типданных для устойчивого состояния генератора УУИд */ typedef struct{

uuid_time_l ts;    Г сохраненный timestamp ’/

uuid_node_t node; Г сохраненный node */ unslgned16 cs;    /’ сохраненная временная

последовательность 7

}uuld_state; static uuid_sta test;

/* read_state - прочитать состояние генератора УУИд из неизменяющейся памяти 7 intread_state(unsigned 16 'clockseq. uuid_bme_t "timestamp. uuid_node_t ’node)

{

static int inlted * 0;

FILE *fp;

/* состояние нужно читать только один раз за загрузку V if (!lnited){

fp = fopenfstate’, "rt>").

If (fp * NULL) return 0; fread(&st. sizeof st, 1. fp); fclose(fp).

Inlted = 1;

)

•clockseq = st.cs;

•timestamp = st.ts;

’node = st.node; return 1;

}

)’write_state -- сохранить состояние генератора УУИд обратно а неизменякмцуюся память 7 void wnte_state(unsigned16 clockseq. uuld_time_t timestamp. uuid_node_tnode)

{

static mt Inlted = 0;

static uuld_time_t next_save;

FILE* fp;

19

Страница 24

if(!imted){

next_save 3 timestamp, inited ■ 1:

}

/* всегда сохранять состояние в изменяющейся совместно используемой памяти V st.cs 3 clockseq; st.ts 3 timestamp: st.node ■ node; if (timestamp >= next_save){ fp 3 fopen(*state". *wb"); fwnte(4st. slzeof st. 1. fp); fciose(fp);

/'запланировать следующее сохранение через 10 секунд */ next_save 3 timestamp ♦ (10 * 10* 1000 * 1000);

}
)

/'get-current Jime — получить время как 60-битовые 100-наносекундные отсчеты с эпохи УУИд.

Внести поправку на то. что разрешение реапьных часов меньше чем 100 наносекунд. '/ void get_current time(uuid_time t'timestamp)

<

static int inited » 0; static uuid_time_t time Jast; static unsigned 16 uuids_this_tick; uuid_t!me_t time_now;

if (Imited) {

get_system_tlme(4time_now); uulds_this Jlck « UUIDS_PER_TICK; inited 3 1;

}

get_system_tlme(&time_now);

/'если чтение с часов изменилось с последнего сгенерированного УУИд, V if (time Jast!» time_now){

/•установить отсчет сгенерированных УУИд с данным чтением с часов */ uuids JhleJick 3 0; timejast = tlme_now. break;

}

if(uuids_this_bck < UUIDS_PER_TICK) { uuKlaJhisJick»*; break.

}

/'идет слишком быстро для наших часов: завернуть */

}

/* добавить отсчет УУИд к низшим битам, считанного с часов */

'timestamp 3 time_now ♦ uulds_thls_tick;

)

Г true_random - создать случайное число криптографического качества.

*' В данном примере это не делается." */ static unslgned16 true_random(void)

(

static Int Inited 3 0; uuld Jlme _t time_now;

20

Страница 25

ГОСТ Р ИСО/МЭК 9834-8—2011

If (United) {

get_system_time(&time_now); time_now ■ time_now / UUIDS_PER_TICK; srand((unsigned int)(«tlme_now >> 32)A time_now) & Oxffffffff)). Inited = 1:

)

return rand():

}

/'uuid_create_from_name -- создать УУИд, используя «имя» из 'пространства имен"'/ void uuid_create_from_name(uuld_t 'uuid, uuld_t nsid. void 'name,

Int namelen)

{

MD5_CTXc: unsigned charha9h{16); uuld_t net_nsid:

/•поместить идентификатор пространства имен а сетевом порядке байтов, чтобы его хеширование не зависело от используемой машины */ net_nsid * nsld; htonl(net_nsld.tlme_low); htons(net_nsKJ.tlme_mKl); htons(net_ns»d.tlme_hi_and_ version);

MD5lnlt(&c);

MD5Update(&c. &net_nsld, sizeof net_nsid);

MOSUpdatet&c. name, namelen):

MD5Fmal(hash. &c):

/'здесь хеш в сетевом порядке байт'/ format_uuKl_v3(uuid. hash);

}

/'format_uuld_v3 -- создать УУИд из (псевдоСлучайного 128-битового числа '/ void format_uuid_v3(uu»d_t*uuid, unsigned charhash(16))

{

/'преобразовать УУИд к локальному порядку байтов'/

memcpy(uuid. hash, sizeof *uuld);

ntohi(uutd->time_k>w):

ntohs(uuid->time_mld);

ntohs(uuld->time_hl_and_vers«3n),

/' записать uuid варианта и версии */ uuld->time_hi_and_version &= OxOFFF. uuid->tlme_hi_and_version |= (3<< 12); uuid->ctock_seq_hi_and_reserved &= 0x3F. uuid->ctock_seq_hi_and_reserved |= 0x80;

}

/* uuid_compare - сравнить два УУИд «лексически» '/ sdefme CHECK(f1. f2) if (fl != f2) return fl <f2?-1 :1. mt uuid_compare(uuld_t 'ul. uu»d_t 'u2)

{

inti;

CHECK(u1->tlme_low. u2->time_low);

CHECK(u1 ->tlme_mld. u2->time_mid),

CHECK(u1->time_hi_and_verslon, u2->time_hi_and_version); CHECK(u1->clock_seq_hi_and_reserved.

u2->c lock_se q_h l_an d_reserve d);

21

Страница 26

CHECK(u1->clock_8eq_low. u2->clock_seq_low)

(or (1 = 0; К в: !♦♦){

if (u1->nodeli] < u2->node[l]) return-1: t( (uV>nodelt)> u2->nodell]) return 1;

>

return 0;

)

#undef CHECK

0.5 Oannsysdep.h

«include «copyrt.h'

Г удалить следующее определение, если не используется Windows 32 */

((define WININC 0

«ifdef WININC «Include <windows.h>

#else

«include <time.h>

((include <unlstd.h>

«include <sys/types.h>

((Include <sys/time.h>

((endif

((include ‘global h*

Г в тех случаях, где используется ОС5; в IETF RFC 1321 есть пример реализации */

((include «md5.h-

установить число 100 наносекундных отсчетов фактического разрешения системныхчасов V ((define UUIDS_PER_TICK 1024

/' установить для получения и освобождения глобальной блокировки Ч ((define LOCK ((define UNLOCK

typedef unsigned long unsigned32; typedef unsigned short unsigned 16; typedef unsigned char unslgned8; typedef unsigned char byte:

/* установить, чтобы компилятор использовал 64-битовый тип данных */

(tlfdef WININC

((define unstgned64_t unslgned_mt64

((define 164(C) C

((else

((define unsigned64_t unsigned long long

((define 164(C) CeffLL

«endif

typedef unsigned64_t uuld_time_t; typedef struct (

char nodelD|6];

) uuid_node_l;

void get_leee_node_ldentlfier(uuld_node_t ‘node), void get_8ystem_tlme(uuid_time_t *uuld_time); void get_random_lnfo(unsigned char seedjl6|);

0.6 Файл sysdep.c

«include ‘copyrt.h’

«include <std!o.h>

22

Страница 27

ГОСТ Р ИСО/МЭК 9834-8—2011

sinclude «string.h> oinclude "sysdep.h"

/•системно-зависимый вызов для получения идентификатора узла КДС.

В данном примере генерируется случайный идентификатор узла. */ void get _ieee_node_identifier(uuid_node_t 'node)

{

static mt inited = 0;

static uuid_node_tsaved_node.

unsigned charseed[16];

FILE *fp:

If (United) {

fp = fopen("nodenr. *rb“):

fread(&saved_node. sizeof saved_node. 1, fp); fclose(fp);

)

else {

get_random_tnfo(seed): seed|0) |=0x80;

memcpy(&saved_node. seed.sizeof saved_node); fp = fopen('nodeld*. “wb“);

*№>){

fwnte(&saved_node. sizeof saved_node. 1. fp); fclose(fp);

}
}

Inited * 1;

>

'node = saved_node.

}

/'системно-зависимый вызов для получения текущего системного времени. Возвращает 100-наносекумдные отсчеты от эпохи УУИд, но разрешение может быть меньше 100 наносекунд.'/ elfdef _WINDOWS_

void get_system time(uuld_bme_t*uuid time)

{

ULARGEJNTEGER time;

/' В Windows NT время хранится в формате FILETIME, который есть число 100 наносекундных отсчетов от 1 января 1601 г. В УУИд используется время в 100 наносекундных отсчетах от 15 октября 1582 г. Разница составляет 17 дней в октябре ♦ 30 (ноябрь) ♦ 31 (декабрь) ♦ 18 лет + 5 дней в високосных годах. */ GetSystemTimeA9FileTlme((FlLETIME ')&time); time.QuadPart-*»

(unsigned jnt64)( 1000' 1000* 10) //секунды • (unsigned_mt64) (60 * 60'24) //дни ' (unsigned_mt64) (17«-30*31 ♦36S'18*5): // число дней *uuld_time ■ Ume.QuadPart;

}

void get_random mfo(unsigned cbar seed(l6])

{

MD5_CTXc; struct (

MEMORYSTATUSm;

SYSTEM JNFOs;

FILETIME t;

LARGE_INTEGER pc;

DWORD tc;

23

Страница 28

ГОСТ Р ИСО/МЭК 9834-8—2011

DWORD I;

char hostname(MAX_COMPUTERNAME_LENGTH «• 1);

}г.

MD5imt(4c):

GlobaiMemoryStatus(Ar.m);

OetSystemlnfo{&r.s).

GetSystemTimeAsFlleTime(&r.t);

QueryPerformanceCounter(&r.pc). r.tc • GetTickCount();

r.l = MAX_COMPUTERNAME_LENGTH ♦ 1;

GetComputerName(r.hostname. &r.l).

MD5Update(&c. &r. sizeof r);

MD5Flnal(seed. &c):

)

«else

void get_system_tlme(uuid_time_t *uuid_tlme> struct tlmevaltp:

gettimeofday(&tp. (struct tlmezone *)0);

Г Сдвиг между форматами времени УУИд и Unix.

Для УУИд базовым UTC является 15 октября 1582 г.

Для Unix базовым временем является 1 января 1970 г.*/

*uuid time* (tp.tv_sec’ 10000000)♦ (tp.tv_usec* 10) + l64(Ox01B21DD213814000);

)

voidget_random_info(unsigned charseed[16))

{

MD5_CTXc:

Struct {

struct tlmeval t. char hostname(2S7];

}r:

MDSInlt(ic);

gettimeofday(&r.t, (struct timezone *)0): gethostname(r.hostname. 256);

MD5Update(&c. &r. sizeof r);

MD5Flnal(eeed. &c);

)

«endif

D.7 Файл utest.c

«include •copyrt.h"

«Include ‘sysdep.h*

«include <stdio.h>

«Include *uu»d.h*

uuid_t NameSpace_DNS = {/* 6ba7b810-9dad-11d1 -80b4-00c04fd430c8 */

0x6ba7b810.

0x9dad,

0x11d1,

0x80.0xb4.0x00. OxcO. 0x4f, 0xd4.0x30.0xc8

>:

I* puld -- печать УУИд V void puld(uuid_tu)

{

24

Страница 29

ГОСТ Р ИСО/МЭК 9834-8—2011

Int *;

printf('%8.8x-%4.4x-%4.4x-%2.2x%2.2x-'. u.tlmejow, u.time_mid.

u.time_hi_and_version. u.clock_seq_hi_and_reserved,

u.ctock_seq_low);

for (j = 0: i < 6;

printf(*%2.2x". u.node[l));

prlntf(*\n*):

}

/* простой драйвер для генератора УУ Ид */ mt main(mt argc. char **argv)

{

uuid_tu:

Intf;

uuid_create(&u); printfruuid_create(): *); puid(u):

f = uuld_compare(&u. &u);

printf(*uuid_compare(u.u): %d\n", f). /’должен быть 0*/ f ■ uuld_compare(&u. &NameSpace_DNS); pnntf('uuid_compare{u, NameSpace_DNS). %d\n". f);

/•должна быть 1 */

(= uuld_compare(&NameSpace_DNS. &u); prlntf(*uuid_compare(NameSpace_DNS. u). %d\n“, f);

/•должна быть-1 */

uuid_create_from_name(&u. NameSpace_DNS. “vwvw.widgets.com".

15);

printf('uuid_create_from_name(): •); puid(u);

}

D.8 Пример выхода utest

uuid_create(): 7d444840-9dc0-11d1-b245-5ffdce74fad2 uuld_compare(u.u): 0 uuid_compare(u. NameSpace_DNS): 1 uuld_compare(NameSpace_ONS. u):-1

uuid_create_from_name(). e902893a-9d22-3c7e-a7b8-d6e313b71d9f 0.9 Некоторые идентификаторы пространств имен

В настоящем разделе перечислены идентификаторы некоторых потенциально интересных пространств имен в виде структур языка С соответствующих строковых представлений.

/‘Строка имени является полностью уточненным доменным именем*/ uuid_t NameSpace_DNS = {/*6ba7b810-9dad-11dl-80b4-00c04fd430c87 0x6ba7b810.

0x9dad.

0x11d1,

0x80.0xb4. 0x00. OxcO. 0x4f. 0xd4.0x30. 0xc8 }:

/‘Строка имени является ЕПР7

uuid_t NameSpace _URL = {/*6ba7b811-9dad-11d1-80b4-00cO4fd43Oc87 0x6ba7b811.

0x9dad.

0x11d1,

0x80.0xb4. 0x00. OxcO. 0x4f. 0xd4,0x30.0xc8

}:

/‘Строка имени является ИДО */

uuid_tNameSpace_OlD *{/*6ba7b8l2-9dad-11d1-80b4-OOcO4fd43Oc87 0x6ba7b812.

0x9dad.

0x11d1.

25

Страница 30

ГОСТ Р ИСО/МЭК 9834-8—2011

0x80. 0x04. 0x00. OxcO. 0x4f. 0xd4. 0x30.0хс8 ).

/'Строка имени является отличающим именем справочника (в формате DER или текстовом)*/ uuld_tNameSpace_X500 = {/*6ba7b814-9dad-11d1-80b4-OOcO4f<J43Oc8V 0х6Ьа7Ь814.

0x9dad.

0x1Idl,

0x80.0хЬ4.0x00. OxcO. 0x4f. 0xd4. 0x30.0xc8 ):

26

Страница 31

ГОСТ Р ИСО/МЭК 9834-8—2011

Приложение ДА (справочное)

Сведения о соответствии ссылочных международных стандартов ссылочным национальным стандартам Российской Федерации (и действующим в этом качестве межгосударственным стандартам)

Таблица ДА.1

Обозначение ссылочного международного стандарта

Степень

соответствия

Обозначение и наименование соответствующего национального стандарта

ИСО/МЭК 8802-3:2000

MOD

ГОСТ 34.913.3-91 (ИСО 8802-3—89) «Информационная технология. Локальные вычислительные сети. Метод случайного доступа к шине и спецификация физического уровня*

ИСО/МЭК 8824-1:2002

IDT

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

ИСО/МЭК 9834-1:2004

IDT

ГОСТ Р ИСО/МЭК 9834-1—2009 «Информационная технология. Взаимосвязь открытых систем. Процедуры действий уполномоченных по регистрации ВОС. Часть 1. Общие процедуры и верхние дуги дерева идентификатора объекта АСН.1»

ИСО/МЭК 10118-3:2004

ИСО/МЭК 10646.2003

FIPS PUB 180-2.2002

IETF RFC 1321 (1992)

IETF RFC 2141 (1997)

* Соответствующий национальный стандарт отсутствует. До его утверждения рекомендуется использовать перевод на русский язык данного международного стандарта. Перевод данного международного стандарта находится в Федеральном информационном фонде технических регламентов и стандартов.

Примечание — В настоящей таблице использованы следующие условные обозначения степени соответствия стандартов:

-    IDT — идентичные стандарты:

-    MOD — модифицированные стандарты.

27

Страница 32

ГОСТ Р ИСО/МЭК 9834-8—2011

Библиография

(1)    ZAHN (L.). DINEEN (Т.). LEACH (P.): Network Computing Architecture. ISBN 0-13-611674-4. January 1990

(2)    Open Group CAE: DCE. Remote Procedure Call. Specification C309. ISBN 1-85912-041-5. August 1994

(3)    ISO/1EC 11578:1996    Information technology — Open Systems Interconnection — Remote    Procedure

Call (RPC)

(4)    IEEE. Request Form for an Individual Address Block (also known as an Ethernet Address Block) of 4.096 MAC Addresses, http://standards.ieee.org/regauth/oui/pllot-lnd.html

(5)    ITU-T Recommendation X.S00    Information technology — Open Systems Interconnection — The    Directory:

(2001 )/ISO/IEC 9594-1:2001    Overview of concepts, models and services

(6)    IETF RFC 3061 (2001). A URN Namespace of Object Identifiers

(7)    Internet-Draft draft-mealling-uuid-urn-00. A UUID URN Namespace. M. Meallmg. P. Leach. R. Salz. October 2002

УДК 681.3:691.39:006.354    OKC 35.100.01    П85

Ключевые слова: обработка данных, информационный обмен, сетевое взаимодействие, взаимосвязь открытых систем, регистрация

Редактор В.Н. Копысоа Технический редактор В.К Прусакова Корректор Е.Д. Дупьнеаа Компьютерная верстка И.А. Напей киной

Сдано о набор 20.01.2012 Подписано о печать 14.02.2012. Формат 60 и 84у£ Гарнитура Ариал.

Усп. печ. п. 3.72. Уч.-изд. л. 3.20. Тираж 99 jo. Зак. 154.

ФГУП кСТАНДАРТИНФОРМю, 123995 Москва. Гранатный пер.. 4 www.gostmSo.ru    т'о@ gostinfo.ru

Набрано по ФГУП «СТАНДАРТИНФОРМ» на ПЭВМ.

Отпечатано о филиале ФГУП «СТАНДАРТИНФОРМ» — тип. «Московский печатник». 105062 Москва, Лялин пер.. 6.