9 Алгоритми аутентифікації користувачів

Одна з функцій підсистеми захисту - ІДЕНТИФІКАЦІЯ користувача (повідомлення системі імені). Якщо процедура ідентифікації закінчилася успішно, то користувач є законним, так як він має деяку ознаку (ідентифікатор), зареєстрований в системі.

Наступний крок - це ПЕРЕВІРКА ДІЙСНОСТІ КОРИСТУВАЧА. тобто егоАУТЕНТІФІКАЦІЯ. встановлюється, чи є даний користувач тим, ким він себе оголошує.

ПРИ ПЕРЕДАЧІ ДАНИХ, після того каксоедіненіе встановлено, необхідно забезпечити вимоги:

а) одержувач д. б. упевнений в автентичності джерела даних;

б) отримувач д. б. упевнений у достовірності переданих даних;

в) відправник д. б. упевнений в доставці даних одержувачу;

д) відправник д. б. упевнений в достовірності доставлених даних.

Для вимог (а) і (б) засіб захисту - ЦИФРОВИЙ ПІДПИС; для вимог (в) і (д) - відправник повинен отримати повідомлення про вручення із зазначенням помощьюУДОСТОВЕРЯЮЩЕЙ ПОШТИ (certified mail).

Засоби захисту в такій процедурі - ЦИФРОВИЙ ПІДПИС відповідному повідомленні.

Аутентифікації ВІДПРАВНИКА забезпечується цифровим підписом [5].

Підпис повідомлення в асиметричною криптосистеме виконується шляхом ШИФРУВАННЯ на секретному ключі відправника.

ПЕРЕДАВАЕМОЕСООБЩЕНІЕ складається з змістовної інформації відправника (у відкритому вигляді) з доданою до неї (конкатенації) цифровим підписом.

ОДЕРЖУВАЧ. знаючи відкритий ключ відправника, може виконати Дешифрування і тим самим здійснити Аутентифікацію Джерела по результату ПОРІВНЯННЯ прийнятті та обчислення ПОЛУЧАТЕЛЕМЦІФРОВОЙ ПІДПИСИ.

Не знаючи секретного ключа відправника, НЕМОЖЛИВО СТВОРИТИ ПОМИЛКОВЕ повідомлення С ЗАДАНОЇ ЦИФРОВИЙ ПІДПИСОМ.

Використання хеш-функції в технології цифрового підпису дозволяє уникнути подвоєння розміру переданого повідомлення, коли розмір цифрового підпису дорівнюватиме розміру вихідного повідомлення (в символах повідомлення).

Таким чином, процедура ОБЧИСЛЕННЯ ПІДПИСИ зводиться до последовательномуВИЧІСЛЕНІЮ ЗНАЧЕННЯ хеш-функції ВІД ВИХІДНОГО ПОВІДОМЛЕННЯ та шифрування отриманого значення на секретному ключі відправника (або дешифрування на відкритому ключі при перевірці підпису).

Есліотправітель і одержувач знають один і той же сеансовий ключ, АВТЕНТИЧНІСТЬ ПОВІДОМЛЕНЬ можна забезпечити, обчисливши значення хеш-функції від об'єднання (конкатенації) переданого повідомлення і сеансового ключа.

Результат цього обчислення називається КОДОМ аутентифікації ПОВІДОМЛЕННЯ (КАС) (messageauthenticationcode, MAC).

Имитовставка ГОСТ 28147-89 - класичний приклад коду МАС.

КАС потрібен для захисту від нав'язування помилкових повідомлень. Для захисту від підробки КАС не передається у відкритому вигляді. а об'єднується з відкритим текстом (конкатенація).

Отриманий в результаті об'єднання блок шифрується потім на сеансовому ключі.

В асиметричній криптосистеме ніхто, крім відправника, не знає секретного ключа. Це позволяетОДНОЗНАЧНО ДОВОДИТИ ПРИНАЛЕЖНІСТЬ разі відмови відправника (одержувача) від раніше переданого (прийнятого) повідомлення.

Також, ОДЕРЖУВАЧ, не знаючи секретного ключа, НЕ МОЖЕ ПІДПИСАТИ ЯЗАТИСЯ від імені відправника.

СХЕМА ЕЛЕКТРОННОЇ ПІДПИСИ СООБЩЕНІЯm:

1 Відправник А обчислює пару: kAsecret СЕКРЕТНИЙ ключ підписувача (абонента А) і kApublic - відповідний ВІДКРИТИЙ ключ перевіряючого (абонента В). Відправник А посилає kApublic одержувачу В. зберігаючи kAsecret в секреті.

2 Для отримання підпису документа m відправник А обчислює ПІДПИС s за допомогою алгоритму формування підпису S від повідомлення m на секретному ключі kA secret і посилає повідомлення m і підпис s одержувачу У.

