sbox_breaker
index
/home/guilley/dpacontest/code/reference/sbox_breaker.py

sbox_breaker.py implements some methods to find the subkey used in a sbox
# to encrypt some messages, using the DES algorithm, according to the
# provided side channel traces.
# Copyright (C) 2008 Florent Flament (florent.flament@telecom-paristech.fr)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

 
Classes
       
sbox_breaker

 
class sbox_breaker
    Provides methods to break a sbox, given some traces.
 
  Methods defined here:
__init__(self, sbox)
Builds 64 key_estimator, one for each possible subkey for the given sbox
get_key(self)
Gives the current best key
process(self, msg, trace)
Process the given trace for the given message.
Updates the best key (instance member)

 
Functions
       
test()

 
Data
        __TABLE__ = 'secmatv1_2006_04_0809'