Perform PUF registration on a Spartan UltraScale+ device and write the result to a JSON file. The output JSON contains the AES-encrypted black key (the red key encrypted using the internal PUF KEK and user-supplied IV), along with PUF helper data (pufhd), PUF hash, and related fields. The PUF KEK is an internal device secret and is never exported from the device. Replaces the deprecated generate_puf_kek command.
Syntax
generate_black_key [‑input_json <arg>] [‑output_json <arg>] [‑force]
[‑verbose] [‑pufhd_file <arg>] [‑quiet] [<hw_device>...]
Returns
Hardware devices
Usage
| Name | Description |
|---|---|
[-input_json]
|
input JSON file path containing key and IV for PUF registration |
[-output_json]
|
output JSON file path to store the generated black key and PUF data. Output fields: black_key, iv, key, pufhd, pufhash, pufaux, pufchash, pufid |
[-force]
|
overwrites output file if it exists |
[-verbose]
|
enable verbose debug output during black key generation |
[-pufhd_file]
|
output text file to store PUF HD (helper data) string |
[-quiet]
|
Ignore command errors |
[<hw_device>]
|
list of hardware devices Default: current hardware device |