SLUS696C June 2006 – February 2019 BQ26100
PRODUCTION DATA.
The 128-bit key used in the HMAC calculation is built from two 64-bit key spaces on the bq26100 device. Each key can be programmed independently, allowing multiple parties to program part of the full 128-bit key without the knowledge necessary to reproduce the full 128-bit key. To further protect the 128-bit key, the value written to each 64-bit non-volatile key space is the output of a SHA-1 calculation on a 160-bit input. Figure 18 provides a flow for the programming of the 128-bit device key. Once KEYx has been programmed, the LOCKKx bit should be programmed to 0 in the status register, preventing another value from overwriting that key space.
This flow is run twice, for KEY0 and KEY1. An external power source is required on the PWR pin during key programming. Figure 20 shows a typical connection for the external power source.
Since there is no key pre-appended to the message, the key message is padded with a 1, followed by 287 0’s, followed by the 64-bit value for 160 (00..01010000), see Figure 19.