the piracy threat
play

The Piracy Threat Problem 1 : Unauthorized over production of IC - PowerPoint PPT Presentation

The Piracy Threat Problem 1 : Unauthorized over production of IC $$ Lost revenue opportunities Synthesis, Verification & Test for Secure ICs Undesired exposure of proprietary technology Protecting Integrated Circuits Problem


  1. The Piracy Threat • Problem 1 : Unauthorized over ‐ production of IC • $$ Lost revenue opportunities Synthesis, Verification & Test for Secure ICs • Undesired exposure of proprietary technology Protecting Integrated Circuits • Problem 2 : Substandard production from Piracy with Test ‐ aware Logic Locking • Insertion of harmful Trojans • Sabotage and espionage opportunities Stephen Plaza Igor Markov Driving factor Worldwide distribution of IC production (i.e., outsourcing) An “EPIC” Solution? The Piracy Threat EPIC • Basic idea: hide functionality from manufacturer Rights Rights Design Risks holder Design PUF holder promised production Unauthorized Manufacturing done by 3 rd party • production Optimization • Manufacturing often done Optimization Rights PUF Manufacturer in remote areas → fewer legal op � ons Holder unique insert random unlocking XOR logic A Risky Relationship key non ‐ functional/incomplete EPIC Problem: Manufacturer needs a Manufacturing Manufacturing IC design promised production of pirated ICs Manufacturing functionally correct circuit for testing • Split manufacturing, test, etc between di ff erent companies → infeasible Testing/ Testing/ Testing/ Packaging Packaging Packaging • EPIC active metering approach [Roy ’08, ‘10 revision] Rights Advertising/ Manufacturer Black market Holder • Springboard for many Advertising/ Marketing distribution subsequent research efforts Marketing • Unique chip ID (e.g., PUF) Sales • Locking mechanism to prevent Sales correct circuit operation IC design Unauthorized Unauthorized Replica IC Variants

  2. Our Solution Outline EPIC Rights • Background Mux ‐ based locking that preserves Design holder PUF test response → manufacturer does • XOR locking (and variants) not activate the circuit • Types of attacks Optimization PUF Insertion of • XOR locking vulnerability to attacks test ‐ preserving Advantages MUX locks Manufacturing 1. Manufacturer never has • MUX ‐ based locking a functional circuit • Background on simulation ‐ based synthesis Testing/ • Mux locking strategy 2. Supplied test response cannot Packaging • Practical considerations reveal locking scheme 3. End ‐ user can validate authenticity Advertising/ Marketing • Results Sales Circuit Locking Adding XOR ‐ based Locks Properties • Add logic to the circuit to alter circuit output • XORs placed randomly throughout circuit • Key bits that can disable locks • Key bits not obvious even with known output response add lock circuit (XOR/XNOR) F F F’ CK 1 CK i XOR hide key bit CK 2 (equivalent circuit) CK 3 CK i CK i XOR XNOR key bit not obvious upon inspection

  3. Types of Attacks Outline • Background • Mask modification to disable PUF • XOR locking (and variants) • Types of attacks • Mask modification to disable locks • Hard to find on inspection • XOR locking vulnerability to attacks • Hard to modify in current technologies Supplied test patterns and response indicate expected behavior → • MUX ‐ based locking • “Guess” key bit values potential attack vulnerability • Background on simulation ‐ based synthesis • Random key patterns intractable • Mux locking strategy • Simulation based on stolen netlist [Rajendran ’12] • Practical considerations (better placement of XORs make this attack difficult) • Results XOR Lock Attack XOR Lock Attack High ‐ level Strategy circuit Assume access to key bits Response 1 Response 2 Response 1 Response 2 Pattern 1 Pattern 2 • Inputs: test pattern input, test pattern output, locked circuit 0 0 1 1 0 • Output: key bit assignment that unlocks circuit CK 1 1 0 1 1 1 0 0 … … 0 CK 2 Algorithm 1 1 1. Choose a key bit at random 1 1 1 0 2. Apply all test patterns, observe test response 0 0 0 CK 3 3. Flip key bit value 0 0 0 0 4. Apply all test patterns, observe test response 5. Choose the key bit value that minimizes test response differences 4 differences for 1 differences for 6. Repeat till convergence CK 1 = 1 CK 1 = 0

  4. XOR Lock Attack Considerations Outline • Background • Output response often betrays gradient toward unlocked • XOR locking (and variants) configuration • Types of attacks • Random restarts needed since algorithm gets caught in local • XOR locking vulnerability to attacks minimum • MUX ‐ based locking • Adding XOR locks with downstream correlation can make a • Background on simulation ‐ based synthesis naïve attack trickier • Mux locking strategy • Practical considerations • Results Efficient Resynthesis through Signatures and Bit Simulation Simulation ‐ based Approximations • Signature : partial truth table associated • Simulation can be used to approximate circuit behavior with each node in a circuit • Estimate average case behavior • Stimulate inputs with simulation vectors • Linear ‐ time computation generate signatures • Apply values, e.g., random, Sig(x 1 ) = { 011} random bit ‐ parallel simulation to primary inputs simulation I 1 011 x x x 011 010 • Associate signatures x 1 111 x 001 x x I 2 with each node 011 101 011 x x x I 3 x 4 • Use signatures to enable 001 001 x 2 complex optimizations I 4 010 x 3 15

  5. Signature ‐ based Synthesis Signature ‐ driven Locking Strategy Optimization Apply Apply Test Finding Locks Random Node Merging • Use signatures to guide synthesis optimization Patterns with Signatures with Signatures Simulation sig(f 1 ) = sig(f 2 ) • e.g. , find signatures that are equal → merge? and merge nodes Extract Extract • Need to prove equivalence (e.g., by using SAT) Signatures Signatures f 1 010 010 f 2 ,f 1 Find Equal Find Equal I 1 100 Signature 111 Signature x 1 111 I 2 011 Disprove 011 with I 3 repeat repeat x 4 Verify 001 Random 101 Formally x 2 I 4 Simulation circuit simplified not equivalent 001 x 3 equivalent x 3 MUX Add Lock Optimize Finding Candidate Signatures MUX ‐ based Locking Algorithm • Problem: few signals with equal 100 I 1 111 signatures that are not logically x 1 111 I 2 2. Create Candidate Cover for equivalent 1. Apply Test Patterns 011 011 Randomly Chosen Node (most have covers) I 3 x 4 • Solution: create equal signatures 001 001 x 2 100 using logic covers I 4 111 x 1 111 101 x 4 011 011 010 x 3 011 = x 3 Logic Cover x 4 010 001 x 2 x 3 Synthesize x* 2 x 5 • ��� � � ��� � ↔ ��� � � ��� � &��� � 010 • ��� � � ��� � ↔ ��� � � ��� � |��� � x 3 Sig x2 � Sig X3 ↔ x 2 Sig x2 = Sig x3 & Sig x2 x* 2 x 3

  6. Practical Considerations MUX ‐ based Locking Algorithm of MUX Locking to the Design Flow 3. Apply Random Simulation Area considerations 5. Add MUX lock • Each optimization requires minimal additional logic 010 011 2 gates 011 x 1 011 x 1 111 001 x 4 101 x 2 • Only a few locks (e.g. 64, 128) are needed for the key to be uncrackable x 4 x 5 x 2 x 5 110 x 3 Timing and wiring • We avoid operations that increase logic levels x 3 4. Disprove Candidate Cover • More generally: use local signals when synthesizing locks to uphold � ming/wiring constraints → need many candidate locking sites Circuit Test… key x 4 011 010 ≠ x 3 110 x 3 Handling Untestable Logic Handling Untestable Logic with Probabilistic Testing with Probabilistic Testing Solution: run test patterns multiple times with different key bit values Problem 1: incorrect lock key will make some logic untestable choose circuit a Response 1 Response 2 Response 1 Response 2 random a not observable when b=0 Pattern 1Pattern 2 combination 0 1 1 0 c 0 1 CK 1 b 1 0 1 1 1 0 0 … … … 0 CK 2 1 1 1 1 0 1 key = 1 (locked) Problem 2: unpredictable output response could complicate diagnosing 0 0 1 0 CK 3 0 0 0 0 a={0,0} a={1,1} (stuck ‐ at ‐ 1 fault) CK ={1,0,0}: Resp1, Resp2 CK ={1,0,1}: Resp1, Resp2 Properties c={0,0} 0 expected faulty c = {1,1} • If there are no interactions between locked sites, exponential …. b={1,0} 1 c={1,0} fewer untested sites for each combination • Improved testability possible because covers can increase observability of internal signals key = 1 (locked)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend