Visible to Intel only — GUID: dnk1616552984357
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: dnk1616552984357
Ixiasoft
2.2.2. Co-Signing SDM Firmware
You use the quartus_sign tool to extract, sign, and install the applicable SDM firmware .zip file. The co-signed firmware is then included by the programming file generator tool when you convert .sof file into a configuration bitstream .rbf file. You use the following commands to create a new signature chain and sign SDM firmware.
- Create a new signing key pair.
- Create a new signing key pair on the file system:
quartus_sign --family=stratix10 --operation=make_private_pem \ --curve=secp384r1 firmware1_private.pem
quartus_sign --family=stratix10 --operation=make_public_pem \ firmware1_private.pem firmware1_public.pem
- Create a new signing key pair in the HSM:
pkcs11-tool --module=/usr/local/lib/softhsm/libsofthsm2.so \ --token-label s10-token --login \ --pin s10-token-pin \ --keypairgen -–mechanism ECDSA-KEY-PAIR-GEN \ --key-type EC:secp384r1 \ --usage-sign --label firmware1 --id 1
- Create a new signing key pair on the file system:
- Create a new signature chain containing the new public key:
quartus_sign --family=stratix10 --operation=append_key \ --previous_pem=root_private.pem \ --previous_qky=root.qky \ --permission=0x1 \ --cancel=1 \ --input_pem=firmware1_public.pem firmware1_sign_chain.qky
quartus_sign --family=stratix10 --operation=append_key \ --module=softHSM --module_args="--token_label=s10-token \ --user_pin=s10-token-pin \ --hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so" \ --previous_keyname=root \ --previous_qky=root.qky \ --permission=1 --cancel=1 \ --input_keyname=firmware1 firmware1_sign_chain.qky
- Copy the firmware .zip file from your Intel® Quartus® Prime Pro Edition software installation directory ( <install_dir>/devices/programmer/firmware/stratix10.zip ) to the current working directory.
quartus_sign --family=stratix10 --get_firmware=.
- Sign the firmware .zip file. The tool automatically unpacks the .zip file and individually signs all firmware .cmf files, then rebuilds the .zip file for use by the tools in the following sections:
quartus_sign --family=stratix10 --operation=sign \ --qky=firmware1_sign_chain.qky \ --pem=firmware1_private.pem stratix10.zip signed_stratix10.zip
quartus_sign --family=stratix10 --operation=sign --module=softHSM \ --module_args="--token_label=s10-token \ --user_pin=s10-token-pin \ --hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so" \ --keyname=firmware1 \ --qky=firmware1_sign_chain.qky stratix10.zip signed_stratix10.zip