CoderTools

CRC-Rechner

Berechnen Sie verschiedene CRC-Prüfsummen aus Text, Hexadezimal und Dateien

UTF-8-Text eingeben, wird in Bytes konvertiert

Über den CRC-Algorithmus

Die zyklische Redundanzprüfung (CRC) ist ein robustes Fehlererkennungsverfahren, das häufig in digitalen Netzwerken und Speichersystemen eingesetzt wird, um versehentliche Datenänderungen zu erkennen.

CRC wurde entwickelt, um einfach in Hardware implementierbar zu sein und besonders gut gängige Übertragungsfehler zu erkennen.

Unterstützte CRC-Profile

Dieses Tool implementiert eine breite Palette von Standard-CRC-Algorithmen für Industrie- und Netzwerkprotokolle.

Algorithmus Breite Polynom Verwendung
CRC-88 bit0x07Einfache Datenprüfung, Sensoren
CRC-16/Modbus16 bit0x8005Modbus-Protokoll, Industrie
CRC-16/CCITT16 bit0x1021X.25, HDLC, Bluetooth
CRC-3232 bit0x04C11DB7ZIP, Ethernet, PNG
CRC-32C32 bit0x1EDC6F41iSCSI, SCTP, Btrfs
CRC-64/ECMA64 bit0x42F0E1EBA9EA3693ECMA-182, XZ-Kompression

Häufige Anwendungsfälle

Netzwerkpaket-Verifizierung (Ethernet)
Dateiintegritätsprüfung (ZIP-Archive)
Industrielle Kommunikationsprotokolle (Modbus RTU)
Speichersystem-Datenverifizierung
Embedded-System-Datenübertragung
Firmware-Integritätsprüfung

Häufig gestellte Fragen

Was ist CRC und wie unterscheidet es sich von einem kryptografischen Hash?

CRC (Zyklische Redundanzprüfung) ist ein Prüfsummenalgorithmus zur Erkennung zufälliger Bitfehler bei der Datenübertragung oder -speicherung. Anders als kryptografische Hashes wie SHA-256 ist CRC nicht gegen absichtliche Manipulation ausgelegt — ein Angreifer kann Daten konstruieren, die einen beliebigen CRC-Zielwert erzeugen. Verwenden Sie CRC zur Fehlererkennung in Kommunikationsprotokollen; für sicherheitskritische Integritätsüberprüfungen nutzen Sie kryptografische Hashes.

Welche CRC-Variante soll ich für meinen Anwendungsfall wählen?

CRC-32 (ISO 3309) wird weitverbreitet in Ethernet, ZIP und PNG eingesetzt. CRC-16/MODBUS ist Standard für industrielle Protokolle. CRC-16/CCITT eignet sich für serielle Kommunikation. CRC-8 ist für kurze Nachrichten in eingebetteten Systemen geeignet. Wenn eine Protokollspezifikation ein bestimmtes Polynom und einen Anfangswert vorschreibt, müssen diese exakt eingehalten werden.

Warum weicht mein CRC-Ergebnis vom erwarteten Wert ab?

CRC-Ergebnisse hängen von vier Parametern ab: Polynom, Anfangswert, Eingabe-/Ausgabereflexion und XOR-Ausgabe. Eine Abweichung bei einem dieser Parameter führt zu einem anderen Ergebnis. Prüfen Sie außerdem, ob die Eingabe als UTF-8, ASCII oder rohe Bytes kodiert ist — dieselbe Textzeichenkette kann unterschiedliche Byte-Sequenzen und damit verschiedene CRC-Werte erzeugen.

Was ist der Unterschied zwischen CRC-16/MODBUS und CRC-16/CCITT?

Beide verwenden 16-Bit-CRCs mit unterschiedlichen Polynomen und Anfangswerten. CRC-16/MODBUS nutzt das Polynom 0x8005, den Anfangswert 0xFFFF, mit reflektierter Ein- und Ausgabe. CRC-16/CCITT (auch als CRC-CCITT oder CRC-16-IBM bekannt) verwendet das Polynom 0x1021 und den Anfangswert 0xFFFF. Für dieselben Daten liefern beide völlig unterschiedliche Ausgaben.

Kann ich CRC für Binärdateien berechnen, nicht nur für Text?

Ja — fügen Sie die Hex-Bytes Ihrer Binärdaten im Hex-Eingabeformat ein. Das Tool verarbeitet die rohen Byte-Werte unabhängig davon, ob sie druckbare Zeichen darstellen. Für sehr große Binärdateien sind Kommandozeilenwerkzeuge wie cksum oder Pythons binascii.crc32() praktischer.

Schnellmenü

Keine aktuellen Tools