« Tor, conception, fonctionnement et limites » : différence entre les versions

Ligne 755 : Ligne 755 :
|-
|-
|}
|}


Exemple avec la première colonne. La multiplication s'effectue dans un corps de Galois GF(2⁸)
Exemple avec la première colonne. La multiplication s'effectue dans un corps de Galois GF(2⁸)


140
{| class="wikitable centre" width="100%"
233
|-
248
|align="center"|''' '''
221
|align="center"|''' '''
|align="center"|''' '''
|align="center"|''' '''
|align="left"|'''140'''
|-
|align="center"|''' '''
|align="center"|''' '''
|align="center"|''' '''
|align="center"|''' '''
|align="left"|'''233'''
|-
|align="center"|''' '''
|align="center"|''' '''
|align="center"|''' '''
|align="center"|''' '''
|align="left"|'''248'''
|-
|align="center"|''' '''
|align="center"|''' '''
|align="center"|''' '''
|align="center"|''' '''
|align="left"|'''221'''
|-
|align="center"|'''2'''
|align="center"|'''3'''
|align="center"|'''1'''
|align="center"|'''1'''
|align="left"|(2x140 XOR 3x233 XOR 1x248 XOR 1x221) = '''50'''
|-
|align="center"|'''1'''
|align="center"|'''2'''
|align="center"|'''3'''
|align="center"|'''1'''
|align="left"|(1x140 XOR 2x233 XOR 3x248 XOR 1x221) = '''139'''
|-
|align="center"|'''1'''
|align="center"|'''1'''
|align="center"|'''2'''
|align="center"|'''3'''
|align="left"|(1x140 XOR 1x233 XOR 2x248 XOR 3x221) = '''242'''
|-
|align="center"|'''3'''
|align="center"|'''1'''
|align="center"|'''1'''
|align="center"|'''2'''
|align="left"|(3x140 XOR 1x233 XOR 1x248 XOR 2x221) = '''63'''
|-
|}


2 3 1 1 (2x140 XOR 3x233 XOR 1x248 XOR 1x221) = 50
Donc la matrice devient :
1 2 3 1 (1x140 XOR 2x233 XOR 3x248 XOR 1x221) = 139
1 1 2 3 (1x140 XOR 1x233 XOR 2x248 XOR 3x221) = 242
3 1 1 2 (3x140 XOR 1x233 XOR 1x248 XOR 2x221) = 63


Donc la matrice devient :
{| class="wikitable centre" width="20%"
|-
|align="center"|'''140'''
|align="center"|'''52'''
|align="center"|'''171'''
|align="center"|'''163'''
|-
|align="center"|'''233'''
|align="center"|'''18'''
|align="center"|'''233'''
|align="center"|'''85'''
|-
|align="center"|'''248'''
|align="center"|'''134'''
|align="center"|'''106'''
|align="center"|'''58'''
|-
|align="center"|'''221'''
|align="center"|'''220'''
|align="center"|'''109'''
|align="center"|'''22'''
|-
|}


140  52 171 163 50   4 106 142
{| class="wikitable centre" width="20%"
233  18 233  85 139 93 177 81
|-
248 134 106  58 242 78 21 184
|align="center"|'''50'''
221 220 109  22 63 107 191 135
|align="center"|'''4'''
|align="center"|'''106'''
|align="center"|'''142'''
|-
|align="center"|'''139'''
|align="center"|'''93'''
|align="center"|'''177'''
|align="center"|'''81'''
|-
|align="center"|'''242'''
|align="center"|'''78'''
|align="center"|'''21'''
|align="center"|'''184'''
|-
|align="center"|'''63'''
|align="center"|'''107'''
|align="center"|'''191'''
|align="center"|'''135'''
|-
|}




Ligne 781 : Ligne 865 :
Il s'agit de la même chose que le tour préliminaire avec la fonction XOR, mais à partir d'une nouvelle sous-clé aléatoire déduite de la clé maîtresse (Une sous-clé aléatoire différente par tour), mettons :
Il s'agit de la même chose que le tour préliminaire avec la fonction XOR, mais à partir d'une nouvelle sous-clé aléatoire déduite de la clé maîtresse (Une sous-clé aléatoire différente par tour), mettons :


