Як алгоритми хешування забезпечують безпеку шифрування з відкритим ключем

1

Шифрування з відкритим ключем не просто вгадує паролі. Воно спирається на конкретну математичну концепцію: хеш-значення. Тут і вступають у дію “алгоритми хешування”. Ви берете вихідне число та пропускаєте його через алгоритм. Результатом є зведення цих вихідних даних.

Справжня сила полягає у напрямі математичних операцій. Перейти від вхідних даних до хеш легко. А ось спробувати відновити вихідні вхідні дані щодо хешу практично неможливо.

Розглянемо брутальний приклад. Візьмемо вхідне число 10667. Помножимо його на 143. Хеш-значення складе 1525381.

Якщо ви бачите тільки 1525381, як ви отримали це число? Ви не можете просто вгадати. Але якщо вам скажуть, що множник дорівнював 143, знайти 10667 буде тривіальним завданням.

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

Чому хеш-значення важливі для безпеки

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

Поширені стандарти включають 40-бітові або 128-бітові ключі. Різниця вражаюча.

128-бітове число – це не просто велике число. Це астрономічно велике число. Існує 2^128 можливих комбінацій. Це число виглядає так:

340 282 366 920 938 463 463 374 607 431 768 211 456 000 000

Щоб зрозуміти масштаб, спробуйте знайти одне конкретне зернятко піску в пустелі Сахара. Саме такий рівень складності потрібен для злому надійного алгоритму хешування.

Одностороння вулиця шифрування

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

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

Якби хтось міг легко вивести вихідне число з хеш-значення, весь інтернет опинився б під загрозою. Нам довелося б шукати найкращі засоби захисту даних.

Вибір правильної сили алгоритму

Не всі алгоритми хешування однакові. Старі системи використовували коротші довжини в бітах. 40-бітний ключ може здатися надійним непідготовленим користувачем. Але сучасні комп’ютери можуть підібрати його методом грубої сили за секунду.

Саме тому ми перейшли до довших ключів. Перехід до 128-бітових або навіть великих ключів був необхідний. Він створює бар’єр, який неможливо здолати людськими зусиллями.

Коли ви бачите SSL або TLS в адресному рядку браузера, ці протоколи використовують ці принципи. Вони забезпечують безпеку обміну відкритими ключами.

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

У міру розвитку обчислювальних