DISTROY: Detec-ng IC Trojans with Compressive Measurements - - PowerPoint PPT Presentation

distroy detec ng ic trojans with compressive measurements
SMART_READER_LITE
LIVE PREVIEW

DISTROY: Detec-ng IC Trojans with Compressive Measurements - - PowerPoint PPT Presentation

DISTROY: Detec-ng IC Trojans with Compressive Measurements Youngjune Gwon, H. T. Kung, and Dario Vlah Harvard University August 9, 2011 Understanding


slide-1
SLIDE 1

DISTROY: ¡Detec-ng ¡IC ¡Trojans ¡ with ¡Compressive ¡Measurements ¡

Youngjune ¡Gwon, ¡H. ¡T. ¡Kung, ¡and ¡Dario ¡Vlah ¡ Harvard ¡University ¡

¡ August ¡9, ¡2011 ¡

slide-2
SLIDE 2

Understanding ¡Modern ¡IC ¡Manufacturing ¡Cycle ¡

§ Fabless ¡design ¡now ¡mainstream ¡

– IC ¡designed ¡in-­‑house ¡ – Fabrica-on ¡outsourced ¡to ¡foundry ¡

§ Externali-es ¡introduced ¡

– Fab: ¡infrastructural, ¡tes-ng, ¡calibra-on ¡related ¡addi-ves ¡ – Design: ¡third-­‑party ¡IP ¡and ¡tools, ¡standard ¡cells, ¡models ¡

§ Mul-ple ¡par-es ¡get ¡involved ¡

– Difficult ¡to ¡guarantee ¡returned ¡IC ¡genuinely ¡matches ¡original ¡design ¡

IP, ¡tools, ¡ cells, ¡models ¡ Infrastructural, ¡ process-­‑specific ¡ addi6ves ¡

Netlist/physical layout

Does ¡returned ¡silicon ¡reflect ¡genuine ¡design? ¡

slide-3
SLIDE 3

IC ¡Trojan ¡and ¡Detec-on ¡

§ What ¡is ¡IC ¡Trojan? ¡

– Malicious ¡circuitry ¡inserted ¡on ¡purpose ¡by ¡adversary ¡

  • Not ¡a ¡bug ¡or ¡accidental ¡modifica-on ¡

– Inserted ¡during ¡design ¡and ¡fab ¡steps ¡ – Dormant ¡un-l ¡triggered ¡to ¡get ¡ac-vated ¡

  • BeZer ¡catch ¡while ¡dormant ¡to ¡avoid ¡consequences ¡
  • Difficult ¡to ¡catch ¡with ¡small ¡background ¡power ¡usage ¡at ¡dormant ¡

» Process ¡varia-on ¡can ¡be ¡larger ¡

– Consequences ¡

  • Malfunc-on: ¡performs ¡incorrect ¡opera-ons, ¡fails ¡normal ¡tasks ¡
  • Breach ¡of ¡security ¡and ¡privacy: ¡leaks ¡sensi-ve/cri-cal ¡informa-on ¡

§ Detec-ng ¡Trojans ¡via ¡“power” ¡or ¡“current” ¡side-­‑channel ¡ measurement ¡analysis ¡

– Want ¡to ¡detect ¡any ¡abnormal ¡readings ¡ ¡ – Depends ¡on ¡circuit ¡inputs ¡that ¡drive ¡IC ¡to ¡lowest ¡power ¡states ¡so ¡ extra ¡leakage ¡above ¡expected ¡devia-on ¡can ¡be ¡detected ¡

slide-4
SLIDE 4

Side-­‑channel ¡Approach ¡

§ Run ¡sufficiently ¡many ¡test ¡vectors ¡for ¡side-­‑channel ¡measurement ¡

– Increase ¡chances ¡to ¡include ¡revealing ¡test ¡vectors ¡

§ Use ¡reference ¡measurement ¡values ¡

– Process-­‑specific ¡Trojan-­‑free ¡mean ¡and ¡devia-on ¡for ¡all ¡test ¡vectors ¡

Circuit Under Test (CUT)

