НАЦІОНАЛЬНИЙ СТАНДАРТ УКРАЇНИ

Інформаційні технології

МЕТОДИ ЗАХИСТУ
ГЕШ-ФУНКЦІЇ

Частина 3. Спеціалізовані геш-функції

(ISO/IEC 10118-3:2004, IDT)

Д

БЗ № 11-2004/635

СТУ ISO/IEC 10118-3:2005

Видання офіційне













Київ
ДЕРЖСПОЖИВСТАНДАРТ УКРАЇНИ
2006

ПЕРЕДМОВА

  1. ВНЕСЕНО: Технічний комітет зі стандартизації України «Інформаційні технології» (ТК 20)

ПЕРЕКЛАД і НАУКОВО-ТЕХНІЧНЕ РЕДАГУВАННЯ: А. Анісімов, д-р фіз.-мат. наук (науковий керівник); Т. Аванесов; В. Ткаченко; О. Фаль, канд. фіз.-мат. наук

  1. НАДАНО ЧИННОСТІ; наказ Держспоживстандарту України від 3 березня 2005 р. № 57 з 2006-07-01

З Національний стандарт відповідає міжнародному стандарту ISO/IEC 10118-3:2004 Information technology — Security techniques — Hash-functions — Part 3: Dedicated hash-functions (Інфор­маційні технології. Методи захисту. Геш-функції. Частина 3. Спеціалізовані геш-функції)

Ступінь відповідності — ідентичний (IDT)

Переклад з англійської (еп)

4 УВЕДЕНО ВПЕРШЕ

Право власності на цей документ належить державі.

Відтворювати, тиражувати і розповсюджувати його повністю чи частково
на будь-яких носіях інформації без офіційного дозволу заборонено.

Стосовно врегулювання прав власності треба звертатися до Держспоживстандарту України

Держспоживстандарт України. 200

6ЗМІСТ

с.

Національний вступ V

Передмова до ISO/IEC 10118-3 VI

Вступ до SO/IEC 10118-3 VI

  1. Сфера застосування 1

  2. Нормативні посилання 1

  3. Терміни та визначення понять 1

  4. Познаки та скорочення 2

    1. Познаки, визначені в ISO/IEC 10118-1 2

    2. Познаки, використані у цьому стандарті 2

  5. Вимоги до об’єкта стандартизації З

  6. Модель спеціалізованих геш-функцій 4

  7. Спеціалізована геш-функція 1 (RIPEMD-160) 4

    1. Параметри, функції та константи 4

    2. Метод заповнювання 6

    3. Опис циклової функції 7

  8. Спеціалізована геш-функція 2 (RIPEMD-128) 8

    1. Параметри, функції та константи 8

    2. Метод заповнювання 9

    3. Опис циклової функції 9

  9. Спеціалізована геш-функція З (SHA-1) 10

    1. Параметри, функції та константи 10

    2. Метод заповнювання 11

    3. Опис циклової функції 11

  10. Спеціалізована геш-функція 4 (SHA-256) 12

    1. Параметри, функції та константи 12

    2. Метод заповнювання 13

    3. Опис циклової функції 13

  11. Спеціалізована геш-функція 5 (SHA-512) 14

    1. Параметри, функції та константи 14

    1. Метод заповнювання 15Опис циклової функції 16

  1. Спеціалізована геш-функція 6 (SHA-384) 17

    1. Параметри, функції та константи 17

    2. Метод заповнювання 18

    3. Опис циклової функції .' 18

  2. Спеціалізована геш-функція 7 (WHIRLPOOL) 18

    1. Параметри, функції та константи 18

    2. Метод заповнювання 20

    3. Опис циклової функції 20

Додаток А Приклади 21

Додаток В Формальні специфікації 68

Додаток С Модуль ASN.1 82

Бібліографія 8

4НАЦІОНАЛЬНИЙ ВСТУП

