Coder Social home page Coder Social logo

zgunnerl1 / emb-sec-chip-whisperer Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 401.59 MB

License: Other

Verilog 4.84% Python 3.59% Shell 0.05% Batchfile 0.01% Makefile 0.10% C 31.44% Assembly 6.92% C++ 0.02% Tcl 0.02% VHDL 49.11% Coq 0.01% Pascal 0.01% TeX 0.04% V 1.86% SystemVerilog 2.00% Stata 0.01% Forth 0.01% JavaScript 0.02% PureBasic 0.01% NASL 0.01%

emb-sec-chip-whisperer's Introduction

ChipWhisperer

Documentation Status

Discord | Hardware Docs | Documentation | Forum | Store | NewAE

ChipWhisperer is an open source toolchain dedicated to hardware security research. This toolchain consists of several layers of open source components:

  • Hardware: The ChipWhisperer uses a capture board and a target board. Schematics and PCB layouts for the ChipWhisperer-Lite capture board and a number of target boards are freely available.
  • Firmware: Three separate pieces of firmware are used on the ChipWhisperer hardware. The capture board has a USB controller (in C) and an FPGA for high-speed captures (in Verilog) with open-source firmware. Also, the target device has its own firmware; this repository includes many firmware examples for different targets.
  • Software: The ChipWhisperer software includes a Python API for talking to ChipWhisperer hardware (ChipWhisperer Capture) and a Python API for processing power traces from ChipWhisperer hardware (ChipWhisperer Analyzer). You can find documentation for our Python API at chipwhisperer.readthedocs.io

Getting Started

First time using ChipWhisperer? Check out these links:

ChipWhisperer 5.5: All-in-one installer, Serial Port, ECC, and Segmented Capture

ChipWhisperer 5.5 has brought some exciting new features that make it easier to use and allow you to do some cool new things:

  1. The ChipWhisperer Windows installer now includes everything you need to use ChipWhisperer, including Python/Juptyer, Git, Make, and compilers! For more information, check out our Windows installer page on ReadTheDocs.
  2. ChipWhisperer capture devices (CWLite, Nano, Pro, etc.) have gotten a new firmware update that gives them a USB-CDC serial port for talking over USART. This means you can use your favourite serial program, such as PuTTy, to talk to and listen to the target's USART communication. For more info, see our rtfm serial port page.
  3. We've recently added two ECC power analysis attack notebooks. One attacks a hardware ECC implementation running on the CW305 and the other attacks a software ECC implementation running on a microcontroller. Both can be found in jupyter/demos.
  4. There's a new segmented capture mode that allows you to fill the ChipWhisperer capture buffer with multiple power traces before transferring data to the PC. This greatly reduces the overhead on trace transfer, allowing capture speeds of 1000+ captures/second for FPGA AES implementations. See our API documentation to see how to use it.

Also, if you haven't checked it out yet, ChipWhisperer 5.4 included TraceWhisperer, which allows you to use Arm trace to timestamp microcontroller operations/functions in your powertrace. It requires a CW305 or PhyWhisperer. For more information, see https://github.com/newaetech/DesignStartTrace.

GIT Source

Note all development occurs on the develop branch. If you are looking for bleeding edge it's NOT on master - we push each release (and possibly any critical changes) to master. This means that "master" always gives you the latest known-working branch, but there may be new features on the "develop" branch.

Help!

Stuck? If you need a hand, there are a few places you can ask for help:

  • The NewAE Forum is full of helpful people that can point you in the right direction
  • If you find a bug, let us know through the issue tracker

ChipWhisperer is a trademark of NewAE Technology Inc., registered in the US, Europe, and China.

emb-sec-chip-whisperer's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.