vN ¡... ¡v2 ¡v1 ¡

N ¡test ¡vectors ¡

xN ¡... ¡x2 ¡x1 ¡

N ¡corresponding ¡ measurements ¡ Compare

Result ¡

Tool

DB

Probability ¡distribu7on ¡DB ¡

  • f ¡gate-­‑level ¡characteris7cs ¡

specific ¡to ¡fab ¡process ¡

Done ¡offline ¡

g1 ¡g2 ¡... ¡gN ¡

N ¡reference ¡(golden) ¡ measurements ¡

vN ¡... ¡v2 ¡v1 ¡

slide-5
SLIDE 5

Challenges ¡of ¡Side-­‑channel ¡Approach ¡

§ Trojan ¡background ¡power ¡consump-on ¡too ¡small ¡

– No-ceable ¡only ¡by ¡revealing ¡test ¡vectors ¡ ¡

§ But ¡how ¡to ¡find ¡revealing ¡test ¡vectors? ¡

– No ¡prior ¡informa-on ¡ – How ¡many ¡is ¡sufficient? ¡

§ Chip ¡I/O ¡is ¡boZleneck ¡

– Infeasible ¡to ¡export ¡large ¡number ¡of ¡measurements ¡for ¡off-­‑chip ¡ analysis ¡

§ Intelligence ¡of ¡Trojan ¡designer ¡makes ¡detec-on ¡more ¡ difficult ¡

– Know ¡vs. ¡not-­‑know ¡the ¡IC ¡design ¡ – If ¡knowledge ¡enables ¡to ¡offset ¡amount ¡of ¡Trojan ¡power ¡leakage, ¡ detec-on ¡may ¡be ¡impossible ¡

§ Assuring ¡detec-on ¡reliability ¡

– How ¡to ¡reduce ¡false ¡posi-ve ¡and ¡false ¡nega-ve ¡rates? ¡

slide-6
SLIDE 6

Compressive ¡Sensing ¡as ¡Solu-on ¡

§ Compressive ¡sensing ¡

– Signal ¡processing ¡technique ¡for ¡recovering ¡data ¡with ¡number ¡of ¡ measurements ¡propor-onal ¡to ¡sparsity ¡of ¡data ¡(not ¡size) ¡ – Uses ¡simple ¡encoding ¡

§ Why ¡is ¡compressive ¡sensing ¡applicable? ¡

– Revealing ¡test ¡vectors ¡are ¡sparse ¡ – Can ¡reduce ¡chip ¡output ¡requirement ¡while ¡capturing ¡significant ¡ power ¡leakage ¡due ¡to ¡Trojans ¡

slide-7
SLIDE 7

DISTROY ¡– ¡Compressive ¡Sensing ¡Encoding ¡

Circuit Under Test (CUT)

N ¡test ¡vectors ¡

vN ¡... ¡v2 ¡v1 ¡

§ x ¡= ¡[x1 ¡x2 ¡... ¡xN]T ¡is ¡buffered ¡test ¡vector ¡output ¡ § DISTROY ¡encoding: ¡y ¡= ¡Φ ¡x ¡ ¡

– Compresses ¡x ¡(size ¡N) ¡in ¡y ¡(M ¡RLCs) ¡using ¡ΦMxN ¡ ¡ – M ¡≪ ¡N ¡ – Φ: ¡random ¡measurement ¡matrix ¡ ¡

⋮ x1 ¡ x2 x3 xN

Σ

φi,1 φi,2 φi,3 φi,N

i-th row of Φ = [ φi,1 φi,2 ... φi,N ]

y

M ¡compressive ¡ measurements ¡

Chip ¡boundary ¡with ¡DISTROY ¡

slide-8
SLIDE 8

DISTROY ¡– ¡Compressive ¡Sensing ¡Decoding ¡

§ Compressive ¡sensing ¡uses ¡l1-­‑norm ¡minimiza6on ¡decoding ¡

– d ¡is ¡sparse, ¡thus ¡recover ¡d ¡= ¡x ¡– ¡g ¡directly ¡

  • Of ¡course, ¡x ¡can ¡be ¡recovered ¡from ¡d ¡

