Attack AES by DPA on CW1173 board


#1

Hello, everyone here. I am a graduate student of Guangxi Normal University from China, at the same time, I’m the CW1173 board’s developer. My main research direction is Differential Power Analysis. I have mastered the basic principles of DPA attack, but I encountered many obstacles in my practice. I downloaded a set of power consumption and plaintext data from the website http://www.dpabook.org, and launched a DPA attack with Matlab, consequently obtain the correct key. However, when I used the CW1173 board to run AES encryption program, collected the power consumption data during the encryption process, and then attacked the data with DPA (using the same attack program), I could not get the correct key. So I want to ask if anyone have DPA attack example for CW1173 board. I think this will certainly help me a lot. If so, could you please provide them to me? I will deeply appreciate it.


#2

Hello,

We don’t have any examples of DPA attacks on AES, but we do have a few tutorials that might help you out:

These tutorials use Jupyter Notebooks and showcase the in progress ChipWhisperer API. If you’d prefer to use fully released software, https://wiki.newae.com/Tutorial_B5_Breaking_AES_(Straightforward) and https://wiki.newae.com/Tutorial_B6_Breaking_AES_(Manual_CPA_Attack) go through the CPA attack with the current version of the ChipWhisperer software.

For the attack from your link, you might want to confirm that the traces that you’ve captured are in the same format as the traces that you downloaded.

Let me know if that helps,

Alex


#3

Hello Alex,

Thank you so much for providing these for me.I have implementated the both of tutorial B5 and B6, but it only demonstrated that using CW1173 board to attack AES algorithm by CPA is feasible. It seems like the method of DPA with mean difference of statistical analysis technique is not feasible. I know the problem may be that the power consumption data I collect is different from the power consumption data I downloaded before. So I wondering whether I need to preprocess the collected power consumption data? Or consider alignment of power consumption traces?

I’m looking forward to your reply.
Best regards.

Dingwei