Wireless M-Bus für CUL

Begonnen von tostmann, 12 Juni 2014, 17:34:32

Vorheriges Thema - Nächstes Thema

mail@christian-michels.de

Hallo,

auch von mir erst mal herzlichen Dank für die Arbeit die Ihr in FHEM und  die Module steckt.

Ich habe bei mir seid ein paar Tagen die Sendeeinheit vom RWE SmartHome Powercontrol (http://www.rwe-smarthome.de/web/cms/de/1776202/smarthome/informieren/geraete/power-control/ ) in Verbindung mit einem CUL in Betrieb. Die Einheit Sendet verschlüsselt im WMBus_S Modus.

Die nachrichten werden auch alle 10sec empfangen, allerdings habe ich ein Problem mit dem AES Key.

Der mitgelieferte AES Key ist nur 16 Zeichen lang,  der Parameter AESkey scheint allerdings einen 32 Zeichen langen Key zu erwarten.


Wenn ich den Key eingebe erhalte ich folgende Fehlermeldung.

   AESkey must be a 32 digit hexadecimal value

und der Key wird nicht benutzt.

Der Sender hat folgende Daten:
AESKey: 8A17C514B019D541
Seriennummerlaut Aufdruck: 457401101831


Anbei die Zeilen in der fhem.cfg incl meines Key.


define WMBUS_IMS_01101831_66_2 WMBUS IMS 01101831 66 2
attr WMBUS_IMS_01101831_66_2 IODev CUL1
attr WMBUS_IMS_01101831_66_2 room WMBUS
attr WMBUS_IMS_01101831_66_2 AESkey 8A17C514B019D541
attr WMBUS_IMS_01101831_2_2 rawmsg_as_reading 1
define FileLog_WMBUS_IMS_01101831_66_2 FileLog ./log/WMBUS_IMS_01101831_66_2-%Y.log WMBUS_IMS_01101831_66_2
attr FileLog_WMBUS_IMS_01101831_66_2 logtype text
attr FileLog_WMBUS_IMS_01101831_66_2 room WMBUS



Und hier noch mal die Daten die empfangen werden.

CUL1_MSGCNT
5
CUL1_RAWMSG
b3E44B3253118100142021A117AB400300540A7653A5BC1EF6539C3E5C209E71E0610F24C5785EA40EB4E5B8B2012EBCD760FCA65BB9FC77C382968FFF648DBB14860B5A2A458D3F4::-74
CUL1_RSSI
-74
CUL1_TIME
2015-07-24 23:12:52
DEF
IMS 01101831 66 2
DeviceMedium
Electricity
DeviceType
2
IODev
CUL1
IdentNumber
01101831
LASTInputDev
CUL1
MSGCNT
5
Manufacturer
IMS
NAME
WMBUS_IMS_01101831_66_2
NR
231
STATE
encrypted message and no aeskey provided
TYPE
WMBUS
Version
66
addr
IMS_01101831_66_2


Ich hatte  auch mal getestet was passiert wen ich Testweise in der Datei 36_WMBUS.pm die Abfrage auf 32 Zeichen auf 16 Zeichen umstelle, dann erhalte ich aber folgende Fehlermeldung.
If specified by -literal_key, then the key length must be equal to the chosen cipher's key length of 16 bytes at WMBus.pm


Ich würde mich freuen wenn jemand weiss ob und was ich falsch mache.

Da ich noch neu hier bin, sagt mir bitte auch falls ich im falschen Forum bin.

Danke
Christian

kaihs

Zitat von: christianm am 25 Juli 2015, 00:04:52
Der mitgelieferte AES Key ist nur 16 Zeichen lang,  der Parameter AESkey scheint allerdings einen 32 Zeichen langen Key zu erwarten.

Ja, der AES Key muss 16 Bytes binär lang sein, codiert in Hexadezimal sind das 32 Zeichen.
Allerdings ist in der Spezifikation die Rede davon, dass nur 8 Bytes pro Zähler unterschiedlich sein müssen.
D.h. die anderen 8 Bytes können z. B. für alle Zähler der Baureihe identisch sein.
Ist jetzt die Frage, was den fehlenden Teil des Keys bildet.
Die Seriennummer allein ist zu kurz.
Ich habe mal verschiedene Kombinationen aus Seriennummer, deinem Schlüsselteil und auffüllen mit 00 probiert, aber das war nicht erfolgreich.

Du musst also irgendwie an den fehlenden Teil des Schlüssels kommen.

Aus dem nicht verschlüsselten Teil des empfangenen Datenpaket lässt sich folgendes auslesen:

Manufacturer 25b3 IMS
IdentNumber 01101831
Version 66
Type 2 Electricity
IsEncrypted 1
Status: 0 no errors
Codeword:
bidirectional: 1
accessability: 1
synchronous: 1
mode: 5
encrypted_blocks: 5
content: 1
hops: 1
Error:Decryption failed, wrong key?


Hersteller ist also die
   IMST GmbH, Carl-Friedrich-Gauss-Straße 2-4, 47475 Kamp-Lintfort, Germany

Die stellen aber eigentlich nur die Funkmodule her.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

mail@christian-michels.de

Hallo kaihs,

herzlichen Dank für die Infos, dann werd ich mal sehen  wie ich an den fehlenden teil des Schlüssel komme. Falls ich etwas raus bekomme sag ich noch mal bescheid.


Danke
Christian

nogenius

Hallo zusammen,

haben bei uns in der Wohnung Qundis WFH / WFC 36 Wasserzähler, sowie ebenfalls einen Qundis Stromzähler (Typ weiß ich gerade nicht). Wie ich im Beitrag gelesen habe senden bei euch die Zähler nur Anfang des Jahres sinnvolle Werte, insofern ist das alles ja nur teilweise zu gebrauchen.

Bei uns im Haus hängen auch mehrere Netzwerkknoten von Qundis (Q node). Weiß jemand ob das einen Einfluss hat und so eventuell öfter Daten abgefragt werden, oder sind das prinzipiel nur Repeater um von einer Stelle im Haus alle Daten abfragen zu können und nicht vor jede Haustüre gehen zu müssen?

Alternative: Was würdet ihr für Add-On Module empfehlen um den Verbrauch abzulesen und zu senden?

Vielen Dank!

kaihs

Wenn du schon einen passenden Empfänger hast kannst du ja einfach schauen, was an Daten ankommt.
Mglw. lassen sie sich ja doch auswerten.

Andernfalls mal im Wiki schauen, was davon zu deinen Gegebenheiten passt.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

mail@christian-michels.de

Hallo kaihs,

nur zur Info falls noch jemand mit dem RWE SmartHome Powercontrol experimentiert.

Ich habe vom RWE Support bestätigt bekommen das der mitgelieferte AES Schlüssel nicht komplett ist. Sie aber leider nicht den Kompletten AES Schlüssel herausgeben können.

Zitates ist korrekt dass der AES  Schlüssel nicht komplett dargestellt wird.
Wir bedauern, aber leider können wir den Kompletten AES Schlüssel auch nicht herausgeben

Mal sehen wie ich das Gerät jetzt weiterbenutzte...


Danke noch mal für deine Hilfe.

Christian

kaihs

Danke für die Rückmeldung, ich habe es im Wiki vermerkt.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

captaintrip

#292
Hallo :)