– g ¡= ¡corresponding ¡expected ¡output ¡values ¡for ¡Trojan-­‑free ¡IC ¡

y

min

d!"N d l1 subject to y=#

g1+d1 g2 +d2 ! gN +dN $ % & & & & ' ( ) ) ) )

g

Reference ¡test ¡ ¡ vector ¡output ¡

d

slide-9
SLIDE 9

§ Process ¡varia-on ¡makes ¡leakage ¡current ¡vary ¡

– β: ¡average ¡leakage ¡current ¡contributed ¡by ¡Trojan ¡gates ¡ – Small ¡β ¡makes ¡detec-on ¡more ¡difficult ¡⟹ ¡large ¡overlap ¡under ¡curves ¡

§ Detec-on ¡threshold ¡α ¡ ¡

– Tradeoff ¡between ¡false ¡posi-ve ¡and ¡nega-ve ¡rates: ¡can ¡op-mize ¡only ¡

  • ne ¡of ¡them ¡(not ¡both) ¡

– Can ¡we ¡do ¡beZer? ¡

!"#$#%"& '())"*+

,-!./0 ,1234/0

567

β α

Analysis ¡of ¡Threshold ¡Detec-on ¡

Reduce false positives Reduce false negatives Probability distribution

slide-10
SLIDE 10

Enhance ¡Detec-on ¡with ¡Tes-ng ¡Mul-ple ¡Chips ¡

§ Group ¡mul-ple ¡chips ¡by ¡fab ¡process ¡ § To ¡reduce ¡false ¡posi-ves ¡

– Require ¡all ¡P ¡> ¡1 ¡chips ¡meet ¡detec-on ¡criteria ¡

§ To ¡reduce ¡false ¡nega-ves ¡

– Require ¡at ¡least ¡P ¡out ¡of ¡Q ¡> ¡P ¡chips ¡meet ¡detec-on ¡criteria ¡ – For ¡fixed ¡P, ¡larger ¡Q ¡yields ¡fewer ¡false ¡nega-ves ¡⟹ ¡we ¡can ¡ achieve ¡both ¡false ¡posi>ve ¡and ¡nega>ve ¡rates ¡reasonably ¡good ¡

slide-11
SLIDE 11

Evalua-on ¡

§ Benchmark ¡circuit ¡has ¡100 ¡NAND ¡gates ¡

– Built ¡using ¡ISCAS-­‑85 ¡c17 ¡

§ Wrote ¡logic ¡simula-on ¡in ¡C ¡

– Pre-­‑ran ¡all ¡possible ¡test ¡vectors ¡and ¡cached ¡results ¡

§ Trojan ¡circuits ¡

– Placed ¡1 ¡to ¡5 ¡NAND ¡gates ¡at ¡random ¡loca-ons ¡ – trojan-1/2/3/4/5

  • trojan-1 ¡yields ¡smallest ¡leakage, ¡thus ¡most ¡difficult ¡to ¡detect ¡

§ Metrics ¡

– Compression ¡gain ¡(N/M) ¡ – False ¡posi-ve ¡rate ¡ – False ¡nega-ve ¡rate ¡

slide-12
SLIDE 12

Expected ¡Outcome ¡

§ Compressive ¡sensing ¡advantage ¡⟹ ¡achieves ¡same ¡margin ¡of ¡ ¡ error ¡with ¡reduced ¡number ¡of ¡measurements ¡

– Without ¡compressive ¡sensing: ¡N ¡measurements ¡needed ¡ – With ¡compressive ¡sensing: ¡N/k ¡measurements ¡should ¡suffice ¡

§ Compressive ¡sensing ¡tradeoff ¡⟹ ¡reduced ¡measurements ¡for ¡ increase ¡in ¡false ¡detec-on ¡rates ¡

– How ¡would ¡false ¡detec-on ¡rates ¡grow? ¡

slide-13
SLIDE 13

Detec-on ¡Performance: ¡Single ¡Chip ¡Tes-ng ¡

100 200 300 400 500 600 700 800 0.1 0.2 0.3 0.4

