Пояснення
Як працює Генератор хешів
Генератор hash обчислює криптографічні контрольні суми для довільних текстів безпосередньо у браузері. Введений текст кодується як UTF-8 і обробляється обраним алгоритмом SHA.
SHA-256 — найпоширеніший алгоритм і дає 256-бітний hash (64 hex-символи). SHA-384 дає 96 hex-символів, SHA-512 дає 128 hex-символів. Ці алгоритми належать до сімейства SHA-2, стандартизованого NIST у FIPS 180-4.
Hex і стандартний Base64 представляють ті самі байти digest. Base64 компактніший, але за потреби містить +, / та доповнення й не є автоматично безпечним для URL.
Типові помилки
- Плутати хешування з шифруванням: Hash не є оборотним представленням відкритого тексту. Шифрування має інше призначення й оборотне з відповідним ключем.
- Використовувати MD5 або SHA-1 для цілей безпеки: Обидва алгоритми мають відомі атаки колізій і вважаються небезпечними згідно з BSI TR-02102-1.
- Використовувати SHA-хеші для зберігання паролів: Прості SHA-хеші обчислюються надто швидко. Використовуйте bcrypt, scrypt або Argon2 із salt і фактором роботи.
- Тлумачити рівність хешів як тотожність: Однакові хеші означають однакове введення з надзвичайно високою ймовірністю, але не з абсолютною певністю (теоретична можливість колізії).
Обмеження цього інструмента
- Немає функції salting — не підходить для зберігання паролів.
- Лише текстове введення, без файлів (для хешів файлів використовуйте окремі інструменти).
- Немає режиму HMAC (хешування з ключем) — лише просте обчислення hash.
- Немає інтегрованої перевірки за відомими значеннями hash.
- Пробіли, розриви рядків і нормалізація Unicode не уніфікуються, а хешуються як частина введення UTF-8.
Джерела
- BSI TR-02102-1: Криптографічні методи — рекомендації та довжини ключів. Німецьке федеральне відомство з інформаційної безпеки.
- NIST FIPS 180-4: Secure Hash Standard (SHS). Визначає SHA-256, SHA-384, SHA-512.
- RFC 1321: MD5 Message-Digest Algorithm (історичний, не рекомендований для безпеки).
- Web Crypto API: Стандарт W3C для криптографічних операцій у браузері (crypto.subtle.digest).