Erstmal DANKE für das Modul!

Bei mir Zuhause sind ein Izar/Auquarius RS 868 Kaltwasserzähler und ein Sharky 775 Wärmezähler verbaut. Beide werden in fhem gefunden und angelegt.

Der Izar/Auquarius produziert teilweise unterschiedliche Logmeldungen:
2015.08.16 23:33:47 2: WMBUS WMBUS_HYD_35123456_148_67 Error during ApplicationLayer parse:encrypted message and no aeskey provided
2015.08.16 23:36:11 2: WMBUS WMBUS_HYD_35123456_148_67 Error during ApplicationLayer parse:encrypted message and no aeskey provided
2015.08.16 23:38:31 2: WMBUS WMBUS_HYD_35123456_148_67 Error during ApplicationLayer parse:Encryption 7 mode not implemented
2015.08.16 23:40:54 2: WMBUS WMBUS_HYD_35123456_148_67 Error during ApplicationLayer parse:Encryption 7 mode not implemented


mit folgenden Raw-Daten:
2015-08-16_23:33:47 WMBUS_HYD_35123456_148_67 rawMsg: b1E4424238B0769359443AD767A720010F54709A61F05C2321067167DB3799E434BC0B80FE787::-90.5
2015-08-16_23:36:11 WMBUS_HYD_35123456_148_67 rawMsg: b1E4424238B0769359443AD767A730010F54708D4EB9F702F2DFAA7ED698AB577F0ADD27B1280::-90.5
2015-08-16_23:38:31 WMBUS_HYD_35123456_148_67 rawMsg: b1E4424238B0769359443AD767A740010F5470E88245A6E7C9D2AB31D179964F8D0AFC408BC81::-90.5
2015-08-16_23:40:54 WMBUS_HYD_35123456_148_67 rawMsg: b1E4424238B0769359443AD767A750010F7470FF8D0C0DC61A0B7028D296A4FCC6BC2AE7C4982::-88.5


und der Sharky folgende Logmeldungen:
2015.08.16 23:54:41 2: WMBUS WMBUS_HYD_41123456_47_4 Error during ApplicationLayer parse:encrypted message and no aeskey provided
2015.08.16 23:54:52 2: WMBUS WMBUS_HYD_41123456_47_4 Error during ApplicationLayer parse:encrypted message and no aeskey provided
2015.08.16 23:55:04 2: WMBUS WMBUS_HYD_41123456_47_4 Error during ApplicationLayer parse:encrypted message and no aeskey provided
2015.08.16 23:55:15 2: WMBUS WMBUS_HYD_41123456_47_4 Error during ApplicationLayer parse:encrypted message and no aeskey provided


mit folgenden Raw-Daten:
2015-08-16_23:54:41 WMBUS_HYD_41123456_47_4 rawMsg: b4E442423879859412F0416BC7AAE0040050A999C741728FFD47B4578E5AB9635B86E64335375D6B3BCC2EDB73F3701CAE41AAD149510B15326F3B4C128AC8FBF79C9D7EF809D157901C894538991710FF73744993D309C9F92B23F81::-97
2015-08-16_23:54:52 WMBUS_HYD_41123456_47_4 rawMsg: b4E442423879859412F0416BC7AAF0040051D51AE64083C51AAC1BCFC1D32EC3BF9618C269F79A7C51E4EECAE0E478DAD5CBCC5C1090F965E1EB65193A69C400B536B9D7AB44D5FBF95CCD61678B50F2F9A4289052FB19701621AE680::-97.5
2015-08-16_23:55:04 WMBUS_HYD_41123456_47_4 rawMsg: b4E442423879859412F0416BC7AB0004005DB31F267530C40C2945A61D4C0FC0DCA3A1D71AD8E06925BFF99BC2FE264D80C8843AC6E8EDC5DC1792DA5B54917DBF8865AE03A094D91E33A26B13444D6B3434C3FF4E2F4AF7340239081::-97
2015-08-16_23:55:15 WMBUS_HYD_41123456_47_4 rawMsg: b4E442423879859412F0416BC7AB1004005A851243EC4715D3A95326FC0DDFC820A1BC0C66A8026BE80B1F26B3099447D310C55E25D7F2FFDB66365B10BEBA64F103B37642F9A1CD62444F0F97A29F7D58A8803EE6755B2F8D4DFD381::-96.5

ACHTUNG - nachdem der Key bekannt ist hab ich die Daten unleserlich gemacht


Hab ich hier ohne AES Schlüssel eine Chance? Sind die Daten überhaupt verschlüsselt?
Für den Sharky gäbs sogar eine Kommunikationsbeschreibung, aber ich befürchte die bezieht sich auf das unverschlüsselte Telegramm?

Vielleicht hat ja jemand eine Idee dazu?

Liebe Grüße
captain

captaintrip

#293
Also der Sharky 775 ist definitiv verschlüsselt

Könnte es sein, dass der Izar/Aquarius nur DES verschlüsselt ist?

Grüße
captain


Anmerkung:
Aufgrund eines Einwandes des Herstellers wurde dieser Beitrag am 2.8.2018 von einem Moderator geändert

kaihs

Zitat von: captaintrip am 17 August 2015, 00:09:19
Hab ich hier ohne AES Schlüssel eine Chance? Sind die Daten überhaupt verschlüsselt?

Ja, die Daten sind verschlüsselt.
Ein bisschen merkwürdig ist, dass einmal Encryption Mode 7 von dem Aquarius verwendet wird.
Das ist ein neuer und ziemlich aufwändiger Verschlüsselungsmodus den ich noch mit implementiert habe. Das muss ich noch genauer untersuchen.

Zitat
Für den Sharky gäbs sogar eine Kommunikationsbeschreibung, aber ich befürchte die bezieht sich auf das unverschlüsselte Telegramm?

Die bezieht sich nicht auf die Datenübertragung per Funk und lässt sich daher nur sehr bedingt anwenden.

Du kannst versuchen bei deinem Versorger oder wer auch immer für die Zähler zuständig ist die passenden Schlüssel zu bekommen, sind ja schließlich deine Daten.
Mindestens ein Forenteilnehmer war damit schon erfolgreich.

Danach kann man erst beurteilen, ob sich mit den Daten was anfangen lässt.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

kaihs

