5.3 Microchip ATECC508A
The ATECC608A is designed to be fully compatible with the ATECC508A devices with the limited exception of the functions listed below. If the ATECC608A is properly configured, software written for the ATECC508A will work with the ATECC608A without any required changes, again with the exception of the functions listed below.
Note: Most elements of the configuration zone in the ATECC608A
are identical in both location and value with the ATECC508A. However, the initial values
that had been stored in the LastKeyUse field may need to be changed to conform to the new
definition of those bytes which can be found in this document. That field contained the
initial count for the Slot 15 limited use function which is supported in the ATECC608A via
the monotonic counters.
CAUTION: The execution times of
commands have changed between the ATECC608A and the ATECC508A. These changes will not cause
an issue if polling has been implemented. If fixed timing has been used, this must be
evaluated and updated as required.
New Features in ATECC608A vs. ATECC508A
- Secure boot function with IO encryption and authentication
KDF
command, supporting PRF, HKDF, AESAES
command, including encrypt/decrypt- GFM calculation function for GCM AEAD mode of AES
- Updated NIST SP800-90 A/B/C Random Number Generator
- Flexible
SHA/HMAC
command with context save/restore SHA
command execution time significantly reduced- Volatile Key Permitting to prevent device transfer
- Transport Key Locking to protect programmed devices during delivery
- Counter Limit Match function
- Ephemeral key generation in SRAM, also supported with ECDH and KDF
Verify
command output can be validated with a MAC- Encrypted output for ECDH
- Added self test command, optional automatic power-on self test
- Unaligned public key for built-in X.509 cert key validation
- Optional power reduction at increased execution time
- Programmable I2C address after data (secret) zone lock
Features Eliminated in ATECC608A vs. ATECC508A
HMAC
command removed, replaced via new more powerfulSHA
command- OTP consumption mode eliminated, now read only
- Pause command eliminated along with related Selector function in UpdateExtra
- Slot 15 special limited use eliminated, replaced with standard monotonic counter limited use
SHA
command no longer uses TempKey during the digest calculation and the result in TempKey is unchanged throughout the SHA operation. TempKey can however still be used to initialize the SHA for the HMAC_Start or to store the final digest.