Examiner les premiers octets et le type probable

Choisissez un fichier : la page lit ses 64 premiers Ko, compare les octets de tête à une table de signatures (PNG, JPEG, HEIC, PDF, ZIP, TAR, WOFF2, OTF, MP3, WAV, MP4, MOV, WASM et d’autres) et, si rien ne correspond, classe le contenu comme texte (JSON, XML, CSV, YAML, Markdown) ou comme données binaires. Le rapport place le type détecté et une extension suggérée à côté du type déclaré par le navigateur et de l’extension du nom, avec la confiance : Élevée avec une signature, Moyenne par la structure du texte, Faible pour les fichiers vides ou les binaires inconnus. La détection est un indice, pas une preuve de validité ou de sécurité.

Fonctionne localement dans votre navigateur
Traitement local ·
PNG · JPEG · HEIC · PDF · ZIP · TAR · WOFF2 · OTF · MP3 · WAV · MP4 · MOV · WASM · JSON · CSV · YAML

La détection de signature est un indice et non un verdict antivirus.

Comment identifier un fichier par sa signature

Choisissez un fichier local : la page lit ses 64 premiers Ko, compare les octets de tête à une table de signatures (PNG, JPEG, HEIC, PDF, ZIP, TAR, WOFF2, OTF, MP3, WAV, MP4, MOV, WASM et d’autres) et, si aucune signature ne correspond, classe le contenu comme texte (JSON, XML/HTML/SVG, CSV/TSV, YAML, Markdown ou texte brut) ou comme données binaires. Rien n’est téléversé : le rapport, l’aperçu hexadécimal de 24 octets et la signature de 8 octets restent dans la page.

Le rapport place le type détecté et une extension suggérée à côté du type déclaré par le navigateur et de l’extension du nom, avec un niveau de confiance : Élevée lorsqu’une signature correspond, Moyenne lorsque seule la structure du texte décide, Faible pour les fichiers vides et les données binaires non reconnues.

  1. Déposez un fichier dans la zone ou cliquez pour le choisir ; il n’y a pas de bouton d’exécution.
  2. Lisez le rapport : type détecté, extension suggérée, type déclaré par le navigateur et extension du fichier.
  3. Vérifiez Confiance, la métrique Signature (8 premiers octets) et l’aperçu hexadécimal (24 premiers octets).
  4. Lisez les constats : extension concordante ou divergente, absence d’extension, fichier vide, coupure à 64 Ko, JSON partiel, données binaires ou marque d’ordre des octets UTF-16/32.
  5. Cliquez sur Effacer pour vider l’entrée, l’aperçu, les métriques et les constats ; le même fichier peut ensuite être choisi de nouveau.

Quelles signatures sont comparées, comment fonctionne la détection de texte et ce que montre le rapport

Quelles signatures sont comparées

Images (PNG, JPEG, GIF, BMP, TIFF dans les deux ordres d’octets, ICO, WEBP et les marques HEIC/HEIF/AVIF), documents (PDF, PostScript, RTF, SQLite), archives (ZIP, y compris l’archive vide PK 05 06, GZIP, RAR, 7z et TAR au décalage 257), exécutables et objets (ELF, MZ Windows, classe Java, WASM), polices (WOFF, WOFF2, TTF, OTF, TTC), audio (MP3 par balise ID3 ou synchronisation de trame, WAV/AVI/WEBP via RIFF, OGG, FLAC, AIFF, MIDI) et vidéo (MP4, QuickTime « qt », M4V, 3GP, 3G2, WebM).

Dans les fichiers ISO base media, la marque située après « ftyp » tranche entre HEIC, HEIF, AVIF, QuickTime, M4A et 3GP ; une marque inconnue est signalée comme video/mp4. Un MP3 sans balise ID3 est reconnu par les bits de synchronisation de trame, l’indice de débit 0/15 et l’indice de fréquence 3 étant rejetés pour que des données aléatoires ne correspondent pas par hasard.

D’où vient le type quand aucune signature ne correspond

Détection de texte : un JSON.parse réussi donne application/json (un JSON tronqué ajoute la note de JSON partiel), la première balise décide XML, HTML ou SVG, un balayage des délimiteurs respectueux des guillemets décide CSV ou TSV, YAML exige au moins deux lignes de mappage avec des valeurs structurelles, les marques Markdown sont reconnues, le reste est du texte brut. Un octet NUL, une suite UTF-8 invalide accompagnée d’octets de contrôle ou plus de 30 % d’octets de contrôle donnent application/octet-stream avec la confiance Faible.

Une marque d’ordre des octets UTF-16LE/BE ou UTF-32 est lue comme du texte : sans ce contrôle, son préfixe FF FE ressemblerait à une synchronisation de trame MP3. Seuls les 64 premiers Ko sont lus : un fichier plus gros porte donc la note de coupure et, s’il commence comme du JSON, celle de JSON partiel au lieu d’un type erroné.

Le rapport, le contrôle d’extension et la confidentialité

L’extension est comparée au type détecté via des équivalences connues (jpg/jpeg, tif/tiff, htm/html, yml/yaml, md/markdown, csv/tsv, heic/heif, m4a/m4b, 3gp/3g2, aif/aiff, mov/qt) ; les fichiers texte (txt/text/log/md/markdown/rst/adoc) acceptent txt ou md ; les fichiers sans extension, y compris ceux qui commencent par un point, indiquent « aucune extension à comparer » plutôt qu’une divergence. Le contenu l’emporte sur le nom : un .png contenant des octets JPEG est signalé comme image/jpeg avec un avertissement de divergence.

La confiance est Élevée lorsqu’une signature correspond, Moyenne lorsque seule la structure du texte décide, Faible pour les fichiers vides et les données binaires inconnues. La détection est un indice, pas un verdict antivirus ; tout s’exécute dans la page, rien n’est téléversé et l’outil fonctionne hors ligne.

Outils récents :