es gibt ein Mega-Update für die KNX-Unterstützung im Timberwolf Server.
Übersicht
KNX Secure Grundlagen
1. NEU! KNX Secure Schlüssel Manager erlaubt den Import des ETS Projekt Schlüsselbundes
2. UPGRADE! Der KNX Buslogger entschlüsselt KNX Data Secure Telegramme während der Aufzeichnung
3. UPGRADE! Die KNX Statistiken zeigen nun Entschlüsselungsstatus an
4. UPGRADE! Der KNX Busmonitor unterstützt nun ebenfalls KNX Data Secure inkl. Entschlüsselung
5. UPGRADE! Die Anzeige im KNX Busmonitor ist besser strukturiert
6. NEU! Mouse Over für alle KNX Telegramm Details
7. NEU! Grafana Direktaufruf aus dem Busmonitor für GA-Telegramme erleichtert Verlaufsanalyse
8. UPGRADE! Der Busmonitor Export nach CSV wurde erweitert
9. NEU! KNX Diagnosemonitor für Deep Dive bei Problemen am Bus
10. SPEEDUP! Hochladen des ETS Projektes nun Faktor 100 (!) schneller
Planungen
Verfügbarkeit
KNX Secure Grundlagen
Für alle, die KNX Secure nicht kennen, hier eine (sehr) kurze Einführung.
- KNX Secure ist eine Erweiterung um ZWEI VERSCHIEDENE Protokolle.
------------------------------------------------------------- - KNX DATA Secure ist die Verschlüsselung und Authentifizierung des Dateninhaltes von KNX Telegrammen. Damit wird die Kommunikation zwischen den KNX Secure Geräten untereinander gegen Abhören, Manipulation und Replay gesichert. Die ETS nutzt dies bei KNX Secure Geräten auch für die sichere Inbetriebnahme und Parametrierung. Dies ist eine TEILVERSCHLÜSSELUNG, weil nur die Daten (und ein paar Verwaltungsfelder) verschlüsselt sind. Damit können KNX Data Secure Telegramme auch von NICHT-KNX-SECURE Geräten ("alte" Linienkoppler, Tunnel-Server, IP Router) in der Topologie und zur ETS transportiert werden.
------------------------------------------------------------- - KNX IP Secure ist die Verschlüsselung und Authentifizierung von KNXnet/IP Tunneling. Es ist eine VPN zwischen einem Tunnel Client (z.B. der ETS) und einem Tunnel Server (z.B. einem KNX Secure Router). Eigentlich würde es das für die Inbetriebnahme von KNX Secure Geräten durch die ETS nicht benötigen, weil das bereits über KNX DATA Secure auf sicheren Wege erfolgt. Jedoch befinden sich oft genug KNX Geräte in der Installation, die KNX Secure nicht unterstützen. IP Secure sichert damit auch die Parametrisierung zwischen ETS und NICHT-Secure-Geräten über das lokale Netzwerk (oder über Fernzugang). Durch den VPN Charakter ist dies ist eine VOLLVERSCHLÜSSELUNG.
------------------------------------------------------------- - KNX Secure Gerät ist ein KNX Gerät, dass eines oder beide KNX Secure Protokolle unterstützt. Alle KNX Secure Geräte unterstützen KNX DATA Secure für Gruppenkommunikation / Inbetriebnahme / Parametrierung / Sequenznummern Synchronisation. KNX Secure Geräte mit Ethernet, wie z.B. KNX Secure IP Schnittstelle oder KNX Secure Router unterstützen zusätzlich KNX IP Secure für den enthaltenen KNXnet/IP Tunnel Server. Zur Kennzeichnung ist auf alle KNX Secure Geräten in der Nähe des KNX Symbols ein "X" bzw. "(X)" aufgedruckt. Gira druckt noch ein Schild-Symbol zusätzlich auf. Wichtig, damit ein KNX Secure Gerät auch die sicheren Eigenschaften nutzen kann, muss es über die ETS erst in den sicheren Modus geschaltet werden ("aktivierte Gerätesicherheit").
------------------------------------------------------------- - KNX Plain Gerät ist ein KNX Gerät, das NICHT KNX Secure unterstützt. Hinsichtlich Sicherheit gibt es drei Benennungen. Die KNX "Plain" Geräte ohne Fähigkeit für KNX Secure und die KNX Data Secure fähige Geräte mit jeweils aktivierter bzw. deaktivierter Gerätesicherheit.
------------------------------------------------------------- - Extended Frame sind längere KNX Telegramme, die über die ursprünglich definierte Länge von Standard Frames hinausgeht um mehr Daten transportieren zu können. Diese werden teilweise auch als "Long Frame" bezeichnet. Genutzt werden Extended Frames bei der Parametrierung durch die ETS (für Beschleunigung der Programmierung) und für die meisten KNX DATA Secure Telegramme. Bei kurzen Dateninhalten wie z.B. Boolesche Daten (nur 1 Bit) passt das KNX Data Secure Telegramm (ausnahmsweise) in den Standard Frame. Bitte beachte, dass die verwendeten Systemkomponenten (Bereichs-/Linienkoppler, Medienkoppler) und Datenschnittstellen der ETS (USB, IP-Tunneling, IP-Routing) jeweils Extended Frames unterstützen. Bei den meisten Geräten ist das seit ca. 2014 der Fall.
------------------------------------------------------------- - Factory Default Setup Key ("FSDK") ist der werksseitig vom Hersteller voreingestellter EINMALIGE Setup-Schlüssel. Der FDSK ist pro Gerät eindeutig und kann nicht geändert oder gelöscht werden. Er ist auf der Verpackung oder Anleitung aufgedruckt, auch per QR-Code und muss für die sichere Inbetriebnahme in die ETS eingelesen werden. Diesen Schlüssel darf man AUF KEINEN FALL verlieren. Er wird zwar nur für die Inbetriebnahme benötigt. Sollte man das Gerät jedoch verkaufen oder in einer anderen Anlage einsetzen wollen oder man hat das Projekt verloren oder Sie führen einen Master Reset aus, dann wird dieser FSDK erneut benötigt!
------------------------------------------------------------- - Gerätezertifikat wird bei jedem KNX Secure Gerät mitgeliefert. Dieses besteht aus der Seriennummer und dem FSDK. Dieses Gerätezertifikat benötigt die ETS VOR einer sicheren Inbetriebnahme eines KNX Secure Gerätes. Hierfür sind die auf einem Etikett bzw. beiliegendem Blatt aufdruckten 36 Zeichen einzugeben oder der QR-Code zu scannen.
------------------------------------------------------------- - KNX Secure Modus ("Status Gerätesicherheit") ist eine Betriebsweise (auch als "sicherer Start" bezeichnet) bei dem den ein KNX Secure Gerät per ETS in den sicheren Modus gesetzt wird. Hierfür wird das Gerätezertifikat benötigt. Mit Vergabe der PA wird der Geräteschlüssel auf den von der ETS erzeugten Tool-Schlüssel gesetzt. Danach können Secure GA verknüpft werden.
Es wird also zwischen KNX Data Secure fähigen Gerät mit aktivierter bzw. deaktivierter Gerätesicherheit unterschieden (und dann nochmal zu KNX DATA Secure UNFÄHIGEN Geräten = Plain Geräte).
------------------------------------------------------------- - TOOL Schlüssel ("Tool-Key") ist derjenige Schlüssel, mit dem die ETS die KNX DATA Secure Kommunikation (PA zu PA) für das jeweilige Gerät verschlüsselt. Es ist individuell pro Gerät. Bei der ersten Inbetriebnahme ist dies der mit dem Gerät ausgelieferte und in die ETS zu importierende FSDK. Die ETS vereinbart mit Programmierung der PA auf mit dem FSDK verschlüsseltem Wege mit dem jeweiligen Gerät einen neuen INDIVIDUELLEN Tool-Schlüssel, den die ETS pro Gerät verwaltet. Der FSDK wird also nur für die Inbetriebnahme verwendet (und nach einem Master Reset)
------------------------------------------------------------- - Master Reset ist ein komplettes Zurücksetzen eines KNX Secure Gerätes. Damit wird der Tool Key wieder auf den FSDK zurückgesetzt (so wie man das Gerät vom Hersteller erhält). Bitte führe einen Master Reset nur aus, wenn Du die Folgen kennst und wenn Du sichergestellt hast, dass Du noch das Gerätezertifikat hast (bzw. es sich noch im Projekt befindet), da sonst eine erneute Inbetriebnahme als KNX Secure Gerät nicht möglich ist.
------------------------------------------------------------- - Secure Gruppenadressen ("Laufzeitkommunikation") sind Gruppenadressen, die sicher Kommunizieren. Achte bitte auf die genaue Einstellung des Sicherheits Modus der jeweiligen GA. In der ETS kann die Eigenschaft "Security" auf "EIN", "Aus" und auf "Automatik" gesetzt werden. Bei Einstellung "Security EIN" DARF diese GA NUR noch gesichert (Verschlüsselt und Authentifiziert) auf dem Bus kommunizieren. Damit kann eine solche gesicherte GA nicht mehr mit Objekten von KNX Plain Geräten verknüpft werden. Bei "Aus" ist dies keine gesicherte GA.
------------------------------------------------------------- - Projekt Schlüsselbund enthält alle Tool-Schlüssel (die pro KNX Secure Gerät) und alle GA-Schlüssel (die pro Secure Gruppenadresse) für ein Projekt und wird von der ETS verwaltet. Damit diese beim Abspeichern des Projektes gesichert sind, VERLANGT die ETS die Vergabe eines Projektpasswortes. Der ETS Schlüsselbund kann (separat vom Projekt) exportiert werden.
------------------------------------------------------------- - Secure Sequence Nummer ("Freshness") Jede GA ist nicht nur verschlüsselt, sondern JEDES EINZELNE Telegram ist fortlaufend nummeriert. Ausgesendete Telegramme müssen also immer eine höhere Sequenznummer haben als das vorherige Telegramm (von diesem Gerät). Falls ein Gerät hier nicht Up-to-Date ist (weil z.B. am Bus abgesteckt) dann kann es von einem der anderen Geräte eine Synchronisierung der Sequenznummer anfordern. Damit wird eine Replay-Attacke erkannt und unterdrückt, weil KNX Secure Geräte alle Telegramme mit veralteter Sequenznummer gar nicht erst weiter bearbeiten. Die Sequenznummer ist. Diese Nummer ist 6 Byte lang und soll pro GA ausreichende Inkrementierung für mehr als 1000 Jahre bieten.
------------------------------------------------------------- - KNX Secure Proxy ist ein KNX Secure Gerät, das DIESELBE Gruppenadresse auf einer Linie gesichert überträgt (KNX Data Secure) und auf einer anderen Linie ungesichert (Plain). Nach unserem Wissenstand gibt es nur einen KNX Secure Linienkoppler (von Weinzierl) der dies unterstützt. Die ETS hat hierfür auch eine Konfiguration, indem Gruppenadressen auf diesen speziellen Linienkoppler in der ETS gezogen werden können. Dieser spezielle Linienkoppler erhält bei der Parametrierung damit auch die jeweiligen Schlüssel für diese GAs, damit die Ver- und Entschlüsselung automatisch erfolgen kann. Somit kann man z.B. auf einer Außenlinie nur KNX Data Secure Produkte nutzen, z.B. einen von außen erreichbaren Tastsensor. Dieser spezielle Linienkoppler empfängt die GA entsprechend gesichert und rechnet das Telegramm für die Innenlinie im Schaltschrank (für z.B. Aktoren in Plain) auf Plain-Telegramm um.
Bitte beachten. Es gibt auch einen Router von Enertex der eine ähnliche Funktion bietet, hier wird jedoch zwischen zwei GA übersetzt (dafür auf der gleichen Linie). Hier muss man jedoch den Schlüsselbund manuell (per Webzugriff) in das Gerät importieren. Es ist also zu unterscheiden zwischen reinrassigen KNX Secure Proxy Geräten mit Übersetzung zwischen zwei Linien und dem KNX Secure Mapper, der zwischen zwei GA übersetzt.
1. NEU! KNX Secure Schlüssel Manager
Für den Import des Projekt Schlüsselbundes gibt es nun den KNX Secure Schlüssel Manager.

