Anleitung zum Token auslesen von Xiaomi Geräten
Bisher entschlüsselte Geräte:
- Xiaomi-mi-robot-vacuum 1.Gen
- Xiaomi Smart Fan
- Xiaomi Plant Monitor
Datenbank finden
(Voraussetzung für Variante 1 und 2)
1.) Xiaomi Gerät miHome App verbinden und im Wifi anmelden.
2.) Nicht verschlüsseltes iTunes Backup vom iOS Gerät auf den Computer kopieren
3.) Mit http://www.imactools.com/iphonebackupviewer/ Free Installieren und das oben erstellte Backup öffnen
4.) Über das Icon Raw Datei den Ordner (AppDomain-com.xiaomi.mihome) öffnen
5.) Die Datei 1719973717_mihome.sqliteauf den Desktop Exportieren.
"Bin mir nicht sicher ob die Zahlen Kombination im Dateinamen überall gleich ist"
Variante 1:
1.) Die Datei 1719973717_mihome.sqlite öffnen mit einem Texteditor
2.) 96 Stelligen Code finden und Kopieren
3.) aes.online-domain-tools.com öffnen
4.) Entschlüssen des Token (im Feld Key sind 32 Nullen einzutragen) <00000000000000000000000000000000>
Variante 2:
Folgende Tools werden für Variante 2 benötigt und müssen vorher Installiert werden:
- sudo apt install python3-pip ibffi-dev libssl-dev
- pip3 install -U pip setuptools
- pip3 install python-miio
1.) Die Datei 1719973717_mihome.sqlitevom Desktop auf den Raspberry Pi kopieren nach /home/pi
2.) Im Terminal die sqlite Datei öffnen mit miio-extract-tokens /home/pi/1719973717_mihome.sqlite
3.) Ergebnis: Hier kann der 32 Stetige Token ausgelesen werden.
Model: hhcc.plantmonitor.v1
IP address: xxxxx
Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (32 Stelliger Code)
MAC: C4:7C:8D:61:XX:XX
Sauger Garage
Model: rockrobo.vacuum.v1
IP address: xxxxx
Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (32 Stelliger Code)
MAC: 34:CE:00:E9:XX:XX
Ventilator
Model: zhimi.fan.v3
IP address: xxxxx
Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (32 Stelliger Code)
MAC: 78:11:DC:32:XX:XX
Alles anzeigen
Variante 3: (Nicht selber getestet)
Auslesen des Token mit einem RasPi3:
1.) Am Robo blinkt die blaue LED Wlan Led
2.) wicd-curses installieren und starten
Code
sudo apt install wicd-curses
wicd-curses
Bevor wicd-curses nun aber überhaupt funktioniert, muss in den Einstellungen des Programms den Dhcp-Client anpassen,.
3.) Öffnet dazu mit [Shift]+[P] die Einstellungen und wechselt mit [Pfeil-rechts] in den „Reiter“ Externe Programme — dieser ist recht leicht zu übersehen.
In diesem wählt ihr dann die Option dhclient an und speichert die Einstellung mit [F10].
Arbeitet ihr via SSH mit dem RasPi, dann wird die Funktionstaste etwas in der Terminal-App auslösen und die Eingabe nicht zum entfernten Rechner übertragen. Bei Bedarf könnt ihr aber die blauen Flächen quasi wie Buttons einer GUI auch einfach mit der Maus anklicken und so eure Konfiguration abspeichern .
5.) Im Hauptmenü das WLAN vom Robo mit Enter bestätigen, dadurch verbindet sich der Raspi mit dem WLAN vom Robo.
6.) Mit Alt+F2 zweite Konsole aktivieren und mit pi anmelden.
starten von:
Code
miio --discover --sync
(Mit "miio --discover --sync > token.txt" wird es in eine Tetdatei umgeleitet.)
danach sollte so etwas erscheinen:
Code
- INFO Discovering devices. Press Ctrl+C to stop.
- Device ID: 64610661
- Model info: Unknown
- Address: 192.168.8.1
- Token: 346b3xxxxxxxxxx73xxxxx262xxx14d via auto-token
- Support: Unknown
7.) Nun den Token in die config.json eintragen.
Variante 4: HTTP Catcher (Nicht selber getestet)
http://tiemerding.com/xiaomi-token-auslesen/
Vielen Dank honkmaster!
Variante 5: Xiaomi Cloud Tokens Extractor (Nicht selber getestet)
Vielen Dank an Kohle_81 und Spy
Viel Spass !
Gruß Nastra