Генератор RIPEMD-160
Швидко створюйте хеш RIPEMD-160 для будь-якого тексту. Інструмент кодує введені дані в UTF-8, застосовує 160-бітну функцію RIPEMD-160, розроблену в Левені в 1996 році, і повертає дайджест у вигляді 40 шістнадцяткових символів або Base64. Розробники використовують його для перевірки етапів створення адрес Bitcoin, старіших підписів OpenPGP і застарілих систем, які досі зберігають дайджести RIPEMD-160, а також для порівняння з іншими бібліотеками.
Поширені запитання
Що таке RIPEMD-160?
RIPEMD-160 — це 160-бітна криптографічна хеш-функція, опублікована в 1996 році Гансом Доббертіном, Антуном Босселаерсом і Бартом Прінелем. Вона виконує обчислення у двох паралельних гілках, а потім об’єднує результати. Дайджест має довжину 20 байтів, або 40 шістнадцяткових символів.
Які тестові вектори RIPEMD-160?
Хеш порожнього рядка — 9c1185a5c5e9fc54612808977ee8f548b2258d31. Для тексту abc хеш — 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc. Обидва значення взято з опублікованих тестових даних авторів.
Як Bitcoin використовує RIPEMD-160?
Bitcoin обчислює HASH160 — RIPEMD-160 від SHA-256 відкритого ключа — для створення адрес. Цей інструмент хешує байти UTF-8 введеного вами тексту, тому він не виконує крок SHA-256 і не приймає сирі байти ключа у hex.
Чи безпечний досі RIPEMD-160?
Відомих практичних атак на колізії чи прообрази для повного RIPEMD-160 немає. Його вихід 160 бітів забезпечує лише близько 80 біт стійкості до колізій, що нижче за сучасні рекомендації. Для нових розробок надавайте перевагу SHA-256 або SHA3-256.
Чи пов’язаний RIPEMD-160 з SHA-1?
Обидва мають вихід 160 бітів і походять від ідей проєктування MD4, але їхні структури відрізняються. На відміну від SHA-1, для RIPEMD-160 не опубліковано практичної атаки на колізії.
Як обробляється мій текст?
Вхідні дані кодуються у UTF-8 і хешуються саме в тому вигляді, у якому ви їх ввели, включно з пробілами та розривами рядків. Обчислення виконується у WebAssembly на сервері, і нічого не зберігається.
Для чого потрібна опція Base64?
Base64 відображає ті самі 20 байтів у 28 символах, що підходить для JSON і файлів конфігурації. Hex зазвичай використовують у журналах і інструментах командного рядка, як-от openssl dgst -ripemd160.
Чи можна хешувати hex-рядок як сирі байти?
Ні. Інструмент завжди хешує введений вами текст, тому рядок 00ff хешується як чотири символи ASCII, а не як два байти. Якщо потрібно хешувати двійкові дані, скористайтеся бібліотекою для скриптів.
Чи варто використовувати RIPEMD-160 для паролів?
Ні. Це швидкий хеш, що дає змогу зловмисникам швидко перевіряти варіанти. Для паролів використовуйте bcrypt, scrypt або Argon2.
Який максимальний розмір вхідних даних?
Кожен запит приймає до 5 MiB тексту. Для більших обсягів даних хешуйте їх локально за допомогою інструмента командного рядка.