Hallo,
dies ist die Fortsetzung meines Patches aus dem
AES Reverseengineering-Thread.
Im Anhang findet sich ein Patch gegen 10_CUL_HM.pm, der es erlaubt, AES-geschuetzte Geraete zu schalten.
Sollten diese Geraete einen eigenen Schluessel benutzen (empfohlen), dann muss dieser in einer VCCU definiert (attr hmKey) und das culfw-Geraet dieser als IO zugewiesen sein.
Status:
- Meiner Meinung nach fuer die Aufnahme in Fhem bereit :-)
Was funktioniert:
- Schalten und konfigurieren eines Geraets mit Standardschluessel oder eigenem Schluessel
- Uebertragung eines neuen Schluessels an ein Geraet (assignHmKey) (Im Augenblick landet der neue Schluessel im Klartext im Log, um ein Geraet bei evtl. Fehlern wiederbeleben zu koennen!)
- Ueberpruefung der crypto-Response im ACK eines geschalteten Geraets
Was funktioniert nicht:
- Anforderung einer Signatur eines Senders (aesCommReq), hier weiss ich nicht, wo ich im Code ansetzen muss. Das sollte spaeter aufbauend auf diesem Patch implementiert werden.
Voraussetzungen:
- Das Perl-Modul Crypt::Rijndael muss installiert sein (Debian: libcrypt-rijndael-perl)
Ueber Rueckmeldung wuerde ich mich freuen, da ich das bisher nur in meinem Setup getestet habe.
EDIT: assignHmKey implementiert, doppeltes ACK behoben
EDIT2: Logging verbessert
EDIT3: Ueberpruefung der crypto-Response im ACK implementiert
EDIT4: Eigene Funktion zur Keyabfrage implementiert
EDIT5: Loglevel zum Grossteil auf 5 gestellt, assignHmKey landet noch mit Level 2 im Log. Dokumentation angepasst.
EDIT6: assignHmKey dokumentiert
Gruss
Michael