I am trying to use a secure boot. From u-boot, it appears to me that the fuse only has room for 8 words for the SRK Hash. If I try to read a 9th word, I get an error. Is it true that I can only burn a 256bit hash in the fuses on a i.MX8ULP board?
=> fuse read 15 0 8
Reading bank 15:
Word 0x00000000: 9480ad14 7fc5bfc2 53f73ee8 fbf4341d
Word 0x00000004: 6a7c4bc1 9a415d07 bf28617b ca922e4c
=> fuse read 15 0 9
Reading bank 15:
Word 0x00000000: 9480ad14 7fc5bfc2 53f73ee8 fbf4341d
Word 0x00000004: 6a7c4bc1 9a415d07 bf28617b ca922e4c
Word 0x00000008:ERROR
This is the signature block from my image. It shows a 512 bit (16 word) hash, which seems to be the default in the Yocto build. What do I need to do to make them work together?
Signature block:
offset.......... 0x590
length.......... 400 (0x190)
SRK table:
offset.......... 0x5a0
length.......... 308 (0x134)
SRK Table records:
signature algo.. ECDSA
hash algorithm.. sha384
key size/curve.. secp256r1
curve len....... 32 (0x20)
SRK 1 record:
** SRK record being used **
offset.......... 0x5a4
length.......... 76 (0x4c)
SRK 2 record:
offset.......... 0x5f0
length.......... 76 (0x4c)
SRK 3 record:
offset.......... 0x63c
length.......... 76 (0x4c)
SRK 4 record:
offset.......... 0x688
length.......... 76 (0x4c)
SRK Hash fuses:
fuse word 0.... 0x0b2f3e4a
fuse word 1.... 0x3fd5a13e
fuse word 2.... 0x8bf5dca6
fuse word 3.... 0xddc16c2f
fuse word 4.... 0xf63c34db
fuse word 5.... 0x6a0267b3
fuse word 6.... 0x45cc92e2
fuse word 7.... 0x33d1b23b
fuse word 8.... 0xb6254a49
fuse word 9.... 0x8d43a32b
fuse word 10.... 0x12874d17
fuse word 11.... 0x90bd1a25
fuse word 12.... 0x5986bf7b
fuse word 13.... 0xe552a0a1
fuse word 14.... 0xabff4bd0
fuse word 15.... 0xff7f6992