Case study
ninebot-go: reconstructing Ninebot app cloud communication
ninebot-go reconstructs the Ninebot app's encrypted cloud communication in a Go client. It implements NET request encryption and response decryption using AES and RSA, then exposes vehicle, battery and travel data through CLI, web and MCP interfaces; vehicle-control commands remain unfinished.
- Targets
- Protocol
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Evidence class
- C2 code & docs, no demo or download
- Stars
- 4
- Last commit
- 2026-10-01
- Language
- Go
- License (GitHub)
- MIT
GitHub data as of 2026-11-10
Evidence
- Observed
- Code and documentation observed; no download method or demo found.
- Checked
- 2026-11-08
Requirements & limits
- Prerequisites: Go 1.25 or newer and a Ninebot account for authenticated operations.
- Limits: Vehicle-control commands have not been integrated; response signature verification is currently omitted.
- License: MIT.
Cite
BibTeX
@misc{ninebot-go-case,
title = {{ninebot-go: reconstructing Ninebot app cloud communication}},
howpublished = {\url{https://github.com/likz0421/ninebot-go}},
url = {https://github.com/likz0421/ninebot-go},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/ninebot-go-case/}}
}Plain text
ninebot-go: reconstructing Ninebot app cloud communication. https://github.com/likz0421/ninebot-go (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/ninebot-go-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · likz0421/ninebot-go · Revision d29b31d
More in Protocols
- open-g2-hub: a local Even G2 client built on BLE protocol findings · Case study
- Edifier Speakers BLE: reconstructing M60 and M90 speaker control · Case study
- Halyard: reconstructing Shadow cloud PC streaming on handhelds · Case study
- Axial: mapping and controlling the DJI RS 4 Mini over Bluetooth · Case study
- Fiat Ducato X250: decoding the body CAN bus · Case study
- Unrack: extending reconstructed t.racks DSP control · Case study