Цей стандарт є тотожний переклад ISO/IEC 10118-3:2004 Information technology — Security techniques — Hash-functions — Part 3: Dedicated hash-functions (Інформаційні технології. Мето­ди захисту, Геш-функції. Частина 3. Спеціалізовані геш-функції).

Мета цього стандарту — описати основну модель геш-функцій, їх параметри, функції та константи, початкові значення, методи заповнювання, циклові (раундні) функції та узгоджен­ня порядку слідування байтів, за допомогою яких будуються спеціалізовані геш-функції.

Відповідальним за міжнародний стандарт ISO/IEC 10118-3:2004 є технічний комітет ISO/IEC JTC 1,

Технічний комітет, відповідальний за національний стандарт в Україні, — ТК 20 «Інформаційні технології».

Багаточастинний міжнародний стандарт ISO/IEC 10118 містить чотири частини під загаль­ною назвою «Information technology — Security techniques — Hash-functions» (Інформаційні тех­нології. Методи захисту. Геш-функції). Цей стандарт описує певні геш-функцій і може бути зас­тосовний для реалізації послуг автентифікації, цілісності та неспростовності.

Частини стандарту ISO/IEC 10118 мають такі назви:

  • Part 1: General (Частина 1. Загальні положення);

  • Part 2: Hash-functions using ап л-bit block cipher (Частина 2. Геш-функції, що використо­вують n-бітовий блоковий шифр);

  • Part 3: Dedicated hash-functions (Частина 3. Спеціалізовані геш-функції);

— Part 4: Hash-functions using modular arithmetic (Частина 4. Геш-функції, що використову­ють модульну арифметику).

У частині 1 подано загальну модель геш-функцій та описано геш-функцію, яка перетво­рює довільні рядки бітів у рядки бітів фіксованої довжини, і методи заповнювання, які викорис­товують для обчислення геш-коду. Ця частина містить визначення, позначення, скорочення та вимоги, що є спільними для решти частин ISO/IEC 10118.

У частині 2 йдеться про геш-функції, в основі яких лежить використання л-бітового блоко­вого алгоритму шифрування. Означено чотири геш-функції, які є сумісними із загальною мо­деллю, наведеною в ISO/IEC 10118-1.

У частині 3 розглянуто спеціалізовані геш-функції. Геш-функції у цій частині ґрунтовано на ітераційному застосуванні циклової функції, Означено сім різних циклових функцій, використо­вуваних у цих спеціалізованих геш-функціях.

У частині 4 представлено дві геш-функції, що використовують модульну арифметику. Ці геш-функції, які вважають стійкими до колізій, стискають повідомлення довільної довжини до геш-коду, довжину якого визначають через довжину простого числа, використовуваного у цик­ловій функції. У цій частині замість терміносполуки «раундова функція» (див. частину 2) вико­ристано терміносполуку «циклова функція».

До стандарту внесено такі редакційні зміни:

  • слова «ця частина ISO/IEC 10118» замінено на «цей стандарт»;

  • у розділі «Нормативні посилання» подано «Національне пояснення», виділене рамкою;

  • структурні елементи цього стандарту: «Титульний аркуш», «Передмову», «Національ­ний вступ», «Терміни та визначення понять» і «Бібліографічні дані» — оформлено згідно з ви­могами національної стандартизації України;

Додаток С обов'язковий.

Додатки А, В довідкові.

Копії міжнародних стандартів, на які є посилання в цьому стандарті, можна замовити в Головному фонді нормативних документів ДП «УкрНДНЦ».

У цьому стандарті є посилання на ISO/IEC 10118-1:2005 Information technology — Security techniques — Hash-functions — Part 1: General (Інформаційні технології. Методи захисту. Геш- функції. Частина 1. Загальні положення), упроваджений в Україні як національний стандарт з наданням йому добровільного статусу з ідентичним ступенем відповідності.ПЕРЕДМОВА ДО ISO/IEC 10118-3