Zitat von: captaintrip am 17 August 2015, 21:36:34
(Ein Decompiler ist schon ein nützliches Tool - ich vermute der Key ist für sämtliche Diehl Produkte Standard :P)

Was hast du denn decompiliert? Hast du die Firmware von dem Zähler oder eine Auswertungssoftware?

Zitat
Könnte es sein, dass der Izar/Aquarius nur DES verschlüsselt ist?

Ich weiß nicht, ob DES überhaupt spezifiziert war. Es gibt einen Encryption Mode 4 zu dem in den neuen Spezifikationen nur "deprecated" steht.

Mode 7 ist:
Encryption Mode 7 is a symmetric encryption method using AES128 with CBC and a
dynamic key (see chapter 9.2.3). It is possible to identify up to eight different keys using the
Key-ID.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

captaintrip

#296
ZitatWas hast du denn decompiliert? Hast du die Firmware von dem Zähler oder eine Auswertungssoftware?
Eine Konfigurationssoftware - namentlich IZAR@SET von Diehl - gibt's als freien Download auf der Diehl Metering Seite.
In den Einstellungen der Software lässt sich auch ein neben einem AES Key auch ein DES Key setzen - deshalb die Vermutung.
In der Software finden sich jedoch noch 2 weitere 16 Byte lange Standard Keys, was wiederum gegen DES sondern für AES mit geringerer Schlüssellänge spricht.

ZitatIch weiß nicht, ob DES überhaupt spezifiziert war. Es gibt einen Encryption Mode 4 zu dem in den neuen Spezifikationen nur "deprecated" steht.
Hab mittlerweile auch andere Encryption Modes im Log - z.B. a, d, 1
Kann mir auch nicht vorstellen, dass der Kaltwasserzähle so "besonders" gesichert ist, das Ding hat mittlerweile auch schon 3 Jahre am Buckel - somit denke ich der 7er Mode war eine falsche Fährte...

kaihs

Zitat von: captaintrip am 17 August 2015, 22:37:45
In der Software finden sich jedoch noch 2 weitere 16 Byte lange Standard Keys, was wiederum gegen DES sondern für AES mit geringerer Schlüssellänge spricht.

Die Spezifikation erlaubt es, pro Zähler nur 16 Byte unterschiedlich zu setzen und die anderem 16 Byte fix zu machen. Hatten wir ein paar Beiträge weiter oben bei einem RWE Zähler.

Zitat
Hab mittlerweile auch andere Encryption Modes im Log - z.B. a, d, 1
Kann mir auch nicht vorstellen, dass der Kaltwasserzähle so "besonders" gesichert ist, das Ding hat mittlerweile auch schon 3 Jahre am Buckel - somit denke ich der 7er Mode war eine falsche Fährte...

Diese Encryption Mode gibt es laut Spezifikation nicht, da muss was anderes im Argen sein.
Schick mir mal die Rohdaten per PM, dann versuche ich dahinter zu kommen.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

drdownload

Nachdem ich mir von einem höheren bei den Energiewerken anhören konnte, dass Privacy und Sicherheit wichtig sind und sie daher keinen AESkey rausgeben ist es lustig, dass der Diehl Default key geht :)
CUL 868 Slow-RF (FS20 Aktoren, Sender, FHT8V), CUL 868 (WMBUS-Empfang), Jeelink (PCA301), WS3600 (WH3080 über USB-Basis), Bewässerung mit ESP-Easy und Proplanta, RFXTRX433 Home-Easy Empfang und Senden, Oregon TH, WS001 TH), Blackbean IR, Mopidy-Snapcast MR Audio, Kodi, Forum-LED-Controller,

nogenius

Hallo zusammen,

mein CUL ist erst jetzt angekommen - bisher hatte ich keinen zum ausprobieren und wollte die Kaufentscheidung eigentlich von der Wahrscheinlichkeit abhängig machen, die Zählerdaten auszulesen. Naja, letztlich hat die Neugier gesiegt und ich hab den CUL einfach bestellt.

Vielen Dank jedenfalls für eure Arbeit, nach dem heutigen Tag sind alle meiner Zähler (Warmwasser, Kaltwasser, Wärme/Energie Fußbodenheizung) über autocreate angelegt worden. Alle von Qundis, alle unverschlüsselt, und alle mit sinnvollen Daten. Und nachdem ich schon nach einem Tag Werte bekommen habe gehe ich einfach mal davon aus, dass die Dinger auch regelmäßig senden.

Den Repeater (Qundis Node) hab ich wohl auch gefunden, allerdings hier ohne sinnvolle Daten, ist für mich aber absolut irrelevant.

Vielen Dank!