Die KNX-Schlüsselbunddatei (.knxkeys) wird in der ETS für die sichere Kommunikation verwendet und enthält verschlüsselte Anmeldedaten für KNX-Geräte. Das Format umfasst einen verschlüsselten FDSK sowie eine Signatur, die durch das Eintragen von Elementen und Attributen in einer bestimmten Reihenfolge und anschließende Hash-Berechnung mit PBKDF2 und SHA256 erzeugt wird. Um ihn zu verwenden, importieren Sie den Schlüsselbund in der ETS über „Projekt“ → „Sicherheit“ → „Schlüsselbund importieren“.
KNX-Schlüsselbubd – Übersicht:
Die Schlüsselbunddatei steht im Zusammenhang mit KNX-Secure-Konfigurationen und wird in erster Linie innerhalb der ETS (Engineering Tool Software) für die sichere Kommunikation verwendet.
Die Datei hat häufig die Endung .knxkeys und enthält verschlüsselte Anmeldedaten für KNX-Geräte und -Schnittstellen.
Dateiformat für Schlüsselbunde:
Nachfolgend finden Sie das Format für die Schlüsselbunddatei.
Der FDSK ist verschlüsselt und die Entschlüsselung wird in diesem Artikel erklärt .
und sobald der FDSK verschlüsselt ist, signieren Sie das gesamte Format, indem Sie das folgende Verfahren befolgen.
Signatur Generation:
Die Signatur über die Schlüsseldatei wird ähnlich wie die Hash-/Signaturerstellung für KNX Produktdaten erzeugt und verifiziert:
- Schreiben Sie in einen .NT BinaryWriter (sAttributeStream) in dieser Reihenfolge (ohne Keyring/@Signature):
-foreach Element
a. char(0x01)
b. Elementname (ohne XML-Namespace)*
c. foreach Attribut, geordnet nach Attributname
-Attributname mit führendem Längenbyte*
-Attributwert mit führendem Längenbyte*
d. rekursiv verarbeitende mögliche untergeordnete Elemente
e. char(0x02)
2. Base64( PBKDF2( HMAC-SHA256, KeyringPassword, "1.keyring.ets.knx.org", 65536, 128))*
3. Signatur = MSB128( SHA256( sAttributeStream))
Hinweis: Element- und Attributnamen sowie Attributwerte und der base64-Passwort-Hash werden alle mit einem führenden Längenbyte geschrieben. Leere Attributwerte werden als Längenwert 0x00 geschrieben.
Verwendung im ETS:
Um eine sichere Verbindung mit einem KNX Secure Router herzustellen, müssen Sie die KNX-Schlüsselbunddatei (.knxkeys) über folgenden Pfad in die ETS laden:
Projekt → Sicherheit → Schlüsselbund importieren → .knxkeys-Datei auswählen.