International Association for Cryptologic Research

International Association
for Cryptologic Research

Transactions on Cryptographic Hardware and Embedded Systems, Volume 2022

SoC Root Canal!:

Root Cause Analysis of Power Side-Channel Leakage in System-on-Chip Designs


README

RootCanal Artifact

This folder contains the artifact submission for RootCanal at CHES 2022.

Organization

Each example folder has the following structure:

Steps

Step 1: Finding Leaky Time-Gate Tuples

The first step of RootCanal, will find the leaky time-gate tuples. This step includes synthesizing the design to generate the gate-level netlist, running gate-level simulation on the design, and simulating power consumption traces. ACA (https://arxiv.org/abs/2204.11972) is then used to find the leaky time-gate tuples.
This step of RootCanal is not open source.

Steps 2, 3: Finding Leaky Units and Instructions

nga/nga.py finds the leaky units and instructions.

Prerequisites:
To run the RootCanal on your design, the following files are required:

Setup:
To run NGA on your design, first the following scripts should be adjusted according to the design.

Run:
After setting the variables, on Ubuntu, run the following commands to install the required packages and run NGA:

sudo apt-get install python3
pip3 install argparse networkx pyyaml tqdm
python3 nga.py