Preparing AES Traces for a Neural Network


I’m successfully able to capture AES traces with my ChipWhisperer-Lite and store them in a project file with the corresponding key and plaintexts, but now I’d like to perform a byte-sized deep learning attack on this data. In order to do that, I assume I need to figure out what part of each overall trace corresponds to each byte of the S-box substitution, so I can zoom in on that area and label it with it’s corresponding output byte. This is where I’m stuck. If anyone could give me some guidance on going about this I would greatly appreciate it!

Example trace:

Thank you,

Hi Jack,

Check out the output vs. time plot from SCA101 Lab 4-3. The correlation spikes you see will correspond to the point in time where the sbox substitution is happening.


Will do, thank you Alex!

Heyy, hello JSE I’ve some question for you. How did you get to save any key and plaintexts this form on jupyter?

Hi vini,

So I start by creating a project to store the traces:

Then collect and store the traces with their metadata:

After that I can open up the project and access the traces and their metadata:

As an example, I can access the key and plaintext associated with the first trace by:

You can find more information on projects here:

Hope this helps!

1 Like

Hi Alex,
Could you please show me where is SCA101 Lab 4-3?

It’s in jupyter/courses/sca101/:


Hi, Alex

Thank you very much!