3 Одержувач В обчислює у себе підпис за допомогою алгоритму V перевірки (верифікації) підписи від повідомлення m. підписи s на відкритому ключі kApublic. Залежно від результату обчислення, приймає або відкидає підпис s.

Класична СХЕМА СТВОРЕННЯ ТА ПЕРЕВІРКИ ЕЛЕКТРОННОЇ ПІДПИСИ показана на малюнку 9.1.

9 Алгоритми аутентифікації користувачів

в українському стандарті цифрового підпису використовується розроблена вітчизняними криптографами хеш-функції (256 біт) стандарту ГОСТ Р 34.11-94 (в основі алгоритм блочного шифрування по ГОСТ 28147-89).

Стандарт определяеталгорітм і ПРОЦЕДУРУ ОБЧИСЛЕННЯ хеш-функції ДЛЯ БУДЬ ПОСЛІДОВНОСТІ двійкових символів. які застосовуються в криптографічних методах обробки і захисту інформації, в тому числі для реалізації процедур електронного підпису (ЕЦП) при передачі, обробці та зберіганні інформації в автоматизованих системах.

Певна в стандартефункція хешування використовується при реалізаціісістемелектронной цифрового підпису на базі асиметричного криптографічного алгоритму по ГОСТ Р 34.10-94 «Інформаційна технологія. Криптографічний захист інформації. Процедури вироблення і перевірки електронного цифрового підпису на базі асиметричного криптографічного алгоритму ».

Загалом, хеш-функціяh відображає двійкові рядки довільної кінцевої довжини в виходи невеликий (наприклад, 64, 128, 160,192, 224, 256, 384, 512) фіксованої довжини [13], називаемиехеш-величинами:

де * - безліч двійкових рядків довільної кінцевої довжини; n - безліч двійкових рядків довжиною n біт, тобто * - це об'єднання всіх множин двійкових послідовностей длінойi біт, що належать системі N (в ГОСТ Р 34.11-94, n = 256).

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

У ГОСТ Р 34.11-94 використовували перший шлях - метод послідовного хешування. використовує хеш-функцію з фіксованим розміром входу (див. рисунок 9.2), тобто функцію стиснення з коефіцієнтом 2.

9 Алгоритми аутентифікації користувачів

Якщо необхідно хешірованного повідомлення m = (m1, m2, ..., mi), то хешування виконується в такий спосіб:

Якщо останній блок менше, ніж n біт, то він набивається одним з існуючих методів до досягнення довжини, кратної n.

На відміну від стандартних передумов, що повідомлення розбите на блоки і проведена набивка останнього блоку, якщо необхідно (форматування входу апріорі), до початку хешування, то в ГОСТ Р 34.11-94 процедура хешування очікує кінця повідомлення (форматування вхідного повідомлення Апостеріорі).

Набивка проводиться таким чином: останній блок зсувається вправо, а потім набивається нулями до досягнення довжини в 256 біт.

Алгоритм хешування по ГОСТ Р 34.11-94 можна класифікувати як стійкий до колізій код (при n = 256. і один з видів атак зажадає приблизно 2256/2 операцій хешування), що виявляє модифікації (Collision Resistant Hash Function, CRHF).

Такжеконструктори передбачили ДОДАТКОВІ ЗАХОДИ ЗАХИСТУ:

а) паралельно розраховуються контрольна сума, що представляє собою суму всіх блоків повідомлення (останній підсумовується вже набитим) за правилом A + B [mod 2 k], де k = | A | = | B |. а | A | і | B | бітові довжини слів A і B відповідно (далі на малюнках і в тексті ця операція буде позначатися);

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

9 Алгоритми аутентифікації користувачів

9 Алгоритми аутентифікації користувачів

Вказувати в переданому повідомленні, скільки було додано нулів до останнього блоку, не потрібно. так як довжина повідомлення бере участь в хешування (див. рисунок 9.4).

9 Алгоритми аутентифікації користувачів

Початковий вектор IV: згідно ГОСТ Р 34.11-94, IV- довільне фіксоване слово довжиною 256 біт (IV ε256).

Якщо він апріорно невідомий верифікуйте цілісність повідомлення, то його треба передавати разом з повідомленням з гарантією цілісності.

При невеликих повідомленнях можна вибирати IV з невеликого безлічі допустимих величин. Також він може здаватися в рамках організації, домену, як константа.

Кожен вхідний блок розглядається як результат конкатенації чотирьох 64-розрядних двійкових наборів.

1) генерація чотирьох 256-розрядних ключів для шифрування в режимі простої заміни 64-розрядних частин i -го блоку;

2) зашифрование частейблока hi c використанням алгоритму ГОСТ 28147-89;

3) перемішування результатів шифрування