ISO (the International Organization for Standardization) та IEC (the International Electrotechnical Commission) становлять спеціалізований комплекс всесвітньої стандартизації. Національні органі­зації, які є членами ISO або ІЕС, беруть участь у розроблянні міжнародних стандартів як члени технічних комітетів, що були засновані відповідною організацією та мають справу з конкрет­ною сферою технічної діяльності. Технічні комітети ISO та ІЕС співпрацюють у сферах спільних інтересів. Інші міжнародні організації, державні та недержавні, що пов’язані, з ISO та ІЕС, також беруть участь у роботі. У сфері інформаційних технологій міжнародні організації ISO та ІЕС зас­нували об’єднаний технічний комітет, ISO/IEC JTC 1.

Міжнародні стандарти розробляють відповідно до положень, установлених в ISO/IEC Directives — Part 2 (ISO/IEC Настанови. Частина 2).

Головне завдання об'єднаного технічного комітету — підготувати міжнародні стандарти. Проекти міжнародних стандартів, прийнятих об’єднаним технічним комітетом, передають до на­ціональних організацій для голосування. Для опублікування міжнародного стандарту необхід­но, щоб за нього проголосувало не менш 75 % національних організацій, що брали участь у голосуванні.

ISO/IEC 10118-3 був підготований об’єднаним технічним комітетом ISO/IEC JTC 1 «Інфор­маційні технології», підкомітет SC 27 «Методи захисту ІТ».

Ця третя редакція розроблена на заміну другого видання (ISO/IEC 10118-3:2003), яке було технічно опрацьоване.

ISO/IEC 10118 містить такі частини під загальною назвою «Інформаційні технології. Мето­ди захисту. Геш-функції»:

  • Частина 1. Загальні положення;

  • Частина 2. Геш-функції, що використовують л-бітовий блоковий шифр;

  • Частина 3. Спеціалізовані геш-функції;

  • Частина 4. Геш-функції, що використовують модульну арифметику.

ВСТУП ДО ISO/IEC 10118-3

Міжнародна Організація зі Стандартизації (ISO) та Міжнародна Електротехнічна комісія (ІЕС) звертають увагу на те, що відповідність цьому міжнародному стандарту може охоплювати ви­користання патентів.

ISO та ІЕС не визначаються стосовно очевидності чинності та сфери застосування цього патентного права.

Патентовласник цього патентного права завіряє ISO/IEC, що він готовий продати ліцензії на прийнятних та недискримінаційних умовах для пошукачів з усього світу. У такому випадку заява патентовласника буде зареєстрована в ISO та ІЕС. Інформацію можна отримати з:

ISO/IEC JTC 1/SC 27 Standing Document 8 (SD8) «Patent Information».

Постійно чинний документ 8 (SD8) загально доступний за адресою http://www.ni.din.de/sc27.

Треба звернути увагу на те, що деякі елементи міжнародного стандарту можуть бути суб’єктом патентних прав, відмінних від зазначених вище. У цьому випадку ISO та ІЕС не несуть відповідальність за визнання деяких або всіх таких патентних прав

.ДСТУ ISO/IEC 10118-3:2005

НАЦІОНАЛЬНИЙ СТАНДАРТ УКРАЇНИ

ІНФОРМАЦІЙНІ ТЕХНОЛОГІЇ
МЕТОДИ ЗАХИСТУ. ГЕШ-ФУНКЦІЇ
Частина 3. Спеціалізовані геш-функції

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ
МЕТОДЫ ЗАЩИТЫ. ХЕШ-ФУНКЦИИ
Часть 3. Специализированные хеш-функции

INFORMATION TECHNOLOGY
SECURITY TECHNIQUES. HASH-FUNCTIONS
Part 3: Dedicated hash-functions

Чинний від 2006-07-01

  1. СФЕРА ЗАСТОСУВАННЯ

Цей стандарт визначає спеціалізовані геш-функції, тобто спеціально побудовані геш-функції. Геш-функції в цьому стандарті базовано на повторному використанні циклової функції. Визначе­но сім різних циклових функцій, які породжують різні спеціалізовані геш-функції.

