Перейти к содержанию
100% локально

Идентификатор сигнатур файлов

Определите тип файла по его первичным байтам заголовка, используя базу данных магических чисел.

Входные данные
Выходные данные

Идентификатор сигнатур файлов

Вставьте первые байты файла — скопированные из hex-редактора, отладчика или небольшого скрипта — и этот инструмент сопоставит их с встроенной базой данных магических чисел, чтобы определить, из какого типа файла они взялись. Нужен только заголовок файла, поэтому вы никогда не загружаете сам файл: несколько байт достаточно, чтобы распознать PNG, ZIP архив, ELF бинарник, базу данных SQLite и десятки других распространённых форматов.

Поддерживаются четыре формата ввода: hex с пробелами (89 50 4E 47), непрерывный hex (89504E47), escaped \x байты (\x89\x50\x4E\x47) и Base64. Включение опции «показать все совпадения» выводит каждую найденную сигнатуру в начале буфера, отсортированную от самой специфичной — полезно, когда короткая сигнатура, например двухбайтовый маркер Windows-исполняемого файла, сама по себе неоднозначна. «Поиск вложенных сигнатур» сканирует весь вставленный буфер вместо только начала, так что ZIP или изображение, упакованное в данные другого файла, также будут найдены. «Показать первые байты как ASCII» выводит предпросмотр hex-и-ASCII заголовка над результатами так же, как это показал бы hex-редактор.

Каждое совпадение сообщает расширение файла, MIME-тип, смещение в байтах, где начинается сигнатура, и краткое описание. Некоторые форматы — WAV, WebP, AVI — становятся идентифицируемыми только благодаря двум маркерам вместе, заголовку RIFF плюс тег типа через несколько байт дальше, а не из одной последовательности байт. Очень короткие или общие сигнатуры могут соответствовать более чем одному формату одновременно; в этом случае выводятся все кандидаты вместо угадывания.

Всё работает локально в вашем браузере. Байты, которые вы вставляете, никогда не загружаются и не отправляются никуда, поэтому безопасно проверять файлы, которым вы полностью не доверяете. Скопируйте отчёт, загрузите его как .txt файл или отправьте его обратно в ввод для обработки другим инструментом.

FAQ

Какой формат ввода мне использовать?
Hex с пробелами легче всего читать и он соответствует тому, что показывает большинство hex-редакторов. Используйте непрерывный hex или escaped \x байты при копировании прямо из кода и Base64, когда ваши данные уже в этой форме.
Почему он выводит более одного совпадения?
Некоторые сигнатуры короткие и общие — как двухбайтовый маркер Windows-исполняемого файла — поэтому более одного формата может начинаться одинаково. Инструмент выводит каждое совпадение вместо того, чтобы молча выбрать одно за вас.
Что находит «Поиск вложенных сигнатур»?
Он сканирует весь буфер, а не только начало, так что может обнаружить ZIP, изображение или другой встроенный файл, упакованный в данные большего файла — полезно для поиска вложений, спрятанных в середине дампа.
Сколько байт мне нужно вставить?
Обычно первые 16-64 байта достаточны — большинство сигнатур находятся прямо в начале, хотя у некоторых (как маркер 'ustar' архива Tar) начало находится дальше, на байте 257.
Загружается ли мой файл где-нибудь?
Нет. Идентификация работает полностью в вашем браузере против встроенной базы данных сигнатур — ничто из того, что вы вставляете, никогда не загружается и не отправляется на сервер.