184 116 102 114 50  4 106 142 138 112  12 252
{| class="wikitable centre" width="20%"
222 163 60 91 139  93 177  81 85 254 113  10
|-
145 53 23 15 XOR 242  78  21 184 = 99 123   2 183
|align="center"|'''50'''
181 222  21  75 63 107 191 135 138 181 170 204
|align="center"|'''4'''
|align="center"|'''106'''
|align="center"|'''142'''
|-
|align="center"|'''139'''
|align="center"|'''93'''
|align="center"|'''177'''
|align="center"|'''81'''
|-
|align="center"|'''242'''
|align="center"|'''78'''
|align="center"|'''21'''
|align="center"|'''184'''
|-
|align="center"|'''63'''
|align="center"|'''107'''
|align="center"|'''191'''
|align="center"|'''135'''
|-
|}
XOR
{| class="wikitable centre" width="20%"
|-
|align="center"|'''184'''
|align="center"|'''116'''
|align="center"|'''102'''
|align="center"|'''114'''
|-
|align="center"|'''222'''
|align="center"|'''163'''
|align="center"|'''60'''
|align="center"|'''91'''
|-
|align="center"|'''145'''
|align="center"|'''53'''
|align="center"|'''23'''
|align="center"|'''15'''
|-
|align="center"|'''181'''
|align="center"|'''222'''
|align="center"|'''21'''
|align="center"|'''75'''
|-
|}
=
{| class="wikitable centre" width="20%"
|-
|align="center"|'''138'''
|align="center"|'''112'''
|align="center"|'''12'''
|align="center"|'''252'''
|-
|align="center"|'''85'''
|align="center"|'''254'''
|align="center"|'''113'''
|align="center"|'''10'''
|-
|align="center"|'''99'''
|align="center"|'''123'''
|align="center"|'''2'''
|align="center"|'''183'''
|-
|align="center"|'''138'''
|align="center"|'''181'''
|align="center"|'''170'''
|align="center"|'''204'''
|-
|}




Ensuite, on recommence toutes ces étapes 10, 12 ou 14 fois en fonction de la taille de la clé maîtresse (AES 128/192/256 bits). A cette étape, si on reprend notre table ASCII, notre message initial (Acide Lysergique) ressemblerait à :
Ensuite, on recommence toutes ces étapes 10, 12 ou 14 fois en fonction de la taille de la clé maîtresse (AES 128/192/256 bits). A cette étape, si on reprend notre table ASCII, notre message initial (Acide Lysergique) ressemblerait à :


138 112   12 252 85 254 113   10 99 123     2 183 138 181 170 204
{| class="wikitable centre" width="100%"
Š     p *FF*   ü U   þ   q *LF*   c   { *STX*   ·  Š   µ   ª   Ì
|-
! width="6.25%" | 138
! width="6.25%" | 112
! width="6.25%" | 12
! width="6.25%" | 252
! width="6.25%" | 85
! width="6.25%" | 254
! width="6.25%" | 113
! width="6.25%" | 10
! width="6.25%" | 99
! width="6.25%" | 123
! width="6.25%" | 2
! width="6.25%" | 183
! width="6.25%" | 138
! width="6.25%" | 181
! width="6.25%" | 170
! width="6.25%" | 204
|-
|align="center"|'''Š'''
|align="center"|'''p'''
|align="center"|'''*FF*'''
|align="center"|'''ü'''
|align="center"|'''U'''
|align="center"|'''þ'''
|align="center"|'''q'''
|align="center"|'''*LF*'''
|align="center"|'''c'''
|align="center"|'''{'''
|align="center"|'''*STX*'''
|align="center"|'''.'''
|align="center"|'''Š'''
|align="center"|'''µ'''
|align="center"|'''ª'''
|align="center"|'''Ì'''
|-
|}


Šp*FF*üUþq*LF*c{*STX*·ŠµªÌ
Šp*FF*üUþq*LF*c{*STX*·ŠµªÌ
245

modifications