Poniżej znajduje się format pliku breloka.
FDSK jest zaszyfrowany, a deszyfrowanie zostało wyjaśnione w artykule tutaj.
a po zaszyfrowaniu FDSK proszę podpisać cały format, postępując zgodnie z poniższą procedurą.
Tworzenie podpisu cyfrowego:
Podpis nad plikiem breloka jest generowany i weryfikowany podobnie do generowania hashu/podpisu dla danych produktu KNX:
- W .NT BinaryWriter (sAttributeStream) proszę zapisać w następującej kolejności (pomijając Keyring/@Signature):
-dla każdegoElementu
a. char(0x01)
b. Nazwa elementu (bez przestrzeni nazw XML)*
c. dla każdego atrybutu, uporządkowany według nazwy atrybutu
-Nazwa atrybutu z wiodącym bajtem długości*
-Wartość atrybutu z wiodącym bajtem długości*
d. rekurencyjnie przetwarzać możliwe elementy podrzędne
e. char(0x02)
2. Base64( PBKDF2( HMAC-SHA256, KeyringPassword, "1.keyring.ets.knx.org", 65536, 128))*
3. Podpis = MSB128( SHA256( sAttributeStream))
Uwaga: Nazwy elementów i atrybutów, a także wartości atrybutów i hash haseł base64 są zapisywane z bajtem długości wiodącej. Puste wartości atrybutów są zapisywane jako wartość długości 0x00.