Es gibt zwei Prüfsummenkonzepte: Classic Checksum und Enhanced
Checksum. Mit der Classic Checksum werden nur Nutzdaten gesichert. Mit
der Enhanced Checksum werden die Nutzdaten und der PID
gesichert. Die Enhanced Checksum kommt für die Identifier 0 bis 59 seit
der Version 2.0 des Protokolls zum Einsatz. Um abwärtskompatibel zu
bleiben, werden Diagnostic Frames immer mit der Classic Checksum
gesichert.
Die Berechnung der Prüfsummen erfolgt nach folgender Formel:
Zur Bildung der Prüfsumme werden die einzelnen Datenbytes per
Modulo-256-Arithmetik addiert. Hierbei werden überlaufende Bits zum
jeweiligen Zwischenergebnis addiert. Schließlich wird das Gesamtergebnis
invertiert und als Prüfsumme von der Slave Task
übertragen. Ein Empfänger führt, bis auf die Invertierung mit den
empfangenen Datenbytes, denselben Algorithmus durch. Ein
Übertragungsfehler wird vom Empfänger dann entdeckt, wenn die Summe aus
den Datenbytes und ankommender Prüfsumme nicht 0xFF ergibt.
Dieses Sicherungsverfahren ist nicht besonders leistungsstark. Die geforderte Datenintegrität für den Einsatz im Subbusbereich wird allerdings erreicht. Dies gilt vor allem für den Betrieb mit Unconditional Frames, die wenige Datenbytes umfassen. Mit wachsender Anzahl von Datenbytes nimmt die Restfehlerwahrscheinlichkeit zu.