DPA contests home






Traces Tables


Hall of Fame

Frequently Asked Questions



Tools for Unix/Linux

Reference attack

A reference attack is available in the SVN repository under the directory code/v2/reference/attack. Instructions to access the repository are given below.

You can also download directly the reference attack using the link: reference_attack-1.0.1.tar.gz.

Tools (attack wrapper, result metrics computation tools and reference attack in Python)

The aim of the attack wrapper is to launch the attack program, retrieve traces from the public base, give them one by one to the attack program, retrieve result matrices from the attack program and store them for later exploitation (computation of result metrics by the tool provided below).

The aim of the metrics computation tool is to compute the different metrics (partial success rate, partial guessing entropy and global success rate, see rules) from the results collected by the attack wrapper during the attacks.

A package containing these tools is available: attack_wrapper-1.1.1.tar.gz.

These tools are also available in the SVN repository under the directory code/v2/reference/wrapper. Instructions to access the repository are given below.

Tools for Windows

The tools (reference attack in C#, framework to develop your own attack in C#, metric computation tool) for Windows comes in the form of a Microsoft Visual Studio 2008 project containing the C# source code of the two tools and the base framework to develop and test your attack. If you do not have Microsoft Visual Studio 2008 or newer, you can download Microsoft Visual C# Express (note: it is your responsability to check the licence of this product to see if you have the right to download it).

If you use Matlab under Windows to develop your attack, use the following Matlab file as a base for your developments:

AES design

The Verilog source files for the control and the cryptographic FPGA of the SASEBO GII board used for the acquisitions are available for download:

The already compiled XILINX project is also available made available there:


To check the integrity of these files after download, you can find below the md5sum checksum of them:

Instructions to extract the archives above (under any Unix (including Mac OS X) or under Windows with Cygwin):

3176a0f821dc62a5bf24104696aa39ca  keymsg_public_base_dpacontest2.bz2
f68551cf839853077da55367b3b0ffd1  keymsg_template_base_dpacontest2.bz2
538964ec67f76f1b3e4d90ff835e12f9  DPA_contest2_public_base_index_file.bz2
2416ad33a2ca071b8b2f3cb6f437f498  DPA_contest2_public_base_diff_vcc_a128_2009_12_23.tar.bz2
807f448a8b1be6066fbe34e395e20513  DPA_contest2_public_base_diff_vcc_a128_2009_12_23.tar.bz2.part0
e161a56a24555610f3bcc819b51f172f  DPA_contest2_public_base_diff_vcc_a128_2009_12_23.tar.bz2.part1
7552032345c5b9d633b5c76b8e5b6394  DPA_contest2_public_base_diff_vcc_a128_2009_12_23.tar.bz2.part2
7b4a37471948347b3156666fd708f96b  DPA_contest2_public_base_diff_vcc_a128_2009_12_23.tar.bz2.part3
fb988e22168deb934f31e86d45fa3b5f  DPA_contest2_template_base_index_file.bz2
25f4d41483858dcee368b69598f14e3c  DPA_contest2_template_base_diff_vcc_a128_2009_12_23.tar.bz2
3ac27d4e7e3fdbfd5587ea789f92d30e  DPA_contest2_template_base_diff_vcc_a128_2009_12_23.tar.bz2.part0
b291bdbe9435f37b5eb80140d09ef993  DPA_contest2_template_base_diff_vcc_a128_2009_12_23.tar.bz2.part1
171644496b1571402bf20ddc028804df  DPA_contest2_template_base_diff_vcc_a128_2009_12_23.tar.bz2.part2
c2d33e8306eb4fae5df6b7ebf36660fc  DPA_contest2_template_base_diff_vcc_a128_2009_12_23.tar.bz2.part3
91fe38c18d1c53539df35fc983719fe5  DPA_contest2_template_base_diff_vcc_a128_2009_12_23.tar.bz2.part4
04b9c8190dd4985a866c9ce45a5e620a  DPA_contest2_template_base_diff_vcc_a128_2009_12_23.tar.bz2.part5

SVN repository

The subversion repository is accessible using the following parameters:

There are basically three ways to access this repository:

  1. You can browse the repository using a standard web browser by using the following link: https://svn.comelec.enst.fr/dpacontest/code/v2/
  2. You can use the subversion command-line client:
    • To retrieve a copy of the repository: svn co https://svn.comelec.enst.fr/dpacontest/code/v2/
    • To update your local copy of the repository: svn update
  3. You can use a SVN GUI client such as TortoiseSVN

For more information about the use of SVN, you can read the SVN book: Version Control with Subversion.