- •Безпека даних
- •Вступ. Основні поняття безпеки. Конфіденційність, цілісність та доступність даних. Класифікація загроз. Сервіси та механізми захисту.
- •Основні поняття і визначення криптографічного захисту даних.
- •Порушення, механізми і служби захисту.
- •Традиційне шифрування. Модель традиційного шифрування. Криптографія і криптоаналіз. Класична техніка шифрування: підстановки і перестановки.
- •Потокові і блокові шифри. Дифузія і конфузія. Шифр Файстеля. Диференційний та лінійний крипто аналіз. Принципи побудови блокових шифрів
- •Стандарт шифрування даних (des). Критерії, що лежать в основі конструкції des. Алгоритми "Подвійний" та "Потрійний" des.
- •Режими роботи блочних шифрів. Проблема та схеми розподілу ключів симетричного шифрування.
- •1. Режим електронної шифрувальної книги
- •2. Режим зчеплення шифрованих блоків
- •3. Режим шифрованого зворотного зв'язку
- •Генерування випадкових чисел. Використання та джерела випадкових чисел. Генератори псевдовипадкових чисел.
- •Криптографія з відкритим ключем. Принципи побудови криптосистем з відкритим ключем.
- •Алгоритм rsa
- •Порівняння основних характеристик симетричних та асиметричних алгориммів
- •Управління ключами і схема Діффі–Хеллмана.
- •1. Публічне оголошення
- •2. Публічно доступний каталог
- •3. Авторитетне джерело відкритих ключів
- •4. Сертифікати відкритих ключів
- •1. Простий розподіл секретних ключів
- •2. Розподіл секретних ключів із забезпеченням конфіденційності і аутентифікації
- •3. Гібридна схема
- •Аутентифікація повідомлень і функції хешування. Вимоги та функції аутентифікації.
- •1.1. Шифрування повідомлення
- •1.1.1. Традиційне шифрування
- •Коди автентичності повідомлень та функції хешування.
- •1. Коди автентичності повідомлень
- •1.1. Необхідні властивості кодів автентичності повідомлень
- •1.2. Коди автентичності повідомлень на основі des
- •2. Функції хешування
- •2.1. Вимоги, що пред'являються до функції хешування
- •2.2. Прості функції хешування
- •2.3. Атаки, в основі яких лежить парадокс задачі про дні народження
- •3. Захист функцій хешування і кодів автентичності повідомлень
- •3.1. Атаки з перебором всіх варіантів
- •3.2. Функції хешування
- •Алгоритми хешування. Алгоритм hmac.
- •1.1. Цілі розробки нмас
- •1.2. Алгоритм нмас
- •1.3. Захищеність нмас
- •Цифрові підписи та протоколи аутентифікації. Вимоги до цифрового підпису. Стандарт цифрового підпису dss.
- •1. Цифрові підписи
- •1.1. Вимоги
- •1.2. Безпосередній цифровий підпис
- •1.3. Арбітражний цифровий підпис
- •Протоколи аутентифікації. Взаємна та одностороння аутентифікація. (прочитати уважно номери малюнків і т.Д.)
- •2. Підходи на основі традиційного шифрування
- •3. Підходи на основі шифрування з відкритим ключем
- •4. Одностороння аутентифікація
- •5. Підхід на основі традиційного шифрування
- •6. Підходи на основі шифрування з відкритим ключем
- •Програмна реалізація криптографічних алгоритмів. Використання криптографічних функцій Microsoft CryptoApi в прикладному пз. Поняття про безпечний цикл розробки пз (sdl).
- •1. Будова і можливості Crypto api
- •2. Криптопровайдери
- •3. Контейнери ключів
- •4. Алгоритми
- •5. Сертифікати
- •6. Базові функції
- •6.1. Шифрування
- •6.2. Експорт сесійних ключів
- •6.3. Імпорт сесійних ключів
- •6.4. Розшифрування
- •6.5. Хешування
- •6.6. Цифровий підпис
- •6.7. Перевірка цифрового підпису
- •Методи і засоби створення захищеного програмного забезпечення.
- •3. Класифікація вразливостей захисту
- •4. Огляд існуючих аналізаторів
- •Відношення Історія експонатів
- •Список літератури
Цифрові підписи та протоколи аутентифікації. Вимоги до цифрового підпису. Стандарт цифрового підпису dss.
Найбільш важливою областю застосування криптографії з відкритим ключем є цифрові підписи. Цифровий підпис забезпечує цілий комплекс захисту, який було б досить складно здійснити будь-яким іншим способом. Ми починаємо цю главу з огляду можливостей використання цифрових підписів. Потім ми обговоримо протоколи аутентифікації, багато з яких засновані на застосуванні цифрового підпису. Нарешті, ми розглянемо стандарт цифрового підпису (DSS - Digital Signature Standard).
1. Цифрові підписи
1.1. Вимоги
Аутентифікація повідомлень захищає дві сторони, які обмінюються повідомленнями, від будь-якої третьої, але не забезпечує захист кожної зі сторін від іншої. Тут є цілий ряд можливостей для виникнення конфліктів.
Наприклад, припустимо, що Джон посилає Мері засвідчене повідомлення, використовуючи одну зі схем, показаних на рис. 11.4. Розглянемо наступні конфлікти, які можуть при цьому виникати.
Мері може створити фальшиве повідомлення і заявити, що воно прийшло від Джона. Для цього Мері потрібно просто скласти повідомлення і приєднати до нього код автентичності із застосуванням ключа, який Джон і Мері використовують спільно.
Джон може заперечувати авторство відісланого повідомлення. Оскільки у Мері є можливість фальсифікувати повідомлення, неможливо довести, що Джон насправді посилав повідомлення.
Обидва ці сценарії стосуються питань легітимності. Ось приклад першого з сценаріїв: при виконанні електронної пересилки грошей одержувач збільшує значення пересланої суми і заявляє, що від відправника прийшла більш значима сума. Прикладом другого сценарію може служити ситуація, коли повідомлення електронної пошти містить вказівки біржового маклера з приводу виконання транзакції, яка згодом виявляється збитковою. Тому відправник заявляє, що таке повідомлення їм ніколи не відправлялося.
У ситуаціях, коли немає повної довіри між відправником та одержувачем, потрібно щось більше ніж проста аутентифікація. Найбільш привабливим рішенням цієї проблеми виявляється цифровий підпис. Цифровий підпис є аналогом підпису, зробленим від руки. Вона повинна забезпечувати наступні можливості:
Можливість встановити автора, а також дату і час підпису.
Можливість встановити достовірність вмісту повідомлення на час підпису.
Можливість перевірки підпису третьою стороною на випадок виникнення суперечки.
Таким чином, функції цифрового підпису охоплюють, зокрема, і функції аутентифікації.
На основі цих властивостей ми можемо сформулювати такі вимоги, висунуті до цифрового підпису.
Підпис має бути двійковим кодом, який залежить від підписуваного повідомлення.
Підпис має використовувати деяку інформацію, унікальну для відправника, щоб запобігти можливості як фальсифікації, так і заперечення авторства.
Цифровий підпис має бути відносно просто зробити.
Цифровий підпис має бути відносно просто розпізнати і перевірити.
З точки зору обчислень має бути нереально фальсифікувати цифровий підпис ні за допомогою створення нового повідомлення для наявної цифрового підпису, ні за допомогою створення фальшивого цифрового підпису для наявного повідомлення.
Примірник цифрового підпису має бути зручно зберігати в пристрої.
Захищена функція хешування, вбудована у відповідну схему, подібну показаним на рис. 11.5 (B) або 11.5 (г), задовольняє цим вимогам.
Для реалізації ідеї цифрового підпису було запропоновано безліч підходів, які можна розбити на дві категорії: з безпосередньою та арбітражної логікою.
