Methods for Protecting Against Piracy of Integrated Circuits
First Claim
1. A method for locking an integrated circuit, the method comprising:
- embedding an operational description of the integrated circuit design with a cryptographic key supported by a cryptographic protocol, where the integrated circuit is capable of establishing a public key and a private key pair upon start up; and
locking at least one module of the integrated circuit by applying to the at least one module a logical operator having a control signal input, where the logical operator is for unlocking the at least one module in response to the control signal input having a valid value and where the logical operator is for maintaining locking of the at least one module in response to the control signal input having an invalid value.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques are provided for reducing the likelihood of piracy of integrated circuit design using combinational circuit locking system and activation protocol based on public-key cryptography. Every integrated circuit is to be activated with an external key, which can only be generated by an authenticator, such as the circuit designer. During circuit design, register transfer level (RTL) descriptions of the IC design are embedded with combinational logic based on a master key applied by the authenticator. That combinational logic renders at least one module of the RTL description locked, i.e., encrypted. The completed circuit design from the authenticator is sent to a fabrication lab with the combinationally locked modules. After fabrication, the circuit can only be activated when the authenticator sends an appropriate key that is used by the circuit to unlock the locked portions and thereby activate the circuit.
34 Citations
23 Claims
-
1. A method for locking an integrated circuit, the method comprising:
-
embedding an operational description of the integrated circuit design with a cryptographic key supported by a cryptographic protocol, where the integrated circuit is capable of establishing a public key and a private key pair upon start up; and locking at least one module of the integrated circuit by applying to the at least one module a logical operator having a control signal input, where the logical operator is for unlocking the at least one module in response to the control signal input having a valid value and where the logical operator is for maintaining locking of the at least one module in response to the control signal input having an invalid value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of activating at least one module on an integrated circuit, the method comprising:
-
the integrated circuit establishing a random public key and private key pair upon start up; transmitting the random public key to an authentication source for the integrated circuit; the authentication source sending to the integrated circuit an input key in response to receipt of the random public key, wherein the input key represents a common key for the integrated circuit and is encrypted with a private master key of the authentication source and with the received random public key; the integrated circuit decrypting the input key using the random private key and a public master key previously received at the integrated circuit to authenticate the input key as being received from a valid authentication source; and in response to the authentication of the input key, producing a common key that activates the at least one module on the integrated circuit. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
Specification