Die Prüfsumme einer Datei berechnen
- Dashboard
- Dokumentation
- API
Was ist eine Prüfsumme?
Eine Prüfsumme (Checksum, manchmal als chksum geschrieben) ist ein eindeutiger digitaler Fingerabdruck, der aus dem Inhalt einer Datei durch einen Hashing-Algorithmus berechnet wird. Dieser Fingerabdruck wird in der Regel als hexadezimale Zeichenkette fester Länge dargestellt.
Die grundlegende Eigenschaft eines guten Hashing-Algorithmus ist der Avalanche-Effekt: Jede Änderung an der Quelldatei, sei es auch nur ein Bit, erzeugt eine grundlegend andere Prüfsumme. Zwei Dateien mit streng identischem Inhalt erzeugen immer dieselbe Prüfsumme, unabhängig von Dateinamen, Änderungsdatum oder Betriebssystem.
Die Prüfsumme dient hauptsächlich der Integritätsprüfung einer Datei: Wenn der lokal neu berechnete Fingerabdruck dem vom Herausgeber angekündigten entspricht, ist die Datei unversehrt. Andernfalls wurde sie verändert, beim Transport beschädigt oder modifiziert.
Wofür dient sie konkret?
- Integrität eines Downloads prüfen: Eine Linux-ISO (Debian, Ubuntu, Fedora, Arch), ein Docker-Image, ein Windows-Installer oder ein Open-Source-Archiv veröffentlichen systematisch eine offizielle Prüfsumme. Die lokale Neuberechnung bestätigt, dass die Datei vollständig und unverändert ist.
- Beschädigung beim Transport erkennen: Ein abgebrochener Download, ein fehlerhafter Festplattensektor, instabiler RAM, ein launisches Netzwerkkabel oder eine Kopie auf einem USB-Stick können Bytes beschädigen. Die Prüfsumme deckt diese stillen Fehler sofort auf.
- Signatur-Fingerabdruck: bestätigen, dass eine Datei tatsächlich vom erwarteten Autor stammt, wenn die Prüfsumme über einen sicheren Kanal (HTTPS, GPG-Signatur) verbreitet wird. Das ist der Mechanismus, der den Linux-Paket-Repositorys und den App-Stores zugrunde liegt.
- Versionierung und Caching: Git identifiziert jeden Commit, Blob und Tree durch einen SHA-1-Hash (in Migration zu SHA-256). CDNs und Web-Bundler (Webpack, Vite, esbuild) fügen einen Hash in den Dateinamen ein (
app.4a8f2c.js), um den Browser-Cache bei einer Änderung automatisch zu invalidieren. - Duplikaterkennung und Deduplizierung: inkrementelle Backups (Borg, Restic, rsync), Dateisysteme (ZFS) und Objekt-Speicher identifizieren identische Blöcke durch ihren Hash, um nur eine Kopie zu speichern.
- Upload-Validierung: Ein Client sendet die erwartete Prüfsumme, der Server berechnet sie beim Empfang neu. AWS S3 akzeptiert zum Beispiel einen
Content-MD5- oderx-amz-checksum-sha256-Header, um einen beschädigten Upload abzulehnen. - Threat Intelligence und Antivirus: VirusTotal und Antivirus-Anbieter indexieren bösartige Dateien nach ihrem SHA-256-Hash, was eine Erkennung ohne Übertragung des vollständigen Binärs ermöglicht.
Unterstützte Algorithmen und Unterschiede
- MD5 (128 Bit, 32 hexadezimale Zeichen): schnell, weit verbreitet, aber kryptografisch gebrochen. MD5-Kollisionen sind seit 2004 in Sekunden auf gängiger Hardware berechenbar. Nur für nicht böswillige Integritätsprüfungen verwenden (Download gegen Netzwerkabbruch, lokale Sicherung). Verboten für jede Sicherheits-, Signatur- oder Authentifizierungsfunktion.
- SHA-1 (160 Bit, 40 hexadezimale Zeichen): kryptografisch veraltet seit dem SHAttered-Angriff 2017, der eine echte Kollision zwischen zwei unterschiedlichen PDFs demonstrierte. Git verwendet ihn weiterhin standardmäßig, migriert aber zu SHA-256. Nicht mehr zum Signieren oder Authentifizieren verwenden.
- SHA-256 (256 Bit, 64 hexadezimale Zeichen): moderner Standard, Mitglied der SHA-2-Familie. Basis moderner TLS-Zertifikate, Signaturen von Linux-Paketen (apt, dnf, pacman), Bitcoin und offizieller Integritätsprüfungen. Langsamer als MD5, aber nach aktuellem Stand sicher.
- SHA-512 (512 Bit, 128 hexadezimale Zeichen): 64-Bit-Variante von SHA-2. Verarbeitet 64-Bit-Wörter nativ, was ihn auf 64-Bit-CPUs manchmal schneller als SHA-256 macht. Längerer Fingerabdruck, höhere Sicherheitsmarge.
- CRC32 (32 Bit, 8 hexadezimale Zeichen): nicht kryptografisch, ultraschnell, speziell zur Erkennung von Übertragungsfehlern konzipiert. Verwendet von Ethernet, ZIP, PNG, gzip. Schützt nicht gegen Böswilligkeit: Ein Angreifer kann trivial eine Datei mit derselben CRC32 wie eine andere schmieden. Geeignet für schnelle Hardware-Prüfungen, nicht für Sicherheit.
Anwendungsfälle
- Eine Linux-ISO überprüfen: Debian, Ubuntu, Fedora und Arch veröffentlichen die SHA-256 und SHA-512 jedes offiziellen Images, oft mit GPG gegengezeichnet.
- Ein signiertes Binärformat validieren: bestätigen, dass eine von einem Mirror heruntergeladene ausführbare Datei nicht durch eine gefälschte Version ersetzt wurde.
- Zwei Versionen vergleichen: Vor und nach einer Änderung beweist eine identische Prüfsumme die bitweise Identität, ohne dass die Dateien verteilt werden müssen.
- Upload-Validierung: Der Client sendet eine Prüfsumme, der Server berechnet sie beim Empfang neu, um das Fehlen von Beschädigungen zu bestätigen.
- Fingerprinting: Erkennung von Bots oder bekannten Dateien in Fingerabdruckdatenbanken (Antivirus, Threat Intelligence, Dublettensuche).
So verwenden Sie es
- Ziehen Sie die Datei in den vorgesehenen Bereich oder verwenden Sie die Auswahlschaltfläche.
- Wählen Sie den Algorithmus: MD5, SHA-1, SHA-256, SHA-512 oder CRC32.
- Die Prüfsumme erscheint und kann kopiert werden.
- Vergleichen Sie den erhaltenen Wert mit dem Referenzwert (vom Herausgeber veröffentlicht oder lokal aufbewahrt).
Die Berechnung erfolgt lokal in Ihrem Browser, ohne dass die Datei an einen entfernten Server gesendet wird. Der Inhalt bleibt vertraulich.
Wie überprüft man einen Download mit einer Prüfsumme?
Das Standardverfahren der Überprüfung ist folgendes:
- Die offizielle Website veröffentlicht die erwartete Prüfsumme, zum Beispiel
d41d8cd98f00b204e9800998ecf8427efür MD5 oder eine 64-Zeichen-Zeichenkette für SHA-256. - Laden Sie die Datei herunter.
- Berechnen Sie ihre Prüfsumme, entweder mit diesem Tool oder in der Kommandozeile.
- Vergleichen Sie: Wenn beide Zeichenketten Zeichen für Zeichen streng identisch sind, ist die Datei intakt. Wenn sie auch nur in einem Zeichen abweichen, ist die Datei beschädigt oder manipuliert: Verwenden Sie sie nicht, laden Sie sie erneut herunter.
In der Kommandozeile unter Linux:
# Calculer le checksum
md5sum fichier.iso
sha1sum fichier.iso
sha256sum fichier.iso
sha512sum fichier.iso
cksum fichier.iso # CRC32 + taille
# Vérifier automatiquement depuis un fichier .sha256 publié par l'éditeur
sha256sum -c fichier.iso.sha256
# Affiche : "fichier.iso: OK" si le checksum correspond
Unter macOS:
md5 fichier.iso
shasum -a 1 fichier.iso
shasum -a 256 fichier.iso
shasum -a 512 fichier.iso
# Vérification depuis un fichier de référence
shasum -a 256 -c fichier.iso.sha256
Unter Windows (PowerShell):
Get-FileHash fichier.iso -Algorithm MD5
Get-FileHash fichier.iso -Algorithm SHA1
Get-FileHash fichier.iso -Algorithm SHA256
Get-FileHash fichier.iso -Algorithm SHA512
# Comparer à une valeur attendue
(Get-FileHash fichier.iso -Algorithm SHA256).Hash -eq "ABC123..."
Schneller Vergleich der Algorithmen
| Algorithmus | Größe | Geschwindigkeit | Empfohlene Verwendung |
|---|---|---|---|
| CRC32 | 32 Bit | Sehr schnell | Erkennung von Netzwerk- oder Speicherfehlern, nicht kryptografisch |
| MD5 | 128 Bit | Schnell | Nur nicht-feindliche Integrität, in der Sicherheit zu vermeiden |
| SHA-1 | 160 Bit | Schnell | Veraltet, alte Kompatibilität (Git, alte Pakete) |
| SHA-256 | 256 Bit | Moderat | Aktueller Standard, Integritätsprüfung und Signaturen |
| SHA-512 | 512 Bit | Schnell auf 64 Bit | Integritätsprüfung, höhere Sicherheitsmarge |
FAQ
MD5 oder SHA-256 zur Überprüfung meiner ISO?
SHA-256 standardmäßig. Fast alle modernen Linux-Distributionen veröffentlichen SHA-256 und SHA-512, manchmal neben MD5 zur historischen Kompatibilität. Wenn der Herausgeber nur MD5 veröffentlicht und Sie eine Kompromittierung befürchten, verlangen Sie SHA-256 oder überprüfen Sie die GPG-Signatur der Prüfsummendatei. Wenn Sie nur eine Beschädigung beim Download befürchten, reicht MD5 technisch aus.
Garantiert die Prüfsumme die Sicherheit meiner Datei?
Nein, nicht allein. Eine Prüfsumme beweist Integrität, nicht Authentizität. Wenn ein Angreifer den Download-Server kontrolliert, kann er eine modifizierte Datei und ihre modifizierte Prüfsumme veröffentlichen. Echte Sicherheit kommt von einer digitalen Signatur (GPG, Code Signing), die die Prüfsumme an einen bekannten privaten Schlüssel bindet. Holen Sie die Prüfsumme immer über HTTPS oder, besser, über eine überprüfbare GPG-Signatur.
Meine Prüfsumme stimmt nicht überein, was tun?
Prüfen Sie zunächst, dass Sie den richtigen Algorithmus vergleichen: Eine SHA-256 kann nicht einer SHA-1 entsprechen. Wiederholen Sie dann den Download, idealerweise von einem anderen Mirror: Die häufigste Ursache ist ein Netzwerkabbruch. Wenn die Abweichung nach mehreren Versuchen bestehen bleibt, vermuten Sie eine Kompromittierung des Mirrors: Gehen Sie zur offiziellen Quelle zurück und überprüfen Sie die GPG-Signatur, falls vorhanden. Verwenden Sie die Datei niemals, solange die Prüfsumme nicht übereinstimmt.
Warum ist MD5 veraltet?
MD5 leidet unter praktischen Kollisionen: Es ist möglich, zwei verschiedene Dateien mit exakt demselben MD5-Hash in Sekunden zu konstruieren. Diese Eigenschaft verletzt die Funktion eines kryptografischen Hashs. Konkret kann ein Angreifer ein bösartiges Binär mit demselben MD5 wie ein legitimes Binär erstellen. SHA-1 leidet seit 2017 unter demselben Problem (SHAttered-Angriff). Nur SHA-256, SHA-512 und ihre Varianten gelten 2026 weiterhin als sicher.
Unterschied zwischen Hash und Prüfsumme?
Ein Hash ist das generische Ergebnis einer Hashing-Funktion. Eine Prüfsumme ist ein Hash, der speziell zur Überprüfung der Integrität von Daten verwendet wird. Alle Prüfsummen sind Hashes, aber nicht alle Hashes sind Prüfsummen: Ein Passwort-Hash (bcrypt, argon2) dient der Authentifizierung, ein Hash in einer Hashtabelle dient der schnellen Indexierung. Der Begriff Fingerprint oder Fingerabdruck ist ein gängiges Synonym für Prüfsumme.
Reicht CRC32 für meine Bedürfnisse?
CRC32 reicht aus, wenn Sie nur eine zufällige Beschädigung auf einem nicht feindlichen Kanal erkennen möchten: interne Netzwerkübertragung, ZIP-Archivprüfung, Konsistenzprüfung im Speicher. Mit nur 32 Bit haben zwei zufällige Dateien eine Chance von etwa 1 zu 4 Milliarden, dieselbe CRC32 zu haben, was für die Fehlererkennung ausreicht. CRC32 ist unzureichend, sobald ein Angreifer den Inhalt beeinflussen kann: Es ist trivial, eine Datei mit einer Ziel-CRC32 zu schmieden. Für jede Prüfung gegen ein böswilliges Risiko verwenden Sie SHA-256.
Warum unterscheidet sich meine Prüfsumme je nach Betriebssystem?
Die Prüfsumme desselben binären Inhalts ist überall identisch. Wenn Sie zwei unterschiedliche Ergebnisse erhalten, liegt das daran, dass sich die Datei tatsächlich unterscheidet: Zeilenenden (CRLF Windows gegen LF Unix) nach einer FTP-Übertragung im Textmodus, Textkodierung beim Öffnen geändert, vom System hinzugefügte Metadaten (macOS-Spotlight-Auflösung, erweiterte Attribute) oder stille Neukomprimierung durch einen Übertragungsclient. Immer im Binärmodus übertragen.
Prüfsumme oder digitale Signatur?
Eine Prüfsumme beweist, dass eine Datei zwischen Veröffentlichung und Empfang nicht verändert wurde, vorausgesetzt, die Prüfsumme wurde über einen sicheren Kanal abgerufen. Eine digitale Signatur (GPG, PGP, Authenticode Code Signing) beweist zusätzlich die Identität des Autors dank eines privaten Schlüssels. Die Signatur umfasst und stärkt die Prüfsumme: Die Standardpraxis bei Debian, Tor oder Bitcoin Core ist es, die Prüfsummendatei mit GPG zu signieren und dann diese Prüfsummen zur Überprüfung der Binärs zu verwenden.
Häufig gestellte Fragen
Wird die Datei zur Berechnung der Prüfsumme an einen Server gesendet?
Nein. Die Berechnung erfolgt vollständig in Ihrem Browser dank der Web Crypto API und lokaler JavaScript-Routinen. Der Inhalt der Datei verlässt Ihre Maschine nicht, was es ermöglicht, sensible Dokumente, verschlüsselte Archive oder Datenbank-Dumps vertraulich zu hashen. Dieser Ansatz garantiert auch stabile, von der Bandbreite unabhängige Leistung.
Welche Dateigröße kann ich mit diesem Tool hashen?
Die Berechnung erfolgt im Streaming in Blöcken, daher hängt die Grenze im Wesentlichen vom Speicher und der Zeit ab, die Ihr Browser dem Vorgang widmen kann. Einige hundert Megabyte werden auf einem Standardrechner problemlos verarbeitet. Für Dateien von mehreren Gigabyte (vollständige ISO, großer Dump) bevorzugen Sie die System-Kommandozeile (sha256sum, Get-FileHash), die Festplatten- und CPU-Ressourcen besser ausnutzt.
Was ist der Unterschied zwischen dem Hashen einer Datei und dem Hashen eines Textes?
Der Algorithmus ist genau derselbe, nur die Eingabe ändert sich. Für einen Text wird die Byte-Sequenz der Zeichenkette in einer bestimmten Kodierung (in der Regel UTF-8) gehasht. Für eine Datei wird der rohe binäre Inhalt Byte für Byte gehasht, einschließlich eventueller eingebetteter Header oder Metadaten. Deshalb können eine Textdatei und ihr in ein Formular kopierter Inhalt unterschiedliche Prüfsummen ergeben (BOM, Zeilenenden, Kodierung).
Warum ändert sich die Prüfsumme eines ZIP-Archivs bei jeder Erstellung?
Die meisten Archivierer (ZIP, TAR.GZ, 7z) speichern variable Metadaten wie das Erstellungsdatum, die Reihenfolge der Dateien oder Komprimierungsindikatoren. Das erneute Erstellen eines Archivs mit demselben Inhalt erzeugt daher ein anderes Binär und eine andere Prüfsumme. Um reproduzierbare Archive zu erhalten, verwenden Sie Tools wie diffoscope, strip-nondeterminism oder die Optionen --mtime und --sort=name von tar.
Gibt es schnellere Alternativen zu SHA-256 zur Integritätsprüfung?
Ja. BLAKE2 und BLAKE3 sind moderne kryptografische Hashing-Funktionen, die schneller als SHA-256 konzipiert sind und gleichzeitig ein gleichwertiges oder höheres Sicherheitsniveau bieten. BLAKE3 nutzt SIMD- und Multi-Core-Parallelismus besonders gut, was ihn auf großen Dateien sehr effizient macht. Für die reine, nicht feindliche Fehlererkennung ist xxHash unschlagbar in der Geschwindigkeit, bleibt aber nicht kryptografisch.
Kann ich zwei Dateien vergleichen, ohne ihren gesamten Hash zu berechnen?
Für zwei lokale Dateien ist ein direkter binärer Vergleich (cmp unter Unix, fc /b unter Windows) schneller als beide zu hashen. Der Hash wird nützlich, wenn die Dateien nicht auf derselben Maschine sind, oder wenn man einen kurzen Fingerabdruck behalten möchte, ohne das Original aufzubewahren. Für häufige Prüfungen großer Volumen indexieren Sie die Hashes in einer Datenbank und vergleichen die Fingerabdrücke statt der vollständigen Dateien.
Beispielanfrage
curl -X POST https://cdrn.fr/api/v1/tools/hash-file-generator/execute \
-F "file=@/path/to/file" \
-F "algorithm=adler32"
Eingabeschema
| Feld | Typ | Erforderlich | Standard |
|---|---|---|---|
file |
file | ✓ | – |
algorithm |
choice (adler32, crc32, crc32b, crc32c, fnv132, fnv164, fnv1a32, fnv1a64, gost, gost-crypto, haval128,3, haval128,4, haval128,5, haval160,3, haval160,4, haval160,5, haval192,3, haval192,4, haval192,5, haval224,3, haval224,4, haval224,5, haval256,3, haval256,4, haval256,5, joaat, md2, md4, md5, murmur3a, murmur3c, murmur3f, ripemd128, ripemd160, ripemd256, ripemd320, sha1, sha224, sha256, sha3-224, sha3-256, sha3-384, sha3-512, sha384, sha512, sha512/224, sha512/256, snefru, snefru256, tiger128,3, tiger128,4, tiger160,3, tiger160,4, tiger192,3, tiger192,4, whirlpool, xxh128, xxh3, xxh32, xxh64) | ✓ | – |
dieses Tool erwartet eine Datei - verwenden Sie Content-Type multipart/form-data anstelle von application/json
Endpunkte
GET https://cdrn.fr/api/v1/tools- listet alle verfügbaren Tools aufGET https://cdrn.fr/api/v1/tools/hash-file-generator- liefert das Schema dieses ToolsPOST https://cdrn.fr/api/v1/tools/hash-file-generator/execute- führt dieses Tool mit einem JSON-Payload aus