Patent ID: 8379850

Claim:
A method for secure configuration of a programmable integrated circuit (IC), comprising: inputting a configuration bitstream to the programmable IC, the programmable IC having a first cryptographic key stored in a persistent memory, the configuration bitstream having a first portion that is encrypted with the first cryptographic key and that includes a second cryptographic key, and the configuration bitstream having a second portion encrypted with the second cryptographic key; decrypting the encrypted first portion of the configuration bitstream using the first cryptographic key on the programmable IC; obtaining the second cryptographic key from the decrypted first portion of the configuration bitstream; decrypting the encrypted second portion of the configuration bitstream by the programmable IC using the second cryptographic key obtained from the decrypted first portion of the configuration bitstream; and storing configuration data from the decrypted second portion of configuration bitstream in configuration memory of the programmable IC, wherein: the configuration bitstream includes a key address of the persistent memory corresponding to the first cryptographic key in the configuration bitstream; at least a second decryption key is stored in the persistent memory of the programmable IC; and decrypting the encrypted first portion of the configuration bitstream with the first cryptographic key includes retrieving the first cryptographic key from a location of the persistent memory indicated by the key address.