/ Kryptographie & Hashing

CRC Prüfbits

Gesamtlänge eines Datenrahmens mit CRC-Prüfsumme: Gesamtbits = Datenbits + CRCBits. Übliche Polynome: CRC-8, CRC-16, CRC-32 mit 8, 16 bzw. 32 Prüfbits.

CRC Prüfbits
01 · Eingabe

CRC Prüfbits berechnen

Gesamtlänge eines Datenrahmens mit CRC-Prüfsumme: Gesamtbits = Datenbits + CRCBits. Übliche Polynome: CRC-8, CRC-16, CRC-32 mit 8, 16 bzw. 32 Prüfbits.

Lösen für
Gesamtbits = Datenbits + CRCBits
Bit
Bit

Worum geht es?

CRC (Cyclic Redundancy Check) hängt an einen Datenrahmen eine feste Anzahl Prüfbits an. Die Gesamtlänge ist schlicht die Summe: Gesamtbits = Datenbits + CRCBits.

Die Wahl der CRC-Bitbreite bestimmt die Erkennungswahrscheinlichkeit von Übertragungsfehlern. Eine n-Bit-CRC erkennt alle Burst-Fehler bis zur Länge n und entgeht zufälligen Mehrfehlern mit Wahrscheinlichkeit ≈ 2⁻ⁿ.

Die Formel

Formel CRC-Rahmen
Gesamtbits = Datenbits + CRCBits

Umstellungen:
    Datenbits = Gesamtbits − CRCBits
    CRCBits   = Gesamtbits − Datenbits

Die Variablen

SymbolBedeutungEinheitErklärung
DatenbitsDatenbitsBitLänge der Nutzdaten in Bit.
CRCBitsCRC-BitsBitLänge der CRC-Prüfsumme in Bit.
GesamtbitsGesamtlängeBitRahmenlänge inklusive CRC in Bit.

Minimal-Beispiel

Ethernet-Frame mit 1500 Byte Nutzdaten und CRC-32:

Rechnung Ethernet
Datenbits  = 1500 · 8 = 12 000 Bit
CRCBits    = 32 Bit
Gesamtbits = 12 032 Bit

Praxis-Beispiele

Beispiel 1 — CRC-16 für serielle Übertragung

256-Byte-Block mit CRC-16:

Rechnung CRC-16
Datenbits  = 256 · 8 = 2048 Bit
CRCBits    = 16 Bit
Gesamtbits = 2064 Bit

Beispiel 2 — CRC-8 in CAN-Bus-Frame

CAN-Frame trägt 64 Datenbit plus 15 Bit CRC (CAN-CRC ist 15 Bit):

Rechnung CAN-Bus
Datenbits  = 64 Bit
CRCBits    = 15 Bit
Gesamtbits = 79 Bit

Beispiel 3 — CRC-Anteil bei kleinen Frames

Wie groß ist der CRC-Overhead bei 32 Datenbit und CRC-32?

Rechnung Overhead
Gesamtbits = 32 + 32 = 64 Bit
Overhead   = 32 / 64 = 50 %