Hallo allemaal,
Ik heb een deurbel waarvan ik tussen de versleutelde communicatie ben gaan zitten om de video's die de deurbel maakt zelf op te kunnen slaan. Dat is gelukt, zie hiervoor: Herken de encryptie (en hoe te decoden)...
Nu, momenteel gooi ik alle inkomende data door naar de echte server en wat terugkomt stuur ik door naar de deurbel. Wat ik graag wil is de originele server eruit halen, want bij elke request die de deurbel doet duurt ongeveer een halve seconde voordat er een reactie komt. (China he.), soms is de server bovendien niet bereikbaar en voor elke keer dat hij beweging opmerkt gaan er een stuk of 8 berichten heen en weer, dus 4 seconden wachttijd. Kost batterijtijd en natuurlijk wil je zo snel mogelijk weten wie er voor je deur staat
Dus, ik heb een paar voorbeeldberichten in hex en tekst. Nu zit er een header aan van 8 bytes. Wie herkent wat het doel is en bijv. wat het protocol is wat gebruikt wordt? Dan kan ik het nabouwen
Goed, wat ik dus zelf zie, eerste byte is altijd hex 01, daarna lijken het 2 bytes voor... iets met de lengte van het bericht? daarna 3 bytes die altijd 00 00 07 zijn bij een bericht, en ik heb een keer gezien dat het 00 00 03 was bij een leeg bericht. Daarna nog 2 bytes met onbekend doel.
Edit: De laatste 2 bytes lijken de lengte van het bericht te zijn juist, inclusief de gekke 1 a 2 bytes die op het eind komen.
Ik heb een deurbel waarvan ik tussen de versleutelde communicatie ben gaan zitten om de video's die de deurbel maakt zelf op te kunnen slaan. Dat is gelukt, zie hiervoor: Herken de encryptie (en hoe te decoden)...
Nu, momenteel gooi ik alle inkomende data door naar de echte server en wat terugkomt stuur ik door naar de deurbel. Wat ik graag wil is de originele server eruit halen, want bij elke request die de deurbel doet duurt ongeveer een halve seconde voordat er een reactie komt. (China he.), soms is de server bovendien niet bereikbaar en voor elke keer dat hij beweging opmerkt gaan er een stuk of 8 berichten heen en weer, dus 4 seconden wachttijd. Kost batterijtijd en natuurlijk wil je zo snel mogelijk weten wie er voor je deur staat
Dus, ik heb een paar voorbeeldberichten in hex en tekst. Nu zit er een header aan van 8 bytes. Wie herkent wat het doel is en bijv. wat het protocol is wat gebruikt wordt? Dan kan ik het nabouwen
code:
1
2
3
| 01 00 0D 00 00 07 00 1A 7B 22 69 64 22 3A 33 30 30 32 2C 22 72 65 73 75 6C 74 22 3A 22 6F 6B 22 7D 00 � ���{"id":3002,"result":"ok"}� |
code:
1
2
| 01 00 04 00 00 07 01 74 7B 22 69 64 22 3A 34 38 37 33 35 37 39 32 2C 22 72 65 73 75 6C 74 22 3A 7B 22 6F 74 63 5F 6C 69 73 74 22 3A 5B 7B 22 69 70 22 3A 22 35 38 2E 38 33 2E 31 37 37 2E 31 34 33 22 2C 22 70 6F 72 74 22 3A 34 34 33 7D 2C 7B 22 69 70 22 3A 22 31 32 30 2E 39 32 2E 39 36 2E 31 35 35 22 2C 22 70 6F 72 74 22 3A 34 34 33 7D 2C 7B 22 69 70 22 3A 22 31 32 30 2E 39 32 2E 36 35 2E 32 34 30 22 2C 22 70 6F 72 74 22 3A 34 34 33 7D 2C 7B 22 69 70 22 3A 22 31 32 30 2E 39 32 2E 36 35 2E 32 34 31 22 2C 22 70 6F 72 74 22 3A 34 34 33 7D 5D 2C 22 6F 74 63 5F 74 65 73 74 22 3A 7B 22 6C 69 73 74 22 3A 5B 7B 22 69 70 22 3A 22 31 32 30 2E 39 32 2E 31 35 38 2E 31 32 39 22 2C 22 70 6F 72 74 22 3A 38 30 35 33 7D 2C 7B 22 69 70 22 3A 22 31 31 37 2E 31 33 31 2E 31 39 2E 31 39 30 22 2C 22 70 6F 72 74 22 3A 38 30 35 33 7D 2C 7B 22 69 70 22 3A 22 31 38 33 2E 38 34 2E 36 2E 32 34 31 22 2C 22 70 6F 72 74 22 3A 38 30 35 33 7D 2C 7B 22 69 70 22 3A 22 35 38 2E 32 35 34 2E 31 35 34 2E 36 22 2C 22 70 6F 72 74 22 3A 38 30 35 33 7D 5D 2C 22 69 6E 74 65 72 76 61 6C 22 3A 31 38 30 30 2C 20 22 66 69 72 73 74 74 65 73 74 22 3A 31 35 30 36 7D 7D 7D 00 ���t{"id":48735792,"result":{"otc_list":[{"ip":"58.83.177.143","port":443},{"ip":"120.92.96.155","port":443},{"ip":"120.92.65.240","port":443},{"ip":"120.92.65.241","port":443}],"otc_test":{"list":[{"ip":"120.92.158.129","port":8053},{"ip":"117.131.19.190","port":8053},{"ip":"183.84.6.241","port":8053},{"ip":"58.254.154.6","port":8053}],"interval":1800, "firsttest":1506}}}� |
Goed, wat ik dus zelf zie, eerste byte is altijd hex 01, daarna lijken het 2 bytes voor... iets met de lengte van het bericht? daarna 3 bytes die altijd 00 00 07 zijn bij een bericht, en ik heb een keer gezien dat het 00 00 03 was bij een leeg bericht. Daarna nog 2 bytes met onbekend doel.
Edit: De laatste 2 bytes lijken de lengte van het bericht te zijn juist, inclusief de gekke 1 a 2 bytes die op het eind komen.
Oost west, 127.0.0.1 best!