Stap 9: Reverse-engineering: controlesom hoofd krabben
Ik begon lezing over checksums op Wikipedia, en probeerde allerlei algoritmes toe te passen op de gegevens. Niets leek echt te werken. Dan merkte ik dat de controlesom voor elk gegeven knooppers identiek ongeacht de willekeurige netwerk-ID was. De controlesom wordt alleen berekend op basis van de gegevens van de lading.
Mijn gok is dat het hardcoded in de afstandsbediening om de chip ontwerp eenvoudiger maken.
Dus met dit in gedachten, heb ik geprobeerd wat eenvoudiger materiaal. Ik merkte dat sequenties van 01 en 01 zouden elkaar opheffen en een checksum van 00 produceren, en dat sequenties van 01 en 10 een checksum van 11 zou produceren.
Dit laten doorschemeren naar een eenvoudige XOR-algoritme.
Na wat trial and error vond ik een eenvoudig algoritme, die altijd de juiste controlesom.
De eerste twee bits zijn XOR'ed met de 2de twee bits. Het resultaat hiervan is XOR'ed met de laatste twee bits.
Controleer het beeld om te zien hoe de berekening van het hcecksum is gedaan: