Скачиваний:
78
Добавлен:
18.10.2019
Размер:
2.04 Mб
Скачать

Лекція 1. Базові криптографічні протоколи

Теорія криптографічних протоколів – порівняно молода наукова дисципліна. Її становлення відбувалось у 80-х рр. ХХ ст. Методологічною основою цієї галузі знань є відкриття у сфері асиметричної криптографії (У. Діффі, М. Хелман, 1976). Поява і розвиток асиметричної криптографії пов’язані з тими галузями людської діяльності, де може існувати недовіра між людьми, потенційна можливість взаємного обману. Це комерційні, юридичні, фінансові, нотаріальні стосунки тощо.

Закономірності організації складних криптосистем

У 1976 р. опублікована робота американських математиків Уїтфілда Діффі та Мпртіна Хеллмана «Нові напрями у криптографії». З неї почався розвиток асиметричних криптосистем (двохключових). Інша їх назва – криптосистеми з відкритим ключем. Теоретичною основою цього розділу криптографії стала математична теорія складності. Перші асиметричні криптосистеми на базі односпрямованої функції RSA з’явились у 1979 р. У 1984 р. Goldwasser та Micali сформулювали визначення, що подає теоретико-складнісний аналог цілковитої секретності. У 1989 р. Goldwasser, Micali та Rackoff узагальнили теоретико-складнісний підхід на криптографічні протоколи.

Згідно із сучасним визначенням, криптографія – наука про методи створення та аналізу алгоритмічного забезпечення інформаційних систем, стійких до навмисних (а, отже, і випадкових) спроб відхилення системи від належного функціонального призначення.

У сучасній криптографії є два напрями – класична і доказова (редукціоністська). Вони мають методологічно різні підходи до розв’язання залач.

У класичній криптографії задача розв’язується у такому порядку:

  1. Формулюється криптографічна проблема (задача), яка потребує розв’язання;

  2. Криптографи знаходять розв’язання;

  3. Криптоаналітики шукають атаку на запропоноване рішення – піддають алгоритм криптоаналізу;

  4. Коли атаку знаходять, якщо вона демонструє слабкість алгоримта, переходять до п.2;

  5. Запропоноване рішення реалізується.

Доказова (редукціоністська) криптографія – популярний на сьогодні підхід до розв’язання задач у криптографічній науці, грунтується на тезі про існування обчислювально складних задач та односпрямованих функції. Порядок розв’язання задач у цій методології такий:

  1. Формулюється криптографічна проблема (задача), яка потребує розв’язання; для складних задач може потребуватись побудова спеціальної математичної моделі, яка спростить перехід до наступного кроку;

  2. Дається формальне, математичне визначення проблеми;

  3. Конструюється алгоритм (протокол, схема тощо);

  4. Приймається теоретико-складнісна теза про наявність певної обчислювально-нерозв’язної задачі;

  5. Доводиться, що алгоритм (протокол, схема тощо) відповідає своєму визначенню;

  6. Запропоноване рішення реалізується.

На відміну від класичного доказовий підхід дозволяє отримати формалізовані, а не емпіричні докази стійкості криптографічних конструкцій.

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

У криптографії відомі три принципово різні методи реалізації асиметрії:

  1. Використання криптографічних ключів;

  2. Канал, більш надійний для законного користувача, ніж для зловмисника (теоретико-інформаційні моделі);

  3. Потужніші обчислювальні ресурси, ніж у зловмисника.

Другий випадок складно реалізувати, а третій малоймовірний, тому основним методом є використання криптографічних ключів.

Предмет вивчення криптографії можна подати у вигляді багаторівневої системи (рис. 1.1).

Криптографічні примітиви – це відображення нижнього рівня, вони мають корисні для криптографії властивості. Самі вони не становлять практичного інтересу та не дають жодних готових рішень задач. Типи криптографічних примітивів:

  1. Перемішувальні чи інженерні (confusion/diffusion primrtives), наприклад петля Фейстеля, лінійний регістр зсуву із зворотним зв’язком, SP-мережі;

  2. Алгебраїчні та комбінаторні примітиви, наприклад функція дискретного логарифма, функція RSA та ін.

Криптографічні функції («будівельні блоки» криптосистем) – це локальні алгоритми, які можуть давати результати, що становлять інтерес для криптографії. Вони вже становлять інтерес у доказовому підході; якщо функція вважається безпечною, наприклад RIJNDAEL, то будь-який спосіб шифрування з використанням RIJNDAEL також вважається безпечним (за умови коректної конструкції криптосистеми).

Всі криптографічні функції можна поділити на три класи:

  • Безключові: генератори випадкових послідовностей, безключові хеш-функції, псевдовипадкові перестановки;

  • Одноключові: блокові і потокові шифри, хеш-функції з ключем, псевдовипадкові послідовності;

  • Двоключові: алгоритми шифрування з відкритим ключем, алгоритми цифрового підпису.

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

«Будівельні блоки» криптографічних протоколів – це допоміжні конструкції, які обслуговують роботу протоколів.

Криптографічні схеми (механізми захисту) – це сукупність функціонально однорідних криптографічних алгоритмів і (або) протоколів, які мають спільні цілі захисту. Приклади криптографічних схем:

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

  • Схеми розділення секрету, що включають протокол розділення секрету, протокол відновлення секрету, протокол розподілу ключів.

Криптографічні системи – конструкції ще вищого рівня, які надають готове рішення певної задачі захисту (готові послуги захисту). Наприклад, послуги можуть бути оформлені у вигляді підсистем, які викликаються прикладними програмами.

Залежно від умов, цілей створення інформаційної системи виокремлюють різні цілі захисту інформації: конфіденційність, цілісність даних, аутентифікація суб’єктів системи, авторизація, контроль доступу, прив’язка інформації до часі її створення, анонімність, неможливість відмови від фактів створення чи отримання документів. Серед усіх цілей є чотири, що становлять базис: конфіденційність, цілісність, аутентичність, неможливість відмови.

Соседние файлы в папке 5.2_Методи побудови і аналізу криптосистем