Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>PROLEADNew to Visual Studio Code? Get it now.

PROLEAD

ChairImpSec

|
2,788 installs
| (0) | Free
PROLEAD allows to analyze the robust probing security of masked implementations provided as a verilog netlist or arm binary
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

PROLEAD Extension

Introduction

PROLEAD allows to analyze the robust probing security of masked implementations provided as a verilog netlist or arm binary.
The tool PROLEAD is command-line-based, here comes this extension in and provides a gui to clone/update PROLEAD source code, build it, configure the settings or choose standard values, run PROLEAD and evaluate the output with useful warnings, error messages and updates in the status bar that guide the user.

Walkthrough

Please check the walkthrough to know how you should set up the extension and install what is needed.
The walktrough will show up automatically for the first 3 times you open VSC after installing the extension.

Further Information

For a more detailed information about PROLEAD, its parameters and its settings please visit the Wiki page of the original repo on Github.

Functions

Name Shortcut Description
Install Dependencies ctrl+alt+i installs the needed packages such as git, g++, make etc.
Open Project ctrl+alt+o simply opens a new folder (new workspace), it should be an existing project
Create Project ctrl+alt+P lets you create a new project by setting its path and choosing its parts
Set Directory ctrl+alt+d lets you change the path to project folder / args.set / config.set
Get Ready ctrl+alt+s checks up for code updates, the needed files, executables and gets the updates
Configure ctrl+alt+c opens up the configuration page (a gui for args.set and config.set)
Evaluate ctrl+alt+f5 runs PROLEAD with the provided parameters in args.set and settings in config.set

Project Structure

Directory Tree

.
├─ args.set
├─ config.set
├─ gate/
│  └─ design.v
├─ library.lib
├─ linker.ld
└─ results/

Folders and Files

Name Description
args.set contains the parameters that are passed to PROLEAD via command line.
config.set contains the settings of PROLEAD which are needed for the simulation, evaluation and performance
design.v contains the gate-level netlist of the implementaion you want to test, written in verilog
library.lib contains the library that define the functional behavior of each cell in the netlist
linker.ld contains the specified linker file as the standard linker file (is more needed for the software version)
results/ saves the output of PROLEAD after each evaluation in a new folder with the name format DD-MM-YYYY_hh-mm-ss

Templates

When creating a new project you can choose to select an existing library file (for example) or use the standard library from the template.
You can find these templates in the extension folder under ~/.vscode/extensions/prolead

Usage

  1. make sure you have the dependencies installed
  2. open an existing project (that must contain a project structure) or create a new one

Contact and Support

please contact Nicolai Müller (nicolai.mueller@rub.de) if you have any questions, comments, if you found a bug that should be corrected, or if you want to reuse PROLEAD or parts of it for your own research projects.

Publications

  • N. Müller, A. Moradi (2022): PROLEAD - A Probing-Based Hardware Leakage Detection Tool
  • J. Zeitschner, N. Müller, A. Moradi (2023): PROLEAD_SW - Probing-Based Software Leakage Detection for ARM Binaries (pre-print)
  • Contact us
  • Jobs
  • Privacy
  • Terms of use
  • Trademarks
© 2023 Microsoft