• No results found

Forensic Engineering Techniques for VLSI CAD Tools

N/A
N/A
Protected

Academic year: 2021

Share "Forensic Engineering Techniques for VLSI CAD Tools"

Copied!
13
0
0

Loading.... (view fulltext now)

Full text

(1)

Forensic Engineering Techniques

Forensic Engineering Techniques

for VLSI CAD Tools

for VLSI CAD Tools

Jennifer L. Wong,

Jennifer L. Wong,

Darko Kirovski, David Liu, Miodrag Potkonjak

Darko Kirovski, David Liu, Miodrag Potkonjak

UCLA Computer Science Department

UCLA Computer Science Department

University of California, Los Angeles

University of California, Los Angeles

June 8, 2000

June 8, 2000

[email protected]

Computational Forensic Techniques

• Motivation

• Related Work

• Objectives and Applications

• Generic Approach

• Graph Coloring

• SAT

(2)

[email protected]

Motivation

• Economic Impetus

• Cadence vs. Avant!

• Symantec vs. McAfee

• Research Challenge

• Applications

Elementary, My Dear Watson

Black Box 1

(3)

[email protected]

Forensics101

Problem

:

Inside a room there

are

– 3 light bulbs

– outside the room there are 3 switches.

• Find which switch corresponds

to which light bulb by only

entering the room once?

A

B

C

OFF

OFF

OFF

Forensics101

Solution:

Turn switch A

on for a long time. Then

turn it off and turn switch

B on. Enter the room, the

light that is on

corresponds to switch B,

the light bulb which is

which is

hot

hot

corresponds to switch

A, and the last light bulb

goes to switch C.

Before one can conclude anything, one must have the

right data

right data.

C

B

OFF

ON

A

OFF

(4)

[email protected]

Related Work: Lucy

• Donald Johanson & Tom Gray

– 1974 Ethiopia

• 3.18 million year old skeleton

• 40% of a single Hominid skeleton

• 1/3 the size of the brain of a human

• Structure of bones show upright stance

• Missing link to evolution

Related Work: DNA

• 1944 Oswald Avery

• 1953 James Watson & Francis Crick

• 1984 Sir Alec Jeffreys

(5)

[email protected]

Related Work: Shakespeare

• Thisted & Efron Test

– “How many new words would Shakespeare use

if he were to write another play?”

– “Shall I Die?”

– 900,000 word vocabulary

• 14,378 used once

7 +/- 3 words = 9

• 4,343 used twice

4 +/- 2 words = 7

• 2,292 three times

3 +/- 2 words = 5

Related Work: Rembrandt

• Authenticity of work

– Panels, Canvases & Ground

– Copies

Old Man with gorget and black cap, c. 1631. Edge of a seventeenth-century oak panel.

(6)

[email protected]

Related Work

• B.S. Baker & U. Manber

– 98 Java Byte Codes

• Watermarking - UCLA, Charbon, Oliviera

• Collberg & Thomborson

– 99 Software Protection

• M. Kuhn & R. Anderson

– 97 Reverse Engineering

• Mayer (rebuttal Kuhn)

Forensic Engineering Applications

• Intellectual Property Protection

• Efficient Algorithm Selection

• Algorithm Tuning

• Instance Partitioning

• Benchmark Selection

• Mobile Code Protection

(7)

[email protected]

Objectives

Strategic Goal:

Develop theory and tools for

Computational Forensic Engineering.

Practical Goal:

Given a design, find which tool was

used to produce it.

Forensic Engineering: Generic Approach

Original Problem Instance Perturbations

Solver

A

Solver

B

Solver

C

Solver

D

Solution Solution Solution Solution Solution Solution Solution Solution Solution Solution Solution Solution Solution Solution Solution Solution

Features

(8)

[email protected]

Forensic Engineering: Generic Approach

P

2

P

1

c

a

a

a

a

b

c

d

a

a

a

a

a

a

a

b

b

b

b

b

b

c

c

c

c

c

c

c

c

c

c

c

c

a

a

d

d

d

d

d

d

d

d

d

d

d

d

d

d

b

b

b

b

d

a

b

b

b

c

Pattern and Statistics Data Collection

• Identify Relevant Properties

• Quantify Relevant Properties

• Establish Their Real Relevance

(9)

[email protected]

Clustering of Algorithms and

Decision Making

• Positioning in n-dimensional space

• NP-complete problem

• Nonparametric Statistical Techniques

• Estimation and Validation Techniques

Graph Coloring & Solvers

GC Solvers • SEQ (“sequential”) • DSATUR ( Brelaz) • RLF ( Leighton) GC ProblemInstance:G{V,E}

Solution:A coloring of all vertices, with a minimum number of colors, in the graph in such a way that no 2 vertices with an edge between them is colored the same color

