Habe den Einleitungsteil etwas gestrafft und den Passus mit der Transaktion herausgenommen. Letztlich kommt es nicht darauf an, ob der Sender die Berechnung vor oder während der Übertragung durchführt, und auch nicht, ob der Empfänger die Berechnung während oder nach der Übertragung durchführt. Wichtig ist, dass beide denselben Algorithmus ausführen. Wenn das "sauber" gemacht wird, braucht man auch keine Sonderbehandlung für den CRC-Wert. D.h. es ist nicht notwendig, den CRC-Wert mit einem Original zu vergleichen, sondern der Empfänger berechnet den CRC über den gesamten Datenblock, inkl. des vom Sender angefügten CRC-Werts. Da es sich bei diesem Wert um den Rest der Division handelt, muss bei der um den CRC-Wert angereicherten Nachricht der Rest Null herauskommen (Berechnung modulo 2). Soweit die Theorie. In der Praxis führen Implementierungsdetails dazu, dass nicht Null, sondern ein konstanter Wert (das sogen. "Residuum") herauskommt. Diese Details habe ich aber in der Einführung weggelassen. Bei Interesse weitere Erläuterungen hier.