ПЕРЕДМОВА
1ВНЕСЕНО: Технічний комітет зі стандартизації «Інформаційні технології» (ТК 20) при Держ-споживстандарті України і Міжнародний науково-навчальний центр інформаційних технологійта систем НАН України та Міністерства освіти і науки України
ПЕРЕКЛАД І НАУКОВО-ТЕХНІЧНЕ РЕДАГУВАННЯ: А. Анісімов, д-р. фіз.-мат. наук (керівник розробки); Т. Кальчук; Є. Осадчий, канд.техн.наук; В. Ткаченко; О. Фаль, канд. фіз.-мат. наук
Ступінь відповідності — ідентичний (IDТ) Переклад з англійської (en)
4УВЕДЕНО ВПЕРШЕ
ЗМІСТ
Національний вступ
7Геш-функція два
8Геш-функція три
9 Геш-функція чотири
Додаток А Використання алгоритму шифрування даних (DEA).
Додаток В Приклади
Бібліографія
НАЦІОНАЛЬНИЙ ВСТУП
Цей стандарт є тотожний переклад ISO/IES 10118-2:2000 Information technology — Security techniques — Hash-functions — Part 2: Hash-functions using an n-bit block cipher (Інформаційні технології. Методи захисту. Геш-функції. Частина 2. Геш-функції з використовуванням n-бітового блокового шифру).
У стандарті представлено геш-функції, які використовують n-бітовий блоковий шифр, наведено чотири геш-функції, які відповідають загальній моделі, описаній у ДСТУ ISO/IEC 10118-1:2003.
Відповідальний за ISO/IEC 10118-2:2000 технічний комітет ISO/IEC JTC 1.
В Україні відповідальний за цей стандарт, — Технічний комітет зі стандартизації «Інформаційні технології» (ТК 20).
Стандарт ISO/IEC 10118 складається із чотирьох частин під загальною назвою Information technology — Security techniques — Hash-functions (Інформаційні технології. Методи захисту. Геш-функції). Цей стандарт описує геш-функції і може бути застосований для реалізації послуг автен-тифікації, цілісності та неспростовності.
Частини стандарту ISO/IEC 10118 мають такі назви :
У частині 1 подано загальну модель геш-функцій та описано геш-функцію, яка перетворює довільні рядки бітів в рядки бітів фіксованої довжини, і методи заповнювання, використовувані для обчислювання геш-коду. Ця частина містить визначання, познаки, скорочення та вимоги, спільні для інших частин ISO/IEC 10118.
У частині 2 йдеться про геш-функції, які базуються на використовуванні n-бітового блокового алгоритму шифрування. Означено чотири геш-функції, які є сумісні із загальною моделлю, поданою у ISO/IEC 10118-1.
У частині 3 розглянуто спеціалізовані геш-функції. Геш-функції у цій частині ґрунтуються на ітераційному застосуванні раундової функції. Означено три різні раундові функції, які використовуються цими спеціалізованими функціями.
У частині 4 представлено дві геш-функції, що використовують модульну арифметику. Ці геш-функції, які вважаються стійкими до колізій, стискають повідомлення довільної довжини до геш-коду, довжину якого визначають через довжину простого числа, використовуваного у раундовій функції.
Міжнародна організація зі стандартизації (ISO) та Міжнародна електротехнічна комісія (ІЕС) звертають увагу на той факт, що відповідність цій частині ISOMEC 10118 може містити використання патенту, що стосується "Data Authentication Using Modification Detection Codes Based on a Public One Way Encryption Function", (Патент США 4, 908, 861 виданий 1990-03-13).
ISO та ІЕС не займають жодної позиції стосовно доказу, законності та сфери застосування права цього патенту.
Власник права цього патенту запевнив ISO та ІЕС, що він готовий вести переговори щодо ліцензій на прийнятних та недискримінаційних умовах з прохачами з усього світу. Стосовно цього в ISO та ІЕС зареєстрована заява власника права цього патенту. Довідку можна отримати від:
Director of Licensing
International Business Machnies Corporation
500 Columbus Avenue
Thornwood, NY 10594
U.S.A
Треба зазначити, що існує можливість того, що деякі з елементів цієї частини ISOIEC 10118 можуть бути предметом патентних прав, відмінних від означених вище. ISO та ІЕС не несуть відповідальність за ідентифікацію будь-якого патентного права або всіх таких патентних прав.
До стандарту внесено такі редакційні зміни:
Необхідно взяти до уваги, що в Україні чинний ДСТУ ISO/IEC 10118-1:2003 Інформаційні технології. Методи захисту. Геш-функції. Частина 1. Загальні положення.
Копії міжнародних стандартів, не чинних в Україні, можна отримати у Головному фонді нормативних документів ДП «УкрНДНЦ».
ДСТУ ISO/IEC 10118-2:2003 НАЦІОНАЛЬНИЙ СТАНДАРТ УКРАЇНИ
Інформаційні технології
Методи захисту. Геш-функції
Частина 2. Геш-функції з використовуванням
n-бітового блокового шифру
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ
МЕТОДЫ ЗАЩИТЫ. ХЕШ-ФУНКЦИИ
Часть 2. Хеш-функции с использованием
n-битового блочного шифра
INFORMATION TECHNOLOGY
SECURITY TECHNIQUES. HASH-FUNCTION Part 2. Hash-functions using an n-bit block cipher
Чинний від 2005-01-01
1СФЕРА ЗАСТОСУВАННЯ
Цей стандарт визначає геш-функції, які використовують n-бітовий блоковий алгоритм шифрування. Отже, вони придатні для середовища, у якому такий алгоритм вже реалізовано.
Означено чотири геш-функції. Перша функція надає геш-коди довжиною менші за n або рівні п, де n — довжина використовуваного блоку алгоритму.
Друга функція надає геш-коди довжиною меншою за 2п або рівні 2п; третя функція надає геш-коди довжиною рівною 2п; і четверта функція надає геш-коди довжиною 3п.
Усі чотири геш-функції, подані у цьому стандарті, відповідають загальній моделі, наведеній в ISO/IEC 10118-1.
2НОРМАТИВНІ ПОСИЛАННЯ
Наведені нижче нормативні документи містять положення, які через посилання в цьому тексті становлять положення цього стандарту. Для датованих посилань пізніші зміни до будь-якого з цих видань або перегляд їх не застосовують. Однак, учасників угод, базованих на цьому стандарті, запрошують визначити можливість застосування найостанніших видань нормативних документів, наведених нижче. Для недатованих посилань треба звертатися до найновішого видання нормативних документів. Члени ISO та ІЕС впорядковують каталоги чинних міжнародних стандартів.
ISO/IEC 10116:1997 Information technology — Security techniques — Modes of operation for an n-bit block cipher
ISO/IEC 10118-1:2000 Information technology — Security techniques — Hash-functions — Part 1: General.
НАЦІОНАЛЬНЕ ПОЯСНЕННЯ ISO/IEC 10116:1997 Інформаційні технології. Методи захисту. Режими функціювання n-бітовмх блокових шифрів ISO/IEC 10118-1:2000 Інформаційні технології. Методи захисту. Геш-функції. Частина 1. Загальні положення. |
3ТЕРМІНИ ТА ВИЗНАЧЕННЯ ПОНЯТЬ
Усі терміни, наведені в цьому стандарті, а також терміни та визначення понять ISO/IEC 10118-1, призначені для застосовування в цьому стандарті.
3.1 n-бітовий блоковий шифр (n-bit block cipher)
Блоковий шифр — шифр, блоки відкритих та зашифрованих текстів якого мають довжину n бітів (див. ISO/IEC 10116).
4ПОЗНАКИ ТА СКОРОЧЕННЯ
5ВИКОРИСТАННЯ ЗАГАЛЬНОЇ МОДЕЛІ
Геш-функції, які розглянуто в наступних чотирьох розділах, надають геш-коди Η довжиною LH. Геш-функція відповідає загальній моделі, наведеній в ISO/IEC 10118-1. Через це для кожної з поданих нижче чотирьох геш-функцій необхідно лише визначити:
Застосування геш-функції, яку визначають з використанням загальної моделі, вимагає також вибирання параметра LH.
6ГЕШ-ФУНКЦІЯ ОДИН
6.1Вибирання параметрів
Параметри Ц, L2, LH геш-функції, представленої у даному розділі, мають відповідати умовам: L1 = L2 = п та LH — менша або рівна п.
6.2Метод заповнювання
Вибирання методу заповнювання для використання у цій геш-функції є поза межами цього стандарту. Приклади методів заповнювання подано у додатку A ISO/IEC 10118-1.
6.3Початкове значення
Вибирання IV для використання у цій геш-функції є поза межами цього стандарту. Значення IV має бути узгоджене і зафіксоване користувачами геш-функції.
6.4 Раундова функція
Раундова функція φ з'єднує блок заповнених даних Dj (завдовжки L1 = n бітів) з результатом попереднього застосування раундової функції Нj-1, (завдовжки L2 = n бітів), внаслідок чого отримуємо Нj. Як частину геш-функції слід вибрати (функцію и, яка перетворює n-бітовий блок у ключ для використання з блоковим алгоритмом е. Вибір функції и для використання у цій геш-функції є поза межами цього стандарту (див. додаток А для настанови).
Раундову функцію визначають як:
Рисунок 1 — Раундова функція геш-функції один
6.5 Підсумкове перетворення
Підсумковим перетворенням Т є просте відтинання, тобто геш-код Η утворюється з LH крайніх лівих бітів заключного блоку Hq
7 ГЕШ-ФУНКЦІЯ ДВА
7.1Вибирання параметрів
Параметри L1, L2, LH геш-функції, означеної в даному розділі, мають відповідати: L1 = n, L2 = 2n, і LH — менша або рівна 2п.
7.2Метод заповнювання
Вибирання методу заповнювання для використання в цій геш-функції є поза межами цього стандарту. Приклади методів заповнювання подано у додатку A ISO/IEC 10118-1.
7.3Початкове значення
Вибирання IV (завдовжки 2n) для використання в цій геш-функції є поза межами цього стандарту. Значення IV має бути узгоджене і зафіксоване користувачами геш-функції. Проте, IV треба вибрати такою, щоб и (IVL) та и (IVR) були різними.
7.4Раундова функція
Раундова функція φ з'єднує блок заповнених даних D; (завдовжки L1 = n бітів) з результатом попереднього застосування раундової функції Ηj-1, (завдовжки L2 = 2n бітів), внаслідок чого отримуємо Нj. Як частину раундової функції треба вибрати два перетворення и та и'. Ці перетворення використовують для того, щоб перетворити підсумковий блок у два LK-бiтовi ключі алгоритму е. Означування и та и' є поза межами цього стандарту. Проте треба взяти до відома те, що вибір и та и’ впливає на якість геш-функції (див. Додаток А).
Рисунок 2 — Раундова функція геш-функції два
Покладемо, HL0 та HR0 рівними IVL та IVRвідповідно. Підсумкові блоки обчислюють для j = 1 до q ітераційно таким чином:
Рандову функцію показано на рисунку 2.
Рисунок За — Раундова функція геш-функції три
Рисунок Зb — Лінійне відображення γ1 геш-функції три
8.6 Підсумкове перетворення
відповідно
Після обробляння заповненого повідомлення, зв'язувальні змінні величини приймають значення. Здійснимо чотири додаткові ітерації раундової функції з вхідними даними:
Результат LH обчислення геш-функції складається з Підсумкове перетворення вимагає 26 зашифровувань (в останній ітерації необхідно здійснити лише два зашифровування).
9 ГЕШ-ФУНКЦІЯ ЧОТИРИ
Геш-функція, розглянута в цьому розділі, надає геш-коди довжиною LH , де LH дорівнює 3n для парних значень n.
9.1Загальний
Див. 8.1 стосовно певних визначень, що мають відношення до цієї геш-функції.
9.2Вибирання параметрів
Параметри L1, L2, та LH геш-функції, наведеної у даному розділі, повинні задовольняти: L1 = 3n, L2 = 9n, LH дорівнює 3п.
9.3Метод заповнювання
Метод заповнювання для використання з цією геш-функцією має бути таким, як означено в розділі А.3 ISO/IEC 10118-1, причому r = n.
9.4Початкове значення
Вибір IV (завдовжки 9п) для використання в цій геш-функції є поза межами цього стандарту. Значення IV має бути узгоджене і зафіксоване користувачами геш-функції.
9.5Раундова функція
Раундову функцію пояснено на рисунку 4а, а лінійне відображення γ2 — на рисунку 4b.
Рисунок 4а — Раундова функція геш-функції чотири
9.6 Підсумкове перетворення
Після обробляння заповненого повідомлення, зв'язувальні змінні величини приймають значення . Здійснимо чотири додаткові ітерації раундової функції з вхідними повідомленнями:
ВІДПОВІДНО.
Результат обчислення геш-функції складається з .
Підсумкове перетворення вимагає ЗО зашифровувань (на останній ітерації необхідно здійснити лише три зашифровування).