Securely Coupling an FPGA to a Security IC
First Claim
Patent Images
1. A method for securely coupling an FPGA to a security IC comprising:
- a. creating a shared secret key;
b. creating a password key;
c. generating an encrypted shared secret key by encrypting said “
shared secret key”
with said password key;
d. incorporating said “
encrypted shared secret key”
into an FPGA net list;
e. programming said FPGA using said “
FPGA net list;
”
f. transmitting said “
password key”
from said security IC to said FPGA; and
g. said FPGA;
i. obtaining said “
shared secret key”
by decrypting said “
encrypted shared secret key;
” and
ii. storing said “
shared secret key”
in at least one volatile memory location.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a mechanism for securely coupling a security IC and an FPGA. This mechanism creates a shared secret key; creates a password key; generates an encrypted shared secret key by encrypting the “shared secret key” with the password key; incorporates the “encrypted shared secret key” into an FPGA net list; programs the FPGA using the “FPGA net list”; transmits the “password key” from the security IC to the FPGA; allowing the FPGA to: obtain the “shared secret key” by decrypting the “encrypted shared secret key”; and store the “shared secret key” in at least one volatile memory location.
23 Citations
18 Claims
-
1. A method for securely coupling an FPGA to a security IC comprising:
-
a. creating a shared secret key;
b. creating a password key;
c. generating an encrypted shared secret key by encrypting said “
shared secret key”
with said password key;
d. incorporating said “
encrypted shared secret key”
into an FPGA net list;
e. programming said FPGA using said “
FPGA net list;
”f. transmitting said “
password key”
from said security IC to said FPGA; and
g. said FPGA;
i. obtaining said “
shared secret key”
by decrypting said “
encrypted shared secret key;
” and
ii. storing said “
shared secret key”
in at least one volatile memory location. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A module containing an FPGA securely coupled to a security IC using a method comprising the steps of:
-
a. creating a shared secret key;
b. creating a password key;
c. generating an encrypted shared secret key by encrypting said “
shared secret key”
with said password key;
d. incorporating said “
encrypted shared secret key”
into an FPGA net list;
e. programming said FPGA using said “
FPGA net list”
;
f. transmitting said “
password key”
from said security IC to said FPGA; and
g. said FPGA;
i. obtaining said “
shared secret key”
by decrypting said “
encrypted shared secret key”
; and
ii. storing said “
shared secret key”
in at least one volatile memory location. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A device for securely coupling an FPGA to a security IC comprising:
-
a. an interface configured to communicate with said FPGA and said security IC; and
b. a controller, said “
controller”
configured to perform the steps of;
i. creating a shared secret key;
ii. creating a password key;
iii. generating an encrypted shared secret key by encrypting said “
shared secret key”
with said password key;
iv. incorporating said “
encrypted shared secret key”
into an FPGA net list; and
v. programming the FPGA using said “
FPGA net list;
”
thereby enabling;
c. said security IC to transmit said “
password key”
to said FPGA; and
d. said FPGA;
i. to obtain said “
shared secret key”
by decrypting said “
encrypted shared secret key;
” and
ii. to store said “
shared secret key”
in at least one volatile memory location. - View Dependent Claims (18)
-
Specification