M (number of measurements)

Rate (a) Trojan size = 1 gate

False positive for N = 1000 random test vectors False negative for N = 1000 random test vectors 100 200 300 400 500 600 700 800 0.1 0.2 0.3 0.4

M (number of measurements)

Rate (b) Trojan size = 5 gates

False positive for N=1000 random test vectors False negative for N=1000 random test vectors

§ About ¡4:1 ¡to ¡5:1 ¡compression ¡gain ¡(for ¡false ¡rates ¡< ¡0.05) ¡

– Trojan ¡size ¡maZers ¡

§ False ¡rates ¡go ¡up ¡quickly ¡aper ¡reducing ¡further ¡from ¡some ¡M ¡

slide-14
SLIDE 14

Detec-on ¡Performance: ¡Mul-ple ¡Chip ¡Tes-ng ¡

1 2 3 4 5 6 7 8 9 10 0.02 0.04 0.06 0.08 0.1

P (# of chips fabricated under same process for testing)

Rate

False positive rate over P (Trojan size = 1 gate)

2 3 4 5 6 7 8 9 10 0.05 0.1 0.15 0.2

Q (# of chips from which P=2 chips are chosen for testing)

Rate

False negative rate over Q (Trojan size = 1 gate) M=200, N=1000 M=200, N=1000, P=2

§ Tes-ng ¡mul-ple ¡chips ¡reduce ¡both ¡false ¡rates ¡ § We ¡can ¡address ¡tradeoff ¡with ¡fixed ¡P ¡and ¡adjustable ¡Q ¡ ¡ ¡

slide-15
SLIDE 15

Summary ¡

§ DISTROY ¡unconven-onal ¡new ¡way ¡of ¡using ¡compressive ¡ sensing ¡

– Takes ¡test ¡vector ¡output ¡values ¡as ¡signal ¡to ¡compress ¡ – Substan-ally ¡reduces ¡chip ¡output ¡requirement ¡related ¡to ¡ detec-ng ¡sta-s-cally ¡rare ¡events ¡from ¡large ¡measurements ¡ ¡

§ Combined ¡with ¡tes-ng ¡mul-ple ¡chips ¡from ¡same ¡fab ¡process, ¡ we ¡can ¡detect ¡Trojans ¡reliably ¡

– Despite ¡inevitable ¡tradeoff, ¡we ¡showed ¡that ¡both ¡reasonably ¡good ¡ false ¡posi7ve ¡and ¡false ¡nega7ve ¡detec-on ¡rates ¡can ¡be ¡achieved ¡

§ We’re ¡implemen-ng ¡DISTROY ¡and ¡plan ¡to ¡test ¡against ¡real ¡ chips ¡with ¡real ¡Trojans ¡

slide-16
SLIDE 16

Extras ¡

slide-17
SLIDE 17

Mul--­‑chip ¡Tes-ng ¡Example ¡

§ Consider ¡10-­‑chip ¡test ¡example: ¡Q ¡= ¡10 ¡ § Fix ¡P ¡first ¡

– P ¡= ¡2 ¡happens ¡to ¡meet ¡required ¡false ¡posi-ve ¡rate ¡

§ Trojan-­‑free ¡IC ¡(lep ¡curve) ¡

– Probability ¡at ¡least ¡P ¡out ¡of ¡Q ¡(2 ¡out ¡of ¡10) ¡chips ¡power ¡higher ¡than ¡α ¡ ¡ is ¡very ¡small ¡⟹ ¡false ¡posi-ve ¡rate ¡is ¡small ¡

§ Trojan-­‑containing ¡IC ¡(right ¡curve) ¡ ¡

– Probability ¡that ¡any ¡9 ¡of ¡10 ¡chips ¡all ¡exhibit ¡power ¡lower ¡than ¡α ¡ ¡is ¡very ¡ small ¡⟹ ¡ ¡false ¡nega-ve ¡rate ¡is ¡also ¡small ¡ ¡

!"#$#%"& '())"*+

,-!./0 ,1234/0

567

β α

Reduce false positives Reduce false negatives Probability distribution