Криптографія з відкритим ключем (PKC), також відома як асиметрична криптографія, — це структура, яка використовує відкритий ключ і закритий ключ на відміну від єдиного ключа, який використовується в симетричному шифруванні. Використання пар ключів надає PKC унікальний набір властивостей і можливостей, які можна використовувати для вирішення завдань, властивих іншим криптографічним методам. Цей тип шифрування став важливим компонентом сучасної комп’ютерної безпеки, а також ключовим компонентом нової екосистеми криптовалют.
Як працює криптографія з відкритим ключем?
У шифруванні з відкритим ключем відкритий ключ використовується відправником для шифрування інформації, а закритий ключ використовується одержувачем для її розшифровки. Оскільки два ключі повністю відрізняються один від одного, відкритий ключ можна безпечно надати без шкоди для безпеки закритого ключа. Кожна пара асиметричних ключів є унікальною, що гарантує, що повідомлення, зашифроване відкритим ключем, може прочитати лише особа, яка має відповідний закритий ключ.
Оскільки асиметричні алгоритми шифрування генерують математично пов’язані пари ключів, їх довжина ключів набагато більша, ніж у симетричного шифрування. Зазвичай ця довжина становить від 1024 до 2048 біт. Це надзвичайно ускладнює обчислення закритого ключа через його відкритий аналог. Один із найпоширеніших алгоритмів асиметричного шифрування, який використовується сьогодні, відомий як RSA. У схемі RSA ключі генеруються за допомогою параметра, отриманого множенням двох чисел (часто двох великих чисел ключа). Іншими словами, стандарт створює два ключі (один відкритий, яким можна поділитися, і один приватний, який потрібно зберігати в секреті). Алгоритм RSA вперше був описаний у 1977 році Рівестом, Шаміром і Адлеманом (тому RSA є ініціалами імен кожного учасника) і залишається ключовим компонентом криптосистем з відкритим ключем.
PKC як криптографічний інструмент
Шифрування з відкритим ключем вирішує одну з давніх проблем симетричних алгоритмів, яка полягає в з’єднанні ключів, що використовується як для шифрування, так і для дешифрування. Надсилання цього ключа через незахищене з’єднання відкриває його для третіх сторін, які потім зможуть прочитати будь-які повідомлення, зашифровані за допомогою спільного ключа. Хоча існують криптографічні методи (такі як протокол обміну ключами Діффі-Хеллмана-Меркла), які дозволяють вирішити цю проблему, вони все ще вразливі до атак. Навпаки, у криптографії з відкритим ключем ключ, який використовується для шифрування, може безпечно надаватися через будь-яке з’єднання. У результаті асиметричні алгоритми забезпечують вищий рівень захисту порівняно з симетричними.
Використовуйте його для створення цифрових підписів
Іншим застосуванням алгоритмів асиметричного шифрування є автентифікація даних за допомогою цифрових підписів. Простіше кажучи, цифровий підпис — це хеш, створений з використанням даних у повідомленні. Коли це повідомлення надсилається, підпис може бути перевірений одержувачем за допомогою відкритого ключа відправника, щоб підтвердити джерело повідомлення та переконатися, що воно не було підроблено. У деяких випадках цифрові підписи та криптографія застосовуються разом, де сам хеш може бути зашифрований як частина повідомлення. Однак усі схеми цифрового підпису не використовують методи шифрування.
Обмеження
Незважаючи на те, що її можна використовувати для підвищення безпеки комп’ютера та забезпечення перевірки цілісності повідомлень, криптографія з відкритим ключем має деякі обмеження. Через складні математичні операції, пов’язані з шифруванням і дешифруванням, асиметричні алгоритми можуть працювати досить повільно, коли їм доводиться працювати з великими обсягами даних. Цей тип шифрування також значною мірою покладається на припущення, що закритий ключ залишатиметься таємним. Якщо приватний ключ буде випадково надано або розкрито, безпека всіх повідомлень, зашифрованих відповідним відкритим ключем, буде порушена. Користувачі також можуть випадково втратити свої приватні ключі, і тоді вони не можуть отримати доступ до зашифрованих даних.
Застосування криптографії з відкритим ключем.
Цей тип шифрування використовується в багатьох сучасних комп’ютерних системах для забезпечення безпеки конфіденційної інформації. Наприклад, електронні повідомлення можна зашифрувати за допомогою методів шифрування з відкритим ключем, щоб зберегти конфіденційність їх вмісту. Протокол Secure Sockets Layer (SSL), який забезпечує безпечний зв’язок із веб-сайтами, також використовує асиметричний метод шифрування. Системи PKC навіть досліджувалися як засіб забезпечення безпечного середовища для електронного голосування, яке дозволило б виборцям брати участь у виборах зі своїх домашніх комп’ютерів.
Криптографія з відкритим ключем також займає важливе місце в технології блокчейн і цифрових валютах. Коли налаштовується новий криптовалютний гаманець, створюється пара ключів (відкритий і закритий ключі). Публічна адреса генерується за допомогою відкритого ключа, і її можна безпечно надати іншим. Закритий ключ, з іншого боку, використовується для створення цифрових підписів і перевірки транзакцій і тому має залишатися секретним. Після підтвердження транзакції шляхом підтвердження хешу в цифровому підписі цю транзакцію можна буде додати до публічної книги блокчейну. Ця система перевірки цифрового підпису гарантує, що лише особа, яка володіє закритим ключем, пов’язаним із гаманцем криптовалюти, може вивільнити кошти з нього. Слід зазначити, що асиметричні шифри, які використовуються в додатках цифрової валюти, відрізняються від тих, що використовуються для цілей комп’ютерної безпеки. Наприклад, Bitcoin та Ethereum використовують спеціалізовану криптографію, відому як Curve Digital Signature Algorithm (ECDSA) для перевірки транзакцій.
Від комп’ютерної безпеки до перевірки криптографічних транзакцій, криптографія з відкритим ключем відіграє важливу роль у захисті сучасних цифрових систем. Використовуючи спарені відкритий і закритий ключі, асиметричні криптографічні алгоритми вирішують фундаментальні проблеми безпеки, пов’язані з симетричними шифрами. Незважаючи на те, що криптографія з відкритим ключем використовується багато років, для неї регулярно розробляються нові способи використання та програми. Особливо у сфері блокчейну та цифрових валют.
