Hieronder vindt u het formaat voor sleutelhangerbestanden.
De FDSK is versleuteld en de ontsleuteling wordt hier in een artikel uitgelegd.
Zodra de FDSK gecodeerd is, ondertekent u het hele formaat door onderstaande procedure te volgen.
Handtekeninggeneratie:
De handtekening over het sleutelhangerbestand wordt gegenereerd en geverifieerd zoals de hash/handtekeninggeneratie voor KNX productgegevens:
- Schrijf in deze volgorde in een .NT BinaryWriter (sAttributeStream) (zonder Keyring/@Signature):
- voor elk element
a. char(0x01)
b. Elementnaam (zonder XML namespace)*
c. voor elk Attribuut, gerangschikt op Attribuutnaam
-Attribuutnaam met voorlopende lengtebyte*
-Attribuutwaarde met lengtebyte aan het begin*
d. mogelijke kindelementen recursief verwerken
e. char(0x02)
2. Base64( PBKDF2( HMAC-SHA256, SleutelhangerWachtwoord, "1.keyring.ets.knx.org", 65536, 128))*
3. Handtekening = MSB128( SHA256( sAttributeStream))
Opmerking: Element- en attribuutnamen, attribuutwaarden en de base64 wachtwoord-hash worden allemaal geschreven met een byte voor de lengte. Lege attribuutwaarden worden geschreven als lengtewaarde 0x00.