![]() |
xilskey
Vitis Drivers API Documentation
|
This file illustrates how to do PUF registration and generating syndrome data and obtaining helper data, debug 2 result, Auxiliary and CHash values from generated syndrome data.
This example also encrypts the provided AES key with PUF and generates the black key. Finally programs the PUF code and black key into eFUSE on user request (provided in xilskey_puf_registration.h)
MODIFICATION HISTORY:
Ver Who Date Changes
----- --- -------- -------------------------------------------------------
6.1 rp 17/10/16 First release.
6.2 vns 02/18/17 Modified Encrypt API call due to change in Xilsecure
03/10/17 Added Support for programming and reading PUF reserved
bit
6.7 mmd 03/17/19 Ignored PUF data on overflow
6.9 kpt 02/27/20 Removed XilSKey_Puf_Fetch_Dbg_Mode2_result
which is used only for debug purpose
har 03/09/20 Fixed array overrun condition in
XilSKey_Generate_FuseFormat function.
kal 05/15/20 Replace all eFuse read with Cache reads.
7.0 kpt 09/02/20 Added successfully ran print to the example in case of
successFunctions | |
| int | main () |
| int main | ( | ) |
TBD: Move the Status code to the persistent register
References XilSKey_Puf_Registration(), XilSKey_Read_Puf_EfusePs_SecureBits(), XilSKey_Write_Puf_EfusePs_SecureBits(), XilSKey_ZynqMp_EfusePs_ReadPufAux(), XilSKey_ZynqMp_EfusePs_ReadPufChash(), XilSKey_ZynqMp_EfusePs_ReadPufHelprData(), XilSKey_ZynqMp_EfusePs_ReadSecCtrlBits(), XilSKey_ZynqMp_EfusePs_WritePufAux(), XilSKey_ZynqMp_EfusePs_WritePufChash(), XilSKey_ZynqMp_EfusePs_WritePufHelprData(), XSK_EFUSEPS_ERROR_PUF_DATA_OVERFLOW, and XSK_PUF_REG_MODE.