Randomization of dangling nodes in a digital circuit design to mitigate hardware trojans
AssigneeNational Technology & Engineering Solutions of Sandia, LLC
InventorJason Hamlet
Life of this patent
Estimating the term…
Abstract
Described herein are various technologies pertaining to randomizing logic associated with dangling nodes in a digital circuit design. A dangling node is an input to or output from a logic gate in the digital circuit design that is identified as not impacting a desired output of the digital circuit design. Randomizing the logic associated with a dangling node can include deleting a logic gate, adding a logic gate, replacing a logic gate with another logic gate, etc. Randomizing the logic associated with the dangling node prevents hardware trojans that may have been inserted into the circuit design from being implemented in a circuit that is generated based upon the design.
Claims19
A system that is configured to modify nodes in a digital circuit design, the system comprising:
- a processor;
- and
- memory that stores instructions that, when executed by the processor, cause the processor to perform acts comprising:
- identifying, within the digital circuit design, a dangling node that fails to impact a function of the digital circuit design from one or more terminal inputs to one or more terminal outputs, each of the one or more terminal inputs corresponding to one of a primary input of the digital circuit design and an output from a memory in the digital circuit design, each of the one or more terminal outputs corresponding to one of a primary output of the digital circuit design and an input into the memory in the digital circuit design;
- and
- responsive to identifying the dangling node within the digital circuit design, randomly modifying circuit logic associated with the dangling node.
A method executed by a processor of a computing system, the method comprising:
- identifying, within a digital circuit design, a dangling node that fails to impact a function of a circuit from one or more terminal inputs to one or more terminal outputs, each of the one or more terminal inputs corresponding to one of a primary input of the circuit and an output from a memory in the circuit, each of the one or more terminal outputs corresponding to one of a primary output of the circuit and an input into the memory in the circuit, the circuit being based upon the digital circuit design, wherein the dangling node is an input to a logic gate in the digital circuit design;
- and
- randomly modifying the digital circuit design responsive to identifying the dangling node, wherein randomly modifying the digital circuit design comprises randomly modifying logic associated with the identified dangling node using one of a plurality of modification methods, wherein randomly modifying the digital circuit design fails to impact the function of the circuit, and wherein the circuit is adapted to be manufactured based upon the randomly modified digital circuit design.
A computer-readable storage medium comprising instructions that, when executed by a processor, cause the processor to perform acts comprising:
- identifying, within a digital circuit design, a dangling node that fails to impact a function of a circuit from one or more terminal inputs to one or more terminal outputs, each of the one or more terminal inputs corresponding to one of a primary input of the circuit and an output from a memory in the circuit, each of the one or more terminal outputs corresponding to one of a primary output of the circuit and an input into the memory in the circuit, the circuit being based upon the digital circuit design, wherein the dangling node is an input to a logic gate in the digital circuit design;
- and
- randomly modifying the digital circuit design responsive to identifying the dangling node, wherein randomly modifying the digital circuit design comprises randomly modifying logic associated with the identified dangling node using one of a plurality of modification methods, wherein randomly modifying the digital circuit design fails to impact the function of the circuit, and wherein the circuit is adapted to be manufactured based upon the randomly modified digital circuit design.
Dependencies are inferred from the claim text.