160 likes | 325 Views
Confidentiality Preserving Integer Programming for Global Routing. Hamid Shojaei , Azadeh Davoodi , Parmesh Ramanathan Department of Electrical and Computer Engineering University of Wisconsin-Madison. WISCAD Electronic Design Automation Lab http://wiscad.ece.wisc.edu. Cloud-Based EDA.
E N D
Confidentiality Preserving Integer Programming for Global Routing Hamid Shojaei, AzadehDavoodi, ParmeshRamanathan Department of Electrical and Computer Engineering University of Wisconsin-Madison WISCADElectronic Design Automation Lab http://wiscad.ece.wisc.edu
Cloud-Based EDA Attacks CAD tool finds a Good Solution to OP (GSOP) Generate an optimization instance for an EDA problem (OP) OP GSOP Client Cloud
Proposed Framework: Overview Attacks • The above framework allows masking an EDA problem instance before it is transferred to the cloud and thus provides immunity to attacks at the cloud side ! • Challenge: The masking process should ensure a good solution is still attainable using the same solver at the cloud side Find a Good Solution to MOP (GSMOP) Mask the OP (MOP) Generate an optimization instance (OP) MOP OP Transform back for a GoodSolution to OP (GSOP) GSMOP GSOP Client Cloud
Summary of Contributions • A framework to mask an ILP model, corresponding to an instance of the global routing problem • masking preserves the solution quality • Several attacks which can decipher layout and connectivity information from the unmasked problem • Ability to explore the tradeoff between the increase in immunity and the corresponding increase in runtime to solve the masked problem instance
Global Routing - Problem Definition A design is modeled by a grid-graph terminals of the nets are mapped to vertices route of a net corresponds to a tree connecting its corresponding vertices and its wirelength is the number of edges of the tree each edge has an associated capacity The goal is to route all the nets with smallest total wirelength while ensuring minimal over-usage of routing resources n2 n4 n3 n1 n1 n2 n4 n1 n4 n3
An Integer Programming Model* • For each net n, one route should be selected • from a set of its promising candidate routes Tn • Objective: • minimize a linear combination of the total wirelength and the total over-usage of routing resources (higher priority for large M) ) T1 o10 T2 S2 S1 *[GRIP, TCAD’11] http://wiscad.ece.wisc.edu/gr/
Simple Attacks: Examples • Number of nets • count the #1s in the equalities in the right-hand-side (RHS) vector of (OP) • Edge capacities • RHS value in the inequality corresponding to the edge capacity constraints in (OP) • Wirelength of a route • count the number of positive entries in the corresponding column in the left-hand-side (LHS) constraint matrix minus one A basic masking strategy to randomly shuffle the rows and columns in the LHS and RHS does not make the (OP) immune even to these simple attacks!
A Challenging Attack • Compute the weight wij • indicates if edges ei and ej are both included in one or more routing trees • higher wij means higher likelihood that ei and ej are close or even physically adjacent • Solve an optimization problem to retrieve the routing topology using the computed weights • binary variable yij=1 if edges ei and ej are estimated to share a vertex • solution is mapping of each routing tree (through its edge indexes) to the location on the grid
Masking Steps • OP: optimization instance (after randomly shuffling the rows and columns) • MOP1: further translates all equalities to inequalities by adding surplus variables • MOP2: further hides 20% of the randomly-selected route selection variables by replacing xit with 1-xit • MOP3-K%:further applies a masking heuristic to hide K% of the columns in the LHS matrix by replacing a rows with a linear combination of the other rows • K is the hiding factor • results for K=10% and 20% in our experiments We formally prove that the solution to each of these problem instances has the same quality as the original problem (OP) !
Simulation Setup • (OP) created using the global routing tool CGRIP* • Ran CGRIP with a small time budget of only a few minutes to create candidate routes for the ISPD 2007 benchmark instances • Ran (OP) on multi-core machines (by running CPLEX in the multi-threaded mode) * [CGRIP—ICCAD’11] http://wiscad.ece.wisc.edu/gr/cgrip.htm
Comparison: Simple Attacks • Shown for one benchmark (a1) • similar for other benchmarks • Simple attacks • Nets: number of nets • E-Cap: edge capacities • WL: wirelength of a candidate tree • Trees: number of trees per net by counting the non-zero entries in a route selection constraint
Comparison: Vulnerability Metric • Challenging attack • V: vulnerability measured as the number of correctly restored grid edges in a routing topology attack • calculated by solving a (IP-VUL) formulation which aims to extract the routing grid especially at the highly-utilized routing regions
Tradeoff Analysis for a1 • Increase in the hiding factor results in decrease in the vulnerability metric but increase in the CAD tool runtime • No compromise in the global routing solution quality in all cases
Conclusions • Problem transformation provides designers to hide confidential design information as a way to provide trust to a third-party cloud provides • complementary to and compatible with other security-based techniques at the cloud’s side • Used masking techniques to transforman ILP formulation describing a global routing instance such that • the transformed formulation is immune to a larger number of confidentiality attacks • there is no loss of quality of the routing solution • Tradeoff exists between decrease in vulnerability to attacks and increase in runtime