Patch für EnOcean verschlüsselte (Eltako) Aktoren

Begonnen von nobody42, 22 Februar 2015, 18:26:21

Vorheriges Thema - Nächstes Thema

klaus.schauer

Bei bidirektionalen Devices gibt es für jede Richtung einen privaten Schlüssel und einen Rolling Key. Bei dem unidirektionalen Switches ist das nicht relevant.

Loredo

Zitat von: klaus.schauer am 25 März 2015, 05:18:10
Die privaten Schlüsssel und Rolling Codes werden jetzt in Fhem generiert. Falls (manuell vorgegebene) Attribute bestehen, werden diese auf Plausibilität geprüft und natürlich nicht überschrieben. Für die Erzeugung der Schlüssel und Rolling Codes muss zusätzlich die Perl-Ergänzung Crypt::Random installiert werden.


Ich frage mal aus Sicht des Docker Images:
Es gibt immer wieder Probleme beim bauen von Math::Pari, welches für Crypt::Random benötigt wird. Auch baut es gar nicht auf nicht x86_64 Plattformen (zumindest habe ich es mit QEMU nicht hinbekommen, was aber zwingende Voraussetzung ist, ob ein Docker Image automatisiert zu bauen).


Besteht die Möglichkeit, dass ein anderes Perl Modul statt Crypt::Random genutzt wird?


Die Abhängigkeit zu CryptX (sprich Crypt::Rijndael) macht auch Bauchweh. Gibt es dafür nicht alternative Perl Module, die besser verfügbar sind?
Aktuell werden in FHEM diese Crypt Module verwendet:




Crypt::CBC          XiaomiDevice, BEOK, Broadlink
Crypt::Cipher::AES XiaomiDevice
Crypt::ECB          XiaomiDevice
Crypt::Mode::CBC WMBus, WMBUS
Crypt::Mode::CTR WMBus, WMBUS
Crypt::MySQL      ZoneMinder
Crypt::OpenSSL::AES BEOK, Broadlink
Crypt::OTR          Jabber
Crypt::Random      EnOcean
Crypt::Rijndael      BDKM, km200, CUL_HM, EnOcean, HMUARTLGW, SamsungAV, ZWave
Crypt::Rijndael_PP XiaomiDevice
Crypt::URandom       GoogleAuth



Vielleicht wären Crypt::URandom und Crypt::Rijndael_PP ein passender Ersatz? Ich vermute, dass Performance hier keine sehr große Rolle spielt.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

klaus.schauer

Mit dem Funktionsumfang, den Abhängigkeiten, Alternativen und vor allen Dingen Unterschiede der diversen Cryptobibliotheken habe ich mich bisher nicht beschäftigt. Wenn es konkrete Vorschläge gäbe, wie die unterschiedlichen Routinen vereinheitlicht werden können, kann ich das gerne ausprobieren und testen.

Loredo

Es war nur ein Hinweis, weil ich es wieder aus dem Docker Image entfernen musste. Ich nutze selbst kein EnOcean.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER