====== xxHash ====== **Extremely fast non-cryptographic hash algorithm** Ist ein sehr schneller, nicht kryptografischer Hash Algorithmus, der mit RAM Geschwindigkeit läuft. Dieser Algorithmus sollte nicht im Sicherheitskonzept eingesetzt werden. Der **xxHash** Algorithmus kann verwendet werden, um festzustellen, ob Daten korrekt übermittelt oder sich noch in dem Zustand befinden, als der Hash berechnet worden ist. xxHash ist schneller als der [[wpde>Zyklische_Redundanzprüfung|CRC]] Algorithmus. Genauere Vergleiche zur Performance gegen andere Hashfunktionen gibt es auf der Webseite von [[https://xxhash.com/|xxHash]]. ===== Installation ===== ==== Arch Linux ==== [[aw>Install|Installiert]] das [[ap>xxhash]] Paket. ===== Verwendung ===== siehe [[am>xxhsum.1|xxhsum(1)]] ==== Beispiele ==== === Berechnen eines XXH3 Hashes von einer Datei === Die Verwendung von XXH3 gibt eine Ausgabe im BSD-style wieder. ❯ xxhsum -H3 EndeavourOS_Gemini-2024.04.20.iso XXH3 (EndeavourOS_Gemini-2024.04.20.iso) = 8c06ecc16f1d3fe0 === Rekursiv XXH3 Hashes für alle Dateien in einem Verzeichnis erzeugen === Das Programm [[:tools:dateisystem:fd:fd|]], kann für alle gefunden Dateien ein Tool wie xxhsum parallel aufrufen. Sollen unsichtbare Dateien mit eingeschlossen werden, so muss zusätzlich noch die **Option ''-H''** an fd übergeben werden. ❯ fd -t f '.' 'EndeavourOS/' -x xxhsum -H3 XXH3 (EndeavourOS/EndeavourOS_Gemini-2024.04.20.iso.sig) = 677db13355932f21 XXH3 (EndeavourOS/EndeavourOS_Gemini-2024.04.20.iso) = 8c06ecc16f1d3fe0 === Dateien anhand von Hashwerten prüfen === Die Ausgabe der oben genannten Beispiele kann zur späteren Überprüfung der Dateien als Referenz in eine Datei umgeleitet werden: In diesem Beispiel befindet sich die Aussage mit den Hashes in der Datei xxhases.xxh3 ❯ xxhsum -c xxhases.xxh3 EndeavourOS/EndeavourOS_Gemini-2024.04.20.iso.sig: OK EndeavourOS/EndeavourOS_Gemini-2024.04.20.iso: OK ===== Siehe auch ===== * [[https://xxhash.com/|Projekt Webseite]] * [[https://www.suletuxe.de/forum/index.php?board=18;action=display;threadid=877|Suletuxe Forum Diskussionsthread]]