Що таке асиметричне шифрування?

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

Однак основна відмінність описує ключі шифрування. Алгоритм симетричного шифрування використовує єдиний спільний ключ для шифрування та дешифрування даних. Алгоритм асиметричного шифрування використовує два зв’язані ключі: один для розшифровки, а інший – для розшифровки.

Термінологія

Алгоритми асиметричного шифрування ґрунтуються на використанні двох різних ключів. Один ключ можна використовувати для шифрування даних, а інший – для дешифрування. Два ключі шифрування — це не просто два старі значення. Вони внутрішньо пов’язані між собою і мають бути згенеровані за допомогою алгоритму генерації ключів.

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

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

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

Властивості алгоритмів симетричного шифрування

Асиметричні алгоритми шифрування вимагають використання набагато більших ключів, ніж симетричні алгоритми шифрування, забезпечуючи той самий рівень безпеки. Як правило, симетричний алгоритм шифрування зі 128-бітним ключем шифрування вважається безпечним, хоча перевагу надають 256-бітним ключам. В асиметричному алгоритмі шифрування 2048-бітні ключі вважаються безпечними.

Приклад 2048-бітного ключа стосується RSA, який довгий час був стандартом для асиметричного шифрування. Однак криптографія еліптичної кривої є новою концепцією, яка також є асиметричною, але використовує значно менші ключі. 2048-бітний ключ RSA забезпечує еквівалентну безпеку 224-бітному ключу еліптичної кривої.

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

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

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

Використання на практиці

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

Це варіант використання TLS, який забезпечує безпеку в HTTPS. Користувач підключається до веб-сервера; потім вони обмінюються відкритими ключами для шифрування невеликих повідомлень один одному. Потім сервер генерує симетричний ключ, шифрує його відкритим ключем користувача та надсилає йому. Користувач розшифровує ключ, а потім може використовувати симетричний ключ для ефективного шифрування майбутніх повідомлень на сервер.

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

Висновок

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

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


Як клонувати жорсткий диск

Як клонувати жорсткий диск

У сучасну цифрову епоху, коли дані є цінним активом, клонування жорсткого диска в Windows може бути вирішальним процесом для багатьох. Цей вичерпний посібник

Як виправити помилку завантаження драйвера WUDFRd у Windows 10?

Як виправити помилку завантаження драйвера WUDFRd у Windows 10?

Ви стикаєтеся з повідомленням про помилку під час завантаження комп’ютера, у якому йдеться про те, що драйвер WUDFRd не вдалося завантажити на ваш комп’ютер?

Як виправити код помилки NVIDIA GeForce Experience 0x0003

Як виправити код помилки NVIDIA GeForce Experience 0x0003

Ви відчуваєте код помилки NVIDIA GeForce 0x0003 на робочому столі? Якщо так, прочитайте блог, щоб дізнатися, як швидко та легко виправити цю помилку.

Що таке SMPS?

Що таке SMPS?

Перш ніж вибрати SMPS для свого комп’ютера, дізнайтеся, що таке SMPS і значення різних показників ефективності.

Чому мій Chromebook не вмикається

Чому мій Chromebook не вмикається

Отримайте відповіді на запитання «Чому мій Chromebook не вмикається?» У цьому корисному посібнику для користувачів Chromebook.

Як повідомити Google про фішинг

Як повідомити Google про фішинг

Дізнайтеся, як повідомити про шахрая в Google, щоб запобігти йому обманювати інших за допомогою цього посібника.

Roomba зупиняється, залипає та розвертається – виправлення

Roomba зупиняється, залипає та розвертається – виправлення

Вирішіть проблему, коли ваш робот-пилосос Roomba зупиняється, залипає та продовжує обертатися.

Як змінити налаштування графіки на Steam Deck

Як змінити налаштування графіки на Steam Deck

Steam Deck пропонує надійний і універсальний ігровий досвід прямо у вас під рукою. Однак, щоб оптимізувати вашу гру та забезпечити найкраще

Що таке безпека на основі ізоляції?

Що таке безпека на основі ізоляції?

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

Як використовувати Auto Clicker для Chromebook

Як використовувати Auto Clicker для Chromebook

Сьогодні я збирався заглибитися в інструмент, який може автоматизувати повторювані завдання на вашому Chromebook: Auto Clicker. Цей інструмент може заощадити ваш час і