Hinweise:
- In der Dateiauswahlbox ist die Projekt Schlüsselbund Datei (Endung *.knxkeys") anzugeben, die zuvor aus der ETS exportiert wurde
- Nach dem Import werden Informationen zu allen importierten Schlüssel angezeigt, also für welche KNX Secure Geräte mit aktivierter Sicherheit und für welche Secure Gruppenadressen. Bei jedem Import werden alle vormaligen Schlüssel überschrieben
- Diese importierten Schlüssel werden auf der - für jeden Timberwolf Server individuell anders - verschlüsselten Hauptpartition abgelegt und werden auch im Arbeitsspeicher verschlüsselt gehalten
- Die Bedienung ist auf der rechten Seite erklärt
2. UPGRADE! Der KNX Buslogger speichert entschlüsselte Daten in der Influx
Der komplett überarbeitete Buslogger verwendet die importierten Schlüssel, um alle verschlüsselten KNX DATA Secure Telegramme zu entschlüsseln. In den Aufzeichnungen werden auch die entschlüsselten Daten in der Influx-DB gespeichert, so dass z.B. Grafana (und auch der Busmonitor im historischen Modus) auf diese entschlüsselten Daten zugreifen können. Selbst dann, wenn der Schlüssel sich zwischenzeitlich geändert hat oder die GA nicht mehr verschlüsselt kommuniziert.
Die Influx DB wurde erweitert, damit nun auch der Secure-Status für jedes Telegramm abgelegt wird.
Beim Aufruf in Grafana sieht das so aus:

Wie man sieht, sieht man NICHTS davon, dass diese GA eigentlich verschlüsselt übertragen wurde. Weil bei der Aufzeichnung (sofern der Schlüssel importiert ist) automatisch eine Entschlüsselung (und HMAC Prüfung auf Manipulation) erfolgt und die Werte entschlüsselt abgelegt werden im Buslog, so dass man mit Grafana wie gewohnt einfach darauf zugreifen kann, ohne dass dies einer erneuten Entschlüsselung bedarf.
Für den Nutzer bedeutet das, alles geht automatisch, sobald die Schlüssel importiert wurden. Es ist NICHTS weiter einzustellen.
Hinweis: Unter Punkt 6. ist das neue Mouse Over im Busmonitor zu einem der verschlüsselten Telegramme dieser GA dargestellt (also deren Dateninhalt hier im Verlauf in Grafana zu sehen ist.)
3. UPGRADE! Die KNX Statistiken zeigen Secure Status
Die KNX Statistiken wurden überarbeitet und zeigen nun auch den in der Influx nun gespeicherten Secure Status an.

In der Spalte "KNX_LINE3.Sec" steht nun der Sicherheitsstatus:
- "Unsecure" bedeutet, dass diese Gruppenadresse im Plain-Mode kommuniziert hat (zu diesem Zeitpunk der Aufzeichnung). Dies wird beim Loggen anhand des Telegrammaufbaus erkannt. Es wird also unverschlüsselt und unauthentifiziert übertragen (zu diesem Zeitpunkt der Aufzeichnung)
- "Decrypted" bedeutet, dass diese Gruppenadresse im Secure Modus kommuniziert hat (zu diesem Zeitpunkt der Aufzeichnung) UND dass die Entschlüsselung erfolgreich war (weil zum Zeitpunkt der Aufzeichnung der Projekt Schlüsselbund importiert war)
- "Key missing" bedeutet, dass diese Gruppenadresse zwar im Secure Modus kommuniziert hat (zu diesem Zeitpunkt der Aufzeichnung) ABER dass die Entschlüsselung NICHT durchführbar war (weil zum Zeitpunkt der Aufzeichnung der entsprechende Schlüssel nicht im importierten Schlüsselbund enthalten war bzw. noch gar kein Schlüsselbund importiert wurde bislang)
4. UPGRADE! KNX Busmonitor entschlüsselt KNX Data Secure Telegramme
Der KNX Busmonitor entschlüsselt in Echtzeit und im historischen Modus alle KNX Secure Telegramme (soweit der Schlüssel importiert wurde).

Hinweise
KNX Secure Telegramme werden durch das Schild-Symbol angezeigt. Die Entschlüsselung und Dekodierung war erfolgreich, wenn Schlüssel (bei GA auch der DPT) bekannt war UND erfolgreich war (weil es wird auch das HMAC des Telegramm auf Manipulation geprüft !).
5. UPGRADE! Strukturierte und erweitere Anzeige im KNX Busmonitor
Wir haben die Anzeige im Busmonitor überarbeitet.

Hinweise:
- Der Frametyp und das APCI stehen nun untereinander damit man gleich sieht, ob es ein Write ist oder ein Read-Request
- KNX Data Secure Telegramme werden nun erkannt und mit einem Schild Symbol gekennzeichnet. Wie man im Bild sehen kann, gibt es hier auch ein Secure Telegramm das noch in einen Standard Frame passt. Die anderen beiden benötigen einen Extendet Frame.
- Es gibt nun eine Repeat-Anzeige, so dass man sofort sehen kann, ob es ein originales (erster Sendeversuch) Telegramm ist oder ein wiederholtes (weil das ACK gefehlt hat).
- Wiederholte Telegramme können nun auch in der Anzeige unterdrückt werden, damit man nicht jedes Telegramm bis zu viermal sieht. Wir empfehlen aber, die Ursache von Telegramwiederholungungen zu beheben. Bis das erfolgt ist, kann man sich aber durch die Unterdrückung die Übersicht erleichtern. Hierfür die neue Option "Wiederholte Telegramme" entsprechend setzen
- Wichtig. Telegramme mit ausgemaltem Schild (ocker / rot) konnten nicht entschlüsselt und / oder dekodiert werden. Zusätzlich wird anstatt der (nicht entschlüsselbare / dekodierbaren) Daten ein Schloss-Symbol angezeigt. Genaue Info dann im Mouse Over (das folgend vorgestellt wird).
6. NEU! Mouse Over für alle KNX Telegramm Details
Ganz neu im Busmonitor ist nun ein Mouse Over für ALLE Telegramme. Dazu beim betreffenden Telegramm einfach nur mit der Maus über Datum / Zeit hovern. Dann erscheint ein Mouse Over mit Infos zu dem Telegram:

Hinweise
- Dies ist ein KNX Secure Telegram, bei dem kein Schlüssel hinterlegt ist
- Dies wird markiert durch ein Schild das komplett Oocker ausgemalt ist (in der zweiten Zeile befindet sich nochmal ein solches)
- Dann sieht man das an den Schloss Symbol in der Spalte Daten (die °C kommen vom hier hinterlegten DPT)
- Im Mouse Over sieht man nun unter Entschlüsselungsstatus, dass der Schlüssel nicht importiert wurde und entsprechend bei den Rohdaten bzw. dem formatierten Wert (gemäß DPT) jeweils ein Schloss-Symbol, da eben der Datenteil des Telegramms nicht entschlüsselt werden konnte.
- Das gesamte Telegram (also der komplette Frame) steht im Mouse Over unten in Hex und auch in der Spalte Rohdaten (wer selbst dekodieren möchte)
- Sollte auch der DPT nicht importiert sein, wird dies ebenfalls im Mouse Over angezeigt
- Die Secure Sequenznummer wird ebenfalls angezeigt, sofern dies für die Fehlersuche relevant ist
- ETS Zugriff bedeutet, dass dies ein KNX Secure Telegramm ist, das von der ETS kommt um einen Busteilnehmer zu parametrieren. Dies ist dann auch eine PA-zu-PA Kommunikation (von der PA des Tunnels über den die ETS mit dem Bus verbunden ist zur PA des KNX Gerätes). Hier wird für die Entschlüsselung der individuelle Tool-Schlüssel benutzt.
7. NEU! Grafana Direktaufruf aus dem Busmonitor
Eine tolle Neuerung ist, dass man nun per Klick direkt Grafana für die GA aufrufen kann.

Einfach auf die Grafana-Schnecke neben den Daten klicken (die untere Schnecke ist nur deshalb farbig hervorgehoben, weil der Mauszeiger in dieser Zeile war und diese hier hervorgehoben dargestellt wird).
8. UPGRADE! Der Busmonitor Export nach CSV wurde erweitert
Der CSV Export direkt aus dem Busmonitor wurde nun auch überarbeitet und erweitert.

Credit: Danke an Jens für diesbezügliche Hinweise
9. NEU! KNX Diagnosemonitor für Deep Dive bei Problemen am Bus
Ganz neu ist der neue KNX Diagnosemonitor, der unter KNX Schnittstellen aufgerufen werden kann.
Aufruf über die orangene Schaltfläche oben rechts inkl. Anzeige aktiver Meldungen

Anzeige KNX Diagnosemonitor

Hinweise: In der viertel Zeile von unten sieht man z.B. ein mit Ocker markiertes Telegramm, bei dem der Schlüssel nicht gefunden wurde. Es ist die gleiche GA, bei der dieser Fehler auch im Busmonitor (siehe oben) angezeigt wird.
Viele Informationen in diesem Log sind sehr speziell. Können aber eine Fehlersuche eingrenzen, daher bei Problemen gerne Screenshot vom Log posten.
10. SPEEDUP! Hochladen ETS Projektes nun 100-fach schneller
Das HOCHLADEN der zuvor exportierten ETS Projekt Datei in den Timberwolf Server für den Import ist nun um den Faktor 50 bis 100 schneller als zuvor.
Das merkt man auch. Weil das Hochladen, das vorher Minuten gedauert hat, nun in Sekunden erfolgt. Dies betrifft den ersten Teil mit dem hochladen, das betrifft nicht den anschließenden Import. Der Effekt ist umso größer wie die Datei ist. Via VPN kann allerdings dessen Bandbreite den Vorteil begrenzen.
Wir haben zusätzlich kleine UI Verbesserungen durchgeführt, der Fortschritt des Uploads wird jetzt direkt in den ersten Prozent des Import-Fortschritts angezeigt. Die Logmeldungen sind jetzt einzeilig und somit übersichtlicher. Neue Icons für Geräte- und Gruppenadressen in Anlehnung an die ETS finden sich jetzt hier und im Menü wieder. Animationen der Icons des aktuell aktiven Schrittes bringen ein bisschen Abwechslung in den Import Prozess. Die Dateiauswahl wird jetzt automatisch beschränkt auf die passende Dateiendung.

Wie man sieht, haben wir die Symbole nun an die ETS angepasst.
Tipp: Früher musste man für einen Projektexport in der ETS das jeweilige Projekt erst schließen um dann den Export anstoßen zu können. Dieser Schritt ist mit neuen ETS Versionen nicht mehr nötig, man kann direkt ein offenes Projekt exportieren. Durch diese Möglichkeit und das extrem beschleunigte Hochladen in den Timberwolf Server hat sich die gesamte Zeit um etwa die Hälfte gekürzt.
Wir versuchen das künftig weiter zu verbessern, so dass man optimalerweise diesen Export / Import gar nicht mehr braucht, aber im Moment ist dies ein sehr guter Zwischenschritt.
Planungen
Parallel - andere Entwickler - wird an der neuen KNX Applikation gearbeitet, die dann auch registriert und zertifiziert werden soll.
Soweit dies gleichzeitig machbar ist, kommen damit auch die neuen Datenpunkttypen.
Die obigen Erweiterungen um KNX Data Secure beziehen sich "nur" auf das Logging und den Busmonitor, weil das ein wichtiger erster Schritt war. Danach steht auf dem Plan, dass auch die KNX Objekte KNX DATA Secure unterstützen und auch der Tunnelserver KNXnet/IP Secure unterstützen wird.
Damit wird dann das gesamte KNX Subsystem KNX Secure fähig.
Verfügbarkeit
Diese Neuerungen wurden in den letzten Wochen in mehreren Schritten an die DEV-Tester ausgerollt und funktioniert dort bislang gut.
Besonderer Dank an Göran, der extra KNX Secure Geräte gekauft hat, damit er dies alles testen kann.

Je nach weiterem Testverlauf bei uns im Labor, als auch bei den DEV Testern werden diese Neuheiten und Verbesserungen zeitnah in der Insider Preview 5 bereitgestellt.
lg
Stefan