Як користуватися
- Виберіть «Текст» і введіть або вставте текст чи виберіть «Файл» і вкажіть файл або перетягніть його.
- Перегляньте значення MD5, SHA-1, SHA-256, SHA-384 і SHA-512. Перемикайтеся між малими та великими шістнадцятковими літерами й Base64.
- Щоб перевірити завантажений файл, вставте контрольну суму, опубліковану на сайті. Алгоритм із відповідним збігом буде виділено.
- Скопіюйте окремий хеш або натисніть «Копіювати все», щоб скопіювати всі хеші з назвами алгоритмів.
Як це працює
Хеш-функція перетворює будь-які вхідні дані на відбиток фіксованої довжини. Для однакових даних хеш завжди однаковий, а зміна хоча б одного біта повністю змінює результат. Тому хеші зручно використовувати, щоб перевірити, чи файл завантажився без пошкоджень або підміни.
SHA-1, SHA-256, SHA-384 і SHA-512 обчислюються за допомогою вбудованого у ваш браузер Web Crypto API. Web Crypto не підтримує MD5, тому ця сторінка використовує власну реалізацію RFC 1321, перевірену на стандартних тестових векторах. Перед хешуванням текст перетворюється на байти UTF-8, тож символ «é» хешується як два байти, а кінцевий пробіл або розрив рядка змінює результат.
MD5 і SHA-1 ненадійні з погляду безпеки: дослідники можуть створити два різні вхідні набори даних з однаковим хешем. Вони підходять для виявлення випадкових пошкоджень і перевірки контрольних сум, опублікованих постачальником, але не використовуйте їх для підписів або сертифікатів. Не зберігайте паролі за допомогою звичайних хеш-функцій — використовуйте повільну функцію хешування паролів, як-от Argon2, scrypt або bcrypt.
Файли розміром до 200 MB зчитуються в пам’ять. MD5 обчислюється частинами з короткими паузами, щоб сторінка залишалася чутливою до дій користувача; також відображається повідомлення про перебіг обчислення. Обробка дуже великих файлів на телефонах може тривати кілька секунд.
Приклади
Перевірка завантаженого ISO-файлу
На сторінці завантаження Linux указано контрольну суму SHA-256. Натисніть «Вибрати файл», перетягніть файл .iso, вставте опубліковане значення в поле порівняння та перевірте, чи з’явилося повідомлення «Збіг: … SHA-256». Якщо значення не збігаються, файл завантажено не повністю або він не є оригінальним.
Відоме тестове значення
Текст «abc» має хеш MD5 900150983cd24fb0d6963f7d28e17f72 і хеш SHA-256 ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad. Використайте цей приклад, щоб перевірити, чи інший інструмент дає такі самі результати.
Base64 для HTTP-заголовків
Для Subresource Integrity і деяких API потрібен хеш SHA-256 або SHA-384 у форматі Base64, а не у шістнадцятковому форматі. Змініть формат результату на Base64 і скопіюйте значення SHA-384.
Поширені запитання
Чому хеш тексту відрізняється від результату іншого інструмента?
Зазвичай невидимо відрізняються вхідні дані: кінцевий символ нового рядка, розриви рядків Windows (CRLF), кодування тексту або початковий пробіл. Цей інструмент хешує саме байти UTF-8 тексту в полі.
Чи можна отримати початковий текст із хешу?
Ні. Хеш-функції працюють в один бік. Короткі або поширені значення все одно можна знайти, перебираючи варіанти. Саме тому для паролів потрібен повільний алгоритм хешування із сіллю, а не звичайний хеш.
Чи безпечно й досі використовувати MD5?
З погляду безпеки — ні. Колізії MD5 і SHA-1 можна створити навмисно, тому ці алгоритми не захищають від цілеспрямованої підміни. Для перевірки цілісності після випадкового пошкодження вони підходять, але SHA-256 — кращий вибір за замовчуванням.
Чи завантажуються мої файли?
Ні. Файли зчитуються за допомогою File API браузера та хешуються в цій вкладці. Дані не надсилаються на сервер, а після завантаження сторінка працює офлайн.
Який найбільший файл можна перевірити?
200 MB. Файл повністю завантажується в пам’ять, тому великі файли можуть вичерпати її на телефонах і старих комп’ютерах. Для більших файлів скористайтеся інструментом командного рядка, наприклад sha256sum або certutil.
Конфіденційність
Текст і файли хешуються у вашому браузері й нікуди не завантажуються. Дані та хеші не зберігаються й не надсилаються в аналітику; фіксується лише анонімна подія про використання інструмента.