Forum: PC-Programmierung Interessanter 8-Bit-CRC


von der mechatroniker (Gast)


Lesenswert?

Hallo zusammen,

ich durfte heute auf der Arbeit ein Programm dazu bringen, mit einem 
Lesegerät für Guthabenkarten (für Cafeterien etc.) zu reden. Die Doku 
zum Protokoll (über RS232) sprach von 8-Bit-CRC, sagte aber nichts über 
das verwendete Generatorpolynom.

Nachdem ich per Trial and Error (automatisch alle möglichen Werte fürs 
Prüfbyte durchprobieren lassen, bis die Hardware mit einem ACK 
antwortet) ein paar gültige Anfragen generieren konnte und dann auch 
sinnvolle Daten vom Gerät erhalten habe, sind mir zwei Dinge 
aufgefallen:

Nur aus Nullen bestehende Nutzdaten bekommen ein Nullbyte als CRC -> 
offensichtlich scheint das Startpolynom null zu sein.

Interessanter war schon:

Pakete mit 1 Byte Nutzdaten haben offenbar immer ein CRC-Byte, die genau 
diesem einen Nutzdatenbyte entspricht. Das war schon ziemlich auffällig.

Na ja, die Software ist jetzt so weit, daß sie am Montag dem Kunden 
vorgeführt werden kann, und man kann ja auch nochmal den Hersteller 
fragen, aber mic würd mal interessieren, ob man nicht aus diesem 
Verhalten bereits auf ein typisches Generatorpolynom schließen kann.

Grüße Sebastian

von Benedikt K. (benedikt)


Lesenswert?

Ist es vielleicht garkein Polynom, sondern nur die Summe aller Werte ?

von Andreas K. (a-k)


Lesenswert?

Alternativ XOR aller Werte.

von Bobby (Gast)


Lesenswert?

Probier mal aus: zwei Bytes mit dem selben Wert.
Bei XOR kommt dann Null raus...

von der mechatroniker (Gast)


Lesenswert?

Summe aller Werte kann ich ausschließen, hab ich auch schon dran gedacht 
und ausprobiert. Aber das mit dem XOR ist ne gute Idee, werd ich nächste 
Woche dann mal versuchen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.