10-15-2020 12:29 PM
Is there a note about how to generate keys for encrypting IP?
11-21-2020 11:23 AM
If you want to your code to be read by a specific design tool, you have to encode it using its public key. For Vivado it's the one found in the installation directory. For other tools you can find the key either in the documentation or in the installation directory. If your design flow uses several EDA vendors, you can encrypt your files with all required pub keys.
Therefore if you encrypt it only for use with Vivado -> use the Vivado key. It makes no sense to use another one. Vivado must be able to decrypt your file anyway. If you target different uses of your file (ie outside Vivado) encrypt with the Vivado key and your own key.
10-15-2020 11:51 PM
You can just use the key file in the Vivado's installation dir:
Ex: .\Vivado\2019.2\data\pubkey
10-19-2020 10:50 AM
That doesn't make sense to me - I'd want to control both the public key as well as the private key.
I need to be able to generate a public/private key pair (either with PuttyGen or ssh-keygen) and then utilize them to encrypt the IP.
10-19-2020 01:38 PM
11-21-2020 11:23 AM
If you want to your code to be read by a specific design tool, you have to encode it using its public key. For Vivado it's the one found in the installation directory. For other tools you can find the key either in the documentation or in the installation directory. If your design flow uses several EDA vendors, you can encrypt your files with all required pub keys.
Therefore if you encrypt it only for use with Vivado -> use the Vivado key. It makes no sense to use another one. Vivado must be able to decrypt your file anyway. If you target different uses of your file (ie outside Vivado) encrypt with the Vivado key and your own key.
12-22-2020 12:36 AM
I thought it would be possible to provide a customer a key, which they could use, then access to the key could be controlled as well.
It does not look like that's the case; this is the best we can do with IEEE-1735 (barring a new revision and tool support, of course).