Hachoir est un projet permettant de lire toutes les informations contenues dans un fichier binaire. Effectivement, contrairement aux fichiers textes qui se lisent facilement, qui aujourd'hui est capable d'analyser le contenu d'une image PNG à l'aide d'un éditeur hexadécimal ? La version 0.5, qui vient de sortir, supporte la majorité des formats de fichier « courants ». Cela va de l'image PNG à la vidéo AVI en passant par les archives bzip2 ou encore le système de fichier ext2. Par contre, tous les parseurs ne sont pas encore complet : les contenus inconnus sont marqués « raw ». Hachoir a un fonctionnement totalement paresseux : les informations ne sont lues que lorsqu'elles sont demandées, et les champs ne sont créer que lorsque c'est nécessaire. Il est dès lors possible de lire des fichiers complexes et/ou de grande taille (un disque dur de 10 Go ne lui fait pas peur). Hachoir est avant tout une bibliothèque écrite en Python, mais plusieurs scripts l'utilisant sont disponibles. hachoir-metadata permet d'extraire les méta-données : durée d'une musique, taille d'une image, commentaires, etc. hachoir-urwid est une interface interactive permettant d'explorer le contenu d'un fichier. hachoir-grep permet de rechercher une chaîne de caractère dans un fichier, ou simplement lister toutes les chaînes d'un fichier.