GC Solvers

SEQ (“sequential”)

• DSATUR ( Brelaz) • RLF ( Leighton)

(10)

[email protected]

Graph Coloring & Solvers

Graph Coloring Solvers

• SEQ (“sequential” ) • DSATUR ( Brelaz) • RLF ( Leighton)

GC Problem

Instance:G{V,E}

Solution:A coloring of all vertices, with a minimum number of colors, in the graph in such a way that no 2 vertices with an edge between them is colored the same color

Graph Coloring Solvers

• SEQ (“sequential”) • DSATUR ( Brelaz)

• RLF ( Leighton)

Graph Coloring Properties

¤ Color Class Cardinality

¤ Sum of Degrees of Nodes included in the

Largest (Smallest) Color Classes

(11)

[email protected]

V = {v1, v2, v3}

C = {{

v1, v2}, {v1’}, {v1’, v3},

{v1’, v2’, v3’}, {v3}}

Boolean Satisfiability & Solvers

Satisfiability Solvers

• GSAT (Selman) • WalkSAT (Selman) • NTAB (Crawford)

• Rel_SAT_rand (Bayardi and Schrag)

Satisfiability Problem

Instance:A set of variables V and a collection C of clauses over V. • Solution:A truth assignment for V such that at least one variable in each clause evaluates to true.

V = {v1, v2, v3}

C = {{

v1

,

v2

}, {

v1’

}, {

v1’

,

v3

},

{

v1’

,

v2’

,

v3’

}, {

v3

}}

Solution: v1 =

False

v2 =

True

v3 =

True

Satisfiability Solvers

• GSAT (Selman)

• WalkSAT (Selman) • NTAB (Crawford)

• Rel_SAT_rand (Bayardi and Schrag)

Boolean Satisfiability Properties

¤ Percentage of Non-Important Variables

¤ Clausal Stability - % of variables that can switch

their assignments such that K% of clauses in C

are still satisfied

¤ Ratio of true assigned variables vs. total number

of variables in a clause

(12)

[email protected]

Experimental Results: Boolean Satisfiability

-% of Non-Important Variables

0.74 0.76 0.78 0.8 0.82 0.84 0.86 0.88 0.9 0.92 0 5 10 15 20 25 30 35 40 45

percent_NIV: NTAB(blue), WALKSAT(red), RELSATR(green)

Value Frequency 0.5 0.55 0.6 0 . 6 5 0.7 0.75 0.8 0.85 0 10 20 30 40 50 60 70 80 90 100

percent_NIV: NTAB(blue), WALKSAT(red), RELSATR(green)

Value

Frequency

Experimental Results: Boolean

Satisfiability-Ratio of True Variables

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 1 0 0 0 2 0 0 0 3 0 0 0 4 0 0 0 5 0 0 0 6 0 0 0 clausal_truth_percent: NTAB Value Frequency 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 5 0 0 1 0 0 0 1 5 0 0 2 0 0 0 2 5 0 0 3 0 0 0 3 5 0 0 4 0 0 0 4 5 0 0 clausal_truth_percent: WALKSAT Value Frequency

(13)

[email protected]

Experimental Results: Boolean

Satisfiability-Clausal Stability

0 0 . 0 0 5 0 . 0 1 0 . 0 1 5 0 . 0 2 0 . 0 2 5 0 . 0 3 0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 clausal_stability: NTAB Value Frequency 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 clausal_stability: WALKSAT Value Frequency 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 7 0 0 8 0 0 clausal_stability: RELSATR Value Frequency

Conclusion

References

Related documents

In the western basin from July to November, the ratios of daily ammonium, urea and nitrate uptake per unit surface area to the total nitrogen utilization by phytoplankton were in

M cD ou ga lLi tt el l, a di vi sio n of Hou ghton Mif flin C om pan y CH A PT ER 23 In ve rte bra te Di ve rsit y.. Analogy Vocabulary Set On one blank line next to each

If you need to replace a broken or lost scanner that is linked to a base, scan the Override Locked Scanner bar code with a new scanner, and place that scanner in the base.. The

Passion for Jumeirah and the promise of delivering STAY DIFFERENT TM GOAL OUTCOME COMMUNICATING THE BRAND.. Communicating the Brand Platform

This might be due to malfunctioning of eco-labels or disinformation regarding the benefits of ecology with products (D’Souza et al., 2006). The researcher’s previous

For both mothers and adolescents, reports of poor behaviour control, intrusive family affective involvement, and poor general family functioning, predicted child

Source Address field of the data packet triggering the.

Three source nodes are used in the multicast group: group leader node, node close to the group leader, and a leaf node. Each source node sends five CBR data packets to the mul-