Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[moved] how to encrypt part of the verilog code by using 1735 supported pragmas ?

Status
Not open for further replies.

anilineda

Member level 3
Joined
Mar 10, 2016
Messages
54
Helped
2
Reputation
4
Reaction score
1
Trophy points
8
Activity points
466
Hello,

There is a good news that vivado 2016.4 now support version 2 ieee standard encryption. I succesfully encrypted (.v) files by using the command as shown below in tcl console of vivado:

Code:
encrypt -key <path to public key in vivado install dir> -lang verilog <design>.v -ext .vp

the above command encrypt entire code but,
my question is, how to encrypt only some part of the code by writing 1735 supported pragma envelopes and also how to embed keys directly inside the code itself without using "-key" option.

please someone help me with the syntax and some reference.


Regards,
Anil
 

Re: how to encrypt part of the verilog code by using 1735 supported pragmas ?

thank you so much. This is what i am looking for.
one more thing is, Till now we usually deliver the netlist file to our customers but for the first time we are thinking of providing them an encrypted RTL (made with ieee standard) . what would you like to say on this ? Is ieee 1735 will create any headaches of exposing the code. ?
 

Re: how to encrypt part of the verilog code by using 1735 supported pragmas ?

Just make sure your code is thoroughly tested on the tools your customers plan on using(simulation and synthesis). It will be very difficult for them to debug it.
 
Re: how to encrypt part of the verilog code by using 1735 supported pragmas ?

IP author can encrypt part of IP by enclosing that part of code in protect directives. https://ipencrypter.com provides information and tools for IP encryption.

<verilog_code_not_to_encrypt>
`pragma protect version=2
`pragma protect author="Author name", author_info="Author info"
`pragma protect data_method="aes128-cbc"
... more protect directives ...

`pragma protect begin
<verilog_code_to_encrypt>
`pragma protect end

<rest_of_verilog_code_not_to_encrypt>
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top