Introduction

News

Rules

Download

Documentation

Traces Tables

Participate

Hall of Fame

Frequently Asked Questions

Acknowledgments

Opinion Poll (2nd Edition)

Power Traces Tables

Tables Description

The power consumption traces available for the DPA contest v2, are stored in a public PostgreSQL database. These traces are regrouped by acquisition campaign, where each campaign is stored in a distinct table. The tables entries contain the following fields:

Some tables of the database are accessible by a PostgreSQL client, or by your application using the PostgreSQL libpq library with the following information:

Three acquisition campaigns were performed for the DPA contest v2: the template campaign, the public campaign and the private campaign.

Trace binary format

The trace field (SQL type bytea) contains the result of the acquisition. This fields contains exactly 3,253 values, each value is signed and coded on 16 bits (2 bytes). The byte order is little-endian (so it can be easily manipulated on a x86 computer). So this field is 6,506-byte long.

So in a C program, running on a little-endian machine (all x86(_64) computers are little-endian), this field can be directly interpreted as the following array:

#define TRACE_NUM_POINTS 3253
int16_t samples[TRACE_NUM_POINTS];

Sample Sessions

If you wish to interactively browse the database, you can use either a graphical or a command line client. We provide with two sample sessions using the psql command line client and the pgAdminIII graphical client.

1. With a Command Line Client, such as psql

$ psql -d production_traces -X -h dpa.enst.fr -U guest -W
Password for user guest:

type guest and ENTER.

You are now connected to the database server:

Welcome to psql 8.1.11, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)

production_traces=>

Standard SQL requests or PostgreSQL commands can be typed at the production_traces=> prompt. For instance, use this command to get an idea of the table contents:

production_traces=> SELECT message, key, ciphertext FROM "DPA_CONTEST_V2_template_base" LIMIT 10;
             message              |               key                |            ciphertext
----------------------------------+----------------------------------+----------------------------------
 f3cd25bc0e6ede44185e7a04b120e095 | 2bdccf90a083f8aa7105010370c1f9d9 | 590b56039852438fcba36b5ffa74940d
 7c5ff7e1f6ef64f43ca7c7f1e19d6caf | 543c3727b14a75ff54d467ae5dda6ffe | 8ce6b19671d5e5d7b2c74ed2493073f0
 dbb6ce73b550fa07e85f73d845ca59ea | 15a614a3ef9e579ab38223aa5d5102da | 0e3d5032e336a1f2adbe00d3b65ce449
 e6184464e41e8845b3538393b4d3b0f3 | 0268e60f9f98d18b20e5c2e731d6dcc7 | 9eaa8fdd2b127598e856f9750ddb818a
 ff792a505fd561b2b8d10ac6d93c3655 | 6baf4c87ad94fc42ea5aa34c98432649 | 627057693f64a34d97e9cbfbec2ee95f
 bbbe844df796e41c5a5eb848ad5fb9dd | cf9fafa8a00c7c2c5f60fe18f25ad311 | 3647f083e0227f15ec97d2af144967b4
 dfcf76cb7234b9bf3cc3d71defb53143 | 6ee484f05ced56797c9f1f457ad9b114 | fe5125d17b2fff508b538f8999c0c6a2
 3cccf9751af2fef74182dcc0f6c25784 | e03f268e68d7243c012935cfd5bccd85 | a8dbaec71e8b2af2e66abd22faa80c8b
 096f969a8a7c39b67ac88a3fdfd19134 | 5fcd93b362dbee0d909e3b979995aaf7 | c11a05608486a943ca3eb616881e1bf2
 566086a4e8f96901920708b24dbcd04f | 9ecb900a872c903e38815d974d147f0b | cc956dd0404623a3e76992aa6992826c
(10 rows)

2. With a Graphical Client, such as pgAdminIII

The same operations are illustrated with the GUI-based client pgAdminIII under Windows:

Database download

A file containing all the traces from template and public tables is available for download on the Download page.