Comparaison de fichiers binaires — différence octet par octet, alignement par blocs et analyse au niveau du bit
Comparaison de fichiers binaires
Déposez deux fichiers et cette page les compare octet par octet, directement dans votre navigateur : chaque décalage différent, une différence hexadécimale avec son contexte, une carte de densité des différences, et une analyse au niveau du bit qui montre quels bits ont changé. Un mode par blocs alignés distinct détecte les insertions et suppressions au milieu d’un fichier — le cas qu’une simple différence d’octets ne peut pas aligner. Les résultats s’exportent en TXT et en CSV. Rien n’est envoyé nulle part. Pour modifier des octets plutôt que les comparer, voir l’éditeur hexadécimal ; pour du texte, l’outil Comparaison de texte.
1. Choisir deux fichiers
FICHIER A Déposez ici le premier fichier, ou cliquez pour le choisir Jusqu’à 200 Mo. Reste sur cette machine.
FICHIER B Déposez ici le second fichier, ou cliquez pour le choisir Comparé au fichier A.
Contexte hexadécimal autour de chaque différence : — les différences voisines à moins de 16 octets sont affichées comme un seul bloc.
2. Verdict
Le résumé de la comparaison apparaît ici dès que les deux fichiers sont choisis et comparés.
Densité des différences (rouge : octets différents, orange : octets présents dans un seul fichier) :
0x0
Analyse au niveau du bit — quelles positions de bits ont changé (pour chaque octet différent, A XOR B) :
3. Différences — vue hexadécimale
| rouge = fichier A, vert = fichier B ; les lignes identiques ne sont affichées qu’une fois
Loading…
Blocs de différence
Tableau des différences octet par octet
4. Vue par blocs alignés (détecte insertions et suppressions)
Une différence octet par octet aligne le décalage N avec le décalage N. Si des octets ont été insérés ou supprimés au milieu d’un fichier, tout ce qui suit ce point se décale, et la différence simple signale toute la queue comme différente. Ce mode calcule le hachage de blocs de 1 Ko, les met en correspondance entre les fichiers et présente le résultat sous forme d’opérations copie / insertion / suppression — la façon dont des outils de delta comme xdelta voient une modification. Disponible lorsque les deux fichiers font 64 Mo ou moins.
5. Export
Confidentialité : les deux fichiers sont lus avec le FileReader du navigateur lui-même et comparés dans cet onglet — aucun serveur, aucun envoi, aucun stockage. Les gros fichiers sont comparés par tranches de 1 Mo, si bien que même des entrées de 200 Mo ne résident jamais entièrement en mémoire à la fois (sauf si vous lancez la vue par blocs alignés, qui charge les deux fichiers pendant son travail).
Qu’est-ce que la comparaison de fichiers binaires ?
Une comparaison binaire aligne deux fichiers à l’octet 0 et avance pas à pas, en signalant chaque décalage où les octets diffèrent — l’équivalent dans le navigateur de la commande classique cmp -l. Les outils de différence de texte ne le peuvent pas : ils échouent sur les octets non imprimables ou réinterprètent silencieusement le fichier dans un encodage de caractères. Une comparaison binaire traite les deux fichiers exactement pour ce qu’ils sont, des suites d’octets, ce qui convient aux images de micrologiciels, aux copies de disque, aux fichiers de base de données, aux blocs chiffrés ou à tout fichier dont vous ne connaissez pas le format.
Trois questions reçoivent trois réponses à des profondeurs différentes. « Sont-ils identiques ? » est une question de somme de contrôle : l’outil y répond le plus vite, mais seulement par oui ou par non. « Où diffèrent-ils ? » est la différence octet par octet de cette page : décalages, valeurs et bits qui ont basculé. « Quelle sorte de changement est-ce ? » est ce qu’apporte la vue par blocs alignés : s’agit-il d’une modification sur place, d’un morceau inséré ou d’un morceau supprimé.
Différence octet par octet ou alignement par blocs — pourquoi deux vues ?
Situation
La différence octet par octet indique
La vue par blocs alignés indique
Un champ a été écrasé sur place (même taille de fichier)
quelques décalages différents dispersés
identique, plus « tout le reste se recopie »
1 Ko a été inséré au décalage 2000 du fichier B
tout ce qui suit le décalage 2000 « diffère »
copier 0 à 2000, insérer 1 Ko, copier le reste
Un bloc a été supprimé au milieu du fichier B
tout ce qui suit ce point « diffère »
copier jusqu’au trou, supprimer N octets, copier le reste
Le fichier B est le fichier A précédé d’un autre en-tête
les fichiers entiers « diffèrent »
supprimer l’en-tête, puis une longue copie — c’est-à-dire un décalage constant
La différence octet par octet est toujours correcte : ces octets diffèrent bel et bien à ces décalages. C’est l’interprétation qui se décale dès que des octets ont été insérés ou supprimés, exactement comme l’ajout d’une ligne en tête d’un fichier texte fait changer tous les numéros de ligne suivants.
Comment lire l’analyse au niveau du bit
Pour chaque octet différent, la page calcule A XOR B et compte les positions de bits à 1. Cet histogramme est étonnamment expressif : des différences concentrées dans le bit 0 (le bit de poids faible de chaque octet) sont la signature de la stéganographie LSB, où un message est dissimulé en modifiant légèrement le bit de poids faible des pixels ou des échantillons audio. Des différences réparties uniformément sur les huit positions signifient que des valeurs entières ont été réécrites. Des différences qui ne touchent que les bits de poids fort indiquent en général qu’un champ a été remplacé par une valeur de grandeur très différente. La distance de Hamming (nombre total de bits basculés) quantifie la même chose en un seul nombre.
Une réserve honnête : des données aléatoires coïncident à un octet donné avec une probabilité de 1/256, si bien que deux fichiers sans rapport de même taille concordent tout de même sur environ 0,4 % des octets. Une similarité de 99,98 % avec quelques courts blocs de différence relève d’un changement de type correctif ; une similarité de 0,4 % signifie simplement que les fichiers n’ont aucun rapport.
Erreurs courantes
« Tout le fichier est rouge après la première différence. » — c’est l’effet de décalage décrit plus haut, et non une corruption réelle. Lancez la vue par blocs alignés : si elle signale une insertion et deux longues opérations de copie, les fichiers ne diffèrent que par ce morceau inséré. « Les sommes de contrôle concordent, mais les fichiers diffèrent ici. » — si les condensats SHA-256 concordent, les fichiers ne diffèrent pas ; vérifiez que vous avez ouvert les mêmes fichiers dans les deux outils. Une concordance de CRC-32, en revanche, ne prouve rien face à une collision délibérée. « Similarité de 0,4 %, mais je n’ai modifié qu’une seule chose. » — si votre modification se trouvait dans un conteneur compressé ou chiffré (ZIP, zTXt de PNG, volume chiffré), une seule modification logique réécrit tout le flux compressé.
Questions fréquentes
Quelle est la limite de taille ? — 200 Mo par fichier pour la différence octet par octet, comparés par tranches de 1 Mo. La vue par blocs alignés charge les deux fichiers, elle est donc limitée à 64 Mo par côté. Détecte-t-elle les morceaux déplacés ? — l’aligneur fait correspondre les blocs dans l’ordre ; un morceau déplacé à une autre position apparaît comme une suppression plus une insertion du même contenu, ce qui est une description correcte, quoique un peu brutale. Peut-elle produire un fichier correctif ? — non, c’est un outil d’analyse ; les rapports CSV et TXT servent à la documentation et à la relecture, non à appliquer des modifications. Que deviennent mes fichiers ? — rien : aucun serveur, aucun stockage, aucune statistique ; fermez l’onglet et chaque octet d’entrée disparaît.
Autotest
📁 Outils de fichiers
Utilitaires de fichiers locaux pour votre navigateur.