Grundgedanke: Eine zu übertragende Bitsequenz wird um eine Folge redundanter Bits erweitert, so dass die Polynomdivision in ℤ2 durch ein bestimmtes Divisorpolynom den Rest Null ergibt. Der Empfänger führt die Polynomdivision mit dem gleichen Polynom durch. Erhält er einen anderen Rest als Null, so wurde die Folge durch Übertragungsfehler verfälscht. Das Divisorpolynom wird so gewählt, dass möglichst viele Fehler erkannt werden können. Bei gewissen Kommunikationskanälen spielen sogenannte Bündelfehler (Bursts) eine wichtige Rolle. Man spricht von einem Bündelfehler der Länge n, wenn sich alle k ≤ n Fehler auf n aufeinanderfolgenden Positionen befinden. Man beachte, dass es bei Bündelfehlern zwischen der ersten und letzten Fehlerposition auch korrekt übertragene Bits geben kann.