PhyWhisperer-USB

by NewAE Technology Inc

A hardware-based USB 2.0 monitor & trigger platform, controlled from Python

View all updates Aug 22, 2019

Feature Development

by Jean-Pierre Thibault

PhyWhisperer-USB is moving along! This week we wanted to show off some of the features added recently to the tool. You can always check out the bleeding-edge from the active GitHub repository.

API taking shape

While low-level access to the FPGA control registers is still available, higher-level functions for common tasks are now available too. This example sniffs 8192 events when it sees a data byte of 0xa5 (‘events’ include data, timestamps, and USB status updates such as ‘rxerror’).

This next example shows how PhyWhisperer can be used to trigger the injection of a glitch with varying parameters, resetting the target between each glitch:

You’ll also need some hardware to inject the glitch. From outside you can see our prototype unit (sans enclosure) power cycling a target of interest here:

Fast capture speed

Capture is fast! The entire capture buffer of 8192 entries can be read in a single burst in milliseconds:

Concurrent capture

Alternatively, it’s also possible to read data one entry at a time, as it’s coming in:

As before, this can be piped into a decoding logic in order to visualize the traffic itself. We’ll be showing how various open-source frontends can be connected directly to PhyWhisperer-USB in a future update.

Automatic detection of USB PHY speed

The PhyWhisperer-USB supports all three USB 2.0 speeds (low speed, full speed, and high speed). The USB 2.0 LS/FS and HS have different logic levels, so you previously needed to tell the analyzer which to monitor. That isn’t necessary now as PhyWhisperer-USB can now automagically detect a target’s speed by passively observing the negotiation between the target device and the host:

These features show the majority of logic already working for PhyWhisperer-USB, and we haven’t even finished the campaign yet! So once we get hardware into your hands, you can expect things to come pretty close to “just working” without delay.

About the Author

Jean-Pierre Thibault


$17,700 raised

of $1 goal

Funded! Order Below

Product Choices

$5

Reward the QA Managers

Our QA/ESD testers beg everyone for treats, so why not beg random internet people? You get nothing in return except an update video of them eating treats.


$225

PhyWhisperer-USB Kit

A PhyWhisperer-USB in enclosure, MCX to SMA cable, MCX to BNC cable, and 2x micro-USB cables. Save $25 off the planned retail price.


$600

The Three Musketeers

Our less staby version of the three musketeers. You get three PhyWhisperer-USB kits, saving $150 off retail.


$3,800

Teacher Teacher

A PhyWhisperer-USB kit and a seat at Colin's side-channel + fault injection training starting December 2 in Redwood City, CA. The PhyWhisperer kit will either be mailed to you in advance or handed to you in person. You'll get a full ChipWhisperer Kit at the training, and learn how to use it. The PhyWhisperer-USB can be used as an advanced trigger for the ChipWhisperer. Does not include your travel or accommodations!

Credits

NewAE Technology Inc

NewAE developed the ChipWhisperer, the first open-source tool for side-channel power analysis and fault injection. They have shipped over 2000 of their low-cost boards & now offer a wide range of products to help embedded designers evaluate and develop embedded hardware security solutions.


Colin O'Flynn

Jean-Pierre Thibault

Claire Friaz

Franz Heubach

Alex Dewar

Liam Craig

Luna

QA Manager

Bergen

Assistant (to the) QA Manager

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects: