REST API Devices Objects CONFIG DATA
April 13, 2023 at 2:39 AMCONFIG_DATA object
The JSON CONFIG_DATA object stores a complete device configuration at once, i.e.
- The device’s Configuration registers,
- The device’s Templates registers,
- The security keys to be written into the device’s Secure Elements,
- The X509 certificates to be written in the device’s Certificate Store.
The specification of this CONFIG_DATA object 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 SpringCard Companion Service | |
constants |
Address=Value associative array | option | Not used by SpringCard 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 SpringCard 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.