dpa1: DPA

Description Usage Arguments Details Value Author(s) References Examples

View source: R/dpa.R

Description

The dpa1 function applies a Differential Power Analysis (DPA) to a set of traces in order to find the key used by the cryptographic device.

Usage

1
dpa1(x, y,...)

Arguments

x

A matrix where each row is a trace.

y

A vector where the i_th element of the vector y is the key for the i_th trace in the matrix x.

...

Currently ignored.

Details

The dpa1 function is an example of DPA. It calculates the average X_i of traces for each key Y_i. Then, to estimate the key from a trace T, it returns the key Y_i which maximizes the equation argmax{Y_i}(cor(T,X_i))

Value

The dpa1 function returns an object which knowing a trace can be used with the predict function that estimates the value of the key. The value of this function is an object of class dpa1, which is a list with the following components:

mean

a list of arithmetics means, one for each possible key

Author(s)

Liran Lerman [email protected] & Gianluca Bontempi [email protected]@ulb.ac.be & Olivier Markowitch [email protected]

References

P. C. Kocher & J. Jaffe & B. Jun, (1999), "Differential Power Analysis: Leaking Secrets", In Proc. Crypto '99, Springer-Verlag, LNCS 1666, pages 388-397.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
#data collection
data(powerC)
traces = powerC[,-301]
key = powerC[,301]+1

#model creation
attack=dpa1(traces[-1,],factor(key[-1]))

#model prediction
predict(attack, traces[1,])

sideChannelAttack documentation built on May 30, 2017, 7:24 a.m.