Перша та третя спеціалізовані геш-функції, наведені у розділах 7 та 9 відповідно, забезпечу­ють геш-коди довжиною до 160 бітів; друга спеціалізована геш-функція, наведена у розділі 8, за­безпечує геш-коди довжиною до 128 бітів; четверта спеціалізована геш-функція, наведена у розділі 10, забезпечує геш-коди довжиною до 256 бітів; шоста спеціалізована геш-функція, на­ведена у розділі 12, забезпечує геш-коди фіксованої довжини 384 бітів; а п’ята та сьома спеціал­ізовані геш-функції, наведені у розділах 11 та 13 відповідно, забезпечують геш-коди довжиною до 512 бітів,

  1. НОРМАТИВНІ ПОСИЛАННЯ

Наведені нижче документи, на які є посилання у цьому документі. Для датованих посилань застосовують тільки зазначені видання. Для недатованих посилань застосовують лише останню версію видання документа, на який є посилання (охоплюючи всі зміни).

ISO/IEC 10118-1:2000 Information technology — Security techniques — Hash-functions — Part 1: General.

НАЦІОНАЛЬНЕ ПОЯСНЕННЯ

ISO/IEC 10118-1:2000 Інформаційні технології. Методи захисту. Геш-функції. Частина 1. За­гальні положення.

  1. ТЕРМІНИ ТА ВИЗНАЧЕННЯ ПОНЯТЬ

У цьому стандарті, використовують визначення, наведені в ISO/IEC 10118-1, а також такі:

  1. блок (block)

Бітовий рядок довжиною L1f тобто довжина першого входу циклової функції

Видання офіційне

  1. слово (word)

Рядок із 32 бітів, використовуваний у спеціалізованих геш-функціях 1, 2, 3 та 4, означених у розділах 7, 8, 9 та 10 відповідно, або рядок з 64 бітів, використовуваний у спеціалізованих геш- функціях 5 та 6, означених у розділах 11 та 12 відповідно

  1. матриця (matrix)

Матриця 8 на 8, у якій кожен елемент — це рядок з 8 бітів, використовуваний у спеціалізо­ваній геш-функції 7, означеній у розділі 13.

  1. ПОЗНАКИ ТА СКОРОЧЕННЯ

    1. Познаки, визначені в ISO/IEC 10118-1

У цій частині стандарту використано познаки та скорочення, означені в ISO/IEC 10118-1:

Bj — байт;

D — дані;

Н — геш-код;

  1. — початкове значення;

Ц — довжина (у бітах) першого з двох вхідних рядків циклової функції Ф;

Z-2 — довжина (у бітах) другого з двох вхідних рядків циклової функції Ф, вихідного рядка

циклової функції Ф та /V;

Lx — довжина (в бітах) бітового рядка X;

Ф — циклова функція, тобто, якщо X, Y — бітові рядки довжиною Ц та L2 відповідно, то Ф (X, У) — рядок, який отримано через застосування Ф до X та У;

X ©У — виключальне ЧИ рядків бітів Хта У (де Lx = LY).

  1. Познаки, використані у цьому стандарті

У цій частині стандарту використано такі познаки та скорочення:

а,-, а- — послідовності індексів, використовуваних для означення циклової функції;

Д' — послідовність постійних матриць, використовуваних для означення циклової

функції, визначеної у розділі 13;

с0 — функція, що приймає рядок з 64 елементів з GF(28) на вході, та видає

матрицю 8 на 8 елементів з GF(2S) на виході, використовувана для означення циклової функції, визначеної у розділі 13;

Сь с2, с3 — функції, що приймають матрицю 8 на 8 елементів з GF(28) на вході та вида­ють матрицю 8 на 8 елементів з GF(23) на виході, використовувані для означення циклової функції, визначеної у розділі 13;

с4 — функція, що приймає дві матриці 8 на 8 елементів з GF(2B) на вході та видає