Moin! Ich habe einen Sender, der an das Datenpaket eine CRC-16 Checksumme anhängt. Diese wird in einem LFSR erzeugt, welches mit Einsen vorinitialisiert ist. Empfangen wird das Paket in einem Empfänger mit demselben LFSR, wobei dieses allerdings mit Nullen vorinitialisiert ist. Wenn ich mit dem eigentlichen Empfänger ein Paket sende und mir die Checksumme betrachte sehe ich auch direkt den Unterschied: DATA: 0x0001020300 CRC SENDER1 (LFSR mit Einsen vorinitialisiert): 0x3a28 CRC SENDER1 (LFSR mit Nullen vorinitialisiert): 0x1e28 Das LFSR hat diese Form: http://ghsi.de/CRC/index.php Ich denke da wird man nichts machen können, aber vielleicht hat ja doch jemand eine Idee, wie man das Problem vielleicht mit einem "Trick" oder so umgehen könnte? Lässt sich da irgendwas machen? Da es sich um fertige Chips handelt lässt sich die Vorinitialisierung leider nicht verändern. Danke für Eure Ideen!
Ach ja das Polynom lautet: x^16 + x^15 + x^2 + 1 (CRC-16-IBM)
Klaus schrieb: > Empfangen wird das Paket in einem Empfänger mit demselben LFSR, wobei > dieses allerdings mit Nullen vorinitialisiert ist. Dann ist es nicht mehr das selbe LFSR, da es einen anderen Startwert hat. Damit sollte (bei einem guten Polynom) auch eine andere Folge entstehen... Duke
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.