Separating AES Runs?

I am trying to figure out how the chipwhisperer capture program separates AES runs. I.E. when you run several AES measurements, each trace of AES shows up individually in the GUI. Is there just a line in the code that indicates where to separate this data, or does the capture program have some other way of knowing?

Thanks in advance!

Hi there,

The high level logic for the capturing process is in doReadings(). Roughly, it looks like:

  1. Arm the ChipWhisperer’s scope
  2. Send some input to the target (for example, a plaintext to be encrypted and the encryption key)
  3. Give the target some time to work (hopefully, the ChipWhisperer’s trigger will go off during this wait)
  4. Get the power trace samples back from the ChipWhisperer ADC
  5. Save the trace, key, and text input/output into a trace container
  6. Repeat 1-5 until done and save everything to disk
    Then, the GUI can just show the latest trace that was recorded. I think the answer to your question is that the software can tell apart the AES measurements because it controls when they happen :slight_smile:

Hopefully that’s enough info to point you in the right direction - let me know if you need any more details.