CRC (Cyclic Redundancy Check, Zyklische Redundanzprüfung)
Zyklische Redundanzprüfung oder Englisch Cyclic Redundancy Check (CRC) ist eine Methode, um Informationen bei der Datenübertragung auf Fehler zu überprüfen. Ein sendendes Gerät wendet auf einen zu übertragenden Datenblock ein Polynom bestehend aus 16- oder 32-Bit an. Der daraus resultierende zyklische Redundanz-Code wird dem Block im Anschluss hinzugefügt. Die Empfangsseite wendet das gleiche Polynom auf die Daten an und vergleicht sie mit denen des Senders. Wenn der Abgleich stimmt, dann wurden die Daten erfolgreich übertragen. Wenn nicht, kann der Sender darüber informiert werden, sodass er den Datenblock nochmals schickt.
Die ITU-TS (ITU-Telecommunication Standardization Sector), beziehungsweise das frühere Normungsgremium CCITT (Commité Consultatif Internationale Télégrafique et Téléfonique), hat einen Standard definiert, der verwendet werden soll, um einen angehängten zyklischen Redundanzcode (CRC) zu erhalten. IBMs Synchronous Data Link Control und andere Protokolle verwenden CRC-16, ein weiteres 16-Bit-Polynom. Ein 16-Bit zyklischer Redundanzschlüssel erkennt alle Einzel- sowie Doppelbitfehler und gewährleistet eine Erkennung von 99,998 Prozent aller möglichen Fehler. Diese Stufe der Erkennungssicherheit gilt als ausreichend für Datenübertragungsblöcke von 4 KByte oder weniger. Für größere Übertragungen wird ein 32-Bit-CRC verwendet. Die Protokolle Ethernet und Token Ring verwendeten beide einen 32-Bit-CRC.
In Europa ist CRC-4 ein Multiframe-System zur zyklischen Redundanzprüfung, das für Switches auf E1-Leitungen benötigt wird.
Eine weniger komplizierte aber auch weniger leistungsfähige Methode der Fehlererkennung sind Prüfsummen oder Checksums.