§

Вставте текст або перетягніть файл для хешування

Кодування
§

Hash Generator — SHA-256, MD5, SHA-1 онлайн

Всі чотири дайджести обчислюються локально у вашому браузері. Нічого не завантажується.
§

MD5

Застарілий
§

SHA-1

Застарілий
§

SHA-256

§

SHA-512

Розробники постійно звертаються до криптографічних хешів: SHA-256 та SHA-512 лежать в основі більшості аудитів безпеки, контрольні суми AWS S3 `Content-MD5` контролюють великі завантаження, а атестації ланцюжка поставок фіксують артефакти за дайджестом SHA-256. MD5 та SHA-1 є застарілими і використовуються лише для сумісності зі старими системами. Цей генератор обчислює MD5, SHA-1, SHA-256 та SHA-512 повністю через браузерний API Web Crypto, тому вихідні файли та секретні рядки ніколи не передаються до сервісу хешування.

Що таке криптографічний хеш?

Криптографічна хеш-функція приймає введення довільної довжини та видає дайджест фіксованої довжини. Однакове введення завжди дає однаковий дайджест; зміна одного біта змінює приблизно половину вихідних бітів. Цей інструмент обчислює чотири найбільш широко застосовуваних дайджести — MD5 (RFC 1321), SHA-1, SHA-256 та SHA-512 (сімейство SHA визначено FIPS 180-4) — для будь-якого тексту або файлу, що ви надаєте, не надсилаючи дані за межі вашого пристрою.

Як працює цей генератор хешів?

Хешування виконується повністю на вашому комп'ютері. SHA-1, SHA-256 та SHA-512 передаються до нативного API браузера crypto.subtle.digest; MD5 використовує вбудовану реалізацію у відкритому доступі, оскільки Web Crypto не постачається з MD5. Кроки такі:

  1. Ваше введення зчитується з текстового поля, або ваш файл зчитується з диска в ArrayBuffer. Текст кодується як UTF-8 перед хешуванням, щоб дайджест збігався з тим, що дав би серверний виклик hashlib.sha256(text.encode()).
  2. Кожен алгоритм доповнює повідомлення до межі блоку та обробляє його блок за блоком, змішуючи вхідні байти з поточним внутрішнім станом через послідовність порозрядних та модульно-арифметичних операцій.
  3. Коли останній блок споживається, внутрішній стан фіналізується: MD5 дає 128 бітів, SHA-1 — 160 бітів, SHA-256 — 256 бітів, SHA-512 — 512 бітів.
  4. Необроблені байти дайджесту форматуються як шістнадцятковий рядок у нижньому регістрі або стандартний Base64, залежно від вибраного вами кодування над панелями.
  5. Кожен дайджест записується у власне поле лише для читання з кнопкою Копіювати. Вмикання режиму Живий повторно хешує при кожному натисканні клавіші, щоб ви могли спостерігати ефект лавини в реальному часі.

Який алгоритм хешування обрати?

Чотири алгоритми, що поставляються тут, охоплюють весь діапазон від застарілих контрольних сум до поточних криптографічних рекомендацій. Обирайте за завданням, а не за знайомістю:

  • MD5 (128 біт) — швидкий та повсюдний, але криптографічно зламаний. Практичні колізії відомі з 2004 року. Використовуйте лише для нескриптографічних контрольних сум: ключів дедублікації, інвалідаторів кешу, відбитків у стилі ETag та перевірки цілісності файлів відносно надійного каталогу.
  • SHA-1 (160 біт) — також застарілий для безпеки. Атака SHAttered продемонструвала публічну колізію PDF у 2017 році. Ще зустрічається в ідентифікаторах об'єктів застарілого Git, старіших TLS-сертифікатах та конструкціях HMAC, де злам базового хешу ще не розкриває ключ. Не застосовуйте для нових проєктів.
  • SHA-256 (256 біт) — поточний стандарт загального призначення. Використовується у відбитках TLS-сертифікатів, хешах Bitcoin-блоків, контрольних сумах релізів програмного забезпечення, дайджестах образів контейнерів та більшості сучасних конвеєрів підписання коду. Обирайте цей варіант, коли сумніваєтеся.
  • SHA-512 (512 біт) — те саме сімейство SHA-2, що й SHA-256, але з більшим внутрішнім станом та ширшим 64-бітним розміром слова. Часто швидший за SHA-256 на 64-бітних процесорах, є кращим вибором, коли потрібен додатковий запас від колізій або довші дайджести для ключів HMAC.

Навіщо використовувати цей генератор хешів?

  • Конфіденційність: кожен байт введення хешується локально у вашому браузері. Без завантаження файлів, без мережевих запитів, без серверних журналів. Вибір файлу зчитує з диска безпосередньо через File API.
  • Чотири дайджести за один прохід: вставте один раз і читайте MD5, SHA-1, SHA-256 та SHA-512 поруч, перемикайте вихідне кодування між hex та Base64 без повторного хешування.
  • Стандартизований результат: сімейство SHA делеговано до crypto.subtle.digest, що є тією самою реалізацією FIPS 180-4, якій вже довіряє ваша операційна система. MD5 слідує RFC 1321 байт за байтом.
  • Створений для верифікаційної роботи: живий режим показує ефект лавини під час введення; панель файлів обробляє двійкові файли до обсягу пам'яті, яку може утримати вкладка, щоб ви могли перевірити архіви релізів без термінала.

Які поширені застосування хеш-функцій?

Хеші зустрічаються у повсякденній інженерній роботі:

  • Перевірка завантажень: порівняння дайджесту SHA-256 архіву релізу зі значенням, опублікованим на сайті проєкту, для підтвердження відсутності підробки під час транзиту.
  • Налагодження інтеграцій: відтворення точного MD5 або SHA-256, який очікує партнерський сервіс у підписі запиту, щоб знайти помилку в побудовнику канонічного рядка.
  • Адресація вмісту: генерування детермінованого ідентифікатора з корисного навантаження для використання як ключа кешу, маркера дедублікації або ідентифікатора об'єкта у стилі Git.

Як виглядає приклад хешування?

Хешування ASCII-рядка hello дає 5d41402abc4b2a76b9719d911017c592 як MD5, aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d як SHA-1, 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 як SHA-256, та 128-символьний hex-рядок, що починається з 9b71d224bd62f3785d96d46ad3ea3d73..., як SHA-512. Додавання одного кінцевого пробілу та повторне хешування змінює кожен дайджест до невпізнання.

Цей генератор хешів повністю виконується у вашому браузері на тих самих примітивах, яким вже довіряє ваша операційна система: Web Crypto для сімейства SHA та невелика, перевірена MD5-процедура для єдиного дайджесту, якого Web Crypto не надає. Вставте, перетягніть файл, скопіюйте дайджест — нічого більше не залишає вкладку.