Visible to Intel only — GUID: jek1616598912021
Ixiasoft
1. Intel Stratix 10 Device Security Overview
2. Authentication and Authorization
3. AES Bitstream Encryption
4. Device Provisioning
5. Advanced Features
6. Troubleshooting
7. Intel® Stratix® 10 Device Security User Guide Archives
8. Document Revision History for Intel® Stratix® 10 Device Security User Guide
3.3.1. Configuration Bitstream Encryption Using the Programming File Generator Graphical Interface
3.3.2. Configuration Bitstream Encryption Using the Programming File Generator Command Line Interface
3.3.3. Partially Encrypted Configuration Bitstream Generation Using the Command Line Interface
3.3.4. Partial Reconfiguration Bitstream Encryption
4.1. Using SDM Provision Firmware
4.2. Authentication Root Key Provisioning
4.3. Using QSPI Factory Default Helper Image on Owned Devices
4.4. Programming Key Cancellation ID Fuses
4.5. Security Setting Fuse Provisioning
4.6. AES Root Key Provisioning
4.7. Converting Owner Root Key, AES Root Key Certificates, and Fuse files to Jam STAPL File Formats
6.1. Using Quartus Commands in a Windows Environment Error
6.2. Generating a Private Key Warning
6.3. Adding a Signing Key to the Quartus Project Error
6.4. Generating Quartus Prime Programming File was Unsuccessful
6.5. Unknown Argument Errors
6.6. Bitstream Encryption Option Disabled Error
6.7. Specifying Correct Path to the Key
6.8. Using Unsupported Output File Type
Visible to Intel only — GUID: jek1616598912021
Ixiasoft
5.1. Secure Debug Authorization
To enable Secure Debug Authorization, the debug owner needs to generate an authentication key pair and use the Intel® Quartus® Prime Pro Programmer to generate a device information file for the device that runs the debug image:
quartus_pgm -c 1 -m jtag -o “ei;device_info.txt;1SX280HH1” --dev_info
The debug owner transfers the generated authenticated public key and device information to the device owner. The device owner uses the quartus_sign tool or the reference implementation to append a conditional public key entry to a signature chain intended for debug operations using the public key from the debug owner, the necessary authorizations, the device information text file, and applicable further restrictions:
quartus_sign --family=Stratix10 --operation=append_key \ --previous_pem=debug_chain_private.pem \ --previous_qky=debug_chain.qky \ --permission=0x6 --cancel=1 \ --dev_info=device_info.txt \ --restriction=”1,2,17,18” \ --input_pem=debug_authorization_public_key.pem secure_debug_auth_chain.qky
The device owner sends the full signature chain back to the debug owner, who uses the signature chain and their private key to sign the debug image:
quartus_sign --family=Stratix10 --operation=sign \ --qky=secure_debug_auth_chain.qky \ --pem=debug_authorization_private_key.pem \ unsigned_debug_design.rbf authorized_debug_design.rbf
You may use the quartus_pfg command to inspect the signature chain of each section of this signed secure debug bitstream as follows:
quartus_pfg --check_integrity authorized_debug_design.rbf
The output of this command prints the restriction values 1,2,17,18 of the conditional public key that was used to generate the signed bitstream.
The debug owner can then program the securely authorized debug design:
quartus_pgm -c 1 -m jtag -o “p;authorized_debug_design.rbf”
The device owner may revoke the secure debug authorization by canceling the explicit key cancellation ID assigned in the secure debug authorization signature chain.