Определитель хешей
Вставьте хеш и выясните, что его, скорее всего, создало. Некоторые форматы заявляют о себе в префиксе; остальные сужаются по длине и алфавиту до короткого списка — а когда два алгоритма делят форму в точности, эта страница так и говорит, а не выбирает один и не звучит уверенно. Всё работает в вашем браузере: хеш никогда не загружается, не записывается в журнал и никуда не отправляется для взлома.
Читать хеш как эксперт по отпечаткам
Почти всю работу делают три признака. Сначала префикс: модульные форматы crypt были задуманы самоописывающимися, поэтому $2y$ — это bcrypt, $6$ — хеш пароля SHA-512 из файла shadow в Linux, $argon2id$ — Argon2 с параметрами настройки на борту, а ведущая звёздочка отмечает формат MySQL после 4.1. Когда префикс говорит, идентификация настолько достоверна, насколько это вообще возможно в этой области. Затем длина: число символов hex-дайджеста вдвое больше числа его байтов, так что 32 — это 128 бит, 40 — 160 бит, 64 — 256 бит, 128 — 512 бит: каждая длина — это семейство, а не отдельная особь. Затем алфавит: чистый hex наводит на мысль о сыром дайджесте; строка с + и / и завершающим = — это дайджест в одежде Base64, обычный случай, когда его хранит API или файл конфигурации.
Ограничения значат столько же, сколько метод, и именно из-за них существуют метки уверенности. MD5 и NTLM — знаменитое столкновение: одинаковая форма, разное вычисление, и единственный разделитель — происхождение, то есть где строка была найдена. SHA-256, SHA3-256 и BLAKE2s точно так же делят контур в 256 бит. Каждый, кто спрашивал ИИ-чат «что это за хеш?», встречал режим отказа: чат выбирает знаменитое имя для этой длины, заявляет его в лоб и ошибается в трети случаев с полной уверенностью. Эта страница возвращает короткий список с приложенным рассуждением, чтобы человек, знающий контекст — дамп Windows, страницу загрузки, столбец базы данных, — мог завершить идентификацию, начатую формой. Когда нужно вычислить дайджест значения-кандидата для сравнения, используйте генератор хешей; когда загадочная строка окажется закодированной, а не хешированной, декодер Base64 её откроет. Главная статья, никогда не поручайте чат-боту свои секреты, объясняет, почему всё это принадлежит вашей собственной машине.
Частые вопросы
Можно ли правда опознать хеш, просто посмотрев на него?
Отчасти — и честная версия этого инструмента точно говорит, как далеко простирается это «отчасти». Некоторые форматы опознают себя сами: хеш bcrypt начинается с $2y$, хеш SHA-512 из shadow в Linux начинается с $6$, хеш MySQL 4.1 начинается со звёздочки. Длина сужает остальное: 64 hex-символа — это 256-битный дайджест. Но целые семейства делят одну форму, и никакое разглядывание их не разделит — поэтому результаты здесь помечены как вероятные или возможные, но никогда как достоверные.
Почему вы не можете отличить MD5 от NTLM?
Потому что как строки это один и тот же объект: 128 бит, напечатанные 32 hex-символами. Разница полностью в том, как дайджест был вычислен, — NTLM это MD4 пароля в UTF-16, — и в том, где вы его нашли. Строка из 32 hex в дампе учётных данных Windows — это NTLM; та же форма на странице загрузки производителя — MD5. Контекст и есть идентификатор; этот инструмент даёт вам список кандидатов и подсказку, которую нужно применить.
Помогает ли идентификация хеша его взломать?
Идентификация — это, по словарному определению, предварительный шаг, а не само деяние. Знание алгоритма говорит вам, какой инструмент и какой режим атаки применимы; хеш всё равно должен устоять, и хеш приличного пароля в bcrypt или Argon2 устоит. Эта страница намеренно ничего не взламывает, не ищет и не запрашивает радужные таблицы — она читает форму и объясняет её. Если хеш ваш и нужно проверить значение за ним, сгенерируйте хеши паролей-кандидатов генератором хешей и сравните.
Безопасно ли вставлять хеш сюда?
Безопаснее, чем в большинстве мест, с одной оговоркой, которую стоит понять. Хеш — это не пароль, но хеш слабого пароля, вставленный в систему с журналированием (ИИ-чат, тикет, форум), можно унести и неспешно атаковать офлайн. Этот определитель работает полностью в вашем браузере: ничего из вставленного не передаётся и не хранится, хеш никуда не уходит. Обращайтесь с неизвестными хешами из инцидента с той же осторожностью, что и с данными, с которыми они пришли.
К моему хешу прикреплены соль или метка. Он всё равно совпадёт?
Только если комбинированная строка всё ещё укладывается в известную форму. Модульные форматы ($6$, $2y$, $argon2id$) несут свою соль внутри признанной оболочки, поэтому совпадают. Самодельный формат — хеш, двоеточие, соль или префикс, придуманный фреймворком, — обычно попадёт в «не опознано», и текст результата скажет об этом, а не будет гадать. Сведите его к голому дайджесту и попробуйте снова; длины указаны у каждого кандидата в помощь.