Перейти до вмісту
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.
Завантажується мій файл де-небудь?
Ні. Ідентифікація працює повністю у вашому браузері проти вбудованої бази даних сигнатур — ніщо з того, що ви вставляєте, ніколи не завантажується і не відправляється на сервер.