Non-zero factory AES keys?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Non-zero factory AES keys?

279 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by IJeffray on Tue Aug 05 02:58:09 MST 2014
The UM10503.pdf documentation for the LPC43S20 CPU we're using states that the shipped state of the OTP should be all zeroes.

To verify this, I can read OTP3 directly, and see it's all zeroes, which is good.  But attempting to read OTP1 or OTP2 causes a fault, which is understandable - these memories are used for storing AES keys which only the ROM routines can access.  Good.  So in order that I can verify that the device is in the correct shipped state, I encode some data using a software supplied key of all zeroes, then decrypt it using one of the hardware keys.   The issue is, the result does not decrypt correctly, meaning that neither of the OTP1 or OTP2 memories is actually zero.

So two questions:
1/ What SHOULD the default state of OTP1 and OTP2 be on LPC43Sxx parts which support encryption, if not zero?
2/ How else may I verify that the OTP memories are received in the correct state on the production line?
Labels (1)
0 Kudos
1 Reply

251 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by embd02161991 on Fri Aug 08 16:57:09 MST 2014
Hi,

1. The default state of OTP1 and OTP2 on the 43Sxx parts are all zeros.

2.  The OTP banks base address is 40045000 which is documented in the user manual Chapter 4: LPC43xx One-Time Programmable (OTP) memory and API Section 4.4. The OTP banks 1 and 2 have an offset address 0x10 and 0x20 respectively.

Could you please check the OTP memory banks if they are all zeros ?

Thanks,
NXP Technical Support
0 Kudos