Stap 6: Reverse-engineering: duik in de gegevens
De afstandsbediening heeft een kleine knop onder de deksel van de accu. Als deze knop is ingedrukt, moet ik opnieuw alle ontvangers te koppelen met de afstandsbediening. Als je buurman afstandsbediening is interfereren met uw verlichting drukt u op deze knop om een nieuwe willekeurige-ID. Ik vermoed dat een soort van gerandomiseerde code specifiek voor dat ras door deze knop te drukken creëert.
Als dat waar is, kan ik het gebruiken om te identificeren ten minste sommige delen van de gegevens.
Ik begon de logic analyzer weer en duwde ON voor lamp een 5 keer terwijl u op de reset-knop tussen elke keer als ik drukte lamp 1 op.
Om het gemakkelijker te zien wat er gaande was, ik kopieer de gegevensframes geplakt in gimp en plaatste ze onder elkaar. In de logic analyzer die ze naast elkaar worden weergegeven, waardoor vergelijking vrij moeilijk.
Gelukkig, de jongens Saleae had gedacht dit. CTRL + shift + m kunt u een selecton van het scherm naar het Klembord kopiëren.
Zoals ik verdacht, druk op de resetknop een willekeurig getal binnen de afstandsbediening die wordt verzonden met elk gegevensframe gewijzigd.
Het eerste stukje is altijd hetzelfde. Dit is logisch. Het waarschijnlijk "wakker" van de ontvangers of vertelt het dat "Hey, hier komt gegevens, worden klaar!"
De volgende 12 opeenvolgende bits veranderen elke keer als ik druk op de resetknop. Ik markeerde de bits die gewijzigd in het rood en de constante beetjes in het groen.
Laat noemen het 12 willekeurige bits netwerkadres vanaf nu.
Het lijkt erop dat de payload gegevens voor elk frame 8 bits is.
Een ander groot ding over het doen van deze houwer de koele manier in plaats van gewoon solderen draden naar de knoppen, is dat u kunt de 12 bit willekeurige veld ook gebruiken. U kunt 4 lampjes op een netwerk-ID, en 4 anderen hebben op een ander netwerk-ID en zeggenschap zij van hetzelfde ras! Eigenlijk, kunt u bepalen (2 ^ 12) * 4 = 16384 lampen met deze houwer!