CONFIG-DATA object

The JSON CONFIG-DATA stores a complete device configuration at once, i.e.

The specification of this CONFIG-DATA is taken from the specification of the files used by the SpringCoreConfig command-line tool.

Object definition

Field name Type Status Description / Remark Condition
"commands" Address=Value associative array option Not used by Companion Service
"constants" Address=Value associative array option Not used by Companion Service
"config" Address=Value associative array option Configuration registers (bank 02)
"templates" Address=Value associative array option Templates registers (bank 03)
"security" Address=Value associative array option Not used by Companion Service
"samav" Address=Value associative array option Key entries for the SAM AV2 or AV3 Device has a SAM AV
"samav-rsa" Address=Value associative array option RSA (PKI) entries in the SAM AV2 or AV3 Device has a SAM AV
"samav-ecc" Address=Value associative array option ECC entries in the SAM AV3 Device has a SAM AV3
"ataes" Address=Value associative array option AES key entries for the ATAES S.E. Device has an ATAES
"atecc" Address=Value associative array option ECC key entries for the ATECC S.E. Device has an ATECC
"certificates" Address=Value associative array option X509 certificates Device has a SAM AV, an ATECC or a SE050

Address=Value associative arrays

Every entry is a Address-Value pair in the form

"Address of register (hexadecimal)" : "Value of register (hexadecimal)".

Register addresses are on 2 bytes, but the high-order byte is known from the parent entry (02 for "config", 03 for "templates"), therefore only the low-order byte has to be set in every child associative array.

The Value field is either an empty string ("``") to store a blank value, or an hexadecimal string. The actual length must match the size of the register / key entry / certificate.

It is also possible to change the understanding of the Value field by adding a Format modifier in the Address fields; see CONFIG-DATA Format modifier for details.