Генератор на хеш (MD5, SHA-256)
Генерирайте MD5, SHA-1, SHA-256 и SHA-512 хешове на текст или файлове с произволен размер и проверявайте контролни суми. Всичко работи във вашия браузър.
Как да използвате генератора на хеш
- Под Хеш изберете Текст или Файлове.
- За текст го въведете или поставете в Текст за хеширане. Хешовете се обновяват, докато пишете; бутонът Хеш ги преизчислява при поискване.
- За файлове пуснете един или няколко файла върху зоната или щракнете, за да ги изберете. За големи файлове се показва лента за напредък с бутон Отмени.
- Изберете нужните Алгоритми (MD5, SHA-1, SHA-256, SHA-512) и Изходен формат: шестнадесетичен с малки букви, шестнадесетичен с главни букви или Base64.
- За да проверите изтеглен файл, поставете публикуваната контролна сума в Сравни с очакван хеш (по избор). Инструментът ви казва кой алгоритъм съвпада или че нито един не съвпада.
Какво е хеш?
Криптографската хеш функция превръща всеки вход, било дума или 50 GB образ на диск, в кратък отпечатък с фиксиран размер. Един и същ вход винаги дава един и същ хеш, а промяната на един-единствен бит от входа променя изцяло резултата. Хешът не може да се обърне, за да се възстанови входът.
| Алгоритъм | Размер на изхода | Дължина в hex | Състояние |
|---|---|---|---|
| MD5 | 128 бита | 32 символа | Счупен: само за контролни суми |
| SHA-1 | 160 бита | 40 символа | Счупен: колизии демонстрирани през 2017 г. |
| SHA-256 | 256 бита | 64 символа | Сигурен, сегашният стандарт |
| SHA-512 | 512 бита | 128 символа | Сигурен, често по-бърз на 64-битови процесори |
Например SHA-256 хешът на abc е ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad.
Проверка на изтеглен файл
Издателите на софтуер често посочват SHA-256 контролна сума до файловете си. След изтеглянето отворете режим Файлове, пуснете файла и поставете публикуваната стойност в полето за сравнение. Съвпадението доказва, че файлът не е повреден при изтеглянето и е идентичен с този, който издателят е хеширал. То не доказва, че издателят е достоен за доверие. За това самата контролна сума трябва да идва от надежден източник, например сайт с HTTPS или подписано издание.
Как се обработват големите файлове
Файловете се четат локално и никога не се качват. Файлове до 64 МБ се хешират наведнъж с вградения в браузъра Web Crypto API. По-големите файлове се четат на части от 4 МБ и се подават на инкрементални хеш функции, така че използването на памет остава равно и могат да се хешират файлове от няколко гигабайта. На обикновен компютър очаквайте няколкостотин мегабайта в секунда за SHA-256.
Текст, кодирания и краища на редове
Хешът се изчислява върху байтове, а не върху символи. Този инструмент кодира текста като UTF-8 – стандарта в уеба и в повечето езици за програмиране. Кирилицата в UTF-8 заема по два байта на буква. Ако на друго място получите различен резултат, проверете за скрити разлики: нов ред в края (echo "abc" | sha256sum хешира abc\n; използвайте echo -n), краища на редове на Windows (\r\n) или друго кодиране като UTF-16.
Често задавани въпроси
Мога ли да използвам MD5 или SHA-1 за съхранение на пароли?
Не, и обикновен SHA-256 също не. Тези функции са проектирани да са бързи, така че атакуващият може да изпробва милиарди предположения в секунда. Паролите изискват бавен алгоритъм със сол като Argon2, bcrypt или scrypt.
Още ли е полезен MD5?
Да, за откриване на случайна повреда, премахване на дубликати на файлове или съпоставяне със стар списък с контролни суми. Не бива да се разчита на него срещу умишлена подмяна, защото всеки може да създаде два различни файла със същия MD5.
Качват ли се файловете ми?
Не. Файловете се четат и хешират от браузъра ви. Нищо не се изпраща към сървър, така че можете да хеширате поверителни документи.
Защо хешът ми не съвпада с този от командния ред?
Входът почти винаги е различен: нов ред в края, интервали, краища на редове или кодиране на текста. За файлове се уверете, че изтеглянето е пълно. Един липсващ байт дава съвсем различен хеш.
Каква е разликата между изхода в hex и в Base64?
Това са два начина да се запишат същите байтове. Шестнадесетичният е обичайният формат за контролни суми; Base64 е по-кратък и се използва например в атрибутите за Subresource Integrity (sha256-…). Полето за сравнение приема и двата.
Сродни инструменти
- Base64 кодиране и декодиране Безплатно Base64 кодиране и декодиране с пълна поддръжка на UTF-8 и вариант base64url. Работи във вашия браузър, нищо не се качва на сървър.
- UUID генератор Безплатен UUID генератор за версии 4 и 7. Създайте до 1000 наведнъж, с главни букви или без тирета, после копирайте или изтеглете като .txt файл.
- Тестер на регулярни изрази Тествайте JavaScript регулярни изрази на живо с откроени съвпадения, улавящи групи, замяна и обяснение на всеки елемент на шаблона на разбираем език.