Що це за інструмент?
Хеш-функція бере будь-які вхідні дані й перетворює їх на рядок шістнадцяткових символів фіксованої довжини, який називається дайджестом. Однакові вхідні дані завжди дають однаковий дайджест, а зміна навіть одного символу дає зовсім інший результат. Цей інструмент запускає п'ять широко використовуваних алгоритмів — MD5, SHA-1, SHA-256, SHA-384 і SHA-512 — на тих самих вхідних даних, щоб ви могли порівняти їх або взяти той, що потрібен.
Ці дайджести односторонні: математично неможливо відновити оригінальний текст з хешу. Те, що люди називають "розшифруванням" хешу онлайн, насправді є пошуком у таблиці — сайт просто перевіряє, чи збігається ваш хеш з одним з мільярдів заздалегідь обчислених хешів поширених паролів і фраз. Якщо вашого вхідного тексту немає в їхній таблиці, його неможливо знайти, оскільки зворотної функції не існує.
Родина SHA-2 (SHA-256, SHA-384, SHA-512) стандартизована NIST у FIPS 180-4 і залишається незламаною. MD5 і SHA-1 — інша історія: практичні атаки колізій було продемонстровано проти MD5 у 2004 році та проти SHA-1 у 2017 році (атака "SHAttered"), тож обидва вважаються криптографічно зламаними.
Навіщо його використовувати?
- Обчислює п'ять алгоритмів хешування одночасно, замість перемикання між інструментами.
- Порівняйте контрольну суму MD5, SHA-1 чи SHA-256 з опублікованим значенням, щоб перевірити цілісність.
- Генеруйте надійніші дайджести SHA-384 чи SHA-512 для застосунків, яким потрібен довший вивід.
- Створюйте детерміновані ідентифікатори чи ключі кешу з довільного тексту.
- На 100% локально: ваші вхідні дані ніколи не залишають браузер, тож це безпечно для чутливого тексту.
Як користуватися
- Введіть чи вставте свій текст у поле вводу.
- Натисніть "Згенерувати".
- Перегляньте результати MD5, SHA-1, SHA-256, SHA-384 і SHA-512 (позначте "Виведення великими літерами", якщо ваша цільова система очікує великі літери).
- Натисніть "Копіювати" біля потрібного хешу.
Приклад
Введення
helloРезультат
MD5: 5d41402abc4b2a76b9719d911017c592
SHA-1: aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824Хеші детерміновані: "hello" завжди дає ці точні значення в кожному інструменті, кожного разу.
Потрібен лише один алгоритм?
Якщо ви вже знаєте, який алгоритм потрібен, і не хочете, щоб решта захаращували сторінку, наші спеціалізовані інструменти з одним алгоритмом швидше проглядаються.
Порівняння п'яти алгоритмів
Усі п'ять є односторонніми хеш-функціями, але відрізняються довжиною виводу та рівнем безпеки.
| Алгоритм | Розмір виводу | Статус безпеки | Типове застосування |
|---|---|---|---|
| MD5 | 128 біт (32 hex-символи) | Зламаний — колізії можна створити штучно | Контрольні суми, ключі кешу, дедуплікація |
| SHA-1 | 160 біт (40 hex-символів) | Зламаний — практичні атаки колізій існують з 2017 року | Лише сумісність зі старими системами |
| SHA-256 | 256 біт (64 hex-символи) | Безпечний, поточний галузевий стандарт | Цифрові підписи, TLS, блокчейн, перевірка цілісності |
| SHA-384 | 384 біти (96 hex-символів) | Безпечний, довший вивід ніж SHA-256 | Підписи з високим рівнем довіри, деякі налаштування TLS/PKI |
| SHA-512 | 512 біт (128 hex-символів) | Безпечний, найбільший вивід тут | Застосунки, що вимагають максимальної довжини дайджесту |
Типові випадки використання
- Перевірка, чи завантажений файл відповідає опублікованій видавцем контрольній сумі, перед його запуском.
- Генерація детермінованих ключів кешу чи ідентифікаторів з довільного тексту.
- Перевірка, чи два документи або записи побайтово ідентичні, без прямого порівняння.
- Створення надійнішого дайджесту (SHA-384/SHA-512), коли цього конкретно вимагає застосунок.
Часті запитання
Чи можу я розшифрувати хеш назад в оригінальний текст?
Ні. Хешування спроєктоване як односторонній процес — немає ні ключа, ні математичної операції, яка перетворює дайджест назад на вхідні дані. Сайти, що заявляють про "розшифрування MD5" чи "розшифрування SHA-256", насправді просто шукають у величезній заздалегідь обчисленій таблиці поширених вхідних даних і їхніх хешів. Якщо ваш оригінальний текст був достатньо незвичайним, щоб не потрапити в цю таблицю, його неможливо відновити, ніким.
Тоді як сайти перевіряють мій пароль, не зберігаючи його в незашифрованому вигляді?
Вони зберігають хеш вашого пароля, а не сам пароль. Коли ви входите, вони хешують введене й порівнюють два хеші. Якщо вони збігаються, паролі теж збігалися — без потреби сайту зберігати чи "розшифровувати" ваш справжній пароль.
Який алгоритм мені варто використовувати?
Для завдань, пов'язаних з безпекою (підписи, сертифікати, перевірка завантажень), використовуйте SHA-256 чи вище — MD5 і SHA-1 обидва криптографічно зламані і не мають довіри для безпеки. Для завдань, не пов'язаних з безпекою, як-от контрольні суми, ключі кешу чи дедуплікація, MD5 усе ще підходить і обчислюється швидше.
Чому я отримую інший хеш, ніж в іншому інструменті, для того самого тексту?
Зазвичай через непомітну різницю: кінцевий перенос рядка чи пробіл, різні символи закінчення рядка (\r\n проти \n), чи інше кодування тексту. Побайтово ідентичні вхідні дані завжди дають ідентичний хеш у будь-якій коректній реалізації.
Чи надсилається мій текст на сервер?
Ні. MD5 обчислюється за допомогою JavaScript, що виконується у вашому браузері, а SHA-1/SHA-256/SHA-384/SHA-512 використовують вбудований у ваш браузер Web Crypto API. Нічого не залишає ваш пристрій.
Який хеш мені варто насправді використовувати?
Якщо від нього залежить щось пов'язане з безпекою — перевірка цілісності файлів, підписи, застосування, суміжні з паролями, — обирайте SHA-256: це стандарт NIST FIPS 180-4, і саме в ньому більшість програмного забезпечення поширює контрольні суми. MD5 і SHA-1 прийнятні лише для завдань, не пов'язаних з безпекою, як-от ключі кешу, дедуплікація чи сумісність зі старою системою, яка їх вимагає.