НОУ ІНТУІТ, Лекція, Криптографічні засоби

Види криптографії

На сьогодні є два основні методи шифрування. Перший метод, названий симетричним або шифруванням з секретом, що розділяється, застосовувався з часів древнього Єгипту. У ньому секретний ключ , званий секретом, що розділяється, використовується для перетворення даних в незрозумілу тарабарщину. Другій стороні секрет, що розділяється ( ключ ) потрібний для розшифрування даних відповідно до криптографічного алгоритму. Якщо змінити ключ , зміняться результати шифрування. Це називається симетричною криптографією, оскільки той самий ключ застосовується обома сторонами як для зашифрування, так і для розшифрування даних (рис. 9.1).

інтуіт

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

Революція у криптографії почалася, коли Вітфілд Діффі, Мартін Хеллман та Ральф Меркл винайшли криптографію з відкритим ключем. (Деякі стверджують, що насправді британський цивільний службовець Джеймс Елліс зробив це раніше і тримав у секреті, але Діффі, Хеллману та Мерклу належить перша публікація, датована 1976 роком.) Вони намагалися вирішити стару проблему обміну ключами. Діффі цікавило, як двоє людей, які бажають здійснити фінансову транзакцію через електронну мережу, можуть зробити це безпечним чином. Він думав про далеке майбутнє, оскільки Інтернет тоді був у зародковому стані, а електронної комерції щене існувало. Якщо урядові організації мають проблеми під час обміну ключами, то як може впоратися з цим пересічний громадянин? Він хотів побудувати систему, за допомогою якої дві сторони могли б легко підтримувати захищені комунікації та безпечні транзакції, не обмінюючись щоразу ключами. Він знав, що якщо він зможе вирішити проблему обміну ключами, це стане проривом у криптографії.

Діффі співпрацював з Мартіном Хеллманом та Ральфом Мерклом. Їм знадобилося кілька років, але врешті-решт вони створили систему, яку називають шифруванням з відкритим ключем (PKE - Public Key Encryption), відому також як асиметрична криптографія.

лекція

Асиметрична криптографія зазвичай реалізується за допомогою односторонніх функцій. У математичних термінах це функції, які дуже легко обчислювати в одному напрямку, але дуже складно – у зворотному. Саме це дозволяє публікувати відкриті ключі, які є похідними від секретних ключів. Дуже важко виконати зворотне перетворення та визначити секретний ключ. На сьогоднішній день найбільш уживаною односторонньою функцією є перемноження великих простих чисел. Дуже легко перемножити два великих простих числа і отримати твір, проте визначення того, яким із безлічі можливих способів цей твір розкладається на два множники, є одним із важких математичних завдань. Якби хтось винайшов метод швидкого визначення множників подібних великих чисел, це поставило б хрест на багатьох сучасних методах шифрування з відкритим ключем. На щастя, є й інші функції, що обчислюються, зворотні до легкообчислюваних. Наприклад, поки невідомі швидкі алгоритми для логарифмування в кінцевому полі або групі точок еліптичної кривої над кінцевимполем, тоді як зведення в ступінь в обох випадках виконати дуже легко.

Шифрування з відкритим ключем є тепер на кожному Web-сервері, що пропонує безпечні покупки. Ваша транзакція шифрується без передачі або отримання секретного ключа і все це відбувається у фоновому режимі. Як користувачі, ми знаємо, що в навігаторі з'явився маленький символ замку SSL і ми почуваємося в безпеці. Неважко уявити долю Інтернет-комерції, якби при кожній покупці в Мережі доводилося думати про секретний ключ, шифрувати повідомлення, а потім якось передавати цей ключ іншій стороні. Очевидно, що без криптографії з відкритим ключем електронна комерція у її сучасному вигляді не могла б існувати.

Є багато різних алгоритмів шифрування, протоколів та додатків на основі цих двох основних видів криптографії. У наступних розділах ви ознайомитеся з деякими з них.

Криптографічні алгоритми

Нині сила криптографії зазвичай характеризується розміром ключа. Незалежно від сили алгоритму, зашифровані дані можуть атакуватися методом грубої сили, що пробує всілякі комбінації ключів. Згодом шифр може бути зламаний. Для більшості сучасних шифрів з відповідною довжиною ключа час їхнього злому методом грубої сили вимірюється тисячоліттями. Однак невідомий дефект алгоритму, досягнення у комп'ютерній технології чи математичних методах можуть різко скоротити цей час.

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

Стандарт шифрування даних DES (Data Encryption Standard)

Потрійний алгоритм DES (TripleDES або 3DES, як його часто записують) - нова, удосконалена версія DES, а його назва відображає його функціональність. Він тричі застосовує DES до даних, виконуючи зашифрування, розшифрування, а потім знову зашифрування. Насправді він не забезпечує триразового посилення шифру (оскільки в ньому задіяні всього два ключі - перший застосовується двічі для зашифрування, а другий служить для розшифрування результатів першого зашифрування), але він, проте, надає ефективну довжину ключа в 112 біт, що більш ніж достатньо для всіх користувачів.

Це алгоритм шифрування, розроблений Рональдом Рівестом, одним із творців RSA, першого комерційного застосування криптографії з відкритим ключем. Згодом було зроблено вдосконалення, щоб посилити його та виправити деякі недоліки. Поточна версія RC6 допускає довжину ключа до 2040 біт та змінний розмір блоку до 128 біт.

Коли уряд США усвідомив, що DES згодом досягне кінця свого корисного життя, він почав шукати йому заміну. Національний інститут стандартів та технологій США – урядовий орган стандартизації – оголосив відкритий конкурс на новий алгоритм, покликаний стати новим урядовим стандартом. Претендентів було багато, включаючи RC6, Blowfish відомого криптографа Брюса Шнайєра та інші гідніалгоритми. Переможцем став AES, що базується на алгоритмі Rijndael, розробленому двома бельгійськими криптографами. Те, що стандарт було обрано в результаті відкритого змагання, дуже примітно, як і перемога двох неамериканських розробників, що дозволила без значних фінансових вливань забезпечити йому світове визнання. AES швидко стає новим стандартом шифрування. Він пропонує ключ шифрування до 256 біт, що є більш ніж достатнім для доступного для огляду майбутнього. Зазвичай AES з міркувань ефективності реалізується як 128 чи 192 біта.