Hi Colin,
I am trying to acquire the power traces from a smartcard when an operation is performed. The problem is when “rising edge” is selected as an option no power trace is displayed.
This is my setup on the victim board:
My software setup is as follows:
Scope Module: ChipWhisperer/OpenADC
Target Module: Smart Card
Trace Format: ChipWhisperer/Native
Reader Hardware: ChipWhisperer-SER
SmartCard Protocol: JCardTest
OpenADC–>Gain–>Setting: 35
OpenADC–>Trigger Setup–>Mode: Rising Edge
CW Extra–>Clock Source: TargetIO-IN
CW Extra–>Trigger Pins: Uncheck Front Panel A
CW Extra–>Trigger Pins: Check Target IO4 (Trigger Line)
OpenADC–>Clock Setup–>ADC Clock–>Source: EXTCLK x4 via DCM
OpenADC–>Trigger Setup–>Total Samples: 5000
I have modified the JCardTest to look like this:
def go(self):
status = self.hw.sendAPDU(0x00, 0xA4, 0x04, 0x00, [0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0x01, 0x01])
if status != 0x9000:
raise IOError("Invalid Status: %x" % status)
(resp, pay) = self.hw.sendAPDU(0x80, 0x01, 0x09, 0x09 , rxdatalen=18)
if resp != 0x9000:
raise IOError("Invalid Status: %x" % status)
self.resp = pay
print self.resp
Using that APDU the app on smartcard will display 18 b’s as you can see in the image the output is “66” which is B in Dec. I am getting the correct output from the smartcard. However, you can see there is no power trace. Do you know why no power trace is displayed and what can I do?
Regards.