Hachoir ist eine Python-Bibliothek, die verwendet wird, um eine Binärdatei als einen Baum von Python-Objekten zu repräsentieren. Jedes Objekt hat einen Typ, einen Wert, eine Adresse usw. Das Ziel ist, die Bedeutung jedes Bits in einer Datei zu wissen. Hachoir kann ungültige oder abgeschnittene Dateien öffnen. Es liest oder berechnet Daten nur auf Anforderung, um die Ladezeit zu minimieren. Viele Feldtypen sind vordefiniert (Integer, Bit, String usw.) und Strings mit einem spezifischen Zeichensatz (wie z.B. ISO-8859-1 oder UTF-8) werden unterstützt. Adressen und Größen werden in Bits gespeichert. (non)