Security User Guide: Intel® Programmable Acceleration Card with Intel® Arria® 10 GX FPGA
                    
                        ID
                        683453
                    
                
                
                    Date
                    3/06/2020
                
                
                    Public
                
            
                        
                        
                            
                            
                                3.1. Installing PACSign
                            
                        
                            
                            
                                3.2. PACSign Tool
                            
                        
                            
                            
                                3.3. Creating Unsigned Images
                            
                        
                            
                            
                                3.4. Using an HSM Manager
                            
                        
                            
                                3.5. Creating Keys
                            
                            
                        
                            
                            
                                3.6. Root Entry Hash Bitstream Creation
                            
                        
                            
                                3.7. Signing Images
                            
                            
                        
                            
                            
                                3.8. Creating a CSK ID Cancellation Bitstream
                            
                        
                            
                            
                                3.9. PACSign PKCS11 Manager *.json Reference
                            
                        
                            
                                3.10. Creating a Custom HSM Manager
                            
                            
                        
                            
                            
                                3.11. PACSign Man Page
                            
                        
                    
                3.7.1. Creating OpenCL* Bitstreams
 Creating signed or unsigned  OpenCL*  bitstreams requires some additional steps, because the AFU is embedded in the FPGA hardware configuration (.aocx) file, which is derived from an  OpenCL*  compile. 
  
 
  
   The sign_aocx.sh script (distributed in $AOCL_BOARD_PACKAGE_ROOT/linux64/libexec/) creates the  OpenCL*  bitstream for you. It performs the following steps automatically: 
   
 
  - Extracts the AFU from the .aocx file
- Signs the AFU (if desired) and applies security metadata.
- Packs the AFU back into the .aocx file.
You can create unsigned bitstreams (with security metadata only) or signed .aocx file using the script. sign_aocx.sh calls PACSign to create the signature bitstreams.
   To create the  OpenCL*  bitstream, follow this workflow: 
   
 
 - Decide which HSM manager to use: OpenSSL manager or PKCS11manager
- Decide whether to create a signed or unsigned image
- Source the init_env.sh script: Sourcing the init_env.sh Script
- Generate the desired image: Creating the OpenCL Bitstream
- Program the image to the board: Programming the Image File