Mit diesem Online-Tool können Sie den Hash crc32c einer beliebigen Zeichenkette erzeugen.
CRC32C Länge ist 8 Zeichen
Hash verfügbar
MD2 Hash, MD4 Hash, MD5 Hash, SHA1 Hash, SHA224 Hash, SHA256 Hash, SHA384 Hash, SHA512/224 Hash, SHA512/256 Hash, SHA512 Hash, SHA3-224 Hash, SHA3-256 Hash, SHA3-384 Hash, SHA3-512 Hash, RIPEMD128 Hash, RIPEMD160 Hash, RIPEMD256 Hash, RIPEMD320 Hash, WHIRLPOOL Hash, TIGER128,3 Hash, TIGER160,3 Hash, TIGER192,3 Hash, TIGER128,4 Hash, TIGER160,4 Hash, TIGER192,4 Hash, SNEFRU Hash, SNEFRU256 Hash, GOST Hash, GOST-CRYPTO Hash, ADLER32 Hash, CRC32 Hash, CRC32B Hash, CRC32C Hash, FNV132 Hash, FNV1A32 Hash, FNV164 Hash, FNV1A64 Hash, JOAAT Hash, HAVAL128,3 Hash, HAVAL160,3 Hash, HAVAL192,3 Hash, HAVAL224,3 Hash, HAVAL256,3 Hash, HAVAL128,4 Hash, HAVAL160,4 Hash, HAVAL192,4 Hash, HAVAL224,4 Hash, HAVAL256,4 Hash, HAVAL128,5 Hash, HAVAL160,5 Hash, HAVAL192,5 Hash, HAVAL224,5 Hash, HAVAL256,5 Hash,
Was ist CRC32C?
CRC32C (Castagnoli) ist ein nicht-kryptografischer Algorithmus zur zyklischen Redundanzprüfung. Im Gegensatz zum Standard-CRC32, der das in IEEE 802.3 definierte Polynom verwendet, nutzt CRC32C das Castagnoli-Polynom. Er wurde speziell auf Effizienz ausgelegt und wird häufig zur Fehlererkennung in Speichersystemen, Netzwerkprotokollen und bei Datenintegritätsprüfungen eingesetzt, wie sie beispielsweise in iSCSI, SCTP und Googles Btrfs-Dateisystem zu finden sind.
Wie funktioniert der CRC32C-Hash?
Der CRC32C-Algorithmus arbeitet mit Polynomdivision über einem endlichen Körper:
- Initialisierung: Das Hash-Register wird mit einem festen Startwert (typischerweise
0xFFFFFFFF) initialisiert. - Bitweise Verarbeitung: Die Daten werden in Bytes oder Wörtern verarbeitet. Der Algorithmus führt XOR-Operationen mit den Eingabedaten und dem Castagnoli-Polynom durch.
- Hardwarebeschleunigung: Die meisten modernen CPUs (wie Intel- und AMD-Prozessoren, die SSE4.2-Befehle verwenden) bieten spezielle Hardwareunterstützung für CRC32C. Dadurch kann der Algorithmus Daten mit extrem hohen Geschwindigkeiten verarbeiten, oft bis zu mehreren Gigabyte pro Sekunde.
- Abschluss: Der Wert im Endregister wird komplementiert (invertiert), um die resultierende 32-Bit-Ganzzahl zu erzeugen.
Da er auf Polynomarithmetik statt auf komplexen kryptografischen Substitutions-Permutations-Netzwerken basiert, ist er unglaublich schnell, aber nicht für Sicherheitszwecke geeignet, da es trivial ist, Kollisionen zu finden.
Unterschied zwischen CRC32C und CRC32
Obwohl beide 32-Bit-Prüfsummenalgorithmen sind, dienen sie aufgrund ihrer mathematischen Eigenschaften unterschiedlichen Zwecken:
- Polynom: CRC32 verwendet das IEEE 802.3-Polynom (
0x04C11DB7), während CRC32C das Castagnoli-Polynom (0x1EDC6F41) verwendet. - Fehlererkennungsleistung: CRC32C bietet deutlich bessere Fehlererkennungsfähigkeiten für Datenbeschädigungsmuster, wie sie typischerweise bei Hochgeschwindigkeitsspeichern und Netzwerkmedien vorkommen.
- Hardware-Unterstützung: CRC32C ist stark für moderne Hardware optimiert. CPUs, die SSE4.2 unterstützen, können CRC32C mit einem einzigen Befehl berechnen, was es in realen Systemanwendungen im Vergleich zum älteren CRC32 deutlich schneller macht.
- Anwendungsfall: Verwenden Sie CRC32 für Abwärtskompatibilität (z. B. bei ZIP-Dateien oder PNG-Chunks); verwenden Sie CRC32C für moderne, leistungskritische Integritätsprüfungen und die Zuverlässigkeit von Speichersystemen.