Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Altera_Forum
Honored Contributor I
1,133 Views

Encryption or Obfuscation of OpenCL kernels

I've developed a couple of Kernels for a customer and would very much like to encrypt or at least obfuscate the kernel contents. Has anyone successfully done this? I've begun playing around with attempting to import 1st stage compile output files from one project to another but have so far been unsuccessful. Any ideas would be greatly appreciated.

0 Kudos
2 Replies
Altera_Forum
Honored Contributor I
75 Views

C:/intelFPGA_pro/17.0/quartus/bin64/encrypt_1735 --quartus --language=verilog | VHDL <file>. You can encrypt entire collection of kernel files in kernel_hdl starting from 17.0 tools. Then build the PR or flat version of the project by the Tcl script or in Quartus GUI. Our company has successfully done this IEEE_1735 encryption of IP merged with OpenCL flow.

Altera_Forum
Honored Contributor I
75 Views

Forgot one more thing. You have to mark protected code sections with `pragma protect begin and `pragma protect end. Read Quartus handbook section on IEEE 1735 support and pragmas, but it turns out that the begin and end pragmas is all you need. Yet another undocumented feature ;).

Reply