ˇ e vysok´e uˇcen´ı technick´e v Praze Cesk´ Fakulta elektrotechnick´a
ˇ VUT FEL katedra pocˇı´tacˇu˚ C
Diplomov´a pr´ace
Kryptoanal´ yza CSA Jakub Marek
Vedouc´ı pr´ace: Ing. Jan Schmidt, Ph.D.
Studijn´ı program: Elektrotechnika a informatika dob´ıhaj´ıc´ı magistersk´ y Obor: Informatika a v´ ypoˇcetn´ı technika leden 2008
ii
Podˇ ekov´ an´ı Chtˇel bych podˇekovat v prv´e ˇradˇe sv´emu ˇskoliteli Ing. Janu Schmidtovi, Ph.D. za vstˇr´ıcnou spolupr´aci a cenn´e rady. Z´ aroveˇ n bych chtˇel podˇekovat sv´ ym bl´ızk´ ym za u ´ˇzasn´e prostˇred´ı, kter´e mi bˇehem vypracov´ av´ an´ı pr´ ace vytv´aˇreli. iii
iv
Prohl´ aˇ sen´ı Prohlaˇsuji, ˇze jsem svou diplomovou pr´aci vypracoval samostatnˇe a pouˇzil jsem pouze podklady uveden´e v pˇriloˇzen´em seznamu. Nem´am z´ avaˇzn´ y d˚ uvod proti uˇzit´ı tohoto ˇskoln´ıho d´ıla ve smyslu §60 Z´akona ˇc. 121/2000 Sb., o pr´avu autorsk´em, o pr´ avech souvisej´ıc´ıch s pr´avem autorsk´ ym a o zmˇenˇe nˇekter´ ych z´akon˚ u (autorsk´ y z´ akon).
V Praze dne 17.1. 2008
.............................................................
v
vi
Abstract This diploma thesis provides a general overview of cryptography and cryptanalysis. It is focused in detail on the ciphers DES, Zodiac and CSA which are recently in use. A part of this work is also an analysis of robustness of those ciphers in relation to number of rounds and chosen cryptanalytic method. First section (review) consists of description of cipher modes, important definitions, cipher algorithms characterization and cryptanalytic method description. Second section is more practically focused and it demonstrates the robustness of DES, Zodiac and CSA when attacked by linear, differential and algebraic analysis, respectively. The robustness analysis results are in accordance with our prediction. CSA appears to be the most stabile ciphering system followed by Zodiac and DES, which is limited by short key length. The most effective attack seems to be the linear cryptanalysis which enabled to get over the highest number of rounds for each of tested ciphers. Although the algebraic cryptanalysis has a great potential and should be promoted in the future.
Abstrakt Tato diplomov´ a pr´ ace poskytuje pˇrehled z´akladn´ı problematiky ˇsifrovac´ıch syst´em˚ u. Podrobnˇeji se zamˇeˇruje na v souˇcasnosti pouˇz´ıvan´e ˇsifry DES, Zodiac a CSA a jej´ı souˇc´ast´ı je tak´e anal´ yza odolnosti tˇechto ˇsifer v z´ avislosti na pouˇzit´e kryptoanalytick´e metodˇe a poˇctu rund dan´e ˇsifry. Prvn´ı ˇc´ast pr´ ace je tedy vˇenov´ ana vlastn´ı reˇserˇsi a zejm´ena pˇrehledu jednotliv´ ych ˇsifrovac´ıch m´od˚ u, definic´ım d˚ uleˇzit´ ych pojm˚ u, popisu bezpeˇcnostn´ıch rizik, algoritm˚ u samotn´ ych ˇsifer a krytoanalytick´ ych metod. Druh´ a ˇc´ast pr´ace demonstruje odolnost ˇsifer DES, Zodiac a CSA v˚ uˇci line´arn´ı, diferenci´ aln´ı a ˇc´ asteˇcnˇe algebraick´e anal´ yze. Z v´ ysledk˚ u vypl´ yv´ a, ˇze CSA je, dle pˇredpoklad˚ u, nejstabilnˇejˇs´ım ˇsifrovac´ım syst´emem oproti ˇsifˇre Zodiac a v posledn´ı ˇradˇe DES, kterou znatelnˇe omezuje kr´atk´a d´elka kl´ıˇce. Nejefektivnˇeji se jevila line´ arn´ı kryptoanal´ yza, kterou bylo moˇzn´e za dan´ ych podm´ınek u vˇsech ˇsifer pˇrekonat nejvyˇsˇs´ı poˇcet rund. Do budoucna lze vˇsak poˇc´ıtat pˇredevˇs´ım s uplatnˇen´ım perspektivn´ı algebraick´e kryptoanal´ yzy.
vii
viii
Obsah Seznam obr´ azk˚ u
xi
Seznam tabulek
xiii
´ 1 Uvod
1
2 Specifikace c´ıl˚ u pr´ ace
2
´ 3 Uvod do kryptografie vybran´ ych ˇ sifer 3.1 Terminologie a dˇelen´ı ˇsifer . . . . . . . . . . 3.2 Operaˇcn´ı m´ ody blokov´ ych ˇsifer . . . . . . . 3.2.1 ECB (Electronic CodeBook ) m´od . 3.2.2 CBC (Cipher Block Chaining ) m´od 3.2.3 CFB (Cipher FeedBack ) m´od . . . . 3.2.4 OFB (Output FeedBack ) m´od . . . 3.3 Popis ˇsifer DES, Zodiac, CSA a KeeLoq . . 3.3.1 Data Encryption standard . . . . . . ´ 3.3.1.1 Uvodn´ ı anal´ yza . . . . . . ˇ 3.3.1.2 Sifrov´ an´ı . . . . . . . . . . 3.3.1.3 Feistelova funkce . . . . . . 3.3.1.4 Rundov´e podkl´ıˇce . . . . . 3.3.1.5 Deˇsifrov´ an´ı . . . . . . . . . 3.3.2 Zodiac . . . . . . . . . . . . . . . . . 3.3.3 KeeLoq . . . . . . . . . . . . . . . . 3.3.4 Common Scrambling Algorithm . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
3 3 7 7 9 10 11 11 11 12 12 14 15 16 16 18 20
4 Kryptoanalytick´ e metody 4.1 Druhy u ´tok˚ u . . . . . . . . . . . . . . ´ 4.1.1 Utok hrubou silou . . . . . . . 4.1.2 Line´ arn´ı kryptoanal´ yza . . . . 4.1.3 Diferenci´ aln´ı kryptoanal´ yza . . 4.1.4 Algebraick´ a kryptoanal´ yza . . 4.2 Krit´eria pro hodnocen´ı odolnosti ˇsifer
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
26 26 27 28 29 31 31
5 Vlastn´ı kryptoanal´ yza vybran´ ych ˇ sifer 5.1 Minim´ aln´ı matematick´ y apar´at . . . . ´ 5.2 Utok line´ arn´ı kryptoanal´ yzou . . . . . ´ 5.3 Utok diferenci´ aln´ı kryptoanal´ yzou . . ´ 5.4 Utok algebraickou kryptoanal´ yzou . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
33 33 33 37 41
6 Srovn´ an´ı odolnosti ˇ sifer DES, Zodiac a CSA
43
7 Z´ avˇ er
44
8 Seznam literatury
45 ix
A Seznam pouˇ zit´ ych zkratek
49
B Stavebn´ı prvky DES
51
C Vyj´ adˇ ren´ı SBOX˚ u DES v ANF
55
D Vyj´ adˇ ren´ı SBOX˚ u CSA v ANF D.1 Blokov´ a ˇc´ ast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D.2 Proudov´ a ˇc´ ast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59 59 62
E Vyj´ adˇ ren´ı SBOX˚ u Zodiac v ANF
63
F Line´ arn´ı aproximaˇ cn´ı tabulky DES
69
G Line´ arn´ı aproximaˇ cn´ı graf S-BOXu blokov´ eˇ c´ asti CSA
73
H Line´ arn´ı aproximaˇ cn´ı graf S-BOX˚ uˇ sifry Zodiac
75
I
77
Diferenˇ cn´ı distribuˇ cn´ı tabulky DES
J Diferenˇ cn´ı distribuˇ cn´ı graf S-BOXu blokov´ eˇ c´ asti CSA
81
K Diferenˇ cn´ı distribuˇ cn´ı graf S-BOX˚ uˇ sifry Zodiac
83
L Pr˚ uchod kryptosyst´ emem DES line´ arn´ımi aproximacemi
85
M Pr˚ uchod kryptosyst´ emem DES s pomoc´ı diferenˇ cn´ı tabulky
87
N Obsah pˇ riloˇ zen´ eho DVD
89
x
Seznam obr´ azk˚ u 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.20 3.21 3.22 3.23 3.24
Z´ akladn´ı sch´ema ˇsifrovac´ıch algoritm˚ u M´ ody blokov´ ych ˇsifer . . . . . . . . . . ˇ ECB - Sifrov´ an´ı . . . . . . . . . . . . . ECB - Deˇsifrov´ an´ı . . . . . . . . . . . ˇ CBC - Sifrov´ an´ı . . . . . . . . . . . . . CBC - Deˇsifrov´ an´ı . . . . . . . . . . . ˇ CFB - Sifrov´ an´ı . . . . . . . . . . . . . CFB - Deˇsifrov´ an´ı . . . . . . . . . . . ˇ OFB - Sifrov´ an´ı . . . . . . . . . . . . . OFB - Deˇsifrov´ an´ı . . . . . . . . . . . DES - Lavinov´ y efekt . . . . . . . . . ˇ DES - Sifrov´ an´ı . . . . . . . . . . . . . DES - V´ ypoˇcet Feistelovy funkce . . . DES - V´ ybˇer podkl´ıˇc˚ u . . . . . . . . . DES - Deˇsifrov´ an´ı . . . . . . . . . . . ˇ Zodiac - Sifrov´ an´ı . . . . . . . . . . . . Zodiac - Permutace . . . . . . . . . . . Zodiac - Feistelova funkce . . . . . . . Zodiac - V´ ybˇer podkl´ıˇc˚ u . . . . . . . . ˇ KeeLoq - Sifrov´ an´ı . . . . . . . . . . . KeeLoq - Deˇsifrov´ an´ı . . . . . . . . . . CSA - Kompletn´ı algoritmus . . . . . CSA - Blokov´ a ˇc´ ast algoritmu . . . . . CSA - Proudov´ a ˇc´ ast algoritmu . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
3 8 8 8 10 10 10 11 11 12 13 15 16 17 18 19 20 20 21 21 22 22 24 25
4.1
Diferenci´ aln´ı kryptoanal´ yza - Bumerangov´ yu ´tok (Boomerang attack ) . . . . . .
30
5.1 5.2 5.3 5.4 5.5 5.6
´ eˇsnost linearizace jedn´e rundy . . . . . . . . . . . . . . . . . . . . . . . . . . Uspˇ Poˇcet rund napadnuteln´ ych line´arn´ı kryptoanal´ yzou . . . . . . . . . . . . . . . Procentueln´ı vyj´ adˇren´ı poˇctu rund napadnuteln´ ych line´arn´ı kryptoanal´ yzou . . Srovn´ an´ı r˚ uzn´ ych pˇr´ıstup˚ u diferenci´aln´ı kryptoanal´ yzy . . . . . . . . . . . . . . Poˇcet rund napadnuteln´ ych diferenci´aln´ı kryptoanal´ yzou . . . . . . . . . . . . . Procentueln´ı vyj´ adˇren´ı poˇctu rund napadnuteln´ ych diferenci´aln´ı kryptoanal´ yzou
36 36 37 39 40 40
6.1
Srovn´ an´ı celkov´eho poˇctu rund . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
G.1 Line´ arn´ı aproximaˇcn´ı graf S-BOXu blokov´e ˇc´asti CSA . . . . . . . . . . . . . .
73
H.1 Line´ arn´ı aproximaˇcn´ı graf S-BOXu S1 (45x ) ˇsifry Zodiac . . . . . . . . . . . . . H.2 Line´ arn´ı aproximaˇcn´ı graf S-BOXu S2 (GF (28 )) ˇsifry Zodiac . . . . . . . . . .
75 76
J.1
Diferenˇcn´ı distribuˇcn´ı graf S-BOXu blokov´e ˇc´asti CSA . . . . . . . . . . . . . .
81
K.1 Diferenˇcn´ı distribuˇcn´ı graf S-BOXu S1 (45x ) ˇsifry Zodiac . . . . . . . . . . . . . K.2 Diferenˇcn´ı distribuˇcn´ı graf S-BOXu S2 (GF (28 )) ˇsifry Zodiac . . . . . . . . . .
83 84
L.1 Pˇr´ıklad pr˚ uchodu kryptosyst´emem DES line´arn´ımi aproximacemi . . . . . . . .
85
M.1 Pˇr´ıklad pr˚ uchodu kryptosyst´emem DES pomoc´ı distribuˇcnˇe diferenˇcn´ıch tabulek
87
N.1 Obsah pˇriloˇzen´eho DVD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
xi
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
xii
Seznam tabulek 3.1 3.2 3.3 3.4
DES DES DES DES
-
. . . .
12 13 14 14
5.1 5.2
Tabulka moˇzn´ ych vstup˚ u pro S1 , ∆X = 0x34 . . . . . . . . . . . . . . . . . . . Tabulka moˇzn´ ych kl´ıˇc˚ u pro S1 , ∆X = 0x34, ∆Y = 0x0D . . . . . . . . . . . . .
38 39
B.1 B.2 B.3 B.4 B.5
DES DES DES DES DES
. . . . .
51 52 52 53 53
F.1 Line´ arn´ı aproximaˇcn´ı tabulka - DES(FIPS 46-3) SBOX 5 ˇc´ast 1. . . . . . . . . F.2 Line´ arn´ı aproximaˇcn´ı tabulka - DES(FIPS 46-3) SBOX 5 ˇc´ast 2. . . . . . . . .
70 71
I.1 I.2
78 79
-
slab´e kl´ıˇce . . . . . . . . . . . . . . poloslab´e kl´ıˇce . . . . . . . . . . . . poˇc´ ateˇcn´ı permutace P P . . . . . . inverzn´ı poˇc´ ateˇcn´ı permutace P P −1
Expanzn´ı permutace E u Feistelovy permutace P u Feistelovy funkce . rotace u v´ ybˇeru podkl´ıˇce . . . . . . permutace P 1 pˇri v´ ybˇeru podkl´ıˇce permutace P 2 pˇri v´ ybˇeru podkl´ıˇce
. . . .
. . . .
. . . .
. . . .
funkce . . . . . . . . . . . . . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
. . . .
. . . . .
Diferenˇcn´ı distribuˇcn´ı tabulka - DES(FIPS 46-3) SBOX 1 ˇc´ast 1. . . . . . . . . Diferenˇcn´ı distribuˇcn´ı tabulka - DES(FIPS 46-3) SBOX 1 ˇc´ast 2. . . . . . . . .
xiii
xiv
´ KAPITOLA 1. UVOD
1
´ 1 Uvod Bˇehem posledn´ıch let se v´ ypoˇcetn´ı v´ ykon poˇc´ıtaˇc˚ u znˇekolikan´asobil. Souˇcasn´ y modern´ı svˇet je na poˇc´ıtaˇcov´ ych technologi´ıch bezpochyby z´avisl´ y a tak jejich v´ yvoj ˇzene neust´ale dopˇredu. Obrovsk´a mnoˇzstv´ı dat, kter´ a proud´ı pˇredevˇs´ım prostˇred´ım internetu jsou tak´e bezpeˇcnostn´ım probl´emem nebot’ nen´ı moˇzn´e, aby data byla zachytiteln´a pouze pˇr´ıjemcem. Souˇcasnˇe s v´ yvojem poˇc´ıtaˇcov´e technologie tak prob´ıh´a v´ yvoj kryptografick´ y, v´ yvoj zabezpeˇcovac´ıch technologi´ı. Jak´e m´ a tedy tento v´ yvoj dopady na souˇcasnou kryptografii? Pˇr´ıkladem je velice dobˇre zn´ am´ a blokov´a ˇsifra DES (Data Encryption Standard). Ta byla vyvinuta v sedmdes´ at´ ych letech dvac´ at´eho stolet´ı a v listopadu roku 1976 byla v USA zvolena za ˇsifrovac´ı standard. Od t´e doby se velice rozˇs´ıˇrila a pouˇz´ıvaly ji bankovn´ı instituce, vl´ adn´ı u ´stavy, ale i dom´ acnosti. Jiˇz roku 1977 byl vˇsak navrˇzen kryptology Diffiem a Hellmanem stroj, kter´ y by pˇri sv´e tehdejˇs´ı cenˇe 20 mili´on˚ u dolar˚ u dok´azal tento 56 bitov´ y algoritmus prolomit za jedin´ y den. N´ aslednˇe v roce 1993 pˇriˇsel Michael J. Wiener s n´avrhem deˇsifrovac´ıho zaˇr´ızen´ı, kter´ y by bylo moˇzn´e zkonstruovat za jeden mili´on dolar˚ u a dok´azalo by naj´ıt pouˇzit´ y kl´ıˇc do sedmi hodin. St´ ale klesala cena za tyto deˇsifr´atory“ a v roce 1998 se pohybovala jiˇz jen kolem ” ˇctvrt milionu dolar˚ u, pozdˇeji dokonce pouh´ ych sta tis´ıc. Proto bylo v roce 2004 na z´akladˇe zpracovan´eho hodnocen´ı NIST navrˇzeno zruˇsen´ı FIPS 46-3 (DES) jako ˇsifrovac´ıho standardu. Pro zaj´ımavost, v letoˇsn´ım roce lze deˇsifrovac´ı stroj (COPACOBANA) poˇr´ıdit pˇribliˇznˇe za deset tis´ıc americk´ ych dolar˚ u. Je toto osud, kter´ y jednou potk´ a kaˇzdou ˇsifru nebo jiˇz souˇcasn´ı kryptografici vyvinuli ˇsifru neprolomitelnou, jak se v t´eto souvislosti spekuluje o ˇsifˇre CSA? Protoˇze se jedn´ a o aktu´ aln´ı a st´ ale se dynamicky vyv´ıjej´ıc´ı problematiku, kter´a mne velmi zaujala, rozhodl jsem se na toto t´ema vypracovat svoji diplomovou pr´aci. V t´eto pr´aci bych chtˇel r´amcovˇe shrnout souˇcasn´e poznatky z kryptografie (zejm´ena vybran´ ych ˇsifer) a kryptoanal´ yzy. Chtˇel bych se zamˇeˇrit na velmi zaj´ımav´e ˇsifry DES, Zodiac a CSA, nebot’ se jedn´a o z´astupce r˚ uzn´ ych typ˚ u ˇsifrovac´ıch algoritm˚ u (DES a Zodiac jako z´astupci blokov´ ych ˇsifer se sv´ ym charakterem podobaj´ı, zcela se od nich odliˇsuje velmi nadˇejn´a CSA jako kombinace proudov´e a blokov´e ˇsifry). Na tˇechto kryptosyst´emech bych chtˇel uk´azat jejich rozd´ılnou odolnost v˚ uˇci r˚ uzn´ ym typ˚ um u ´tok˚ u, kter´ ymi bych dan´e ˇsifry otestoval. Velmi zaj´ımav´e je pˇri takov´ ych anal´ yz´ ach tak´e sledov´ an´ı asymptotick´e sloˇzitosti algoritm˚ u pouˇzit´ ych ke kryptoanal´ yze v z´avislosti na pouˇzit´ ym poˇctu rund nebo d´elce kl´ıˇce samotn´e ˇsifry. Celkovˇe bych ve sv´e pr´ aci chtˇel pˇribl´ıˇzit kryptologii a jako z´astupce ˇsifer pak pˇredevˇs´ım zmiˇ novan´e DES, Zodiac a CSA. Z´ aroveˇ n bych chtˇel demonstrovat moˇznosti kryptoanal´ yzy a to pˇredevˇs´ım v z´avislosti na komplexnosti dan´eho ˇsifrovac´ıho syst´emu a poˇctu rund ˇsifrovac´ıho procesu.
2
˚ PRACE ´ KAPITOLA 2. SPECIFIKACE C´ILU
2 Specifikace c´ıl˚ u pr´ ace V r´amci sv´e diplomov´e pr´ ace z oboru kryptologie se, v souladu se zad´an´ım, pokus´ım charakterizovat souˇcasn´e metody ˇsifrov´ an´ı dat, a to zejm´ena na pˇr´ıkladech ˇsifer CSA (Common Scrambling Algorithm), DES (Data Encryption Standard) a Zodiac. Tato pr´ace by mˇela b´ yt reˇserˇsn´ı (srovn´avac´ı). D´ale se budu vˇenovat metod´ am anal´ yzy ˇsifrovan´eho textu a to opˇet se zamˇeˇren´ım na ˇsifry CSA, DES a Zodiac. V t´eto ˇc´ asti se pokus´ım o charakterizaci jednotliv´ ych u ´tok˚ u, pˇredevˇs´ım pomoc´ı line´arn´ı, diferenci´ aln´ı a algebraick´e kryptoanal´ yzy a jejich omezen´ı. Ve srovn´avac´ı ˇc´ asti pr´ ace bych se n´ aslednˇe pokusil o anal´ yzu a srovn´an´ı jednotliv´ ych ˇsifrovac´ıch algoritm˚ u a jejich robustnosti. R´ ad bych demonstroval odolnost jednotliv´ ych druh˚ u ˇsifer (CSA, DES a Zodiac) v z´ avislosti na charakteru pouˇzit´eho u ´toku a poˇctu rund. Vzhledem k blokov´emu charakteru ˇsifer DES a Zodiac jsem se pro u ´ˇcely srovn´an´ı rozhodl vybrat tak´e blokovou ˇc´ ast ˇsifry CSA. V´ ysledn´a data by mˇela odpov´ıdat komplexitˇe a pokroˇcilosti ˇsifrovac´ıho algoritmu a tedy CSA jako nejmodernˇejˇs´ı z ˇsifer by mˇela vykazovat nejvyˇsˇs´ı odolnost n´asledov´ana ˇsifrou Zodiac. Pˇr´ıpadn´e odchylky od pˇredpokl´ adan´eho chov´an´ı ˇsifer budou diskutov´any.
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
3
´ 3 Uvod do kryptografie vybran´ ych ˇ sifer Kryptologie je vˇeda zab´ yvaj´ıc´ı se naukou o ˇsifr´ach. Tedy o textu, kter´ y b´ yv´a zaˇsifrov´an pomoc´ı urˇcit´eho kl´ıˇce a bez nˇeho by nikdo nemˇel b´ yt schopen text ˇc´ıst ˇci pˇr´ıpadnˇe modifikovat. Samotn´ ym ˇsifrov´ an´ım se pak zab´ yv´a kryptografie. Anal´ yzou odolnosti ˇsifrovac´ı algoritm˚ u, jejich kl´ıˇc˚ u a jejich prolamov´ an´ım se zab´ yv´a kryptoanal´ yza. V n´asleduj´ıc´ıch ˇc´astech pr´ace se pokus´ım o anal´ yzu dan´ ych kryptosyst´em˚ u a jejich odolnosti. V t´eto kapitole budou zavedeny pojmy d˚ uleˇzit´e pro pochopen´ı n´ asleduj´ıc´ıho textu a pops´any konkr´etnˇe ˇsifry CSA, DES a Zodiac jenˇz budou d´ ale analyzov´ any.
3.1
Terminologie a dˇ elen´ı ˇ sifer
Ponˇekud teoretiˇctˇejˇs´ı podkapitola, kter´a je vˇenovan´a pˇredevˇs´ım definic´ım nezbytn´ ym k popisu kryptografick´ ych syst´em˚ u. Definice jsou pˇrev´aˇznˇe pˇrejaty z [Kl´ı05]. V prv´e ˇradˇe definujeme pojem ˇsifra, resp. kryptografick´ y syst´em pro ˇsifrov´an´ı zpr´av: Definice 3.1.1 Kryptografick´ y syst´ em pro ˇ sifrov´ an´ı zpr´ av (ˇ sifra) Kryptografick´y syst´em pro ˇsifrov´ an´ı zpr´ av je pˇetice (P, C, K, E, D), kde P je prostor otevˇren´ych zpr´ av, C prostor ˇsifrov´ych zpr´ av a K prostor kl´ıˇc˚ u. E, D je dvojice zobrazen´ı, kter´e pro ∀k ∈ K definuj´ı transformaci pro zaˇsifrov´ an´ı zpr´ av Ek a transformaci pro deˇsifrov´ an´ı zpr´ av Ek : P → C : p → c
(3.1)
Dk : C → P : c → p,
(3.2)
∀k ∈ K, p ∈ P : Dk (Ek (p)) = p.
(3.3)
pˇriˇcemˇz plat´ı
Klíč k
Otevřený text p
Klíč k
Veřejně přístupný komunikační kanál Šifrovací Algoritmus E()
Otevřený text p Dešifrovací algoritmus D()
Šifrovaný text c
Obr´ azek 3.1: Z´akladn´ı sch´ema ˇsifrovac´ıch algoritm˚ u ˇ Pozn´ amka 3.1.1 Sifrovac´ ı a deˇsifrovac´ı kl´ıˇce se mohou liˇsit Obr´azek 3.1 demonstruje pouˇzit´ı kryptografie v praxi. Pˇri pˇrenosu dat pˇres nezabezpeˇcen´ y kan´al, kter´ y je moˇzno odposlouch´ avat, je pro zachov´an´ı urˇcit´eho standardu zabezpeˇcen´ı nutn´e ˇsifrovat. V z´ avislosti na pouˇzit´ ych ˇsifrovac´ıch a deˇsifrovac´ıch kl´ıˇc´ıch se soudob´a kryptografie dˇel´ı na symetrickou a kryptografii s veˇrejn´ ym kl´ıˇcem (asymetrickou).
4
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
Definice 3.1.2 Symetrick´ y kryptografick´ y syst´ em pro ˇ sifrov´ an´ı zpr´ av (symetrick´ a ˇ sifra) Symetrick´ a ˇsifra je takov´ a ˇsifra, kde pro kaˇzd´e k ∈ K lze z transformace zaˇsifrov´ an´ı Ek urˇcit transformaci deˇsifrov´ an´ı Dk a naopak. Definice 3.1.3 Asymetrick´ y kryptografick´ y syst´ em pro ˇ sifrov´ an´ı zpr´ av (asymetrick´ a ˇ sifra) Asymetrick´ a ˇsifra je takov´ a ˇsifra, kde pro t´emˇeˇr vˇsechna k ∈ K nelze z transformace pro zaˇsifrov´ an´ı Ek urˇcit transformaci pro deˇsifrov´ an´ı Dk . V praxi je u asymetrick´ych ˇsifer kl´ıˇc k tajn´ym nastaven´ım, z kter´eho se vhodnou transformac´ı G vygeneruje dvojice parametr˚ u (e, d), kter´e se naz´yvaj´ı po ˇradˇe veˇrejn´y (e) a priv´ atn´ı (d) kl´ıˇc. Zjednoduˇsenˇe ˇreˇceno symetrick´ a kryptografie pouˇz´ıv´a stejn´ y kl´ıˇc pro ˇsifrov´an´ı i deˇsifrov´an´ı. Hlavn´ım probl´emem je distribuce tohoto kl´ıˇce. Asymetrick´a kryptografie vyuˇz´ıv´a nˇekolika kl´ıˇc˚ u a ˇreˇs´ı tak jejich distribuci. Zpravidla je zpr´ava zaˇsifrov´ana veˇrejn´ ym kl´ıˇcem pˇr´ıjemce a ten si zpr´avu deˇsifruje pomoc´ı sv´eho soukrom´eho kl´ıˇce. Kryptografie s veˇrejn´ ym kl´ıˇcem m´a vˇetˇs´ı n´aroky na d´elku kl´ıˇce, v souˇcasnosti se tud´ıˇz pouˇz´ıv´a tzv. hybridn´ı kryptografie, kter´a vyuˇz´ıv´a obou tˇechto metod. V t´eto pr´aci se budu zab´ yvat pouze symetrickou kryptologi´ı. Symetrick´e ˇsifry se podle z´akladn´ıho principu dˇel´ı na blokov´e a proudov´e ˇsifry. Definice 3.1.4 Symetrick´ a blokov´ aˇ sifra Necht’ A je abeceda q symbol˚ u, t ∈ N a P, C je mnoˇzina vˇsech ˇretˇezc˚ u d´elky t nad A. Necht’ K je mnoˇzina kl´ıˇc˚ u. Blokov´ a ˇsifra je ˇsifrovac´ı syst´em (P, C, K, E, D), kde E a D jsou zobrazen´ı, definuj´ıc´ı pro kaˇzd´e k ∈ K transformaci zaˇsifrov´ an´ı Ek a deˇsifrov´ an´ı Dk tak, ˇze zaˇsifrov´ an´ı blok˚ u otevˇren´eho textu p(1), p(2), p(3), ..., (kde p(i) ∈ P pro kaˇzd´e i ∈ N ) prob´ıh´ a podle vztahu ∀i ∈ N : c(i) = Ek (p(i))
(3.4)
∀i ∈ N : p(i) = Dk (c(i)).
(3.5)
a deˇsifrov´ an´ı podle vztahu
Definice 3.1.5 Symetrick´ a proudov´ aˇ sifra Necht’ A je abeceda q symbol˚ u, necht’ P, C je mnoˇzina vˇsech koneˇcn´ych ˇretˇezc˚ u nad A a necht’ K je mnoˇzina kl´ıˇc˚ u. Proudov´ a ˇsifra se skl´ ad´ a z transformace (gener´ atoru) G, zobrazen´ı E a zobrazen´ı D. Pro kaˇzd´y kl´ıˇc k ∈ K gener´ ator G vytv´ aˇr´ı posloupnost hesla h(1), h(2), ... , pˇriˇcemˇz prvky h(i) reprezentuj´ı libovoln´e substituce Eh (1), Eh (2), ... nad abecedou A. Zobrazen´ı E a D kaˇzd´emu kl´ıˇci k ∈ K pˇriˇrazuj´ı transformace zaˇsifrov´ an´ı Ek a deˇsifrov´ an´ı Dk . Zaˇsifrov´ an´ı otevˇren´eho textu p = p(1), p(2), ... prob´ıh´ a podle vztahu c(1) = Eh(1) (p(1)), c(2) = Eh(2) (p(2)), ...
(3.6)
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
5
a deˇsifrov´ an´ı ˇsifrov´eho textu c = c(1), c(2), ... prob´ıh´ a podle vztahu p(1) = Dh(1) (c(1)), p(2) = Dh(2) (c(2)), ...,
(3.7)
kde Dh(i) = Eh(1) −1 . Pokusil bych se pokusil o ˇc´ asteˇcn´e zjednoduˇsen´ı tˇechto pojm˚ u. V pˇr´ıpadˇe blokov´e ˇsifry se otevˇren´ y text rozdˇel´ı na bloky odpov´ıdaj´ıc´ı velikosti bloku ˇsifrovac´ıho algoritmu. Kaˇzd´ y blok je pak samostatnˇe zaˇsifrov´ an. Proudov´e ˇsifry vyuˇz´ıvaj´ı zmˇen vnitˇrn´ıch stav˚ u a to jim dovoluje ˇsifrovat otevˇren´ y text po jednotliv´ ych prvc´ıch. Zpravidla to b´ yv´a po bitech. U blokov´ ych ˇsifer se nask´ yt´ a nˇekolik implementaˇcn´ıch probl´em˚ u, kter´e bych r´ad zm´ınil. Otevˇren´ y text vˇetˇsinou neb´ yv´ a pˇresnˇe dˇeliteln´ y velikost´ı bloku. Proto se doplˇ nuje o dalˇs´ı bity do poˇzadovan´e velikosti - proces tzv. zarovn´an´ı. Doplˇ nuje se o n´ahodn´e bity, ale tak aby je byl pˇr´ıjemce schopen rozliˇsit. Nejjednoduˇsˇs´ım zp˚ usobem je blok doplnit o jedniˇcky ˇci nuly. Ponˇekud elegantnˇejˇs´ım zp˚ usobem je vz´ıt posledn´ı kompletn´ı blok otevˇren´eho textu. Ten ´ cn´ıkovy exklusivnˇe seˇc´ıst (XORovat) s ne´ upln´ ym blokem. T´ım z´ısk´ame kompletn´ı blok. Utoˇ 1 neposkytujeme pˇr´ıliˇs informac´ı o obsahu tˇechto blok˚ u a pˇr´ıjemce bez probl´em˚ u tyto doplnˇen´e bity odliˇs´ı. D˚ uleˇzit´e je tak´e ˇreˇsit, co vˇsechno ˇsifrovat. Enigma byla rozluˇstˇen´a hlavnˇe d´ıky tomu, ˇze j´ı byly zaˇsifrov´any zpr´ avy o poˇcas´ı a podobn´e texty s pˇredpokl´adan´ ym obsahem. Dneˇsn´ı ˇsifry jsou uˇz silnˇejˇs´ı a mˇely by odol´ avat u ´tok˚ um se zn´am´ ym otevˇren´ ym textem (viz kapitola Druhy u ´tok˚ u). Ale i tak moˇzn´ a bezpeˇcnostn´ı rizika sn´ıˇz´ıme, pokud pˇr´ıpadn´emu u ´toˇcn´ıkovi poskytneme pouze minim´aln´ı informace o otevˇren´em textu. D˚ uleˇzit´e tedy je snaˇzit se neˇsifrovat protokoly a obdobn´e texty s pˇredv´ıdatelnou strukturou. Dalˇs´ı dlouho diskutovanou ot´ azkou je, jak nakl´adat s kontroln´ımi souˇcty. Pokud bychom je ˇsifrovali, poskytneme dalˇs´ı informaci o otevˇren´em textu. Ostatnˇe pokud bychom je neˇsifrovali tak tak´e. Uk´ azalo se, ˇze nejlepˇs´ı moˇznost´ı je pˇrikl´adat pouze kontroln´ı souˇcet ˇsifrovan´eho textu v otevˇren´e podobˇe. K tomu ovˇsem mus´ı b´ yt pˇrizp˚ usoben i n´aˇs kryptografick´ y software. Jak´ ym zp˚ usobem pracovat s bloky ˇsifrovan´eho textu a s pˇr´ıpadn´ ym generov´an´ı poˇc´ateˇcn´ıho vektoru se zab´ yv´ a n´ asleduj´ıc´ı kapitola Operaˇcn´ı m´ ody blokov´ych ˇsifer . Historie kryptografie sah´ a asi do 5. aˇz 6. stolet´ı pˇr. n. l. Nejstarˇs´ımi ˇsiframi byly napˇr´ıklad Caesarova ˇsifra ˇci spartsk´ a skyt´ ala. Jsou to pˇr´ıklady substituˇcn´ı ˇsifry a transpoziˇcn´ı ˇsifry. Caesarova substituˇcn´ı ˇsifra vyuˇz´ıv´ a posun p´ısmen v abecedˇe o konstantn´ı poˇcet znak˚ u. Pozn´ amka 3.1.2 U substituˇcn´ıch ˇsifer nemus´ı j´ıt pouze o posun v abecedˇe, ale o libovoln´e zpˇreh´ azen´ı. Spartsk´a skyt´ ala je naopak ˇsifrou transpoziˇcn´ı. Odes´ılatel a pˇr´ıjemce museli m´ıt v´alec o stejn´em pr˚ umˇeru, aby zpr´ avu deˇsifrovali. Po spir´alovit´em omot´an´ı pergamenov´e p´asky se zpr´avou byl text opˇet ˇciteln´ y. Nyn´ı se pod´ıvejme na definice substituˇcn´ıch a transpoziˇcn´ıch ˇsifer.
Definice 3.1.6 Substituˇ cn´ı ˇ sifra Necht’ A je abeceda q symbol˚ u a P , C je mnoˇzina koneˇcn´ych ˇretˇezc˚ u nad A. Necht’ K je mnoˇzina vˇsech permutac´ı na mnoˇzinˇe A. Substituˇcn´ı ˇsifra je zpravidla blokov´ a ˇsifra s d´elkou 1
Poskytneme bohuˇzel informaci, aˇckoli ne´ uplnou, o diferenci otevˇren´eho a ˇsifrovan´eho textu, kterou lze pouˇz´ıt
pro pˇr´ıpadn´ yu ´tok diferenci´ aln´ı anal´ yzou.
6
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
bloku 1 znak. Je tvoˇren´ a pˇetic´ı (P, C, K, E, D), kde E a D jsou zobrazen´ı, definuj´ıc´ı pro kaˇzd´e k ∈ K transformaci zaˇsifrov´ an´ı Ek a deˇsifrov´ an´ı Dk tak, ˇze Ek = k a Dk = k −1 , tedy pro kaˇzd´e i ∈ N zaˇsifrov´ an´ı znaku p(i) ∈ A otevˇren´eho textu na ˇsifrov´y text c(i) prob´ıh´ a podle vztahu c(i) = Ek (p(i))
(3.8)
p(i) = Dk (c(i)).
(3.9)
a deˇsifrov´ an´ı podle vztahu
Definice 3.1.7 Transpoziˇ cn´ı ˇ sifra Necht’ A je abeceda q symbol˚ u, t ∈ N a P = C je mnoˇzina vˇsech ˇretˇezc˚ u d´elky t nad A. Necht’ K je mnoˇzina vˇsech permutac´ı na mnoˇzinˇe 1, 2, ..., t. Transpoziˇcn´ı ˇsifra je blokov´ a ˇsifra, tvoˇren´ a pˇetic´ı (P, C, K, E, D), kde E a D jsou zobrazen´ı, definuj´ıc´ı pro kaˇzd´e k ∈ K transformaci zaˇsifrov´ an´ı Ek a deˇsifrov´ an´ı Dk tak, ˇze Ek : P → C : p → c = (c1 , ..., ct ) = (pk(1) , pk(2) , ..., pk(t) )
(3.10)
Dk : C → P : c → p = (p1 , p2 , ..., pt ) = (cl(1) , cl(2) , ..., cl(t) ),
(3.11)
a
kde l = k −1 . Pˇri z´akladn´ı kryptoanal´ yze blokov´ ych ˇsifrovac´ıch algoritm˚ u zkoum´ame nejdˇr´ıve z´akladn´ı poˇzadovan´e vlastnosti ˇsifer. Jednak statick´e: vz´ajemn´a nekorelovatelnost otevˇren´eho textu a ˇsifrovan´eho textu, kl´ıˇce a ˇsifrovan´eho textu. A analytick´e vlastnosti: konfuze, difuze, u ´plnost, lavinovost ... Jsou to konstanty popisuj´ıc´ı z´ akladn´ı charakteristiky kryptografick´ ych algoritm˚ u. Pojmy difuze a konfuze souvis´ı pr´ avˇe se zmiˇ novan´ ymi pojmy substituce a transpozice. Konfuze vyjadˇruje sloˇzitost vztahu mezi kl´ıˇcem a ˇsifrovan´ ym textem. Pro zajiˇstˇen´ı vysok´e konfuze pouˇz´ıv´ame permutaci. Difuze popisuje, jak jsou statistick´e vlastnosti otevˇren´eho textu napˇr´ıˇc ˇsifrov´ ym textem. K tomu se vyuˇz´ıv´ a transpozice u historick´ ych ˇsifer, permutace v modern´ıch metod´ach. Lavinovost popisuje kolik byt˚ u ˇsifrovan´eho textu se zmˇen´ı pˇri zmˇenˇe jednoho bitu kl´ıˇce, resp. otevˇren´eho textu. D´ale se snaˇz´ıme nal´ezt slab´e a poloslab´e kl´ıˇce a tyto kl´ıˇce se pˇri implementaci kryptografick´ ych aplikac´ı snaˇz´ıme zak´ azat. Definice 3.1.8 Slab´ y kl´ıˇ c Necht’ je definov´ an kryptografick´y syst´em S = (P, C, K, E, D), kde E a D jsou zobrazen´ı, definuj´ıc´ı pro kaˇzd´e k ∈ K transformaci zaˇsifrov´ an´ı Ek a deˇsifrov´ an´ı Dk . Jestliˇze plat´ı ∃k ∈ K, ∀X : Ek (X) = X, pak takov´y kl´ıˇc k naz´yv´ ame slab´ym kl´ıˇcem. Definice 3.1.9 Poloslab´ e kl´ıˇ ce Necht’ je definov´ an kryptografick´y syst´em S = (P, C, K, E, D), kde E a D jsou zobrazen´ı, definuj´ıc´ı pro kaˇzd´e k ∈ K transformaci zaˇsifrov´ an´ı Ek a deˇsifrov´ an´ı Dk . Jestliˇze plat´ı ∃k1 , k2 ∈ K, ∀X : Ek2 (Ek1 (X)) = X,
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
7
pak takovou dvojici kl´ıˇc˚ u k1 , k2 naz´yv´ ame poloslab´ymi kl´ıˇci. Jednou ze z´ akladn´ıch struktur modern´ıch blokov´ ych kryptosyst´em˚ u je Feistelova s´ıt’. Zakl´ ad´ a na tom, ˇze blok textu rozdˇel´ı na dvˇe ˇc´asti Li a Ri , kter0 jsou pak d´ale iterov´any podle vztahu Li = Ri−1
(3.12)
Ri = Li−1 ⊕ f (Ri−1 , K).
(3.13)
Feistelova s´ıt’2 je involuˇcn´ı. Je to zaj´ımav´a vlastnost, kter´a se ˇcasto v kryptografii vyuˇz´ıv´ a. Znamen´a, ˇze toto zobrazen´ı je samo k sobˇe inverzn´ı. Abychom z´ıskali p˚ uvodn´ı vstup, staˇc´ı znovu aplikovat postup. Ukaˇzme si to na pˇr´ıkladu XORu, kter´ y je tak´e involuˇcn´ı: (86)10 ⊕ (54)10 = (01010110)2 ⊕ (00110110)2 = (01100000)2 = (96)10
(3.14)
(96)10 ⊕ (54)10 = (01100000)2 ⊕ (00110110)2 = (01010110)2 = (86)10
(3.15)
Definice 3.1.10 Involuce Zobrazen´ı Λ naz´yv´ ame involuc´ı, jestliˇze plat´ı:
∀x : Λ(Λ(x)) = x. Involuce v kryptografii vyuˇz´ıv´ ame hlavnˇe proto, ˇze v´ yraznˇe zjednoduˇsuje proces deˇsifrov´an´ı.
3.2
Operaˇ cn´ı m´ ody blokov´ ych ˇ sifer
Blokov´e ˇsifry pracuj´ı s fixn´ı velikost´ı bloku otevˇren´eho a ˇsifrovan´eho textu. V z´avislosti na typu pr´ace s dan´ ymi bloky rozliˇsujeme r˚ uzn´e blokov´e ˇsifry, kter´e pracuj´ı v operaˇcn´ıch m´odech. Aby byl dan´ y m´ od vyuˇziteln´ y a neoslaboval celou ˇsifru mus´ı b´ yt stejnˇe tak bezpeˇcn´ y a efektivn´ı jako ˇsifra sama. Nejbˇeˇznˇeji pouˇz´ıvan´ ymi m´ody jsou ECB, CBC, CFB a OFB, kter´e jsou souˇc´ast´ı norem FIPS PUB 81, ANSI X3.106-1983, ISO 8732 a ISO/IEC 10116, ale existuje i ˇrada dalˇs´ıch jako napˇr´ıklad CTR (Conter Mode), CCMP (Counter CBC MAC Protocol ), ABC (Accumulated Block Chaining), WHF (Whiting-Housley-Ferguson). Vˇetˇsina m´ od˚ u pro poˇc´ ateˇcn´ı nastaven´ı vyuˇz´ıv´a poˇc´ateˇcn´ıho vektoru. Pro zv´ yˇsen´ı bezpeˇcnostn´ıho standardu se pouˇz´ıv´ a tzv. metoda solen´ı (salting). Jde o to, ˇze si sice komunikuj´ıc´ı strany pˇredaj´ı pseudo poˇc´ ateˇcn´ı vektor, ale inicializuj´ı kryptosyst´em podle hodnoty pouze z nˇeho odvozenou (zaˇsifrovan´ y pseudo poˇc´ateˇcn´ı vektor nebo jeho hash). Podrobnˇeji pˇredstavme nejbˇeˇznˇeji pouˇz´ıvan´e m´ody. 3.2.1
ECB (Electronic CodeBook ) m´ od
Pˇrestoˇze se m´ od ECB standardnˇe pouˇz´ıv´a, nedoporuˇcuje se, protoˇze nab´ız´ı nejniˇzˇs´ı u ´roveˇ n ˇ zabezpeˇcen´ı. Kaˇzd´ y blok dat je ˇsifrov´an (resp. deˇsifrov´an) samostatnˇe. Sifrov´an´ı (resp. deˇsifrov´an´ı) prob´ıh´ a podle rovnice:
kde N znaˇc´ı poˇcet blok˚ u ˇsifry.
∀i ∈ {1..N } : Ci = Ek (Pi )
(3.16)
∀i ∈ {1..N } : Pi = Dk (Ci ),
(3.17)
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
8
Obr´ azek 3.2: M´ody blokov´ ych ˇsifer a) P˚ uvodn´ı obr´ azek b) Obr´ azek zaˇsifrovan´ y pomoc´ı ECB m´odu c) Obr´azek zaˇsifrovan´ y v CBC m´odu
ˇ Obr´ azek 3.3: ECB - Sifrov´ an´ı
Obr´ azek 3.4: ECB - Deˇsifrov´an´ı
Metoda ˇsifrov´an´ı (resp. deˇsifrov´ an´ı) je zobrazena na obr´azku 3.3 (resp. 3.4) Hlavn´ı v´ yhodou tohoto m´ odu je nez´ avislost blok˚ u. M˚ uˇzeme tud´ıˇz bloky dat ˇsifrovat (resp. deˇsifrovat) v libovoln´em poˇrad´ı a nab´ız´ı se moˇznost paralelizace ˇsifrov´an´ı (resp. deˇsifrov´an´ı) dat. Dalˇs´ı nezanedbatelnou v´ yhodou je, ˇze pˇri chybˇe kan´alu a poˇskozen´ı jednoho bloku dat je poˇskozen pouze tento blok a ne cel´ y ˇsifrovan´ y text. Mezi nev´ yhody naopak patˇr´ı, ˇze tento m´ od zachov´av´a strukturu otevˇren´eho textu (viz obr´azek 3.2). Pokud dostaneme na vstup stejn´ y blok otevˇren´eho textu, je zaˇsifrov´an na stejn´ y ˇsifrovan´ y blok. T´ım se nab´ız´ı hned nˇekolik moˇznost´ı pˇr´ıpadn´eho u ´toku. Prvn´ı ponˇekud naivn´ı metodou 2
Pˇri pouˇzit´ı stejn´ ych podkl´ıˇc˚ u.
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
9
by bylo sestaven´ı tabulky ˇsifer pro kaˇzd´ y kl´ıˇc a blok textu. Tato metoda v souˇcasn´e dobˇe nen´ı re´aln´a. Vezmeme-li v u ´vahu pamˇet’ovou n´aroˇcnost, potˇrebovali bychom pro kaˇzd´ y blok dat 56 2 ∗ t, kde t je velikost bloku. Pro t = 64b dost´av´ame 262 b = 254 B = 16P B. Pokud by tabulka mˇela obsahovat vˇsechny moˇzn´e bloky dat, dostali bychom se na astronomick´ ych 262 264 b = 2126 b = 2118 B = 256V B 3 . Coˇz nejen, ˇze pro n´ as nen´ı re´ aln´ a hodnota, ale tak´e by n´am samozˇrejmˇe samotn´e generov´ an´ı dat zabralo nere´ alnˇe dlouhou dobu. Mohli bychom se omezit pouze na ˇcasto pouˇz´ıvan´e bloky, ale i tak dost´ av´ ame vysok´e hodnoty. Dalˇs´ı moˇznost´ı je vytvoˇrit si tabulku ˇsifer pro jeden blok dat, kter´ y m˚ uˇzeme pˇredpokl´adat, ˇze se v otevˇren´em textu s nejvˇetˇs´ı pravdˇepodobnost´ı vyskytne (napˇr´ıklad hlaviˇcky paket˚ u apod.) 4 a pro kaˇzd´ y si uloˇzit pouˇzit´ y kl´ıˇc. Zde bychom napˇr´ıklad pro 56 bitov´ y kl´ıˇc dostali 56.256 b = 7251 B = 14P B. Deˇsifrov´an´ı by prob´ıhalo tak, ˇze pro n´ami zvolen´ y blok dat5 nalezneme kl´ıˇc v naˇs´ı tabulce, ovˇeˇr´ıme jeho spr´ avnost a n´ aslednˇe jiˇz m˚ uˇzeme cel´ y text deˇsifrovat podle nalezen´eho kl´ıˇce. Obˇe tyto metody maj´ı stejnou ˇcasovou sloˇzitost jako samotn´e prolomen´ı hrubou silou. Jejich v´ yhodou je moˇznost opˇetovn´eho pouˇzit´ı bez dalˇs´ıho generov´an´ı. Existuje ale i zp˚ usob jak tabulku ˇsifer sestavovat i bez znalosti kl´ıˇce. Vyuˇz´ıv´ame, ˇze se ˇc´ asti zpr´av opakuj´ı a ˇze mohou nab´ yvat urˇcit´ ych hodnot. Kompletn´ı dek´odov´an´ı je n´aroˇcn´e, ale pomˇernˇe snadn´ a je modifikace zpr´ avy. V souˇcasn´e dobˇe se tento m´ od pouˇz´ıv´a hlavnˇe u ˇsifrov´an´ı kr´atk´ ych zpr´av, napˇr´ıklad pˇri rozes´ıl´ an´ı kl´ıˇc˚ u, kde se negativn´ı vlastnosti tolik neprojevuj´ı. D´ale pak se tento m´od pouˇz´ıv´a u poruchov´ ych spoj˚ u, kde nen´ı kladen velk´ y d˚ uraz na bezpeˇcnost. 3.2.2
CBC (Cipher Block Chaining ) m´ od
Dalˇs´ım m´ odem je asi nejpouˇz´ıvanˇejˇs´ı m´od CBC. Jde jiˇz o polyalfabetick´ y m´od narozd´ıl od pˇredchoz´ıho monoalfabetick´eho m´ odu ECB. Zav´ad´ı kontextovou z´avislost jednotliv´ ych blok˚ u t´ım, ˇze je pˇri ˇsifrov´ an´ı kaˇzd´ y blok otevˇren´eho textu exklusivnˇe seˇcten (XORov´an) s pˇredchoz´ım blokem ˇsifrovan´eho textu: ∀i ∈ {1..N } : Ci = Ek (Pi ⊕ Ci−1 ) (3.18) ∀i ∈ {1..N } : Pi = Ci−1 ⊕ Dk (Ci )
(3.19)
K prvn´ımu bloku je pˇriˇcten n´ ahodnˇe generovan´ y inicializaˇcn´ı vektor. Ten se snaˇz´ı zaruˇcit, ˇze zaˇsifrov´an´ı dvou stejn´ ych zpr´ av bude m´ıt r˚ uzn´ y v´ ysledek. Vektor se ukl´ad´a jako nult´ y ˇsifrovan´ y blok bez XORov´ an´ı a nebo je uloˇzen pˇr´ımo v otevˇren´e podobˇe. Pro vˇetˇs´ı n´azornost jsou uvedeny sch´emata pro ˇsifrov´ an´ı a deˇsifrov´ an´ı v CBC m´odu - obr´azek 3.5 a 3.6. Pokud pˇri pˇrenosu dojde k v´ yskytu chyby v bloku poˇc´ateˇcn´ıho vektoru, budou nespr´ avnˇe deˇsifrov´any vˇsechny bloky. Na druhou stranu pˇri pˇr´ıpadn´em u ´toku nestaˇc´ı z´ıskat kl´ıˇc, ale i poˇc´ateˇcn´ı vektor6 a to tento m´ od ˇcin´ı bezpeˇcnˇejˇs´ım. 3 4
[ˇcti venta bajt] Na velikosti bloku pamˇet’ov´ a n´ aroˇcnost nez´ avis´ı. Na t´e z´ avis´ı pouze doba pˇr´ıstupu. Pˇri pˇredpokl´ adan´em
pouˇzit´ı hashov´eho pole je pˇr´ıstup v konstantn´ım ˇcase pouze pokud se zde nevyskytuj´ı duplicity. 5 Pokud lokaci referenˇcn´ıho bloku nezn´ ame, m˚ uˇzeme vyzkouˇset pro vˇsechny bloky ˇsifrovan´eho textu. 6 V praxi to znamen´ a deˇsifrovat alespoˇ n dva po sobˇe n´ asleduj´ıc´ı bloky, nejen jeden.
10
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
ˇ Obr´ azek 3.5: CBC - Sifrov´ an´ı
Obr´ azek 3.6: CBC - Deˇsifrov´an´ı
3.2.3
CFB (Cipher FeedBack ) m´ od
M´od CFB jiˇz vyuˇz´ıv´ a vlastnost´ı proudov´ ych ˇsifer a blokov´ y algoritmus pˇrev´ad´ı na proudovou ˇsifru s vlastn´ı synchronizac´ı. Opˇet pouˇz´ıv´a n´ahodnˇe generovan´ y poˇc´ateˇcn´ı vektor, kter´ y se opˇet snaˇz´ı odliˇsit v´ ystupy stejn´ ych otevˇren´ ych text˚ u. Tento m´od umoˇzn ˇuje pˇrenos zpr´avy o ˇıˇren´ı chyb je obdobn´e jako u CBC m´odu. CFB zaˇsifruje m´enˇe bitech neˇz je velikost bloku. S´ inicializaˇcn´ı vektor a vytvoˇr´ı tak v´ ystupn´ı blok. D´ale jsou exkluzivnˇe seˇcteny n´asleduj´ıc´ı bity v´ ystupn´ıho bloku s bity otevˇren´eho textu. Tak je vytvoˇren ˇsifrovan´ y text. Jakmile je jedna blokov´a hodnota ˇsifrovan´eho textu vytvoˇrena, st´av´a se vstupem k blokov´e ˇsifˇre pro vytvoˇren´ı dalˇs´ıho v´ ystupn´ıho vektoru a proces se opakuje. Podrobnˇeji viz obr. 3.7 a 3.8. ∀i ∈ {1..N } : Ci = Ek (Ci−1 ) ⊕ Pi
(3.20)
∀i ∈ {1..N } : Pi = Dk (Ci−1 ) ⊕ Ci
(3.21)
ˇ Obr´ azek 3.7: CFB - Sifrov´ an´ı
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
11
Obr´ azek 3.8: CFB - Deˇsifrov´an´ı
3.2.4
OFB (Output FeedBack ) m´ od
Obdoba m´ odu CFB jej´ıˇz v´ yhodou je, ˇze se chyby neˇs´ıˇr´ı. Na druhou stranu je vˇsak snadnˇeji napadnuteln´ y nˇeˇz CFB. V tomto m´odu je v´ ystup blokov´e ˇsifry vyuˇzit zpˇetnˇe jako vstup a vytv´aˇr´ı se pomoc´ı nˇej dalˇs´ı blok. Za sebou jdouc´ı bity v´ ystupu blokov´eho ˇsifrovan´eho textu jsou exkluzivnˇe seˇcteny s otevˇren´ ym textem pro vytvoˇren´ı nov´eho ˇsifrovan´eho textu. Algoritmus ˇsifrov´an´ı i deˇsifrov´ an´ı je identick´ y. Podrobnˇeji viz obr. 3.9 a 3.10. ∀i ∈ {1..N } : Ci = Pi ⊕ Oi
(3.22)
∀i ∈ {1..N } : Pi = Ci ⊕ Oi
(3.23)
∀i ∈ {1..N } : Oi = Ek (Oi − 1)
(3.24)
ˇ Obr´azek 3.9: OFB - Sifrov´ an´ı
3.3
Popis ˇ sifer DES, Zodiac, CSA a KeeLoq
Pro n´asleduj´ıc´ı podrobnˇejˇs´ı anal´ yzy DES, Zodiac a CSA, je potˇreba nejdˇr´ıve pochopit z´akladn´ı principy, jak tyto ˇsifry funguj´ı. 3.3.1
Data Encryption standard
DES je symetrick´ a ˇsifra vyvinut´ a v 70. letech organizac´ı NBS (dnes NIST) a v listopadu roku 19767 byla v USA zvolena za ˇsifrovac´ı standard [Pub93][Pub04]. V literatuˇre se m˚ uˇzeme setkat 7
publikov´ ana 19.ledna 1977
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
12
Obr´ azek 3.10: OFB - Deˇsifrov´an´ı Slab´ e kl´ıˇ ce 0101 0101 0101 0101 FEFE FEFE FEFE FEFE 1F1F 1F1F 0E0E 0E0E 0E0E 0E0E 1F1F 1F1F Tabulka 3.1: DES - slab´e kl´ıˇce i s n´azvem DEA (Data Encryption Algorithm). Jedn´a se o blokovou Feistelovou s´ıt’ s d´elkou bloku 64 bit˚ u. Pouˇz´ıv´a d´elku kl´ıˇce 56 bit˚ u a m´a 16 rund. Nˇekde se uv´ ad´ı 64 bitov´ y kl´ıˇc, ale pak se 8 bit˚ u povaˇzuje za paritn´ı. P˚ uvodnˇe byla odvozena od kryptosyst´emu Lucifer. Protoˇze jde o druh Feistelovy s´ıtˇe, m˚ uˇzeme algoritmus zaˇradit bez hlubˇs´ı anal´ yzy mezi substituˇcnˇe permutaˇcn´ı s´ıtˇe (SPN). DES je obvykle uˇz´ıv´an v m´odu CBC ˇci CFB. 3.3.1.1
´ Uvodn´ ı anal´ yza
Kryptosyst´em DES m´ a ze sv´ ych 256 pr´ avˇe 4 slab´e kl´ıˇce (viz tabulka 3.1) a 6 poloslab´ ych p´ar˚ u 8 (tabulka 3.2) . Jednou z jeho pozitivn´ıch vlastnost´ı je dobr´a lavinovost. Plat´ı, ˇze pˇri zmˇenˇe jednoho bitu (nebo v´ıce) otevˇren´eho textu ˇci kl´ıˇce, se ˇsifrovan´ y text zmˇen´ı v pr˚ umˇeru o pades´at procent (viz obr´ azek 3.11). 3.3.1.2
ˇ Sifrov´ an´ı
V prvn´ı ˇc´asti ˇsifrovac´ıho procesu je vstupn´ı blok otevˇren´eho textu p = (p0 , ...p63 ) permutov´an na kl´ıˇci nez´avislou poˇc´ ateˇcn´ı permutac´ı. Ta je definov´ana tabulkou 3.3. Oznaˇcme si j´ı PP. Prvky tabulky jsou oˇc´ıslov´ any z leva do prava, od shora dol˚ u. Pak permutovan´ y text ppp dostaneme vztahem: ppp (3.25) P P (i) = pi , i ∈ {0, ..., 31} P pp =
31 X i=0
8
Potenci´ alnˇe slab´ ych je jeˇstˇe dalˇs´ıch 256 kl´ıˇc˚ u.
pi 2P P (i)
(3.26)
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
DES - Lavinovy Efekt
50.02
prumerny pocet zmenenych bitu v sifrovanem textu [%]
13
50 49.98 49.96 45
30
15
0
0
5
10
15
20
25
30
35
pocet zmenenych bitu v klici [-]
40
45
50
55
Obr´ azek 3.11: DES - Lavinov´ y efekt Testov´ano na 5MB vzorku
N´aslednˇe je rozdˇelen na dvˇe 32 bitov´e ˇc´asti L0 = (p0 , .., p31 ) a P0 = (p32 , ..., p63 ). Ty jsou d´ ale iterov´any v ˇsestn´ acti rund´ ach. Kaˇzd´e Li a Ri je odvozeno od pˇredchoz´ıch podle n´asleduj´ıc´ıho pˇredpisu pro Feistelovu s´ıt’: Li = Ri−1 Ri = Li−1 ⊕ f (Ri−1 , Ki )
(3.27)
D˚ uleˇzit´e je, aby podkl´ıˇce pouˇzit´e v rund´ach byly r˚ uzn´e. Jinak by bylo moˇzn´e prov´est u ´tok s moˇznost´ı v´ ybˇeru otevˇren´eho textu [BP82]. V posledn´ım kole jsou obˇe ˇc´ asti opˇet spojeny a na cel´ y tento blok je aplikov´ana dalˇs´ı permutace, inverzn´ı k poˇc´ ateˇcn´ı. Permutace P P −1 je opˇet zad´ana tabulkou 3.4 a v´ ysledn´ y ˇsifrovan´ y text dostaneme vztahem: cP P −1 (i) = xi , i ∈ {0, ..., 31} (3.28) Poloslab´ e 01FE 01FE 01FE 01FE
kl´ıˇ ce FE01 FE01 FE01 FE01
1FE0 1FE0 0EF1 0EF1
E01F E01F F10E F10E
01E0 01E0 01F1 01F1
E001 E001 F101 F101
1FFE 1FFE 0EFE 0EFE
FE1F FE1F FE0E FE0E
011F 011F 010E 010E
1F01 1F01 0E01 0E01
E0FE E0FE F1FE F1FE
FEE0 FEE0 FEF1 FEF1
Tabulka 3.2: DES - poloslab´e kl´ıˇce
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
14
58
50
42
34
26
18
10
2
60
52
44
36
28
20
12
4
62
54
46
38
30
22
14
6
64
56
48
40
32
24
16
8
57
49
41
33
25
17
9
1
59
51
43
35
27
19
11
3
61
53
45
37
29
21
13
5
63
55
47
39
31
23
15
7
Tabulka 3.3: DES - poˇc´ateˇcn´ı permutace P P 40
8
48
16
56
24
64
32
39
7
47
15
55
23
63
31
38
6
46
14
54
22
62
30
37
5
45
13
53
21
61
29
36
4
44
12
52
20
60
28
35
3
43
11
51
19
59
27
34
2
42
10
50
18
58
26
33
1
41
9
49
17
57
25
Tabulka 3.4: DES - inverzn´ı poˇc´ateˇcn´ı permutace P P −1
C=
31 X
xi 2P P
−1 (i)
(3.29)
i=0
Pˇriˇcemˇz plat´ı i ∈ {0, 31}, ∀xi : xi = xi 2P P (i) 2P P xi = xi 2P P
−1 (i)
−1 (i)
2P P (i) = xi 2P P
= xi 2P P (i)+P P −1 (i)+P P (i)
−1 (i)
= xi
= xi
(3.30) (3.31)
Poˇc´ateˇcn´ı a inverzn´ı poˇc´ ateˇcn´ı permutace slouˇz´ı pouze k u ´pravˇe text˚ u a nemaj´ı na bezpeˇcnost DES vliv. Pˇri kryptoanal´ yze je m˚ uˇzeme u ´plnˇe zanedbat. Cel´ y tento proces je zobrazen na obr´ azku 3.12.
3.3.1.3
Feistelova funkce
Pr˚ ubˇeh v´ ypoˇctu Feistelovy funkce je zobrazen na obr´azku 3.13. Prav´ y 32 bitov´ y blok textu je pomoc´ı expanzn´ı permutace E rozˇs´ıˇren na 48 bit˚ u. Ty jsou exklusivnˇe seˇcteny s 48 bitov´ ym podkl´ıˇcem a n´aslednˇe rozdˇeleny po 6 bitech pro vstup do osmi S-BOX˚ u. Tabulky jednotliv´ ych S-BOX˚ u nalezneme v pˇr´ıloze. Kaˇzd´ y S-BOX m´a 6 vstupn´ıch a 4 v´ ystupn´ı bity. V´ ystupy z S-BOX˚ u jsou n´ aslednˇe spojeny do 32 bitov´eho bloku a d´ale permutov´any permutac´ı P .
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
15
ˇ Obr´azek 3.12: DES - Sifrov´ an´ı
3.3.1.4
Rundov´ e podkl´ıˇ ce
Jak jsme jiˇz zm´ınili, je ˇz´ adouc´ı aby podkl´ıˇce pouˇzit´e ve Feistelovˇe s´ıti byly r˚ uzn´e v kaˇzd´e rundˇe. Odvozuj´ı se od hlavn´ıho 56 bitov´eho kl´ıˇce. Podkl´ıˇce maj´ı pouze 46 bit˚ u. Proces v´ ybˇeru podkl´ıˇc˚ u je zobrazen na obr´ azku 3.14. Jako hlavn´ı kl´ıˇc je br´an 64 bitov´ y kl´ıˇc, z nˇehoˇz jsou odstranˇeny paritn´ı bity a cel´ y blok je permutov´ an permutac´ı P1 (tabulka B.4). N´aslednˇe je rozdˇelen na dva 28 bitov´e bloky C0 a D0 . Bloky Ci a Di dostaneme rekurzivnˇe podle tabulky B.3 a n´asleduj´ıc´ıch vztah˚ u: Ci = Ci−1 <
(3.32)
Di = Di−1 <
(3.33)
a podkl´ıˇc ki spojen´ım blok˚ u Ci a Di a permutac´ı P2 (tabulka B.4).
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
16
Obr´ azek 3.13: DES - V´ ypoˇcet Feistelovy funkce
3.3.1.5
Deˇ sifrov´ an´ı
Proces deˇsifrov´ an´ı je zobrazen na obr´ azku 3.15. D´ıky tomu, ˇze Feistelova s´ıt’ je involuˇcn´ı, bude se proces deˇsifrov´ an´ı od ˇsifrovac´ıho procesu liˇsit pouze v detailech. Poˇc´ateˇcn´ı a inverzn´ı poˇc´ateˇcn´ı permutace jsou aplikov´ any obr´ acenˇe. Na vstupu je tedy pouˇzita inverzn´ı poˇc´ateˇcn´ı (tab. 3.4) a na v´ ystupu poˇc´ ateˇcn´ı permutace (tab. 3.3). Inverznˇe jsou zad´any i vstupy podkl´ıˇc˚ u do jednotliv´ ych rund Feistelovy s´ıtˇe, tzn. ˇze jsou zad´av´any od K16 do K1 . 3.3.2
Zodiac
Kryptosyst´em Zodiac byl navrˇzen v roce 2000 Chang-Hyi Lee-em pro korejskou firmu SoftForum. I kdyˇz se jedn´ a o pomˇernˇe mlad´ y algoritmus, pˇresto jde opˇet o 16 rundovou Feistelovu s´ıt’ obohacenou ovˇsem o tzv. bˇelen´ı kl´ıˇc˚ u“ (key whitening). Aby se i pˇres toto vylepˇsen´ı autor ” ujistil, ˇze syst´em nep˚ ujde pˇrekonat diferenci´aln´ı kryptoanal´ yzou ˇci u ´tokem hrubou silou, zvolil jiˇz zde 128 bitov´ y kl´ıˇc. ˇ Sifra Zodiac vyuˇz´ıv´ a dva druhy S-BOX˚ u. • Prv´ y je zaloˇzen na diskr´etn´ı exponenciele 45x , jakou vyuˇz´ıv´a napˇr´ıklad kryptosyst´em SAFER. • Druh´ y druh S-BOX˚ u vych´ az´ı z kryptosyst´emu SHARK, kde se pro v´ ypoˇcet substituc´ı 1 vyuˇz´ıv´a funkce f (x) = 170+x nad koneˇcn´ ym tˇelesem GF (28 ). 128 bitov´ y blok otevˇren´eho textu je nejprve permutov´an pomoc´ı permutace, kter´a je zobrazena na obr´azku 3.17. Lze ji zapsat jako soustava rovnic: T =A⊕B⊕C ⊕D
(3.34)
A0 = A ⊕ T (= B ⊕ C ⊕ D)
(3.35)
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
17
Obr´ azek 3.14: DES - V´ ybˇer podkl´ıˇc˚ u
B 0 = B ⊕ T (= A ⊕ C ⊕ D)
(3.36)
C 0 = C ⊕ T (= A ⊕ B ⊕ D)
(3.37)
D0 = D ⊕ T (= A ⊕ B ⊕ C),
(3.38)
A,B,C,D,A0 ,B 0 ,C 0 ,D0
kde a T jsou 32 bitov´e registry. Proces ˇsifrov´ an´ı se velice podob´ a ˇsifrovac´ımu procesu u DESu a to proto, ˇze obˇe ˇsifry maj´ı strukturu Feistelovy s´ıtˇe s ˇsestn´ acti rundami. Na rozd´ıl od DESu Zodiac pouˇz´ıv´a 18 podkl´ıˇc˚ u. Nult´ y podkl´ıˇc je exklusivnˇe pˇriˇcten k lev´emu bloku ihned po permutaci. Sedmn´act´ y podkl´ıˇc ˇ je opˇet exklusivnˇe pˇriˇcten k lev´emu bloku tˇesnˇe pˇred koneˇcnou permutac´ı. Sifrov´ an´ı prob´ıh´ a podle vztahu: P1 = L0 (3.39) L1 = P0 ⊕ F (L0 ⊕ K1 ).
(3.40)
Samotnou Feistelovu funkci m´ ame zobrazenou na obr´azku 3.18. Proces deˇsifrov´ an´ı prob´ıh´ a analogicky jako u DESu. Vˇse z˚ ust´av´a stejn´e, aˇz na poˇrad´ı podkl´ıˇc˚ u.
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
18
Obr´ azek 3.15: DES - Deˇsifrov´an´ı
V´ ybˇer podkl´ıˇc˚ u je o nˇeco sloˇzitˇejˇs´ı. Jeho proces je zobrazen na obr´azku 3.19. Pro lepˇs´ı pochopen´ı doporuˇcuji [Lee00].
3.3.3
KeeLoq
KeeLoq byl vyvinut v osmdes´ at´ ych letech Willem Smitem a v roce 1995 byl patent na tento algoritmus prod´ an za 10 milion˚ u dolar˚ u firmˇe Microchip Technology Inc. Tento algoritmus se pouˇz´ıv´a napˇr´ıklad v automobilov´em pr˚ umyslu pro elektronick´e zamyk´an´ı aut. Jedn´a se o blokov´ y algoritmus s d´elkou bloku 32 bit˚ u a s d´elkou kl´ıˇce 64 bit˚ u. Algoritmus vynik´a svoj´ı jednoduchost´ı, kter´ a mu umoˇzn ˇuje vyuˇz´ıt 528 rund. Je to opˇet iterativn´ı algoritmus. Vynik´a ˇ svoj´ı jednoduchost´ı. Sifrovac´ ı a deˇsifrovac´ı proces je zobrazen na obr´azku 3.20 a 3.21. ˇ Sifrov´an´ı prob´ıh´ a n´ asledovnˇe. Vyberou se bity 1, 9, 20, 26 a 31 (ˇc´ıslovan´e od MSB 31 do LSB 0), oznaˇcme si po ˇradˇe jako x1 , x2 , x3 , x4 a x5 a vloˇz´ı se do zpˇetnovazebn´e funkce
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
19
ˇ Obr´ azek 3.16: Zodiac - Sifrov´ an´ı
F (x1 , x2 , x3 , x4 , x5 ) na sch´ematu oznaˇcen´e jako NLF 0x3A5C742E. F (x1 , x2 , x3 , x4 , x5 ) = = x4 ⊕x5 ⊕x1 x3 ⊕x1 x5 ⊕x2 x3 ⊕x2 x5 ⊕x3 x4 ⊕x4 x5 ⊕x1 x4 x5 ⊕x1 x3 x5 ⊕x1 x2 x4 ⊕x1 x2 x3 (3.41) Tato funkce zde nahrazuje S-BOX a vyuˇz´ıv´a sv´e nelinearity. V´ ystup z t´eto funkce se exklusivnˇe seˇcte s 0. a 16. bitem datov´eho bloku a s 0. bitem kl´ıˇcov´eho bloku. Oba tyto bloky n´aslednˇe rotuj´ı o jeden bit vpravo. Novˇe vytvoˇren´ y bit pˇrep´ıˇse 31. bit. Po skonˇcen´ı vˇsech 528 rund dost´ av´ ame v datov´em bloku jiˇz ˇsifrovan´ y text. Deˇsifrov´an´ı prob´ıh´ a obdobnˇe. Do funkce F (x1 , x2 , x3 , x4 , x5 ) vstupuje 0, 8, 19, 25 a 30 bit. V´ ysledek je exklusivnˇe seˇcten s 31. a 15. bitem datov´eho bloku a 15. bitem kl´ıˇce. Oba bloku jsou opˇet rotov´ any, tentokr´ at vlevo. V´ ysledek pˇrepisuje 0. bit datov´eho bloku. Po pr˚ uchodu vˇsech rund dost´ av´ ame v datov´em bloku otevˇren´ y text.
20
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
Obr´ azek 3.17: Zodiac - Permutace
Obr´ azek 3.18: Zodiac - Feistelova funkce
3.3.4
Common Scrambling Algorithm
Tato velmi komplexn´ı ˇsifra byla vyvinuta v devades´at´ ych letech 20. stolet´ı, roku 1994 byla specifikov´ana Evropsk´ ym konsorciem pro standardizaci a n´aslednˇe pˇrijata jako ˇsifra pro pˇrenos k´odovan´eho digit´ aln´ıho televizn´ıho vys´ıl´ an´ı. Dlouho nebyly podrobnosti o CSA ˇsifˇre veˇrejn´e. Aˇz roku 2002 byl uvolnˇen software FreeDec, software implementuj´ıc´ı CSA algoritmus (v bin´arn´ım k´odu). Dnes je k dispozici cel´ y k´ od CSA implementovan´ y v r˚ uzn´ ych programovac´ıch jazyc´ıch. V souˇcasn´e dobˇe je tedy vˇetˇsina digit´ aln´ıch k´odovan´ ych televizn´ıch kan´al˚ u jiˇz jako dan´ y MPEG2 (audio - video kompresn´ı standard) proud ˇsifrov´ana pomoc´ı tohoto algoritmu. Algoritmus CSA vyˇzaduje pro inicializaci 8 bytov´e kontroln´ı slovo (kl´ıˇc) nezbytn´e pro n´asledn´ y proces deˇsifrov´ an´ı zak´ odovan´ ych televizn´ıch sluˇzeb. Toto kontroln´ı slovo se bˇehem pˇrenosu televizn´ıho sign´ alu mˇen´ı kaˇzd´ ych 20 - 120s a obvykle je generov´ano pomoc´ı pˇr´ıdavn´eho algoritmu/mechanismu. Tento mechanizmus je pak obecnˇe zn´am´ y k´odovac´ı standard televizn´ıho kan´alu jako napˇr. Irdeto, Cryptoworks nebo NDS. Se znalost´ı spr´avn´eho inicializaˇcn´ıho kl´ıˇce kontroln´ıho slova je moˇzn´e dek´ odovat dan´ y program. Hlavn´ım omezen´ım je tedy znalost kon-
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
21
Obr´ azek 3.19: Zodiac - V´ ybˇer podkl´ıˇc˚ u
ˇ Obr´ azek 3.20: KeeLoq - Sifrov´ an´ı
troln´ıch slov. CSA je dnes pouˇz´ıv´ ana t´emˇeˇr vˇsemi evropsk´ ymi placen´ ymi televizn´ımi stanicemi a tak prolomen´ı ˇsifry CSA by de facto postihlo celoploˇsnˇe poskytovatele vys´ıl´an´ı.
22
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
Obr´ azek 3.21: KeeLoq - Deˇsifrov´an´ı
Na samotn´ y ˇsifrovac´ı algoritmus lze pohl´ıˇzet jako na vrstven´ı dvou z´akladn´ıch kryptografick´ ych funkc´ı - 64 bitovou blokovou ˇsifru a proudovou ˇsifru - pˇriˇcemˇz obˇe vyuˇz´ıvaj´ı 64 bitov´ y kl´ıˇc oznaˇcovan´ y jak spoleˇcn´ y kl´ıˇc (common key) (jejich vz´ajemn´e propojen´ı viz obr. 3.22). Pro zaˇsifrov´an´ı naloˇzen´eho m-bytov´eho paketu je tento paket rozdˇelen do blok˚ u o osmi bytech
Obr´ azek 3.22: CSA - Kompletn´ı algoritmus pozn. Obr´ azek pˇrevzat´ y z [nez03].
(DBi ). Sekvence 8 bytov´ ych blok˚ u je zaˇsifrov´ana v opaˇcn´em poˇrad´ı k blokov´e ˇsifˇre, kter´a operuje v CBC m´ odu. Posledn´ı v´ ystup z meziblok˚ u IBi (viz obr´azek 3.22) je pak pouˇzit jako zavadˇeˇc pro proudovou ˇsifru.
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
23
Blokov´ aˇ c´ ast ˇ sifry Jak jiˇz bylo ˇreˇceno, vyuˇz´ıv´ ana je iterativn´ı blokov´a ˇsifra pracuj´ıc´ı s jednotliv´ ymi byty v bloc´ıch o d´elce 64 bit˚ u. Spoleˇcn´ y kl´ıˇc K je t´eˇz 64 bitov´ y. Kaˇzd´e kolo ˇsifry pouˇz´ıv´a shodnou cyklickou transformaci φ, kter´ a bere 8 bytov´ y vektor souˇcasnˇe s jedn´ım bytem rozˇs´ıˇren´eho kl´ıˇce jako vstup. Rozˇs´ıˇren´ y kl´ıˇc K e je obvykle 448 bitov´ y a vypoˇcte se rekurzivnˇe jako permutace pˇredem definovan´ ych 64 bitov´ ych ˇretˇezc˚ u n´ asledovan´a exkluzivn´ım souˇctem s hexadecim´aln´ı konstantou (podrobnosti viz [Wir04]). V´ ystupem je nov´ y 8 bytov´ y vektor. Transformace se opakuje 56-kr´at. Cyklick´a transformace φ spoˇc´ıv´ a v aplikaci neline´arn´ıch funkc´ı f a f 0 , coˇz jsou rozd´ıln´e permutace na mnoˇzinˇe hodnot tvoˇr´ıc´ıch S-BOXy ˇsifry. Obˇe funkce jsou spojeny pˇres permutaci sv´ ych bit˚ u zadanou tabulkami tak, ˇze napˇr. bit 0 funkce f je mapov´an jako bit 1 ve funkci f 0 , 1 k bitu 7 atd. Pokud S = (s0 , ..., s7 ) bude vektor byt˚ u reprezentuj´ıc´ıch vnitˇrn´ı stav blokov´e ˇsifry v dan´em kole, pak funkce φ pˇrij´ımaj´ıc´ı S z kola i do kola i + 1 m˚ uˇze b´ yt definov´ana jako: φ(s0 , ..., s7 , k) = (s1 , s2 ⊕ s0 , s3 ⊕ s0 , s4 ⊕ s0 , s5 , s6 ⊕ f 0 (k ⊕ s7 ), s7 , s0 ⊕ f (k ⊕ s7 ))
(3.42)
Pro deˇsifrov´ an´ı bloku ˇsifrov´eho textu C se vyuˇzije funkce inverzn´ı. Pro ˇsifrov´an´ı otevˇren´eho textu P = (p0 , ..., p7 ) je tedy potˇreba prov´est tyto operace: S0 = P
(3.43)
E S r = φ((S r−1 , (k8 rE , ..., k8r+7 )) 1 ≤ r ≤ 56
(3.44)
C = S 56 .
(3.45)
Jejichˇz v´ ysledkem je ˇsifrovan´ y text C = (c0 , ..., c7 ). Pro deˇsifrov´an´ı je sled operac´ı: S0 = C r
−1
S =φ
(S
r−1
E E , (k448−8r , ..., k455−8r ))
(3.46) 1 ≤ r ≤ 56
56
P =S .
(3.47) (3.48)
Sch´ema blokov´e ˇc´ asti algoritmu CSA je zobrazeno na obr´azku 3.23. Proudov´ aˇ c´ ast ˇ sifry Touto ˇc´ast´ı kryptosyst´emu se v r´ amci anal´ yz v diplomov´e pr´aci nebudu pˇr´ıliˇs zab´ yvat, proto ani zde ji nevˇenuji velk´ y prostor. Proudov´a ˇc´ ast je o pozn´ an´ı komplikovanˇejˇs´ı neˇz ˇc´ast blokov´a. Vyuˇz´ıvaj´ı se zde dva zpˇetnovazebn´e posuvn´e registry (FSR), kombinaˇcn´ı obvod s pamˇet´ı a ˇrada registr˚ u, kde tˇri z nich jsou bitov´e a zb´ yvaj´ıc´ı jsou pouze pro ˇctyˇri bity (viz sch´ema proudov´e ˇcasti CSA na obr. 3.24). Nov´e hodnoty pro ne - FSR registry jsou odvozov´any ze sedmi 5x2 S Box˚ u. V r´amci proudov´e ˇsifry se nejprve v inicializaˇcn´ım m´odu nastav´ı startovac´ı stav ˇsifry. V druh´em m´odu pak ˇsifra vytv´ aˇr´ı dva pseudon´ahodn´e bity za jeden ˇcasov´ y cyklus. I proudov´ a ˇsifra vyuˇz´ıv´ a spoleˇcn´ y kl´ıˇc K. Ten je nejprve pouˇzit pro nastaven´ı poˇc´ateˇcn´ıho stavu a d´ele je nahr´ an do posuvn´ ych registr˚ u.
24
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
Obr´ azek 3.23: CSA - Blokov´a ˇc´ast algoritmu pozn. Obr´ azek pˇrevzat´ y z [nez03].
´ ´ ˇ KAPITOLA 3. UVOD DO KRYPTOGRAFIE VYBRANYCH SIFER
Obr´ azek 3.24: CSA - Proudov´a ˇc´ast algoritmu pozn. Obr´azek pˇrevzat´ y z [nez03].
25
´ METODY KAPITOLA 4. KRYPTOANALYTICKE
26
4 Kryptoanalytick´ e metody Kryptoanal´ yza je vˇeda zab´ yvaj´ıc´ı se zkoum´an´ım a rozb´ıjen´ım ˇsifer bez pˇr´ıstupu ke kl´ıˇci. C´ılem je samozˇrejmˇe deˇsifrovat poˇzadovan´ a data, vˇetˇsinou vˇsak tak´e z´ıskat kl´ıˇc a tedy schopnost st´al´eho deˇsifrov´ an´ı. Kryptoanalytick´e metody odr´aˇzej´ı vlastnosti ˇsifry, ze kter´ ych se snaˇz´ı tˇeˇzit a tak se z´asadnˇe liˇs´ı pro symetrick´e a asymetrick´e ˇsifry. Vˇetˇsina dnes popsan´ ych kryptoanalytick´ ych metod se pokouˇs´ı v ˇsifˇre nal´ezt slab´e m´ısto, statisticky podloˇzenou z´ avislost na z´ akladˇe n´ıˇz lze odvodit nˇeco o chov´an´ı ˇsifry, nejl´epe ve vztahu ke kl´ıˇci. Nejbˇeˇznˇeji pouˇz´ıvan´ ymi analytick´ ymi metodami pro symetrick´e ˇsifry jsou line´arn´ı, diferenci´aln´ı (nˇekdy oznaˇcovan´ a jako diferenˇcn´ı) a algebraick´a kryptoanal´ yza. Tyto metody se liˇs´ı hlavn´ımi myˇslenkami jak pˇristupovat ke zdol´av´an´ı ˇsifer a v z´avislosti na tom jsou tak´e omezeny v pouˇzit´ı jen na r˚ uzn´e typy ˇsifer napˇr. dle jejich obsaˇzen´ ych komponent jako je S-BOX. Line´arn´ı kryptoanal´ yza je obecnou metodou zaloˇzenou na hled´an´ı line´arn´ıch aproximac´ı k jednotliv´ ym akc´ım ˇsifry na rozd´ıl od diferenci´aln´ı anal´ yzy, kter´a se pokouˇs´ı nal´ezt z´avislosti mezi rozd´ıly vstup˚ u a v´ ystup˚ u. Nejm´enˇe rozˇs´ıˇrenou je algebraick´a kryptoanal´ yza, kter´a popisuje ˇsifrovac´ı syst´em souborem rovnic a ty se snaˇz´ı ˇreˇsit. V´ ybˇer metody tak´e v´ yraznˇe ovlivˇ nuje jak´ y materi´al (napˇr. jen ˇsifrovan´e nebo otevˇren´e i odpov´ıdaj´ıc´ı ˇsifrovan´e texty) m´ a kryptoanalytik k dispozici, viz 4.1. V t´eto kapitole budou pops´ any typy u ´tok˚ u v z´avislosti na zdrojov´ ych datech a pˇredevˇs´ım tˇri nejz´akladnˇejˇs´ı kryptoanalytick´e metody: line´arn´ı, diferenci´aln´ı a algebraick´a kryptoanal´ yza, v z´avˇeru pak krit´eria pro hodnocen´ı odolnosti ˇsifer.
4.1
Druhy u ´ tok˚ u
Pouˇzit´ı dan´e kryptoanalytick´e metody odr´aˇz´ı mimo jin´e jak´ y v´ ychoz´ı materi´al m´ame k dispozici. Zda m´ame otevˇren´ y text, ˇsifrovan´ y text, oboj´ı nebo i moˇznost zaˇsifrovat n´ami vybran´ y text. Rozhoduj´ıc´ı pro kryptoanal´ yzu a zvolen´ı spr´avn´eho postupu m˚ uˇze b´ yt i ˇc´asteˇcn´a znalost vztah˚ u mezi nˇekter´ ymi kl´ıˇci. Vˇzdy pˇredpokl´ad´ame, ˇze m´ame kompletn´ı informace o ˇsifrovac´ım algoritmu. Dle v´ yˇse uveden´eho m˚ uˇzeme u ´toky podle zdrojov´ ych dat rozdˇelit na: ´ Utok se znalost´ı ˇ sifrovan´ eho textu (ciphertext-only attack ) Je takov´ yu ´tok, kde analytik m´ a k dispozici pouze sadu zaˇsifrovan´ ych text˚ u. Takov´ yu ´tok m˚ uˇze b´ yt u ´spˇeˇsn´ y zejm´ena je-li otevˇren´ y text nebo kl´ıˇc pˇredv´ıdateln´ y. Pokud tomu tak je, m˚ uˇze b´ yt oslaben i velmi dobr´ y ˇsifrovac´ı syst´em jako tomu bylo v pˇr´ıpadˇe Enigmy, kde pravidelnˇe zas´ılan´e pˇredpovˇedi poˇcas´ı (o pˇredv´ıdateln´em obsahu urˇcit´ ych slov) napomohly k prolomen´ı jinak velmi robustn´ıho syst´emu. Kaˇzd´ a modern´ı ˇsifra usiluje o poskytnut´ı ochrany proti tomuto typu u ´toky, i kdyˇz je to do jist´e m´ıry minimum, nebot’ tento typ u ´toku je pro kryptoanalytika nejsloˇzitˇejˇs´ı. ´ Utok se znalost´ı otevˇ ren´ eho textu (known-plaintext attack ) Pˇr´ıstup k ˇsifrovan´emu textu je doplnˇen o pˇr´ıstup k otevˇren´ ym text˚ um tˇechto zpr´av a c´ılem tak je obvykle rozluˇstˇen´ı kl´ıˇce(˚ u) ˇci rekonstrukce deˇsifrovac´ıho procesu. Kryptoanalytik vid´ı transformaci otevˇren´eho v ˇsifrovan´ y text (tedy samozˇrejmˇe pouze vstup a v´ ystup) a kryptoanal´ yza je tak usnadnˇena. Klasick´e ˇsifry jako byla Caesarova (posun abecedy) jsou velmi snadno napadnuteln´e t´ımto u ´tokem, zde typicky staˇc´ı znalost jedin´eho p´ısmene otevˇren´eho textu a jedin´eho odpov´ıdaj´ıc´ıho p´ısmene ˇsifrovan´eho textu. ´ Utok se znalost´ı vybran´ ych otevˇ ren´ ych text˚ u (chosen-plaintext attack ) Dalˇs´ı usnadnˇen´ı pˇrin´ aˇs´ı kryptoanalytikovi moˇznost vybrat si otevˇren´e texty, kter´e budou posl´eze zaˇsifrov´any, jako je tomu v tomto pˇr´ıpadˇe. Tento typ u ´toku je samozˇrejmˇe u ´ˇcinnˇejˇs´ı neˇz pˇred-
´ METODY KAPITOLA 4. KRYPTOANALYTICKE
27
choz´ı dva, protoˇze za pouˇzit´ı vybran´ ych otevˇren´ ych text˚ u (napˇr. repetic jednotliv´ ych znak˚ u) m˚ uˇzeme nˇekdy z´ıskat v´ıce informac´ı o kl´ıˇci. C´ılem u ´toku je tedy vybrat takov´e otevˇren´e texty k zaˇsifrov´ an´ı, kter´e poskytnou luˇstiteli doplˇ nuj´ıc´ı informace o ˇsifrovac´ım procesu a sn´ıˇz´ı tak jej´ı bezpeˇcnost. Takov´e typy u ´tok˚ u jsou v souˇcasn´e dobˇe aktu´aln´ı d´ıky rozˇs´ıˇren´ı veˇrejn´ ych ˇsifrovac´ıch syst´em˚ u jako je RSA, kde kdokoli m´a pˇr´ıstup k veˇrejn´emu kl´ıˇci a m˚ uˇze ˇsifrovat libovoln´ y text. V z´ asadˇe m˚ uˇzeme jeˇstˇe vymezit dva podtypy u ´tok˚ u s vybran´ ym textem: d´avkov´ y u ´tok, kde kryptoanalytik vybere vˇsechny otevˇren´e texty pˇred zaˇsifrov´an´ım a adaptivn´ı u ´tok, kde kryptoanalytik vytv´ aˇr´ı jak´esi dotazy v´ ybˇerem sledu otevˇren´ ych text˚ u v z´avislosti na informac´ıch z pˇredchoz´ıho ˇsifrov´ an´ı (m˚ uˇze tedy ˇsifrovat otevˇren´e texty opakovanˇe). ´ Utok se znalost´ı vybran´ ych ˇ sifrov´ ych text˚ u (chosen-ciphertext attack ) Oproti pˇredchoz´ı variantˇe m´ au ´toˇcn´ık jeˇstˇe moˇznost deˇsifrovat zvolen´ y zaˇsifrovan´ y text. Jedin´ ym c´ılem tedy z˚ ust´ av´ a odvozen´ı kl´ıˇce ˇci kl´ıˇc˚ u. Mnoho ˇsifer je odoln´ ych u ´toku s vybran´ ym otevˇren´ ym textem, ale mohou m´ıt probl´em s aplikac´ı vybran´ ych ˇsifrov´ ych text˚ u. Pak je potˇreba zabezpeˇcit pˇr´ıstup k deˇsifrov´ an´ı, coˇz m˚ uˇze b´ yt probl´em, protoˇze i ˇc´asteˇcnˇe vybran´e ˇsifrov´e texty mohou poskytnou velk´e mnoˇzstv´ı informac´ı. Stejnˇe jako v pˇredchoz´ım pˇr´ıpadˇe je u ´tok se znalost´ı vybran´ ych ˇsifrov´ ych text˚ u d´ıky moˇznosti ˇsifrov´an´ı libovoln´eho textu sp´ıˇse z´aleˇzitost´ı algoritm˚ u s veˇrejn´ ym ˇsifrovac´ım kl´ıˇcem. Nˇekdy lze k u ´toku vyuˇz´ıt i znalosti o chov´an´ı kl´ıˇc˚ u a odvodit tak napˇr´ıklad strukturu neveˇrejn´eho S boxu. Tento typ u ´toku naz´ yv´ame u ´tokem se znalost´ı vybran´eho kl´ıˇce (chosen-key attack ), coˇz neznaˇc´ı znalost samotn´eho kl´ıˇce ˇci kl´ıˇc˚ u, ale jen nˇekter´ ych souvislost´ı.
4.1.1
´ Utok hrubou silou
T´emˇeˇr vˇsechny kryptografick´e algoritmy jsou napadnuteln´e u ´tokem hrubou silou. V tomto typu u ´toku zkouˇs´ıme vˇsechny moˇzn´e kl´ıˇce tak dlouho, dokud ˇsifra nepodlehne. To b´ yv´a mnohdy ˇcasovˇe nere´ aln´e. Nutnou podm´ınkou je schopnost zjistit, ˇze byl dan´ y ˇsifrovan´ y text rozluˇstˇen. K tomu se pouˇz´ıvaj´ı r˚ uzn´e statistick´e metody a slovn´ıky. Ale co kdyˇz deˇsifrov´an´ım m˚ uˇzeme podle kl´ıˇce dostat libovoln´ y text? ˇ To je pˇr´ıpad Vernamovy ˇsifry. Ta vyuˇz´ıv´a jednor´azov´ y hesl´aˇr (One-time pad). Sifrov´ an´ı prob´ıh´ a dle rovnic: (4.49) ci = pi ⊕ ki pi = ci ⊕ ki
(4.50).
D˚ uleˇzit´ ymi podm´ınkami z˚ ust´ av´ a, ˇze kl´ıˇce mus´ı b´ yt naprosto n´ahodn´e a ˇze kaˇzd´ y kl´ıˇc bude 1 pouˇzit pouze jedenkr´ at . V´ ysledn´ y text pak m˚ uˇze b´ yt jak´ ykoliv v z´avislosti na kl´ıˇci. Pˇ r´ıklad 4.1.1 Je zaˇsifrov´ ana zpr´ ava Neutocte“, kterou m˚ uˇzeme pomoc´ı ASCII zapsat jako ” 0x4E 0x65 0x75 0x74 0x6F 0x63 0x74 0x65, a zaˇsifrov´ ana kl´ıˇcem 0x22 0x34 0x12 0x66 0xA0 0xFF 0x05 0x00. Dost´ av´ ame v´ysledn´y ˇsifrovan´y text: c = 0x4E 0x65 0x75 0x74 0x6F 0x63 0x74 0x65 ⊕ 0x22 0x34 0x12 0x66 0xA0 0xFF 0x05 0x00 = 0x6C 0x51 0x67 0x12 0xCF 0x9C 0x71 0x65. Potenci´ aln´ı u ´toˇcn´ık se snaˇz´ı zpr´ avu deˇsifrovat. Domn´ıv´ a se, ˇze byl pouˇzit kl´ıˇc 0x36 0x30 0x12 0x66 0xA0 0xFF 0x05 0x00. Zpr´ avu deˇsifruje a dost´ av´ a: p = 0x6C 0x51 0x67 0x12 0xCF 0x9C 0x71 0x65 ⊕ 0x36 0x30 0x12 0x66 0xA0 0xFF 0x05 0x00 1ˇ
Sifra m´ a periodu rovnou ∞.
´ METODY KAPITOLA 4. KRYPTOANALYTICKE
28
= 0x5A 0x61 0x67 0x12 0xCF 0x9C 0x71 0x65. ´ cn´ık Pˇri pouˇzit´ı tabulky ASCII dost´ av´ ame text Zautocte“ a ten m´ a pˇresnˇe opaˇcn´y v´yznam. Utoˇ ” nikdy nepozn´ a, kdy pouˇzil spr´ avn´y kl´ıˇc. V pr´aci [Sha49] Shannon dokazuje, ˇze Vernamova ˇsifra je absolutnˇe bezpeˇcn´ y kryptosyst´em. 4.1.2
Line´ arn´ı kryptoanal´ yza
Na konferenci EUROCRYPT’93 byla poprv´e pˇredstavena nov´a metoda u ´toku, p˚ uvodnˇe zamˇeˇren´a jen na ˇsifry se strukturou Feistelovy s´ıtˇe [Mat94][Bih94]. Jednalo se o line´arn´ı kryptoanal´ yzu. Ta se snaˇz´ı hledat line´ arn´ı z´ avislosti mezi vstupy a v´ ystupy jednotliv´ ych S-BOX˚ ua to s co nejlepˇs´ı spolehlivost´ı - pravdˇepodobnost´ı, ˇze tento vztah bude platit. Zm´ınˇen´ y postup se lze d´ale rozˇs´ıˇrit na celou Feistelovu funkci a tak´e na vˇetˇs´ı poˇcet rund: Definice 4.1.1 Line´ arn´ı pravdˇ epodobnost S-BOXu [CC00] Line´ arn´ı pravdˇepodobnost (bijektivn´ıho) S-BOXu S: {0, 1}m → {0, 1}m definujeme pro libovoln´ a Γx, Γy ∈ {0, 1}m jako LP S (Γx → Γy) = []{x ∈ {0, 1}m | Γx • x = Γy • S(x)}/2m−1 − 1]2 , kde Γx • x je parita Γx ⊕ x. Definice 4.1.2 Maxim´ aln´ı line´ arn´ı pravdˇ epodobnost S-BOXu [CC00] Maxim´ aln´ı line´ arn´ı pravdˇepodobnost (bijektivn´ıho) S-BOXu S: {0, 1}m → {0, 1}m definujeme jako LP S max = max LP S (Γx → Γy), kde maximum se bere pˇres vˇsechna Γx, Γy 6= 0, Γx ∈ {0, 1}m , Γy ∈ {0, 1}m . Definice 4.1.3 Funkce SDS [Ros] SDS je funkce se tˇremi u ´rovnˇemi: substituc´ı (S), difuzn´ı u ´rovn´ı (D) a substituc´ı (S). Oznaˇcme vstupn´ı a v´ystupn´ı diferenci SDS jako ∆x ∈ {0, 1}nm , ∆x 6= 0, ∆y = y ⊕ y∗ = D(x) ⊕ D(x∗), a vstupn´ı a v´ystupn´ı masku SDS jako Γx ∈ {0, 1}nm , Γy ∈ {0, 1}nm , Γy 6= 0. Vˇ eta 4.1.1 Horn´ı odhad pro line´ arn´ı obal funkce SDS [CC00] Jestliˇze difuzn´ı u ´roveˇ n D je maxim´ aln´ı (tj. nl (D) = n + 1 nebo ekvivalentnˇe nd (D) = n + 1), pak pravdˇepodobnost kaˇzd´eho line´ arn´ıho obalu funkce SDS je omezena hodnotou q n . D˚ usledek 4.1.1 Pˇredchoz´ı vˇeta ˇr´ık´ a, ˇze LP SDS (Γx → Γy) ≤ q n pro kaˇzd´e Γx ∈ {0, 1}nm , Γy 6= 0, Γy ∈ {0, 1}nm . Odtud vypl´yv´ a, ˇze LP SDS max = max LP SDS (Γx → Γy) ≤ q n , kde maximum se bere pˇres vˇsechna Γx ∈ {0, 1}nm , Γy 6= 0, Γy ∈ {0, 1}nm . D˚ usledek 4.1.2 S´ıt’ SDS m˚ uˇzeme v˚ uˇci S-BOXu ch´ apat jako vˇetˇs´ı S-BOX, tzv. ”XS”-BOX. Maxim´ aln´ı line´ arn´ı obal XS-BOXu je pomoc´ı pˇredchoz´ı vˇety odhadnut dle maxim´ aln´ıch line´ arn´ıch obal˚ u mal´ych box˚ u S z nichˇz je sestaven jako SDS s´ıt’. Z XS-BOX˚ u lze sestavovat vˇetˇs´ı XXSBOXy atd.
´ METODY KAPITOLA 4. KRYPTOANALYTICKE
29
T´ım se samozˇrejmˇe tato pravdˇepodobnost sniˇzuje a k prolomen´ı ˇsifry je potˇreba v´ıce zn´am´ ych ~ ~γ , kter´e n´am urˇcuj´ı jak´e poloˇzky blok˚ u otevˇren´eho textu. Definujme tˇri bin´arn´ı vektory α ~ , β, z vstupn´ıch (resp. v´ ystupn´ıch ˇci kl´ıˇcov´ ych) blok˚ u vyb´ır´ame: P~ × α ~ = P~α
(4.51)
~ = C~β ~ ×β C
(4.52)
~ × ~γ = K ~γ . K
(4.53)
~γ P~α ⊕ C~β = ~c × K
(4.54)
Snaˇz´ıme se naj´ıt rovnost s pravdˇepodobnost´ı p 6= 12 , kde ~c je kontantn´ı vektor. Zav´ad´ıme pojem efektivita vztahu (4.54) a ta je pr´ avˇe d´ ana vztahem |p − 21 |. Line´arn´ı kryptoanal´ yza se nejv´ıce vyuˇz´ıv´a pro u ´tok se znalost´ı otevˇren´eho textu. 4.1.3
Diferenci´ aln´ı kryptoanal´ yza
Principy diferenci´ aln´ı kryptoanal´ yzy byly poprv´e publikov´any roku 1991 v pr´aci Eli Bihama a Adi Shamira [BS91] [BS93]. Tehdy byl pops´an poprv´e u ´tok na ˇsestn´acti rundov´ y DES, kter´ y byl efektivnˇejˇs´ı neˇz u ´tok hrubou silou. Diferenci´aln´ı kryptoanal´ yza nˇekdy b´ yv´a t´eˇz pˇrekl´ad´ana jako diferenˇcn´ı,( v anglick´em jazyce b´ yv´ a tato metoda pojmenov´ana jako differential cryptanalysis nebo tak´e T-attack ) vyuˇz´ıv´ a zv´ yˇsen´e pravdˇepodobnosti urˇcit´ ych diferenc´ı otevˇren´eho textu pˇri v´ yskytu diferenc´ı ˇsifrovan´eho textu. Definice 4.1.4 Diferenci´ aln´ı pravdˇ epodobnost S-BOXu [CC00] Line´ arn´ı pravdˇepodobnost (bijektivn´ıho) S-BOXu S: {0, 1}m → {0, 1}m definujeme pro libovoln´ a ∆x, ∆y ∈ {0, 1}m jako DP S (∆x → ∆y) = ]{x ∈ {0, 1}m | S(x) ⊕ S(x ⊕ ∆x) = ∆y}/2m .
Definice 4.1.5 Maxim´ aln´ı diferenci´ aln´ı pravdˇ epodobnost S-BOXu [CC00] Maxim´ aln´ı diferenci´ aln´ı pravdˇepodobnost (bijektivn´ıho) S-BOXu S: {0, 1}m → {0, 1}m definujeme jako DPmax S = max DP S (∆x → ∆y), kde maximum se bere pˇres vˇsechna ∆x 6= 0, ∆x ∈ {0, 1}m , ∆y ∈ {0, 1}m . Vˇ eta 4.1.2 Horn´ı odhad pro diferenci´ al funkce SDS. [CC00] Pˇredpokl´ adejme, ˇze rundov´e podkl´ıˇce, kter´e jsou exklusivnˇe seˇcteny na vstupn´ı data v kaˇzd´e rundˇe, jsou nez´ avisl´e a stejnomˇernˇe n´ ahodn´e. Jestliˇze difuzn´ı u ´roveˇ n D je maxim´ aln´ı (tj. nd = n + 1), pak pravdˇepodobnost kaˇzd´eho diferenci´ alu funkce SDS je omezena hodnotou pn . D˚ usledek 4.1.3 Pˇredchoz´ı vˇeta ˇr´ık´ a, ˇze DPSDS (∆x → ∆y) ≤ pn pro kaˇzd´e ∆x ∈ {0, 1}nm , ∆x 6= 0, ∆y ∈ {0, 1}nm . Odtud vypl´yv´ a, ˇze DP SDS max = maxDP SDS (∆x → ∆y) ≤ pn , kde maximum se bere pˇres vˇsechna ∆x 6= 0, ∆x ∈ {0, 1}nm , ∆y ∈ {0, 1}nm .
´ METODY KAPITOLA 4. KRYPTOANALYTICKE
30
D˚ usledek 4.1.4 S´ıt’ SDS m˚ uˇzeme v˚ uˇci S-BOXu ch´ apat jako vˇetˇs´ı S-BOX, tzv. ”XS”-BOX. Maxim´ aln´ı diferenci´ al boxu XS je pomoc´ı pˇredchoz´ı vˇety odhadnut dle maxim´ aln´ıch diferenci´ al˚ u mal´ych box˚ u S z nichˇz je sestaven jako SDS s´ıt’. Z XS-BOX˚ u lze sestavovat vˇetˇs´ı XXS-BOXy atd.
Obr´azek 4.1: Diferenci´ aln´ı kryptoanal´ yza - Bumerangov´ yu ´tok (Boomerang attack ) pozn. Obr´azek pˇrevzat´ y z http://www.quadibloc.com/crypto/co4512.htm, kde je bumerangov´ y u ´tok podrobnˇeji pops´an
Diferenci´aln´ı kryptoanal´ yza se nejv´ yce pouˇz´ıv´a pro u ´tok s moˇznost´ı v´ ybˇeru otevˇren´eho textu. Dalˇs´ı text je vyb´ır´ an pr´ avˇe podle diferenc´ı. Podle metody, jakou dalˇs´ı text vyb´ır´ame, dˇel´ıme diferenci´aln´ı kryptoanal´ yzu na • Podm´ınˇen´ y diferenci´ aln´ı u ´tok (Conditional Differential Cryptanalysis) • Diferenci´aln´ı u ´tok vyˇsˇs´ıch stav˚ u (Higher order Differential Cryptanalysis) • Zkr´acen´ y diferenci´ aln´ı u ´tok (Truncated Differential Cryptanalysis) • Nemoˇzn´ y diferenci´ aln´ı u ´tok (Impossible Differential Cryptanalysis) • Bumerangov´ y diferenci´ aln´ı u ´tok (Boomerang Differential Cryptanalysis) Nejˇcastˇeji pouˇz´ıvan´ ymi u ´toky jsou hlavnˇe posledn´ı dva. Postup pˇri v´ ybˇeru dalˇs´ıho textu u bumerangov´e diferenci´ aln´ı kryptoanal´ yzy m´ame zobrazen na obr´azku 4.1.
´ METODY KAPITOLA 4. KRYPTOANALYTICKE 4.1.4
31
Algebraick´ a kryptoanal´ yza
Algebraick´ a kryptoanal´ yza se snaˇz´ı popsat S-BOXy algebraick´ ymi rovnicemi, pokud moˇzno pouze s n´ızk´ ym stupnˇem. Vych´ az´ı z algebraick´e norm´alov´e formy, kter´a se od konjunktivn´ı norm´alov´e formy CNF liˇs´ı t´ım, ˇze m´ısto logick´eho sˇc´ıt´an´ı pouˇz´ıv´a exklusivn´ı souˇcet. Tu se pak snaˇz´ı upravit k obrazu sv´emu. Podle vyˇzadovan´ ych rovnic a metod jejich spojov´an´ı (u iterativn´ıch ˇsifer) dˇel´ıme algebraickou kryptoanal´ yzu na: • Neust´ al´e dˇelen´ı - (Continued fractions ) • XSL • XL • Vnoˇrov´ an´ı - (Embedding) Neust´ale dˇelen´ı vytv´ aˇr´ı napˇr´ıklad pro 3 rundy n´asleduj´ıc´ı strukturu x=K+
C1
X
K∗
+
P K∗+
C2 P
.
(4.55)
C3 K∗+p∗ ∗
XL a XSL metody se snaˇz´ı naj´ıt rovnice typu f (x1 , ...xn , y1 , ..., ym ) = 0,
(4.56)
kde n znaˇc´ı poˇcet vstup˚ u, m poˇcet v´ ystup˚ u dan´eho S-BOXu a funkce f m´a algebraick´ y stupeˇ n roven dvˇema. Vnoˇrov´an´ı se pouˇz´ıv´ a pro specieln´ı pˇr´ıpady. V [MR02] je definov´ana blokov´a ˇsifra BES, kter´ a pracuje nad 128 bytama. Metoda vnoˇrov´an´ı se snaˇz´ı popsat napˇr´ıklad Rijndael˚ uv algoritmus2 jako Rijndael(x) = φ−1 (BES(φ(x))). (4.57) V souˇcasn´e dobˇe se nejˇcastˇeji pouˇz´ıv´a metoda XSL, n´astupce XL metody. Nutno vˇsak podotknout, ˇze ani tato metoda nen´ı v souˇcasnosti dostateˇcnˇe prozkoum´ana a vlastn´ı kryptoanal´ yza z˚ ust´av´a hlavnˇe vˇec´ı n´ ahody jak sami autoˇri pˇrizn´avaj´ı.
4.2
Krit´ eria pro hodnocen´ı odolnosti ˇ sifer
Pˇredn´ı vlastnost´ı kaˇzd´e ˇsifry je jej´ı odolnost v˚ uˇci pˇr´ıpadn´ ym u ´tok˚ um. Existuj´ı ˇsifry jejichˇz c´ılem nen´ı maxim´ aln´ı u ´roveˇ n zabezpeˇcen´ı, ale napˇr. optim´aln´ı kombinace zabezpeˇcen´ı a uˇzivatelsk´eho komfortu, zab´ yvejme se vˇsak d´ ale jen hodnocen´ım ˇsifer, kter´e by mˇely pˇrin´est maxim´aln´ı moˇzn´e zabezpeˇcen´ı. Pak bezpeˇcnou ˇsifrou m˚ uˇzeme nazvat takovou ˇsifru, jej´ıˇz zdol´an´ı metodou hrub´e s´ıly nen´ı v re´aln´em ˇcasu moˇzn´e a z´ aroveˇ n pokud bychom k prolomen´ı museli vynaloˇzit vˇetˇs´ı u ´sil´ı na kryptoanal´ yzu neˇz na zmiˇ novan´ yu ´tok hrubou silou. Z kryptoanalytick´eho hlediska ˇsifru m˚ uˇze oslabit mnoho faktor˚ u, pro metodu hrub´e s´ıly b´ yv´ a rozhoduj´ıc´ı pouze d´elka kl´ıˇce. Samozˇrejmˇe nelze ovˇeˇrit absolutn´ı bezpeˇcnost ˇsifry, je vˇsak nˇekolik charakteristik, kter´e by mˇel dobr´ y ˇsifrovac´ı algoritmus splˇ novat. Jsou to zejm´ena: Dobr´a konfuze, difuze a lavinovost (viz kap. 3). ˇ Sifrovac´ ı algoritmus by nemˇel obsahovat slab´e ani poloslab´e kl´ıˇce nebo by mˇely b´ yt zak´az´ any. ˇ Sifrovac´ ı algoritmus neomezuje v´ ybˇer kl´ıˇc˚ u nebo otevˇren´ ych text˚ u sv´ ymi vlastnostmi. 2
Pouˇz´ıv´ a se v AES.
32
´ METODY KAPITOLA 4. KRYPTOANALYTICKE
ˇ Sifrovac´ ı algoritmus neumoˇzn ˇuje ˇs´ıˇren´ı vznikl´e chyby do dalˇs´ıch proces˚ u. Zaˇsifrovan´ y text nen´ı vˇetˇs´ı neˇz otevˇren´ y text (vˇetˇs´ı text, v´ıce informac´ı k prolomen´ı a vˇetˇs´ı n´aroky na pamˇet’). Pokud se n´am algoritmus podaˇr´ı urˇcit´ ym zp˚ usobem napadnou, nemus´ı b´ yt nutnˇe ˇspatn´ y. Z´aleˇz´ı na typu u ´toku (viz pˇredchoz´ı kapitola) a typu prolomen´ı: ´ • Upln´ e prolomen´ı total break - u ´toˇcn´ık z´ısk´a kl´ıˇc, dok´aˇze k jak´emukoliv zaˇsifrovan´emu textu odvodit text otevˇren´ y • Glob´aln´ı dedukce global deduction - u ´toˇcn´ık sice nezjist´ı kl´ıˇc, ale dok´aˇze text ˇsifrovat resp. deˇsifrovat bez nˇej • Lok´aln´ı dedukce local deduction - u ´toˇcn´ık z´ısk´a otevˇren´ y text ke konkr´etn´ımu pˇr´ıpadu ˇsifrovan´eho textu • Dedukce informace information deduction - u ´toˇcn´ık z´ısk´a nˇejakou informaci o otevˇren´em textu V souˇcasn´e dobˇe se na kryptosyst´emy kladou ˇc´ım d´al t´ım v´ıce poˇzadavk˚ u. Nyn´ı by mˇel splˇ novat tyto z´akladn´ı bezpeˇcnostn´ı c´ıle: • D˚ uvˇernost - ochrana informac´ı proti neopr´avnˇen´emu zneuˇzit´ı • Integrita - ochrana proti zmˇenˇe obsahu • Autentizace - pˇr´ıjemce by mˇel m´ıt moˇznost zjisti p˚ uvod zpr´avy • Nepopiratelnost - odes´ılatel by nemˇel m´ıt pozdˇeji moˇznost zapˇr´ıt, ˇze zpr´avu poslal Abychom vˇsechny poˇzadavky na kryptosyst´emy splnily, mus´ıme se velmi ˇcasto obracet na kombinace r˚ uzn´ ych pˇr´ıstup˚ u (napˇr. hybridn´ı kryptografie), ˇci algoritm˚ u.
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
33
5 Vlastn´ı kryptoanal´ yza vybran´ ych ˇ sifer Pˇristupme nyn´ı k vlastn´ı anal´ yze ˇsifer DES, Zodiac a CSA dan´ ymi kryptoanalytick´ ymi metodami.
5.1
Minim´ aln´ı matematick´ y apar´ at
Pro algebraickou kryptoanal´ yzu budeme velmi ˇcasto potˇrebovat metody pro minimalizaci boolovsk´ ych funkc´ı. Nejˇcastˇeji pravdˇepodobnˇe pouˇzijeme karnaughovu mapu, kter´a ovˇsem pro velk´e mnoˇzstv´ı vstup˚ u se st´ av´ a nepˇrehlednou. Existuj´ı i dalˇs´ı metody a mnoh´e aplikace, kter´e je implementuj´ı. Zaj´ımavou je napˇr´ıklad metoda Quine-McCluskey. Kl´ıˇcov´a pro n´ as bude konverze do algebraick´e norm´alov´e formy. Proto zde uv´ad´ım jej´ı algoritmus zapsan´ y v pseudo k´ odu: ANF Algoritmus g(x1, ..., xn ) = f (0, ..., 0) for (k=1; k<2*n-1; k++) int2bin(k); // vyj´ adˇ ri bin´ arn´ ı reprezentaci ˇ c´ ısla k , k = b1 + b2*2 + b3*pow(2,2) + ... + bn*pow(2,n-1) if (g(b1, b2, ..., bn) == f(b1, b2, ..., bn)) { c=1; for (i=0; i<=n; i++) c*=pow(xi,Bi); g(x1, ..., xn) = g(x1, ..., x_n) ^ c } ANF(f) = g(x1, ..., xn) Dalˇs´ı nutnou znalost´ı bude pr´ ace v modul´arn´ı soustavˇe a ostatn´ı z´aklady numerick´e matematiky ([L´or04],[JP96]).
5.2
´ Utok line´ arn´ı kryptoanal´ yzou
Prvn´ım c´ılem je vytvoˇrit si line´ arn´ı aproximaˇcn´ı tabulky. Pˇr´ıklady budu uv´adˇet pro DES, pro ostatn´ı ˇsifry budou postupy analogick´e. Budeme se snaˇzit zapsat n´ asleduj´ıc´ı rovnosti a zjistit jejich v´ ychylky od norm´alu a pravdˇepodobnosti: ∀i ∈ h0, n), ∀j ∈ h0, m), αi ∈ {0, 1}, βi ∈ {0, 1} :
n M i
αi Xi =
m M
βj Yj ,
(5.58)
j
kde n je poˇcet moˇzn´ ych kombinac´ı vstup˚ u SBOXu, m poˇcet moˇzn´ ych kombinac´ı v´ ystup˚ u. Vyzkouˇseli jsme vˇsechny moˇznosti kombinac´ı vstup˚ u α a v´ ystup˚ u β a zapsali jsme hodnotu Li,j . n 1 pro αi xk = βi yk (5.59) Li,j = − Πnk 0 pro ostatn´ı pˇr´ıpady 2
34
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
Nyn´ı m˚ uˇzeme z tabulky line´ arn´ı aproximace zjistit v´ ychylku bi,j : Li,j n
(5.60)
1 Li,j 1 + bi,j = + 2 2 n
(5.61)
bi,j = A pravdˇepodobnost pi,j moˇzn´e linearity : pi,j =
V line´arnˇe aproximaˇcn´ıch tabulk´ ach pro S-BOXy ˇsifry DES se nalezneme nejvˇetˇs´ı v´ ychylku |bi,j |. Zjist´ıme, ˇze pro S-BOX S5 (tab. F.1 a tab. F.2) a pro α = (16)10 = (010000)2 a β = (15)10 = (001111)2 , respektive pro α = (48)10 = (110000)2 a β = (15)10 = (001111)2 , je L16,15 (resp. L48,15 ) rovno -20. To znamen´a, ˇze S-BOX S5 m˚ uˇzeme aproximovat jako x1 = y0 ⊕ y1 ⊕ y2 ⊕ y3 ,
(5.62)
x0 ⊕ x1 = y0 ⊕ y1 ⊕ y2 ⊕ y3
(5.63)
respektive a to s v´ ychylkou (z rovnice (5.60)) b16,15 = b48,15 =
L48,15 20 5 L16,15 = =− =− n n 64 16
(5.64)
1 1 3 + b16,15 = + b48,15 = . 2 2 16
(5.65)
a pravdˇepodobnost´ı (z rovnice (5.61)) p16,15 = p48,15 = Rovnice m˚ uˇzeme drobnˇe upravit: x1 ⊕ 1 = y0 ⊕ y1 ⊕ y2 ⊕ y3 ,
(5.66)
x0 ⊕ x1 ⊕ 1 = y0 ⊕ y1 ⊕ y2 ⊕ y3
(5.67)
respektive a dost´av´ame, ˇze plat´ı s pravdˇepodobnost´ı p¯16,15 = p¯48,15 = 1 − p16,15 = 1 − p48,15 =
13 = 81, 25% 16
(5.68)
Kryptosyst´em DES byl pr´ avˇe d´ıky t´eto vysok´e linearitˇe S-BOXu S5 (tab. F.1 a tab. F.2) v minulosti uˇz mnohokr´ at kritizov´ an. Pro n´as bude nejvhodnˇejˇs´ı rovnice (5.66) vzhledem k jej´ı jednoduchosti. Po d˚ ukladnˇejˇs´ım prozkoum´an´ı expanzn´ı permutace E (tab. B.1) a permutace P (tab. B.2) zjist´ıme, kter´ y vstupn´ı bit Feistelovy funkce odpov´ıd´ a vstupn´ımu bitu samotn´eho S-BOXu. Dost´av´ame: X[16] ⊕ Y[2] ⊕ Y[7] ⊕ Y[13] ⊕ Y[24] ⊕ 1 = Kr,[25] ,
(5.69)
kde r oznaˇcuje ˇc´ıslo rundy. Ve vˇetˇsinˇe pˇr´ıpad˚ u n´ am postaˇc´ı pracovat s negac´ı tohoto v´ yrazu: X[16] ⊕ Y[2] ⊕ Y[7] ⊕ Y[13] ⊕ Y[24] = Kr,[25] .
(5.70)
Rovnice (5.69) je nejlepˇs´ı line´ arn´ı aproximac´ı, kter´e jsme schopni v ˇsifˇre dos´ahnout. Abychom mohli pˇr´ıpadn´ yu ´tok realizovat, mus´ıme b´ yt schopni aplikovat tento postup i pro v´ıce
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
35
rund. Uk´ aˇzeme si to na pˇr´ıkladu 3-rundov´eho DESu. Rovnici (5.70) aplikujeme na prvn´ı a tˇret´ı kolo. Dostaneme Pp,[16] ⊕ X2,[2] ⊕ X2,[7] ⊕ X2,[13] ⊕ X2,[24] ⊕ Pl,[2] ⊕ Pl,[7] ⊕ Pl,[13] ⊕ Pl,[24] = K1,[25]
(5.71)
Cp,[16] ⊕ X2,[2] ⊕ X2,[7] ⊕ X2,[13] ⊕ X2,[24] ⊕ Cl,[2] ⊕ Cl,[7] ⊕ Cl,[13] ⊕ Cl,[24] = K3,[25] .
(5.72)
Po exklusivn´ım seˇcten´ım dostaneme Pp,[16] ⊕Cp,[16] ⊕Pl,[2] ⊕Pl,[7] ⊕Pl,[13] ⊕Pl,[24] ⊕Cl,[2] ⊕Cl,[7] ⊕Cl,[13] ⊕Cl,[24] = K1,[25] ⊕K3,[25] (5.73) a to s pravdˇepodobnost´ı1 p=
3 32 89 . + (1 − )2 = = 69, 53%. 16 16 128
(5.74)
Tento postup je aplikovateln´ y na libovoln´ y poˇcet kol, pops´an je v [Bih94]. Existuje i jin´ y postup, postupn´eho zˇretˇezov´ an´ı, kter´ y je pops´an v [Hey02] a zobrazili jsme ho v pˇr´ıloze na obr´azku L.1. Analogicky bychom pro dalˇs´ı kola dost´av´ame rovnici pro 5 rund: Pp,[15] ⊕ Pl,[7] ⊕ Pl,[18] ⊕ Pl,[24] ⊕ Pl,[27] ⊕ Pl,[28] ⊕ Pl,[29] ⊕ Pl,[30] ⊕ Pl,[31] ⊕ Cp,[15] ⊕ Cl,[7] ⊕Cl,[18] ⊕ Cl,[24] ⊕ Cl,[27] ⊕ Cl,[28] ⊕ Cl,[29] ⊕ Cl,[30] ⊕ Cl,[31] = K1,[42] ⊕ K1,[43] ⊕ K1,[45] ⊕K1,[46] ⊕ K2,22] ⊕ K4,[22] ⊕ K5,[42] ⊕ K5,[42] ⊕ K5,[43] ⊕ K5,[45] ⊕ K5,[46] .
(5.75)
Lemma 5.2.1 (Piling-Up lemma[Mat94]) Necht’ Xi jsou nez´ avisl´e bin´ arn´ı promˇenn´e, kde i ∈ h1; ni, pak pravdˇepodobnost p, ˇze
Ln
i=1 Xi
=
0 bude rovna p(⊕ni=1 Xi = 0) =
1 1 + 2n−1 Πni=1 (pi − ) 2 2
(5.76)
Pomoc´ı lemmy ovˇeˇr´ıme vztah (5.75) p=
1 5 89 + 2(− )2 = . 2 16 127
(5.77)
M˚ uˇzeme tedy tvrdit, ˇze pravdˇepodobnost prolomen´ı je z´avisl´a na nejslabˇs´ım ˇcl´anku (pravdˇepodobnosti jeho linearizace) a poˇctu rund. Od t´eto pravdˇepodobnosti lze i odvodit potˇrebn´ y poˇcet otevˇren´ ych text˚ u. Abychom ˇsifru prolomili s pravdˇepodobnost´ı na 99,8%, budeme potˇrebovat ych text˚ u (podle [Mat94]). Pro n´aˇs pˇr´ıpad 3-rundov´eho DESu dost´av´ ame, 2(p − 12 )−2 otevˇren´ ˇze bychom potˇrebovali 53 blok˚ u otevˇren´eho textu. Pro cel´ y 16-ti rundov´ y DES bychom potˇrebovali 1, 49.249 otevˇren´ ych text˚ u2 . Pro jednotliv´e kryptosyst´emy pro jednotliv´e rundy dost´av´ame srovn´an´ı zobrazen´e na obr. 5.1. Aby bylo zad´ an´ı zcela splnˇeno mus´ı b´ yt stanoveno kolik rund je re´aln´e jeˇstˇe naruˇsit. Mus´ıme si urˇcit mez poˇctu otevˇren´ ych text˚ u, kterou jsme schopni v rozumn´em ˇcase vyzkouˇset a ˇcasu, ˇ kter´ y jsme ochotni v´ ypoˇctu vˇenovat. Reknˇ eme, ˇze dok´aˇzeme vyzkouˇset 10 000 blok˚ u otevˇren´ ych text˚ u za vteˇrinu a ˇze pro v´ ypoˇcet vˇenujeme maxim´alnˇe jeden mˇes´ıc v´ ypoˇcetn´ıho ˇcasu. M˚ uˇzeme tedy vyzkouˇset 1, 5.234 otevˇren´ ych text˚ u. Dost´av´ame grafy na obr´azc´ıch 5.2 a 5.3. 1 2
Pravdˇepodobnost se rovn´ a souˇctu toho, ˇze obˇe rovnice plat´ı a souˇctu, ˇze obˇe rovnice neplat´ı. V literatuˇre se objevuje hodnota 247 . Je to poˇcet potˇrebn´ ych otevˇren´ ych blok˚ u textu k prolomen´ı ˇsifry na
hladinˇe pravdˇepodobnosti 97,7%.
36
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
´ eˇsnost linearizace jedn´e rundy Obr´ azek 5.1: Uspˇ
Obr´ azek 5.2: Poˇcet rund napadnuteln´ ych line´arn´ı kryptoanal´ yzou Hodnoty jsou platn´e pro v´ ypoˇcet nejd´ele 30 dn´ı pˇri rychlosti ovˇeˇrov´an´ı 10 000 blok˚ u/s (* Pro ˇsifru CSA pouˇzita pouze blokov´a ˇc´ast, u Zodiacu vynech´ano bˇelen´ı kl´ıˇc˚ u)
Pozn´ amka 5.2.1 V [Mat94] je pops´ ana i metoda u ´toku se znalost´ı pouze ˇsifrovan´eho textu. K t´eto metodˇe je zapotˇreb´ı v´ıce textu a je v´ypoˇcetnˇe n´ aroˇcnˇejˇs´ı. Oproti tomu omez´ıme-li se v naˇs´ı metodˇe na znaky anglick´e abecedy (napˇr´ıklad v html souborech), budeme potˇrebovat blok˚ u m´enˇe. Pro v´ ypoˇcet nejd´ele 30 dn´ı pˇri rychlosti ovˇeˇrov´an´ı 10 000 blok˚ u/s dost´av´ame tyto hodnoty: Nejm´enˇe odolnou ˇsifrou proti line´ arn´ı kryptoanal´ yze se stal kryptosyst´em DES, kter´emu lze prolomit 12 rund. Naopak nejsilnˇejˇs´ı se stal kryptosyst´em CSA, kter´emu lze prolomit pouze 7 ˇ rund. Je to pouze 12,5% z celkev´eho poˇctu rund tohoto kryptosyst´emu. Sifra zodiac odol´avala
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
37
o jednu rundu m´enˇe. Prolomit tedy line´arn´ı kryptoanal´ yzou ˇslo celkem 8 rund.
Obr´azek 5.3: Procentueln´ı vyj´ adˇren´ı poˇctu rund napadnuteln´ ych line´arn´ı kryptoanal´ yzou Hodnoty jsou platn´e pro v´ ypoˇcet nejd´ele 30 dn´ı pˇri rychlosti ovˇeˇrov´an´ı 10 000 blok˚ u/s (* Pro ˇsifru CSA pouˇzita pouze blokov´a ˇc´ast, u Zodiacu vynech´ano bˇelen´ı kl´ıˇc˚ u)
5.3
´ Utok diferenci´ aln´ı kryptoanal´ yzou
Sestav´ıme si distribuˇcn´ı tabulku diferenc´ı pro ∆X a ∆Y podle definice 4.1.4. Postupujeme tak, ˇze proch´ az´ıme vˇsechny moˇzn´e vstupn´ı diference pˇres vˇsechny moˇzn´e vstupy a do tabulku v´ ystupn´ıch diferenc´ı inkrementujeme. ∀x1 , x2 ∈ X : ∆x = x1 ⊕ x2 , ∆y = S(x1 ) ⊕ S(x2 )
(5.78)
∀x ∈ X, ∆x : ∆y = S(x) ⊕ S(x ⊕ ∆x)
(5.79)
Pravdˇepodobnost urˇcit´e diference dostaneme, ˇze hodnotu z tabulky pro urˇcitou diferenci podˇel´ıme poˇctem moˇzn´ ych kombinac´ı vstup˚ u. Pod´ıvejme se napˇr´ıklad na tabulku pro S-BOX S1 kryptosyst´emu DES - tab. I.1 a I.2. Dost´av´ame S1 : ∆X = 0xF to∆Y = 0xF : ps1 ,[F ;F ] =
1 8 = = 12, 5% 6 2 8
(5.80)
nebo
2 1 = = 3, 125%. (5.81) 6 2 32 n Pravdˇepodobnost ide´ aln´ıho kryptosyst´emu by byla rovna 12 . Povˇsimnˇeme si tak´e, ˇze vˇsechny hodnoty jsou sud´e. Doch´ az´ı k tomu d´ıky komutativnosti funkce exklusivn´ıho sˇc´ıt´an´ı. Pod´ıvejme se znovu na rovnici (5.78). S1 : ∆X = 0xD to∆Y = 0xB : ps1 ,[D;D] =
∆Y = S(x1 ) ⊕ S(x2 ) → ∆Y = S(x2 ) ⊕ S(x1 ), x1 6= x2 Pod´ıvejme se nyn´ı na maxim´ aln´ı pravdˇepodobnosti jednotliv´ ych kryptosyst´em˚ u:
(5.82)
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
38
• DES: 28 pˇr´ıpad˚ u, kde p =
1 4
= 25%
• KeeLoq: 1 pˇr´ıpad, kde p[30,0] = 1 = 100% • Zodiac: 1 pˇr´ıpad, kde p[128,253] = • CSA: 1 pˇr´ıpad, kde p[28,45] =
3 64
1 2
= 50%
= 3, 125%
Lemma 5.3.1 [NK92] Pravdˇepodobnost diferenci´ alu r-rundov´eho sch´ematu je omezena ˇc´ıslem 2p2 , jestliˇze maxim´ aln´ı pravdˇepodobnost diferenci´ alu rundov´e funkce je p a r ≥ 4. Pokud je rundov´ a funkce bijektivn´ı, je to pouze p2 . Z t´eto lemmy m˚ uˇzeme ˇr´ıct, ˇze pravdˇepodobnost diferenci´alu pro syst´em KeeLoq nen´ı shora omezena a pro kryptosyst´emy DES, Zodiac a CSA je shora omezen´a po ˇradˇe hodnotami 12,5%, 25%, ≈ 0,0096%. Nyn´ı bych r´ad uk´ azal jak samotn´ a anal´ yza pracuje. Pˇr´ıklady opˇet uk´aˇzu pouze na kryptosyst´emu DES, pro ostatn´ı syst´emy je postup analogick´ y. Zvolme si urˇcitou ˇr´ adku distribuˇcn´ı tabulky. Napˇr´ıklad pro S-BOX S1 ∆X = 0x34. Vid´ıme, ˇze v´ ystupn´ı diference m˚ uˇze nab´ yvat osmi hodnot 0x1, 0x2, 0x3, 0x4, 0x7, 0x8, 0xD, 0xF . Pro ostatn´ı diference se vyskytuj´ı s nulovou pravdˇepodobnost´ı (viz tab. I.2). Pro kaˇzdou hodnotu jsme schopni urˇcit moˇzn´ y rozsah vstupu (viz tab. 5.1). V´ ystupn´ı diference ∆Y
Hodnoty moˇzn´eho vstupu X
1
0x03 0x0F 0x1E 0x1F 0x2A 0x2B 0x37 0x3B
2
0x04 0x05 0x0E 0x11 0x12 0x14 0x1A 0x1B 0x20 0x25 0x26 0x2E 0x2F 0x30 0x31 0x3A
3
0x01 0x02 0x15 0x21 0x35 0x36
4
0x13 0x27
7
0x00 0x08 0x0D 0x17 0x18 0x1D 0x23 0x29 0x2C 0x38 0x3D
8
0x09 0x0C 0x19 0x2D 0x38 0x3D
D
0x06 0x10 0x16 0x1C 0x22 0x24 0x28 0x32
F
0x07 0x0A 0x0B 0x33 0x3E 0x3F
Tabulka 5.1: Tabulka moˇzn´ ych vstup˚ u pro S1 , ∆X = 0x34 A pro kaˇzdou hodnotu jsme n´ aslednˇe schopni urˇcit pˇr´ısluˇsn´ y kl´ıˇc. Napˇr´ıklad pro hodnotu v´ ystupn´ı diference ∆Y dost´ av´ ame tabulku 5.2. Statisticky pro vˇetˇs´ı poˇcet diferenc´ı ovˇeˇr´ıme. Faleˇsn´e kl´ıˇce budou m´ıt pouze norm´ alov´e rozloˇzen´ı pravdˇepodobnosti, prav´ y kl´ıˇc bude m´ıt pravdˇepodobnost vyˇsˇs´ı. Tento postup se d´ a rozˇs´ıˇrit na vˇetˇs´ı poˇcet rund. Postupuje se tak, ˇze aproximujeme r-1 rund a z posledn´ıho h´ ad´ ame kl´ıˇc. Pr˚ uchod t´ımto syst´emem je zobrazen v pˇr´ıloze na obr´azku M.1. Tento postup je jednak n´ aroˇcn´ı na poˇcet otevˇren´ ych blok˚ u, tak i pamˇet’ovˇe, protoˇze si tyto bloky potˇrebujeme uloˇzit abychom mohli zkouˇset r˚ uzn´e kombinace. Existuj´ı r˚ uzn´e varianty a vylepˇsen´ı diferenci´aln´ı kryptoanal´ yzy. Pod´ıv´ame-li se na n´asleduj´ıc´ı
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
Vstup x1
Vstup x2
Hodnota kl´ıˇce k
0x06
0x32
0x07
0x10
0x24
0x11
0x16
0x22
0x17
0x1C
0x25
0x1D
0x22
0x16
0x23
0x24
0x10
0x25
0x25
0x1C
0x29
0x32
0x06
0x33
39
Tabulka 5.2: Tabulka moˇzn´ ych kl´ıˇc˚ u pro S1 , ∆X = 0x34, ∆Y = 0x0D graf (obr. 5.4) vid´ıme, ˇze n´ ami pouˇzit´a metoda (v grafu oznaˇcen´a zelenˇe) je na kompletn´ı, 16 rundov´ y, DES horˇs´ı neˇz prohled´ av´an´ı hrubou silou. Abychom dospˇeli lepˇs´ıch v´ ysledk˚ u, museli bychom pouˇz´ıt vylepˇsen´ y algoritmus s heuristikou (oznaˇcen´ y modˇre). Ten je sice lepˇs´ı, ale bohuˇzel asymptoticky z˚ ust´ av´ a nezmˇenˇen. Pro Zodiac se pouˇz´ıv´a tzv. nemoˇzn´a diferenci´ aln´ı ” kryptoanal´ yza“ (viz [LL01]). Pˇri stanoven´ı stejn´ ych mez´ı jako v pˇredchoz´ı kapitole dost´av´ame grafy na obr´azc´ıch 5.5 a 5.6. DES - diferencialni analyza 260 255 250
pocet paru [-]
245 240 235 30
2
25
2
220 215 210 25 20
0
2
4
6
8
pocet rund [-]
10
12
14
16
Legenda Utok se znalosti otevreneho textu Namerene hodnoty pro utok se znalosti vybranych otevrenych textu Teoreticke hodnoty pro utok se znalosti vybranych otevrenych textu s heuristikou Vyvojovy trend pro utok se znalosti otevreneho textu Vyvojovy trend pro teoreticke hodnoty pro utok se znalosti vybranych otevrenych textu Vyvojovy rend pro namerene hodnoty pro utok se znalosti vybranych otevrenych textu
Obr´ azek 5.4: Srovn´ an´ı r˚ uzn´ ych pˇr´ıstup˚ u diferenci´aln´ı kryptoanal´ yzy
Poˇrad´ı odolnost´ı jednotliv´ ych kryptosyst´em˚ u se nezmˇenilo, pouze vlastn´ı hodnoty. Nejslabˇs´ım kryptosyst´emem z˚ ust´ av´ a ˇsifra DES, u kter´e m˚ uˇzeme prolomit 10 rund. Na druh´em m´ıstˇe je Zodiac, u kter´eho m˚ uˇzeme diferenci´aln´ı kryptoanal´ yzou zdolat uˇz pouze 5 rund. A jako
40
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
Obr´ azek 5.5: Poˇcet rund napadnuteln´ ych diferenci´aln´ı kryptoanal´ yzou Hodnoty jsou platn´e pro v´ ypoˇcet nejd´ele 30 dn´ı pˇri rychlosti ovˇeˇrov´an´ı 10 000 blok˚ u/s (* Pro ˇsifru CSA pouˇzita pouze blokov´a ˇc´ast)
Obr´azek 5.6: Procentueln´ı vyj´ adˇren´ı poˇctu rund napadnuteln´ ych diferenci´aln´ı kryptoanal´ yzou Hodnoty jsou platn´e pro v´ ypoˇcet nejd´ele 30 dn´ı pˇri rychlosti ovˇeˇrov´an´ı 10 000 blok˚ u/s (* Pro ˇsifru CSA pouˇzita pouze blokov´a ˇc´ast)
nejsilnˇejˇs´ı z˚ ust´av´ a kryptosyst´em CSA. Pod´ıv´ame-li se diferenˇcn´ı distanˇcn´ı tabulky, kter´e jsou na pˇriloˇzen´em DVD, vyd´ıme, ˇze se tato skuteˇcnost dala oˇcek´avat. S-BOX syst´emu CSA je s´am o sobˇe velice odoln´ y a diference se vyskytuj´ı pouze s malou pravdˇepodobnost´ı. Proto i cel´ y kryptosyst´em CSA odol´ av´ a pro v´ıce jak 3 rundy, coˇz pˇredstavuje pouh´ ych 5,4% z celov´eho poˇctu rund.
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
5.4
41
´ Utok algebraickou kryptoanal´ yzou
Algebraick´ a kryptoanal´ yza se snaˇz´ı pospat S-BOXy algebraick´ ymi rovnicemi, kter´e pak ˇreˇs´ı jako SAT probl´em. Courtois a Bard ve sv´e pr´ aci [CBW07] definuj´ı tˇri r˚ uzn´e algebraick´e struktury pro popis kryptosyst´em˚ u. • V´ıcepromnˇen´e vstupnˇe v´ ystupn´e rovnice n´ızk´eho ˇr´adu • Vstupnˇe v´ ystupn´ı rovnice s mal´ ym poˇctem jednoˇclen˚ u. • Rovnice velmi n´ızk´eho stupnˇe (1 - 2), n´ızk´e nelinearity a extr´emnˇe vysok´ ym rozptylem Teor´ em 5.4.1 [NTC02] Necht’ n je poˇcet vstup˚ u S-BOXu, m poˇcet v´ystup˚ u a t je poˇcet prvk˚ u χ, pak pro kaˇzd´y S-BOX, (x1 , ..., xn ) → (y1 , ..., ym ) a pro podmnoˇzinu χ z 2m+n moˇzn´ych jednoˇclen˚ u z xi a yi plat´ı, kdyˇz t > 2n , pak v podmnoˇzinˇe χ je nejm´enˇe t − 2n line´ arnˇe nez´ avisl´ych vstupnˇe v´ystupn´ıch rovnic. Abychom mohli urˇcit kolik bude m´ıt soustava popisuj´ıc´ı S-BOX line´arnˇe nez´avisl´ ych rovnic, mus´ıme nejdˇr´ıve urˇcit kolik existuje r˚ uzn´ ych jednoˇclen˚ u. Definujme tedy rovnici typu: X
αijk xi yj yk +
X
βijk xi xj yk +
X
γij xi yj +
X
δi xi +
X
εi yi + ζ = 0.
(5.83)
Pak plat´ı: t = 1 + nm + n + m + n
n(n − 1) m(m − 1) +m 2 2
(5.84)
D˚ usledek 5.4.1 6 × 4 S-BOX [NTC06] Pro kaˇzd´y 6 × 4 S-BOX poˇcet line´ arnˇe nez´ avisl´ych rovnic r je nejm´enˇe (typu (5.83)): r ≥ t − 2n = 67
(5.85)
D˚ usledek 5.4.2 8 × 8 S-BOX Pro kaˇzd´y 8 × 8 S-BOX poˇcet line´ arnˇe nez´ avisl´ych rovnic r je nejm´enˇe (typu (5.83)): r ≥ t − 2n = 3857
(5.86)
Z´aroveˇ n Courtois a Bard [CBW07] tvrd´ı, ˇze jakmile bude m´ıt soustava v´ıce jak 131 r˚ uzn´ ych jednoˇclen˚ u, pak se ztr´ ac´ı urˇcit´e vztahy mezi DES S-BOXem a n´ahodn´ ym S-BOXem. D´ıky rovnici (5.86) a tomu, ˇze zat´ım neexistuje matematick´ y apar´at jak´ ym tyto rovnice vyb´ırat, nejsme v souˇcasn´e dobˇe schopni vytvoˇrit algebraickou anal´ yzu pro blokovou ˇc´ast CSA a ˇsifru Zodiac. Pokud bychom mˇeli ˇc´ıselnˇe vyj´adˇrit kolik rund jsme schopni touto anal´ yzou prolomit, museli bychom pouˇz´ıt ANF pro tyto ˇsifry, kter´e jsou v pˇr´ıloh´ach D a E, ale dostali bychom hodnoty maxim´ alnˇe do tˇr´ı rund. Tuto metodu jsem zde uvedl pˇrev´ aˇznˇe kv˚ uli tomu, ˇze je to v souˇcasnosti jedin´a metoda, kter´ a nen´ı exponencielnˇe z´ avisl´ a na poˇctu rund a proto je do budoucna jednou z m´ala potenci´aln´ıch metod pro ˇreˇsen´ı vysoko rundov´ ych kryptosyst´em˚ u. Tato vlastnost byla demonstrov´ana na rozbit´ı ˇsifry KeeLoq [CBW07]. Ta samozˇrejmˇe byla o pozn´an´ı jednoduˇsˇs´ı3 neˇz n´ami zmiˇ novan´e kryptosyst´emy a d´ıky sv´e neline´ arn´ı funkci, kter´a byla zad´ana jiˇz pˇr´ımo v ANF, se pˇr´ımo pro tento typ u ´toku vyb´ızela. 3
KeeLoq pouˇz´ıv´ a 5×1 S-BOX (NLF).
´ ´ ˇ KAPITOLA 5. VLASTN´I KRYPTOANALYZA VYBRANYCH SIFER
42
´ Utok na DES je pops´ an v jiˇz zmiˇ novan´em ˇcl´anku [CBW07]. Ovˇsem ani zde nen´ı pˇresnˇe zn´am jak´ ym zp˚ usobem rovnice vyb´ırat. Pro v´ ybˇer rovnic jsem se pokouˇsel aplikovat genetick´e algoritmy, ale nepˇrinesly vhodn´e v´ ysledky. Pˇredpokl´ad´am, ˇze to bylo hlavnˇe zp˚ usobeno t´ım, ˇze chromozomy v tomto pˇr´ıpadˇe byly velmi dlouh´e4 . A abych zachoval dostateˇcnou diversitu populace, musela i ta b´ yt velmi rozs´ahl´a. U tohoto syst´emu se pak pomal´ a konvergence dala jiˇz oˇcek´avat. Vyuˇzit´ım evoluˇcn´ıch algoritm˚ u v kryptoanal´ yze se zab´ yv´ a [CF05].
4
Byla pouˇzita dynamick´ a d´elka chromozomu.
´ ´I ODOLNOSTI SIFER ˇ KAPITOLA 6. SROVNAN DES, ZODIAC A CSA
43
6 Srovn´ an´ı odolnosti ˇ sifer DES, Zodiac a CSA Pod´ıv´ame-li se na graf na obr´ azku 6.1 vid´ıme, ˇze KeeLoq pouˇz´ıv´a mnohem v´ıce rund neˇz ostatn´ı kryptosyst´emy. Ale i pˇres to byl prolomen algebraickou kryptoanal´ yzou. To n´am d´av´a nadˇeji do budoucna, ˇze bychom mohli dos´ ahnout podobn´ ych v´ ysledk˚ u u iterativn´ıch ˇsifer s vysok´ ym poˇctem rund jako je napˇr´ıklad CSA.
Obr´ azek 6.1: Srovn´an´ı celkov´eho poˇctu rund
Hlavn´ı srovn´ an´ı m˚ uˇzeme pr´ avˇe vztahovat k poˇctu prolomen´ ych rund, a nebo k procentueln´ımu zastoupen´ı prolomen´ ych rund k celkov´emu poˇctu. Vˇetˇsinu iterativn´ıch ˇsifer lze prolomit pˇri n´ızk´em poˇctu iterac´ı. Proto n´ avrh´aˇri tˇechto kryptosyst´em˚ u mus´ı spr´avnˇe navrhnout poˇcet rund, kter´ y by mˇel b´ yt dostateˇcn´ y pro zabezpeˇcen´ı a kompromisem pro rychlost ˇsifrov´an´ı. V naˇsem pˇr´ıpadˇe procentueln´ı zobrazen´ı jeˇstˇe umocˇ nuje rozd´ılnost odolnost´ı. Kryptosyst´em CSA dosahuje v kaˇzd´e pouˇzit´e metodˇe kryptoanal´ yzy nejlepˇs´ıch hodnot. A to kv˚ uli kombinaci s proudovou ˇsifrou, velikosti S-BOXu pouˇzit´eho v blokov´e ˇc´asti algoritmu a jeho velik´e nelinearitˇe. Ot´azkou z˚ ust´ av´ a jestli potom nen´ı pouˇzito zbyteˇcnˇe mnoho rund v tomto kryptosyst´emu. ˇ Odpovˇed’ zn´ı, ˇze nikoliv. Sifra CSA byla od poˇc´atku navrˇzena pro ˇsifrov´an´ı digit´aln´ıch televiz´ı. Proto m˚ uˇze obsahovat takov´e mnoˇzstv´ı operac´ı, kter´e lze za pomoc´ı aktu´aln´ıch prostˇredk˚ u realizovat v re´ aln´em ˇcase. Konkr´etn´ı hodnoty m´ ame zobrazen´e na grafech na obr´azc´ıch H.1, H.2, K.1 a K.1. Ukazuje se, ˇze v metod´ ach line´ arn´ı a diferenci´ aln´ı kryptoanal´ yzy je nejsilnˇejˇs´ı CSA, druhou silnou ˇsifrou se st´av´a Zodiac a jako bezpeˇcnostnˇe nejslabˇs´ı z˚ ust´av´a DES. Ten nevyhovuje tak´e z hlediska d´elky kl´ıˇce. U algebraick´e kryptoanal´ yzy jsme nedok´azali naj´ıt vhodn´e rovnice pro reprezentaci S-BOX˚ u v ˇsifr´ ach CSA a Zodiac a tak zde bohuˇzel odolnost tˇechto ˇsifer srovn´avat nelze. Velmi zaj´ımav´e v´ ysledky dostaneme, pokud se pod´ıv´ame na anal´ yzy jednotliv´ ych S-BOX˚ u. Napˇr´ıklad z graf˚ u na obr´ azc´ıch H.1 a H.2 vid´ıme, ˇze S-BOX S1 vykazuje daleko vˇetˇs´ı prvky linearity. Lze tak jednoduˇse analyzovat jednotliv´e prvky syst´emu, nal´ezt slab´a m´ısta a ty pak optimalizovat. Touto cestou se snaˇz´ı j´ıt n´asledovn´ıci DESu (sn DES), kteˇr´ı se snaˇz´ı opravit samotn´e S-BOXy (bylo poukazov´ ano na vysokou linearitu S-BOXu S5 ).
44
´ ER ˇ KAPITOLA 7. ZAV
7 Z´ avˇ er V r´amci sv´e diplomov´e pr´ ace jsem popsal jak pracuj´ı kryptosyst´emy DES, Zodiac a CSA, a protoˇze se v pr´ aci odkazuji na algoritmus KeeLoq, charakterizoval jsem i tento ˇsifrovac´ı syst´em. Demonstroval jsem moˇzn´ a rizika implementace jako v pˇr´ıpadˇe ECB m´odu nebo v´ yskytu slab´ ych kl´ıˇc˚ u. Z´ aroveˇ n jsem nast´ınil i dalˇs´ı m´ody pro blokov´e ˇsifry a pouk´azal na jejich v´ yhody a nev´ yhody. Pokusil jsem se o srovn´an´ı z´akladn´ıch kryptoanalytick´ ych metod - diferenci´aln´ı, line´ arn´ı a algebraick´e kryptoanal´ yzy. Ukazuje se, ˇze line´arn´ı kryptoanal´ yza, jako anal´ yza modernˇejˇs´ı, poskytuje oproti diferenci´aln´ı anal´ yze lepˇs´ı v´ ysledky. Velmi perspektivn´ı je v souˇcasn´e dobˇe avˇsak nepˇr´ıliˇs aplikovateln´a algebraick´a kryptoanal´ yza. Souˇcasn´e trendy pˇredstavuj´ı moˇznosti pouˇzit´ı kombinace v´ıce metod, coˇz pˇrin´aˇs´ı celkovˇe lepˇs´ı v´ ysledky. Modern´ı algoritmy jiˇz maj´ı obvykle implementov´ any mechanizmy zajiˇst’uj´ıc´ı vysokou u ´roveˇ n zabezpeˇcen´ı v˚ uˇci tˇemto dobˇre popsan´ ym anal´ yz´ am. V r´amci srovn´an´ı odolnost´ı kryptosyst´em˚ u jsme podle oˇcek´av´an´ı zjistili, ˇze nejsilnˇejˇs´ı je CSA n´asledov´ana ˇsifrou Zodiac a jako nejslabˇs´ı se jev´ı ˇsifra DES. Bezpeˇcnost ˇsifry DES je nedostateˇcn´a i d´ıky d´elce jej´ıho kl´ıˇce a je tak napadnuteln´a i metodou hrub´e s´ıly. CSA vyuˇz´ıv´a z tˇechto kryptosyst´em˚ u nejvyˇsˇs´ıho poˇctu rund (56 oproti 16 v ˇsifˇre DES a Zodiac). Je tak´e syst´emem nejkomplexnˇejˇs´ım, kter´ y vyuˇz´ıv´a kombinace dvou nez´avisl´ ych ˇsifrovac´ıch sch´emat, blokov´e a proudov´e ˇc´ asti. Nejodolnˇejˇs´ı je nejen v r´amci srovn´an´ı cel´ ych ˇsifrovac´ıch algoritm˚ u, ale tak´e pokud k anal´ yze pouˇzijeme pouze jej´ı blokovou ˇc´ast nebo budeme-li prov´adˇet srovn´an´ı odolnosti ˇsifer v rozsahu pouze jedn´e rundy. Z´aroveˇ n se d´ıky pˇr´ıtomnosti proudov´e ˇc´asti algoritmu ˇsifra jako celek vyh´ yb´ a nespr´ avn´e implementaci vedouc´ı k dedukci urˇcit´e informace jako v pˇr´ıpadˇe ECB m´ odu. Pˇri stanoven´ı hranice v´ ypoˇcetn´ı doby na jeden mˇes´ıc a rychlosti ovˇeˇrov´an´ı 10000 blok˚ u/s (pamˇet’ovou n´aroˇcnost zanedb´ av´ ame), dost´av´ame n´asleduj´ıc´ı v´ ysledky. Pˇri pouˇzit´ı line´arn´ı kryptoanal´ yzy jsme schopni prolomit 12 rund v kryptosyst´emu DES, 8 rund v kryptosyst´emu Zodiac pˇri vynech´ an´ı bˇelen´ı kl´ıˇc˚ u“ a 7 rund u blokov´e ˇc´asti CSA. U diferenci´aln´ı kryptoanal´ yzy ” jsme pak schopni prolomit 10 rund u DESu, 5 rund u Zodiac a pouze 3 rundy u blokov´e ˇc´asti CSA. U algebraick´e anal´ yzy nebylo moˇzn´e dos´ahnout z´avˇereˇcn´eho srovn´an´ı. D´ıky kryptoanalytick´ ym metod´ am jsme schopni nejen posoudit kvalitu jednotliv´ ych syst´em˚ u, ale jsme schopni urˇcit odolnost i pro jednotliv´e prvky kryptosyst´em˚ u. Napˇr´ıklad v ˇsifˇre Zodiac se ukazuje S-BOX S2 silnˇejˇs´ı neˇz S-BOX S1 (viz grafy na obr´azc´ıch H.1, H.2, K.1 a K.1). Na z´avˇer bych chtˇel jeˇstˇe poznamenat, ˇze neexistuje metoda, kter´a by zaruˇcila, ˇze urˇcit´ y kryptosyst´em nebude citliv´ y v˚ uˇci pˇr´ıpadn´e nov´e kryptoanalytick´e strategii a proto jistˇe obory kryptografie a kryptoanal´ yza budou i nad´ ale obory dynamicky se vyv´ıjej´ıc´ımi.
KAPITOLA 8. SEZNAM LITERATURY
45
8 Seznam literatury [AJM96]
Scott A. Vanstone Alfred J. Menezes, Paul C. van Oorschot. Handbook of Applied Cryptography. CRC Press, Inc., Boca Raton, FL, USA, 1996. http://www.cacr.math.uwaterloo.ca/hac/.
[BDK02]
E. Biham, O. Dunkelman, and N. Keller. Enhancing differential-linear cryptanalysis, 2002.
[Bih94]
Eli Biham. On matsui’s linear cryptanalysis. pages 386–397, 1994.
[Bog07]
Andrey Bogdanov. Cryptanalysis of the keeloq block cipher. Cryptology ePrint Archive, Report 2007/055, 2007. http://eprint.iacr.org/.
[BP82]
H. Beker and F. Piper. Cipher systems: The Protection of Communications. London, UK, 1982.
[BS91]
Eli Biham and Adi Shamir. Differential cryptanalysis of deslike cryptosystems. Lecture Notes in Computer Science, 1991. http://citeseer.ist.psu.edu/biham91differential.html.
[BS93]
Eli Biham and Adi Shamir. Differential cryptanalysis of the data encryption standard. Springer-Verlag, London, UK, 1993.
[Car04]
C. Carlet. Improving the algebraic immunity of resilient and nonlinear functions and constructing bent functions. Cryptology ePrint Archive, Report 2004/276, 2004. http://eprint.iacr.org/.
[CBW07]
Nicolas T. Courtois, Gregory V. Bard, and David Wagner. Algebraic and slide attacks on keeloq. Cryptology ePrint Archive, Report 2007/062, 2007. http://eprint.iacr.org/.
[CC00]
Seokhie Hong Sangjin Lee Jongin Lim Jaechul Sung Donghyeon Cheon and Inho Cho. Provable security against differential and linear cryptanalysis for the spn structure, 2000.
[CF05]
Hua Chen and Dengguo Feng. An evolutionary algorithm to improve the nonlinearity of self-inverse s-boxes. Information security and cryptology : ICISC 2004, 2005.
[CL05]
Carlos Cid and Ga¨etan Leurent. An analysis of the xsl algorithm. Advances in cryptology : ASIACRYPT 2005 : 11th International Conference on the Theory and Application of Cryptology and Information Security, 2005.
[Cou06]
Nicolas T. Courtois. How fast can be algebraic attacks on block ciphers?, 2006. http://eprint.iacr.org/2006/168/.
[Die04]
Claus Diem. The xl-algorithm and a conjecture from commutative algebra. Advances in cryptology : ASIACRYPT 2004 : 10th International Conference on the Theory and Application of Cryptology and Information Security, 2004.
[DKDM05] Kishan Chand Gupta Deepak Kumar Dalai and Subhamoy Maitra. Cryptographically significant boolean functions: Construction and analysis in terms of algebraic immunity. Fast software encryption : 12th international workshop, FSE 2005, 2005.
46
KAPITOLA 8. SEZNAM LITERATURY
[EBK05]
Orr Dunkelman Eli Biham and Nathan Keller. New combined attacks on block ciphers. Fast software encryption : 12th international workshop, FSE 2005, 2005.
[Gol04]
Jovan Dj. Golic. Vectorial boolean functions and induced algebraic equations. Cryptology ePrint Archive, Report 2004/225, 2004. http://eprint.iacr.org/.
[Hey02]
Howard M. Heys. A tutorial on linear and differential cryptanalysis, 2002. http://www.engr.mun.ca/~howard/PAPERS/ldc_tutorial.html.
[JP96]
ˇ Jindˇrich Kodl Jiˇr´ı Pˇribyl. Ochrana dat v informatice. Vydavatelstv´ı CVUT, Praha, 1996.
[Kl´ı05]
Vlastimil Kl´ıma. Z´ aklady modern´ı kryptologie - symetrick´a kryptografie i-iii., 2005. http://www.karlin.mff.cuni.cz/~tuma/nciphers/.
[Knu01]
Lars Knudsen. Integral cryptanalysis nes/doc/uib/wp5/015/1, http://www.cosic.esat.kuleuven.ac.be/nessie/reports/phase2/.
[Lee00]
Chang-Hyi Lee. Zodiac technical material, 2000. http://www.softforum.co.kr/.
[LL01]
Deukjo Hong Jaechul Sung Shiho Moriai Sangjin Lee and Jongin Lim. Impossible differential cryptanalysis of zodiac, 2001. http://www.crypto-world.info/.
[Luc00]
Stefan Lucks. The saturation attack http://eprint.iacr.org/2000/046/.
[L´or04]
R´obert L´ orencz. Aplikovan´ a numerick´ a matematika a kryptografie. Vydavatelstv´ı ˇ CVUT, Praha, 2004.
[Mat94]
M. Matsui. Linear cryptanalysis method for des cipher. In Theory and Application of Cryptographic Techniques, pages 341–355, 1994.
[MR02]
Sean Murphy and Matt J.B. Robshaw. Essential algebraic structure within the aes, 2002.
[nez03]
Autor nezn´ am´ y. Csa - known facts and speculations, 2003. http://csa.irde.to/.
[NK92]
K. Nyberg and L. R. Knudsen. Provable security against a differential attack, 1992.
[NTC02]
Josef Pieprzyk Nicolas T. Courtois. Cryptanalysis of block ciphers with overdefined systems of equations, 2002. http://eprint.iacr.org/2002/044/.
[NTC06]
Gregory V. Bard Nicolas T. Courtois. Algebraic cryptoanalysis of the data encryption standard, 2006. http://eprint.iacr.org/2006/402/.
[Pha04]
Raphael C.-W. Phan. Related-key attacks on triple-des and desx variants. Cryptographers’ Track at the RSA Conference, 2004.
[Pub93]
Federal Information Processing Standards Publication. Data encryption standard (des), 1993. http://www.itl.nist.gov/fipspubs/fip46-2.htm.
[Pub04]
Federal Information Processing Standards Publication. Data encryption standard (des), 2004. http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf.
[Ros]
Pavel Vondruˇska Vlastimil Kl´ıma Jaroslav Pinkava Tom´aˇs Rosa. Cryptoword. http://www.crypto-world.info/.
-
a
bait
for
twofish,
2001.
2000.
KAPITOLA 8. SEZNAM LITERATURY
47
[RPW04]
Kai Wirt Ralf-Philipp Weinmann. Analysis of the dvb common scrambling algorithm, 2004. http://www.cdc.informatik.tu-darmstadt.de/~kwirt/csa.pdf.
[Sha49]
C. Shannon. Communications theory of secret systems, 1949.
[Sou07]
Paul Souradyuti. Cryptanalysis of stream ciphers based on arrays and modular addition, 2007. http://eprint.iacr.org/2007/054/.
[wik]
Wikipedia, otevˇren´ a encyklopedie. http://en.wikipedia.org/.
[Wir04]
Kai Wirt. Fault attack on the dvb common scrambling algorithm. Cryptology ePrint Archive, Report 2004/289, 2004. http://eprint.iacr.org/2004/289/.
48
KAPITOLA 8. SEZNAM LITERATURY
ˇ ´ILOHA A. SEZNAM POUZIT ˇ YCH ´ PR ZKRATEK
49
A Seznam pouˇ zit´ ych zkratek 3DES Triple Data Encryption Standard - Trojit´ y DES, ˇsifrovac´ı algoritmus AES Advance Encryption Standard - Pokroˇcil´ y ˇsifrovac´ı standard, ˇsifrovac´ı algoritmus ANF Algebraic Normal Form - Algebraick´a norm´alov´a forma CBC Cipher Block Chaining mode - Zˇretˇezovac´ı m´od pro blokov´e ˇsifry ˇ CFB Cipher Feedback mode - Sifrovac´ ı zpˇetnovazebn´ı m´od CNF Conjunctive Normal Form - Konjunktivn´ı norm´alov´a forma ˇ y k´odovac´ı algoritmus, ˇsifrovac´ı algoritmus CSA Common Scrambling Algorithm - Cast´ CSS Central Security Service - Centr´aln´ı bezpeˇcnostn´ı sluˇzba ˇ DEA Data Encryption Standard - Sifrovac´ ı standard pro data, ˇsifrovac´ı algoritmus ˇ DES Data Encryption Algorithm - Sifrovac´ ı algoritmus pro data, ˇsifrovac´ı algoritmus DNF Disjunctive Normal Form - Disjunktivn´ı norm´alov´a forma ECB Electronic CodeBook mode - M´od elektronick´e k´odov´e knihy FIPS Federal Information Processing Standards - Feder´aln´ı v´ yrobn´ı informaˇcn´ı standard FSR Feedback Shift Register - Zpˇetnovazebn´ı posuvn´ y registr NBS National Bureau of Standards - N´arodn´ı u ´ˇrad pro standardizaci NDS New Deal Standard - Nov´ y obchodn´ı standard NIST National Institute of Standards and Technology - N´arodn´ı institut standard˚ u a technologi´ı NLF Non-Linear Feedback - Neline´arn´ı zpˇetn´a vazba NLFSR Non-Linear Feedback Shift Register - neline´an´ı zpˇetnovazebn´ y posuvn´ y registr NSA National Security Agency - N´arodn´ı bezpeˇcnostn´ı sluˇzba OFB Output Feedback mode - V´ ystupnˇe zpˇetnovazebn´ı m´od SAT Boolean satisfiability problem - Splnitelnost booleovsk´e formule SDS Substitution-Diffusion-Substitution - Substituce - Difuze - Substituce SP Special Publication - Specieln´ı Publikace TDES Triple Data Encryption Standard - Trojit´ y DES, ˇsifrovac´ı algoritmus
50
ˇ ´ILOHA A. SEZNAM POUZIT ˇ YCH ´ PR ZKRATEK
ˇ ´ILOHA B. STAVEBN´I PRVKY DES PR
51
B Stavebn´ı prvky DES
32
1
2
3
4
5
4
5
6
7
8
9
8
9
10
11
12
13
12
13
14
15
16
17
16
17
18
19
20
21
20
21
22
23
24
25
24
25
26
27
28
29
28
29
30
31
32
1
Tabulka B.1: DES - Expanzn´ı permutace E u Feistelovy funkce
ˇ ´ILOHA B. STAVEBN´I PRVKY DES PR
52
16
7
20
21
29
12
28
17
1
15
23
26
5
18
31
10
2
8
24
14
32
27
3
9
19
13
30
6
22
11
4
25
Tabulka B.2: DES - permutace P u Feistelovy funkce
ˇc´ıslo iterace
poˇcet rotac´ı vlevo
1
1
2
1
3
2
4
2
5
2
6
2
7
2
8
2
9
1
10
2
11
2
12
2
13
2
14
2
15
2
16
1
Tabulka B.3: DES - rotace u v´ ybˇeru podkl´ıˇce
ˇ ´ILOHA B. STAVEBN´I PRVKY DES PR
53
57
49
41
33
25
17
9
1
58
50
42
34
26
18
10
2
59
51
43
35
27
19
11
3
60
52
44
36
63
55
47
39
31
23
15
7
62
54
46
38
30
22
14
6
61
53
45
37
29
21
13
5
28
20
12
4
Tabulka B.4: DES - permutace P 1 pˇri v´ ybˇeru podkl´ıˇce
14
17
11
24
1
5
3
28
15
6
21
10
23
19
12
4
26
8
16
7
27
20
13
2
41
52
31
37
47
55
30
40
51
45
33
48
44
49
39
56
34
53
46
42
50
36
29
32
Tabulka B.5: DES - permutace P 2 pˇri v´ ybˇeru podkl´ıˇce
54
ˇ ´ILOHA B. STAVEBN´I PRVKY DES PR
ˇ ´ILOHA C. VYJAD ´ REN ˇ ´I SBOXU ˚ DES V ANF PR
55
C Vyj´ adˇ ren´ı SBOX˚ u DES v ANF S1,y1 = x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x4 x6 ⊕ x2 x3 x4 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x4 x5 x6 ⊕ x2 x3 ⊕ x3 x4 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ x5 ⊕ x6 ⊕ 1 S1,y2 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x2 x4 x5 x6 ⊕x1 x3 x4 x5 x6 ⊕x1 x2 x3 x4 ⊕x1 x2 x3 x5 ⊕x1 x2 x3 x6 ⊕ x1 x3 x5 x6 ⊕x3 x4 x5 x6 ⊕x1 x2 x3 ⊕x1 x2 x5 ⊕x1 x2 x6 ⊕x1 x3 x4 ⊕x1 x4 x5 ⊕x2 x3 x6 ⊕x2 x4 x5 ⊕x2 x4 x6 ⊕ x3 x4 x6 ⊕ x3 x5 x6 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x5 ⊕ x1 x6 ⊕ x2 x4 ⊕ x2 x6 ⊕ x3 x5 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x2 ⊕ x3 ⊕ x6 ⊕ 1 S1,y3 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x2 x4 x5 x6 ⊕x1 x3 x4 x5 x6 ⊕x1 x2 x3 x4 ⊕x1 x2 x3 x5 ⊕x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x6 ⊕ x1 x3 x4 ⊕ x1 x5 x6 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x3 x6 ⊕ x2 x4 x6 ⊕ x3 x4 x6 ⊕ x4 x5 x6 ⊕ x1 x2 ⊕ x1 x5 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x6 ⊕ x3 x4 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x1 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ 1 S1,y4 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x3 x4 x5 x6 ⊕x1 x2 x3 x4 ⊕x1 x2 x4 x5 ⊕x1 x2 x5 x6 ⊕x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕x2 x3 x5 x6 ⊕x1 x2 x3 ⊕x1 x2 x5 ⊕x1 x3 x4 ⊕x1 x3 x5 ⊕x1 x4 x5 ⊕x1 x4 x6 ⊕x1 x5 x6 ⊕x2 x3 x6 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x1 x3 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x2 x5 ⊕ x2 x6 ⊕ x3 x5 ⊕ x5 x6 ⊕ x2 ⊕ x4 S2,y1 = x1 x2 x4 x5 x6 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x6 ⊕ x1 x4 x5 ⊕ x1 x5 x6 ⊕ x2 x3 x6 ⊕ x2 x4 x5 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x6 ⊕ x4 x5 ⊕ x1 ⊕ x3 ⊕ x5 ⊕ x6 ⊕ 1 S2,y2 = x1 x2 x3 x5 x6 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x3 x5 ⊕x1 x2 x4 x5 ⊕x3 x4 x5 x6 ⊕x2 x4 x6 ⊕x4 x5 x6 ⊕x2 x3 ⊕ x2 x4 ⊕ x3 x6 ⊕ x1 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ 1 S2,y3 = x1 x2 x3 x5 x6 ⊕ x1 x2 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x4 x5 ⊕ x1 x5 x6 ⊕ x2 x3 x6 ⊕ x2 x4 x6 ⊕ x2 x5 x6 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x1 x2 ⊕ x1 x3 ⊕ x3 x4 ⊕ x3 x5 ⊕ x1 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ 1 S2,y4 = x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x5 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x2 x5 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x5 x6 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕ x4 x5 x6 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x6 ⊕ x2 x6 ⊕ x3 x5 ⊕ x3 x6 ⊕ x1 ⊕ x3 ⊕ x4 ⊕ 1 S3,y1 = x1 x2 x4 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x5 x6 ⊕ x2 x4 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x3 x4 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕x4 x5 x6 ⊕x1 x2 ⊕x1 x3 ⊕x1 x4 ⊕x1 x6 ⊕x2 x4 ⊕x3 x4 ⊕x3 x5 ⊕x4 x5 ⊕x4 x6 ⊕x2 ⊕x3 ⊕x5 ⊕1 S3,y2 = x1 x2 x3 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x3 x6 ⊕ x2 x4 x6 ⊕ x2 x5 x6 ⊕ x4 x5 x6 ⊕ x1 x2 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x6 ⊕ x3 x5 ⊕ x4 x5 ⊕ x4 x6 ⊕ x1 ⊕ x3 ⊕ x6 S3,y3 = x1 x2 x3 x4 x6 ⊕ x1 x2 x4 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ y4 = x1 x2 x3 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x3 x5 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x2 x3 x4 ⊕ x2 x3 x6 ⊕ x2 x4 x5 ⊕ x2 x5 x6 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x3 x5 x6 ⊕ x4 x5 x6 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x3 x4 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x1 x4 x5 x1 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ 1 S3,y4 = x1 x2 x3 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕x3 x4 x5 x6 ⊕x1 x2 x3 ⊕x1 x2 x4 ⊕x1 x2 x5 ⊕x1 x3 x5 ⊕x1 x3 x6 ⊕x1 x4 x6 ⊕x1 x5 x6 ⊕x2 x3 x6 ⊕
56
ˇ ´ILOHA C. VYJAD ´ REN ˇ ´I SBOXU ˚ DES V ANF PR
x2 x4 x5 ⊕x2 x5 x6 ⊕x1 x2 ⊕x1 x3 ⊕x1 x6 ⊕x2 x3 ⊕x2 x5 ⊕x2 x6 ⊕x4 x5 ⊕x4 x6 ⊕x5 x6 ⊕x1 ⊕x3 ⊕x4 ⊕1 S4,y1 = x1 x2 x3 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x3 x4 ⊕ x1 x4 x6 ⊕ x1 x5 x6 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕ x2 x5 x6 ⊕ x4 x5 x6 ⊕ x1 x4 ⊕ x2 x3 ⊕ x2 x5 ⊕ x2 x6 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x6 ⊕ x5 x6 ⊕ x1 ⊕ x4 ⊕ x5 ⊕ x6 S4,y2 = x1 x2 x3 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x2 x4 ⊕ x1 x3 x5 ⊕ x1 x4 x6 ⊕ x1 x5 x6 ⊕ x2 x3 x4 ⊕ x2 x5 x6 ⊕ x4 x5 x6 ⊕ x1 x5 ⊕ x2 x3 ⊕ x2 x6 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ 1 S4,y3 = x1 x2 x3 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x1 x5 x6 ⊕ x2 x3 x4 ⊕ x2 x3 x6 ⊕ x2 x5 x6 ⊕ x3 x4 x5 ⊕ x1 x2 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x2 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x2 ⊕ x3 ⊕ x5 ⊕ x6 ⊕ 1 S4,y4 = x1 x2 x3 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕x3 x4 x5 x6 ⊕x1 x2 x3 ⊕x1 x2 x4 ⊕x1 x2 x5 ⊕x1 x3 x5 ⊕x1 x3 x6 ⊕x1 x4 x6 ⊕x1 x5 x6 ⊕x2 x3 x6 ⊕ x2 x4 x5 ⊕x2 x5 x6 ⊕x1 x2 ⊕x1 x3 ⊕x1 x6 ⊕x2 x3 ⊕x2 x5 ⊕x2 x6 ⊕x4 x5 ⊕x4 x6 ⊕x5 x6 ⊕x1 ⊕x3 ⊕x4 ⊕1 S5,y1 = x1 x2 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x5 x6 ⊕ x2 x3 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x4 ⊕ x1 x3 x6 ⊕ x1 x4 x6 ⊕ x1 x5 x6 ⊕ x2 x3 x6 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x1 x3 ⊕ x1 x5 ⊕ x2 x4 ⊕ x3 x4 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x2 ⊕ x5 ⊕ x6 S5,y2 = x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x6 ⊕ x1 x3 x4 x5 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x6 ⊕ x1 x4 x5 ⊕ x1 x5 x6 ⊕ x2 x3 x6 ⊕ x3 x4 x6 ⊕ x3 x5 x6 ⊕ x2 x4 ⊕ x3 x6 ⊕ x1 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 S5,y3 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x2 x4 x5 x6 ⊕x1 x3 x4 x5 x6 ⊕x1 x2 x3 x4 ⊕x1 x3 x4 x5 ⊕x1 x3 x4 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x4 x5 ⊕ x1 x5 x6 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x2 x5 x6 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x1 x3 ⊕ x1 x4 ⊕ x1 x6 ⊕ x2 x5 ⊕ x3 x4 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x1 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ 1 S5,y4 = x1 x2 x3 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x3 x6 ⊕ x1 x4 x5 ⊕ x2 x3 x5 ⊕ x2 x4 x6 ⊕ x2 x5 x6 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x3 x5 x6 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x4 ⊕ x1 x6 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x6 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x5 x6 ⊕ x3 S6,y1 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x3 x6 ⊕x1 x2 x4 x6 ⊕x1 x3 x5 x6 ⊕x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕x3 x4 x5 x6 ⊕x1 x3 x5 ⊕x1 x3 x6 ⊕x1 x4 x6 ⊕x1 x5 x6 ⊕x3 x4 x5 ⊕x3 x4 x6 ⊕x3 x5 x6 ⊕x4 x5 x6 ⊕ x1 x3 ⊕ x1 x5 ⊕ x1 x6 ⊕ x2 x3 ⊕ x3 x4 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x2 ⊕ x5 ⊕ 1 S6,y2 = x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x3 x6 ⊕ x1 x4 x5 ⊕ x3 x4 x5 ⊕ x1 x3 ⊕ x2 x4 ⊕ x3 x5 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ 1 S6,y3 = x1 x2 x3 x5 x6 ⊕ x1 x2 x4 x5 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕ x2 x5 x6 ⊕ x4 x5 x6 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x5 ⊕ x1 x6 ⊕ x2 x3 ⊕ x3 x5 ⊕ x4 ⊕ x6 S6,y4 = x1 x2 x4 x5 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x6 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x4 x5 x6 ⊕
ˇ ´ILOHA C. VYJAD ´ REN ˇ ´I SBOXU ˚ DES V ANF PR
57
x2 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x6 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x4 x5 ⊕ x2 x3 x4 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x4 x5 x6 ⊕ x1 x6 ⊕ x2 x3 ⊕ x2 x4 ⊕ x3 x4 ⊕ x1 ⊕ x3 ⊕ x5 S7,y1 = x1 x2 x3 x4 x6 ⊕ x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x5 x6 ⊕ x2 x3 x4 ⊕ x2 x3 x6 ⊕ x3 x4 x5 ⊕ x1 x2 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x2 x3 ⊕ x2 x4 ⊕ x3 ⊕ x5 ⊕ x6 S7,y2 = x1 x2 x4 x5 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x6 ⊕ x1 x3 x4 x5 ⊕ x2 x4 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x4 ⊕ x1 x6 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x6 ⊕ x1 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ 1 S7,y3 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x3 x4 x5 x6 ⊕x1 x2 x3 x5 ⊕x1 x2 x3 x6 ⊕x1 x2 x4 x5 ⊕x1 x3 x4 x6 ⊕ x1 x3 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x3 x5 ⊕ x1 x5 x6 ⊕ x2 x4 x5 ⊕ x3 x4 x6 ⊕ x4 x5 x6 ⊕ x1 x3 ⊕ x1 x5 ⊕ x1 x6 ⊕ x3 x6 ⊕ x4 x5 ⊕ x5 x6 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 S7,y4 = x1 x3 x4 x5 x6 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x6 ⊕ x1 x4 x5 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x4 x6 ⊕ x2 x4 x6 ⊕ x3 x4 x5 ⊕ x2 x3 ⊕ x3 x4 ⊕ x4 x5 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ x5 ⊕ x6 S8,y1 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x3 x4 ⊕x1 x2 x3 x6 ⊕x1 x2 x4 x6 ⊕x1 x3 x4 x6 ⊕ x1 x4 x5 x6 ⊕x2 x3 x4 x6 ⊕x1 x3 x4 ⊕x1 x3 x5 ⊕x1 x3 x6 ⊕x1 x4 x5 ⊕x1 x5 x6 ⊕x2 x3 x4 ⊕x2 x4 x5 ⊕x2 x4 x6 ⊕ x2 x5 x6 ⊕ x3 x4 x6 ⊕ x4 x5 x6 ⊕ x1 x6 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x6 ⊕ x3 x4 ⊕ x4 x6 ⊕ x1 ⊕ x3 ⊕ x5 ⊕ x6 ⊕ 1 S8,y2 = x1 x2 x3 x4 x6 ⊕x1 x2 x3 x4 ⊕x1 x2 x4 x5 ⊕x1 x3 x4 x6 ⊕x1 x3 x5 x6 ⊕x1 x2 x3 ⊕x1 x2 x4 ⊕x1 x2 x5 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x4 x6 ⊕ x1 x5 x6 ⊕ x2 x4 x5 ⊕ x1 x3 ⊕ x1 x4 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x3 x5 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ 1 S8,y3 = x1 x2 x3 x5 x6 ⊕ x1 x2 x4 x5 x6 ⊕ x1 x2 x3 x5 ⊕ x1 x4 x5 x6 ⊕ x2 x3 x4 x6 ⊕ x2 x4 x5 x6 ⊕ x1 x2 x5 ⊕ x1 x3 x5 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x1 x5 x6 ⊕ x2 x3 x6 ⊕ x2 x4 x6 ⊕ x2 x5 x6 ⊕ x1 x4 ⊕ x1 x5 ⊕ x2 x6 ⊕ x3 x5 ⊕ x4 x5 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ x5 S8,y4 = x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x5 x6 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x5 x6 ⊕ x1 x4 x5 x6 ⊕ x3 x4 x5 x6 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x3 x5 ⊕ x2 x3 x6 ⊕ x2 x4 x5 ⊕ x2 x5 x6 ⊕ x3 x4 x6 ⊕ x3 x5 x6 ⊕ x1 x3 ⊕ x1 x5 ⊕ x1 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ 1
58
ˇ ´ILOHA C. VYJAD ´ REN ˇ ´I SBOXU ˚ DES V ANF PR
ˇ ´ILOHA D. VYJAD ´ REN ˇ ´I SBOXU ˚ CSA V ANF PR
59
D Vyj´ adˇ ren´ı SBOX˚ u CSA v ANF D.1
Blokov´ aˇ c´ ast
Sblok,y1 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x4 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x3 x6 x7 x8 ⊕ x1 x2 x4 x5 x6 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕ x1 x2 x3 x5 x7 ⊕ x1 x2 x3 x6 x7 ⊕ x1 x2 x3 x7 x8 ⊕ x1 x2 x4 x5 x6 ⊕x1 x2 x4 x6 x8 ⊕x1 x2 x4 x7 x8 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x7 x8 ⊕ x1 x3 x5 x6 x7 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕x2 x3 x4 x5 x8 ⊕x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x3 x5 x6 x8 ⊕ x2 x3 x6 x7 x8 ⊕x2 x4 x5 x6 x7 ⊕x2 x4 x5 x6 x8 ⊕x2 x4 x5 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x6 x8 ⊕x3 x4 x5 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕x4 x5 x6 x7 x8 ⊕x4 x5 x7 x8 ⊕x1 x2 x3 x5 ⊕x1 x2 x3 x8 ⊕x1 x2 x4 x6 ⊕x1 x2 x4 x7 ⊕x1 x2 x5 x6 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x7 x8 ⊕ x3 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕ x4 x6 x7 x8 ⊕ x5 x6 x7 x8 ⊕ x1 x2 x5 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x4 x5 ⊕ x1 x4 x7 ⊕ x1 x5 x7 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x8 ⊕ x2 x4 x7 ⊕ x2 x5 x8 ⊕ x2 x6 x7 ⊕ x3 x5 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x4 x6 x8 ⊕ x5 x7 x8 ⊕ x1 x2 ⊕ x1 x6 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x6 ⊕ x2 x7 ⊕ x3 x4 ⊕ x3 x5 ⊕ x3 x7 ⊕ x4 x5 ⊕ x4 x6 ⊕ x4 x7 ⊕ x5 x8 ⊕ x6 x7 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x8 Sblok,y2 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 x6 ⊕x1 x2 x3 x4 x5 x7 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x8 ⊕x1 x2 x4 x5 x7 x8 ⊕ x1 x2 x4 x6 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x5 x7 ⊕ x1 x2 x3 x5 x8 ⊕ x1 x2 x3 x6 x7 ⊕ x1 x2 x3 x6 x8 ⊕x1 x2 x4 x5 x8 ⊕x1 x2 x4 x6 x8 ⊕x1 x2 x4 x7 x8 ⊕x1 x2 x5 x6 x7 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x5 x8 ⊕ x1 x3 x4 x6 x7 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x6 x8 ⊕x1 x3 x5 x7 x8 ⊕x1 x3 x6 x7 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 ⊕x2 x3 x4 x5 x7 ⊕x2 x3 x4 x5 x8 ⊕x2 x3 x4 x6 x7 ⊕x2 x3 x4 x6 x8 ⊕x2 x3 x4 x7 x8 ⊕x2 x3 x5 x6 x8 ⊕ x2 x3 x5 x7 x8 ⊕x2 x3 x6 x7 x8 ⊕x2 x4 x5 x6 x7 ⊕x2 x4 x5 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x6 x8 ⊕x3 x5 x6 x7 x8 ⊕ x4 x5 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x7 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x5 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x7 x8 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x6 x7 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x7 x8 ⊕ x3 x5 x6 x7 ⊕ x4 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x4 x7 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x2 x4 x7 ⊕ x2 x4 x8 ⊕ x2 x5 x7 ⊕ x2 x5 x8 ⊕ x3 x4 x5 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x7 ⊕ x3 x5 x8 ⊕ x3 x6 x7 ⊕ x3 x6 x8 ⊕ x4 x5 x6 ⊕ x4 x5 x8 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x1 x2 ⊕ x1 x8 ⊕ x2 x3 ⊕ x2 x6 ⊕ x2 x7 ⊕ x2 x8 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x4 x7 ⊕ x6 x7 ⊕ x7 x8 ⊕ x4 ⊕ x7 ⊕ x8 Sblok,y3 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x3 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 ⊕x1 x2 x4 x5 x7 x8 ⊕ x1 x2 x4 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x7 ⊕ x1 x2 x3 x4 x8 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x4 x5 x6 ⊕ x1 x2 x4 x6 x8 ⊕x1 x2 x4 x7 x8 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x5 x6 x8 ⊕ x1 x3 x6 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x2 x3 x4 x5 x6 ⊕x2 x3 x4 x6 x7 ⊕x2 x3 x4 x7 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x3 x5 x6 x8 ⊕ x2 x3 x5 x7 x8 ⊕x2 x4 x5 x6 x8 ⊕x2 x4 x5 x7 x8 ⊕x2 x4 x6 x7 x8 ⊕x3 x4 x5 x6 x7 ⊕x3 x4 x5 x7 x8 ⊕x3 x4 x6 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕x4 x5 x6 x7 x8 ⊕x4 x5 x7 x8 ⊕x1 x2 x3 x6 ⊕x1 x2 x3 x7 ⊕x1 x2 x3 x8 ⊕x1 x2 x4 x5 ⊕x1 x2 x4 x6 ⊕ x1 x2 x4 x7 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x6 x7 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x6 x7 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x5 x8 ⊕ x2 x5 x6 x7 ⊕ x2 x5 x7 x8 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕
60
ˇ ´ILOHA D. VYJAD ´ REN ˇ ´I SBOXU ˚ CSA V ANF PR
x3 x4 x7 x8 ⊕ x3 x5 x6 x7 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕ x5 x6 x7 x8 ⊕ x1 x2 x8 ⊕ x1 x3 x5 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x6 ⊕ x2 x4 x7 ⊕ x2 x4 x8 ⊕ x2 x5 x6 ⊕ x2 x5 x7 ⊕ x2 x6 x8 ⊕ x3 x4 x6 ⊕ x3 x6 x7 ⊕ x3 x7 x8 ⊕ x4 x5 x6 ⊕ x4 x5 x8 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x5 ⊕x1 x6 ⊕x2 x3 ⊕x2 x4 ⊕x2 x6 ⊕x2 x7 ⊕x2 x8 ⊕x3 x6 ⊕x4 x5 ⊕x4 x6 ⊕x5 x6 ⊕x5 x7 ⊕x6 x7 ⊕x2 ⊕x5 ⊕1 Sblok,y4 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x4 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x7 ⊕ x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x4 x5 x6 x7 ⊕x1 x2 x4 x5 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕ x1 x3 x4 x5 x6 x8 ⊕ x1 x3 x5 x6 x7 x8 ⊕ x1 x4 x5 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x7 ⊕ x1 x2 x3 x5 x7 ⊕x1 x2 x3 x7 x8 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x4 x5 x8 ⊕x1 x2 x4 x6 x8 ⊕x1 x2 x5 x6 x8 ⊕ x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x6 x8 ⊕x1 x3 x4 x7 x8 ⊕ x1 x3 x5 x6 x7 ⊕x1 x3 x5 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x3 x5 x7 x8 ⊕ x2 x4 x5 x6 x7 ⊕x2 x4 x6 x7 x8 ⊕x3 x4 x5 x6 x7 ⊕x3 x4 x5 x6 x8 ⊕x3 x4 x5 x7 x8 ⊕x3 x5 x6 x7 x8 ⊕x4 x5 x6 x7 x8 ⊕ x4 x5 x7 x8 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x7 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x7 ⊕ x1 x2 x6 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x6 x7 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x5 x6 x7 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x7 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x7 ⊕x4 x5 x6 x8 ⊕x4 x6 x7 x8 ⊕x1 x2 x4 ⊕x1 x2 x5 ⊕x1 x2 x7 ⊕x1 x2 x8 ⊕x1 x3 x6 ⊕x1 x3 x7 ⊕x1 x4 x6 ⊕ x1 x5 x8 ⊕ x2 x3 x7 ⊕ x2 x3 x8 ⊕ x2 x4 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x6 ⊕ x2 x7 x8 ⊕ x3 x4 x7 ⊕ x3 x6 x7 ⊕ x3 x6 x8 ⊕ x4 x5 x7 ⊕x4 x5 x8 ⊕x4 x6 x8 ⊕x4 x7 x8 ⊕x5 x6 x8 ⊕x5 x7 x8 ⊕x1 x2 ⊕x1 x3 ⊕x1 x4 ⊕x1 x5 ⊕x1 x7 ⊕x2 x3 ⊕ x2 x4 ⊕x2 x5 ⊕x3 x4 ⊕x3 x6 ⊕x3 x8 ⊕x4 x5 ⊕x4 x7 ⊕x4 x8 ⊕x5 x6 ⊕x5 x7 ⊕x5 x8 ⊕x1 ⊕x4 ⊕x5 ⊕x7 ⊕x8 ⊕1 Sblok,y5 = x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x7 ⊕x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x4 x5 x6 x7 ⊕x1 x2 x4 x5 x6 x8 ⊕ x1 x2 x4 x5 x7 x8 ⊕x1 x2 x4 x6 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 ⊕x1 x3 x4 x5 x6 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕ x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x5 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x4 x7 ⊕x1 x2 x3 x4 x8 ⊕x1 x2 x3 x5 x7 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x6 x7 ⊕x1 x2 x4 x6 x8 ⊕ x1 x2 x4 x7 x8 ⊕x1 x2 x5 x6 x7 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x6 x8 ⊕x1 x3 x4 x7 x8 ⊕ x1 x3 x5 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x6 x7 x8 ⊕x2 x3 x4 x6 x7 ⊕x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x4 x5 x6 x8 ⊕ x2 x4 x6 x7 x8 ⊕ x3 x4 x5 x6 x8 ⊕ x3 x4 x6 x7 x8 ⊕ x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x6 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x7 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕ x3 x4 x7 x8 ⊕ x3 x5 x6 x7 ⊕ x3 x5 x6 x8 ⊕ x3 x6 x7 x8 ⊕ x4 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕ x4 x6 x7 x8 ⊕ x5 x6 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x4 x5 ⊕ x1 x4 x7 ⊕ x1 x5 x6 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x1 x6 x7 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x4 x7 ⊕ x2 x5 x6 ⊕ x2 x5 x8 ⊕ x2 x6 x7 ⊕ x2 x6 x8 ⊕ x2 x7 x8 ⊕ x3 x4 x7 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x7 ⊕ x3 x5 x8 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x7 ⊕ x4 x6 x7 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x7 ⊕ x5 x6 x8 ⊕ x6 x7 x8 ⊕ x1 x2 ⊕ x1 x7 ⊕ x2 x3 ⊕ x2 x6 ⊕ x2 x7 ⊕ x2 x8 ⊕ x3 x5 ⊕ x4 x6 ⊕ x4 x7 ⊕ x4 x8 ⊕ x5 x8 ⊕ x6 x7 ⊕ x6 x8 ⊕ x2 ⊕ x5 ⊕ x6 ⊕ 1 Sblok,y6 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕x1 x2 x3 x4 x5 x7 ⊕ x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x3 x5 x7 x8 ⊕x1 x2 x4 x5 x6 x7 ⊕ x1 x2 x4 x5 x6 x8 ⊕x1 x2 x4 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x7 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x5 x7 ⊕ x1 x2 x4 x5 x6 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x6 x8 ⊕ x1 x3 x4 x7 x8 ⊕x1 x3 x5 x7 x8 ⊕x1 x3 x6 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x7 ⊕ x2 x3 x4 x6 x7 ⊕x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x3 x5 x7 x8 ⊕x2 x3 x6 x7 x8 ⊕x2 x4 x5 x7 x8 ⊕x2 x4 x6 x7 x8 ⊕ x3 x4 x5 x6 x8 ⊕x3 x5 x6 x7 x8 ⊕x4 x5 x7 x8 ⊕x1 x2 x3 x4 ⊕x1 x2 x3 x5 ⊕x1 x2 x3 x6 ⊕x1 x2 x4 x5 ⊕x1 x2 x4 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x7 ⊕ x2 x3 x6 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕
ˇ ´ILOHA D. VYJAD ´ REN ˇ ´I SBOXU ˚ CSA V ANF PR
61
x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x7 ⊕ x3 x5 x7 x8 ⊕ x3 x6 x7 x8 ⊕ x5 x6 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x3 x4 ⊕ x1 x3 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x7 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x7 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x2 x5 x6 ⊕ x2 x5 x7 ⊕ x2 x5 x8 ⊕ x2 x6 x7 ⊕ x2 x6 x8 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x8 ⊕ x3 x6 x7 ⊕ x3 x6 x8 ⊕ x4 x5 x8 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x8 ⊕ x5 x7 x8 ⊕ x6 x7 x8 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x5 ⊕ x1 x6 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x6 ⊕ x2 x8 ⊕ x3 x6 ⊕ x3 x8 ⊕ x4 x6 ⊕ x4 x8 ⊕ x5 x8 ⊕ x7 x8 ⊕ x2 ⊕ x3 Sblok,y7 = x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕x1 x2 x3 x4 x5 x7 ⊕ x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x3 x5 x7 x8 ⊕x1 x2 x4 x5 x6 x8 ⊕ x1 x2 x4 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 ⊕x1 x2 x3 x4 x7 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x4 x6 x7 ⊕ x1 x3 x4 x5 x7 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x6 x8 ⊕x1 x3 x4 x7 x8 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 ⊕x2 x3 x4 x5 x8 ⊕x2 x3 x4 x6 x7 ⊕x2 x3 x5 x6 x7 ⊕x2 x3 x5 x6 x8 ⊕x2 x3 x5 x7 x8 ⊕x2 x4 x5 x6 x7 ⊕ x2 x4 x5 x7 x8 ⊕ x2 x4 x6 x7 x8 ⊕ x3 x4 x5 x6 x8 ⊕ x3 x4 x5 x7 x8 ⊕ x3 x4 x6 x7 x8 ⊕ x4 x5 x6 x7 x8 ⊕ x1 x5 x6 x8 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x7 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x6 x7 x8 ⊕ x5 x6 x7 x8 ⊕ x1 x2 x4 ⊕ x1 x2 x7 ⊕ x1 x3 x4 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x3 x8 ⊕ x1 x4 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x8 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x4 x8 ⊕ x2 x5 x8 ⊕ x2 x7 x8 ⊕ x3 x4 x6 ⊕ x3 x5 x6 ⊕ x3 x5 x8 ⊕ x3 x6 x8 ⊕ x4 x5 x8 ⊕ x4 x6 x8 ⊕ x5 x6 x8 ⊕ x6 x7 x8 ⊕ x1 x6 ⊕ x2 x3 ⊕ x2 x6 ⊕ x3 x4 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x7 ⊕ x4 x8 ⊕ x6 x8 ⊕ x7 x8 ⊕ x1 ⊕ x4 ⊕ x7 ⊕ 1 Sblok,y8 = x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x7 ⊕ x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x4 x5 x6 x7 ⊕x1 x2 x4 x5 x6 x8 ⊕ x1 x2 x4 x5 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x4 x7 ⊕ x1 x2 x3 x5 x8 ⊕ x1 x2 x3 x6 x7 ⊕ x1 x2 x3 x6 x8 ⊕x1 x2 x3 x7 x8 ⊕x1 x2 x4 x5 x8 ⊕x1 x2 x4 x6 x8 ⊕x1 x2 x4 x7 x8 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕ x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x5 x8 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x6 x8 ⊕x1 x3 x6 x7 x8 ⊕ x1 x4 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x8 ⊕x2 x3 x4 x7 x8 ⊕x2 x3 x5 x6 x7 ⊕ x2 x3 x5 x6 x8 ⊕x2 x3 x5 x7 x8 ⊕x2 x4 x5 x6 x7 ⊕x2 x4 x5 x6 x8 ⊕x2 x4 x5 x7 x8 ⊕x3 x4 x5 x6 x8 ⊕x3 x4 x5 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕x4 x5 x6 x7 x8 ⊕x1 x2 x3 x5 ⊕x1 x2 x3 x7 ⊕x1 x2 x3 x8 ⊕x1 x2 x6 x7 ⊕x1 x3 x4 x6 ⊕x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x6 x7 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕ x3 x4 x7 x8 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x3 x8 ⊕ x1 x4 x8 ⊕ x1 x6 x7 ⊕ x1 x7 x8 ⊕ x2 x3 x7 ⊕ x2 x4 x6 ⊕ x2 x4 x7 ⊕ x2 x6 x7 ⊕ x2 x7 x8 ⊕ x3 x4 x5 ⊕ x3 x4 x6 ⊕ x3 x4 x8 ⊕ x3 x5 x8 ⊕ x4 x5 x6 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x7 ⊕ x1 x2 ⊕x1 x5 ⊕x1 x6 ⊕x2 x4 ⊕x2 x8 ⊕x3 x4 ⊕x3 x5 ⊕x3 x7 ⊕x4 x5 ⊕x4 x6 ⊕x4 x7 ⊕x4 x8 ⊕x6 x7 ⊕x1 ⊕x5 ⊕x6
ˇ ´ILOHA D. VYJAD ´ REN ˇ ´I SBOXU ˚ CSA V ANF PR
62
D.2
Proudov´ aˇ c´ ast
Sproud,1,y1 = x1 x2 x3 x5 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x2 x4 x5 ⊕ x1 x2 ⊕ x1 x5 ⊕ x2 x5 ⊕ x3 x5 ⊕ x2 ⊕ x4 Sproud,1,y2 = x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x3 x4 ⊕ x1 x4 x5 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x1 x2 ⊕ x1 x3 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x3 x4 ⊕ x3 x5 ⊕ x4 x5 ⊕ x1 ⊕ x4 ⊕ x5 ⊕ 1 Sproud,2,y1 = x1 x2 x3 x5 ⊕ x1 x2 x4 x5 ⊕ x1 x4 x5 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕ x1 x2 ⊕ x1 x3 ⊕ x3 x5 ⊕ x3 ⊕ x4 ⊕ 1 Sproud,2,y2 = x1 x2 x4 x5 ⊕x1 x2 x3 ⊕x1 x2 x4 ⊕x1 x2 x5 ⊕x1 x3 x4 ⊕x3 x4 x5 ⊕x3 x4 ⊕x3 x5 ⊕x2 ⊕x4 ⊕x5 ⊕1 Sproud,3,y1 = x3 x5 ⊕ x4 x5 ⊕ x1 ⊕ x2 ⊕ x4 Sproud,3,y2 = x1 x2 x3 x4 ⊕ x1 x3 x4 x5 ⊕ x1 x2 x3 ⊕ x1 x2 x5 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x4 x5 ⊕ x2 x3 x4 ⊕ x2 x4 x5 ⊕ x3 x4 x5 ⊕ x1 x3 ⊕ x1 x4 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x3 x4 ⊕ x3 x5 ⊕ x1 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ 1 Sproud,4,y1 = x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x2 x3 ⊕ x1 x2 x5 ⊕ x2 x4 x5 ⊕ x1 x2 ⊕ x1 x4 ⊕ x1 x5 ⊕ x2 x3 ⊕ x2 x5 ⊕ x4 x5 ⊕ x3 ⊕ x4 ⊕ 1 Sproud,4,y2 = x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x2 x3 ⊕ x1 x2 x5 ⊕ x2 x3 x4 ⊕ x3 x4 x5 ⊕ x1 x2 ⊕ x1 x4 ⊕ x1 x5 ⊕ x4 x5 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ x5 ⊕ 1 Sproud,5,y1 = x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x2 x3 x5 ⊕ x3 x4 x5 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x5 ⊕ x2 x4 ⊕ x2 x5 ⊕ x3 x5 ⊕ x4 x5 ⊕ x3 Sproud,5,y2 = x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x3 x4 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕ x3 x4 x5 ⊕ x1 x3 ⊕ x1 x4 ⊕ x1 x5 ⊕ x2 x5 ⊕ x3 x4 ⊕ x3 x5 ⊕ x4 x5 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ 1 Sproud,6,y1 = x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 ⊕ x1 x4 x5 ⊕ x2 x3 x4 ⊕ x3 x4 x5 ⊕ x2 x3 ⊕ x2 x4 ⊕ x3 x4 ⊕ x3 ⊕ x5 Sproud,6,y2 = x1 x2 x5 ⊕ x1 x4 x5 ⊕ x2 x3 x5 ⊕ x2 x4 x5 ⊕ x2 x3 ⊕ x3 x5 ⊕ x1 ⊕ x4 Sproud,7,y1 = x1 x2 x4 x5 ⊕ x1 x2 x4 ⊕ x3 x4 x5 ⊕ x2 x3 ⊕ x3 x4 ⊕ x4 x5 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ x5 Sproud,7,y2 = x1 x2 x3 x4 ⊕ x1 x2 x4 x5 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 ⊕ x1 x4 x5 ⊕ x2 x4 x5 ⊕ x1 x3 ⊕ x1 x5 ⊕ x4 x5 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5
ˇ ´ILOHA E. VYJAD ´ REN ˇ ´I SBOXU ˚ ZODIAC V ANF PR
63
E Vyj´ adˇ ren´ı SBOX˚ u Zodiac v ANF Sx45 ,y1 = x1 x2 x3 x5 x6 x7 x8 ⊕ x1 x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x5 x6 x7 ⊕ x1 x2 x3 x5 x6 x8 ⊕ x1 x2 x3 x5 x7 x8 ⊕ x1 x2 x3 x6 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕ x1 x3 x5 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x8 ⊕x2 x3 x4 x6 x7 x8 ⊕x2 x3 x5 x6 x7 x8 ⊕x2 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x5 x6 ⊕x1 x2 x3 x5 x7 ⊕x1 x2 x3 x5 x8 ⊕x1 x2 x3 x6 x7 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x3 x7 x8 ⊕x1 x2 x5 x6 x7 ⊕ x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x5 x8 ⊕x1 x3 x4 x6 x7 ⊕ x1 x3 x4 x6 x8 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x6 x7 ⊕x1 x3 x5 x6 x8 ⊕x1 x3 x5 x7 x8 ⊕x1 x3 x6 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕ x1 x4 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x7 ⊕x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x7 ⊕ x2 x3 x5 x6 x8 ⊕x2 x4 x5 x6 x7 ⊕x2 x4 x6 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x7 x8 ⊕x3 x5 x6 x7 x8 ⊕x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x7 ⊕ x1 x2 x6 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x7 ⊕ x2 x3 x6 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x7 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x6 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x4 x7 x8 ⊕ x3 x5 x6 x7 ⊕ x3 x5 x7 x8 ⊕ x3 x6 x7 x8 ⊕ x4 x5 x6 x7 ⊕ x4 x6 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x3 x8 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x1 x4 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x6 ⊕ x2 x5 x8 ⊕ x2 x6 x7 ⊕ x2 x6 x8 ⊕ x2 x7 x8 ⊕ x3 x4 x5 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x6 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x7 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x3 ⊕ x2 x7 ⊕ x2 x8 ⊕ x3 x4 ⊕ x3 x5 ⊕ x3 x6 ⊕ x3 x7 ⊕ x4 x5 ⊕ x4 x7 ⊕ x6 x8 ⊕ x2 ⊕ x6 ⊕ x7 Sx45 ,y2 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x6 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 x5 x7 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x3 x5 x7 x8 ⊕ x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕ x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕ x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x4 x7 ⊕ x1 x2 x3 x4 x8 ⊕x1 x2 x3 x5 x8 ⊕x1 x2 x5 x6 x7 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x8 ⊕ x1 x3 x5 x6 x8 ⊕x1 x3 x5 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 ⊕x2 x3 x4 x6 x7 ⊕x2 x3 x4 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x6 x8 ⊕x3 x4 x6 x7 x8 ⊕x3 x5 x6 x7 x8 ⊕ x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x7 ⊕ x1 x2 x6 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x5 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x7 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x7 ⊕ x4 x5 x7 x8 ⊕ x4 x6 x7 x8 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x1 x4 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x3 x7 ⊕ x2 x4 x6 ⊕ x2 x5 x8 ⊕ x2 x6 x7 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x7 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x6 x8 ⊕ x5 x6 x7 ⊕ x1 x2 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x4 ⊕ x2 x6 ⊕ x2 x7 ⊕ x2 x8 ⊕ x3 x5 ⊕ x3 x7 ⊕ x3 x8 ⊕ x4 x5 ⊕ x4 x6 ⊕ x4 x7 ⊕ x4 x8 ⊕ x5 x6 ⊕ x5 x8 ⊕ x6 x7 ⊕ x6 x8 ⊕ x7 x8 ⊕ x2 ⊕ x3 ⊕ x5 ⊕ x7 Sx45 ,y3 = x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x5 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕ x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x6 x7 x8 ⊕x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x5 x8 ⊕x1 x2 x5 x6 x7 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x8 ⊕x1 x3 x5 x6 x8 ⊕ x1 x3 x5 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x7 ⊕ x2 x3 x4 x6 x8 ⊕x2 x3 x6 x7 x8 ⊕x2 x4 x5 x6 x7 ⊕x2 x4 x5 x6 x8 ⊕x3 x4 x5 x6 x8 ⊕x3 x4 x5 x7 x8 ⊕x3 x4 x6 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x7 ⊕ x1 x2 x6 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x5 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x7 ⊕
64
ˇ ´ILOHA E. VYJAD ´ REN ˇ ´I SBOXU ˚ ZODIAC V ANF PR
x3 x4 x7 x8 ⊕ x3 x5 x6 x8 ⊕ x3 x6 x7 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x4 x6 x7 x8 ⊕ x5 x6 x7 x8 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x1 x4 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x3 x7 ⊕ x2 x3 x8 ⊕ x2 x5 x6 ⊕ x2 x7 x8 ⊕ x3 x4 x6 ⊕ x3 x4 x7 ⊕ x3 x4 x8 ⊕ x3 x5 x7 ⊕ x3 x6 x7 ⊕ x3 x7 x8 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x8 ⊕ x1 x2 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x6 ⊕ x2 x7 ⊕ x2 x8 ⊕ x3 x4 ⊕ x3 x6 ⊕ x3 x7 ⊕ x4 x7 ⊕ x5 x6 ⊕ x2 ⊕ x5 ⊕ x6 ⊕ x7 ⊕ x8 Sx45 ,y4 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x4 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 x6 ⊕x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x3 x5 x7 x8 ⊕x1 x2 x4 x5 x7 x8 ⊕ x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x8 ⊕ x1 x2 x3 x5 x7 ⊕ x1 x2 x3 x5 x8 ⊕ x1 x2 x3 x7 x8 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x6 x8 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x6 x7 ⊕ x1 x3 x4 x6 x8 ⊕x1 x3 x5 x6 x7 ⊕x1 x3 x5 x7 x8 ⊕x1 x3 x6 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕ x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x8 ⊕x2 x4 x5 x6 x8 ⊕x2 x4 x6 x7 x8 ⊕x3 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x7 x8 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x4 x7 x8 ⊕ x4 x5 x7 x8 ⊕ x5 x6 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x3 x6 ⊕ x1 x4 x5 ⊕ x1 x4 x6 ⊕ x1 x4 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x5 ⊕ x2 x3 x7 ⊕ x2 x4 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x7 ⊕ x3 x4 x6 ⊕ x3 x5 x6 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x6 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x8 ⊕ x6 x7 x8 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x6 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x7 ⊕ x3 x4 ⊕ x3 x5 ⊕ x3 x8 ⊕ x4 x6 ⊕ x5 x6 ⊕ x5 x7 ⊕ x5 x8 ⊕ x6 x8 ⊕ x7 x8 ⊕ x2 ⊕ x5 ⊕ x6 Sx45 ,y5 = x1 x2 x3 x4 x5 x7 x8 ⊕ x1 x2 x3 x4 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 x8 ⊕ x1 x2 x3 x4 x6 x8 ⊕ x1 x2 x3 x4 x7 x8 ⊕ x1 x2 x3 x5 x6 x8 ⊕x1 x2 x3 x6 x7 x8 ⊕x1 x2 x4 x5 x7 x8 ⊕x1 x2 x4 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕ x1 x2 x3 x4 x7 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x5 x7 ⊕x1 x2 x3 x5 x8 ⊕x1 x2 x3 x6 x7 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x4 x6 x7 ⊕x1 x2 x5 x6 x8 ⊕ x1 x3 x4 x5 x6 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x5 x8 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕ x2 x3 x4 x6 x7 ⊕x2 x3 x4 x6 x8 ⊕x2 x4 x5 x6 x7 ⊕x2 x4 x6 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x6 x7 x8 ⊕x3 x5 x6 x7 x8 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x6 x8 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x7 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x7 ⊕ x3 x6 x7 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x4 x5 ⊕ x1 x4 x7 ⊕ x1 x5 x6 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x5 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x2 x4 x7 ⊕ x2 x5 x8 ⊕ x2 x6 x7 ⊕ x2 x6 x8 ⊕ x2 x7 x8 ⊕ x3 x4 x7 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x7 ⊕ x3 x6 x7 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x6 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x4 x7 x8 ⊕ x5 x6 x8 ⊕ x6 x7 x8 ⊕ x1 x6 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x4 ⊕ x2 x7 ⊕ x2 x8 ⊕ x3 x5 ⊕ x3 x6 ⊕ x3 x7 ⊕ x3 x8 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x5 x7 ⊕ x6 x7 ⊕ x7 x8 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ x8 Sx45 ,y6 = x1 x2 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x5 x6 x8 ⊕ x1 x2 x3 x6 x7 x8 ⊕ x1 x2 x4 x5 x6 x7 ⊕ x1 x2 x4 x6 x7 x8 ⊕ x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕x2 x3 x4 x6 x7 x8 ⊕ x2 x3 x5 x6 x7 x8 ⊕x1 x2 x3 x5 x7 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x4 x5 x8 ⊕x1 x2 x4 x6 x7 ⊕x1 x2 x5 x6 x8 ⊕ x1 x2 x6 x7 x8 ⊕x1 x3 x4 x6 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x6 x8 ⊕x2 x3 x4 x5 x6 ⊕x2 x3 x4 x6 x7 ⊕x2 x3 x5 x6 x8 ⊕ x2 x3 x5 x7 x8 ⊕ x2 x4 x5 x7 x8 ⊕ x3 x4 x5 x6 x8 ⊕ x3 x4 x5 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x6 x7 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x7 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x8 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x4 x7 x8 ⊕x3 x5 x6 x8 ⊕x3 x6 x7 x8 ⊕x4 x5 x6 x8 ⊕x4 x5 x7 x8 ⊕x5 x6 x7 x8 ⊕x1 x2 x6 ⊕x1 x2 x8 ⊕x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x4 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x8 ⊕ x1 x6 x8 ⊕ x2 x3 x7 ⊕ x2 x4 x6 ⊕
ˇ ´ILOHA E. VYJAD ´ REN ˇ ´I SBOXU ˚ ZODIAC V ANF PR
65
x2 x4 x7 ⊕ x2 x4 x8 ⊕ x2 x5 x6 ⊕ x2 x5 x8 ⊕ x2 x6 x8 ⊕ x3 x4 x6 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x8 ⊕ x5 x7 x8 ⊕ x6 x7 x8 ⊕ x1 x6 ⊕ x1 x7 ⊕ x2 x3 ⊕ x2 x7 ⊕ x2 x8 ⊕ x3 x4 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x6 ⊕ x5 x6 ⊕ x5 x7 ⊕ x5 x8 ⊕ x6 x8 ⊕ x7 x8 ⊕ x6 ⊕ x8 Sx45 ,y7 = x2 x4 x5 x6 x7 x8 ⊕ x2 x3 x5 x6 x8 ⊕ x2 x3 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 ⊕ x2 x4 x6 x7 x8 ⊕ x3 x4 x5 x6 x8 ⊕ x3 x4 x5 x7 x8 ⊕ x3 x4 x6 x7 x8 ⊕ x4 x5 x6 x7 x8 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x6 x8 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x5 x6 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x6 x8 ⊕ x4 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x8 ⊕ x2 x4 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x6 ⊕ x2 x5 x7 ⊕ x2 x7 x8 ⊕ x3 x4 x7 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x6 x7 ⊕ x4 x5 x6 ⊕ x4 x6 x7 ⊕x4 x7 x8 ⊕x2 x6 ⊕x2 x8 ⊕x3 x4 ⊕x3 x5 ⊕x3 x6 ⊕x3 x7 ⊕x4 x7 ⊕x4 x8 ⊕x5 x6 ⊕x5 x8 ⊕x6 x8 ⊕x6 ⊕x7 Sx45 ,y8 = x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x2 x3 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x7 ⊕ x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x3 x6 x7 x8 ⊕x2 x4 x5 x6 x8 ⊕x2 x4 x6 x7 x8 ⊕x3 x4 x5 x6 x7 ⊕x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x7 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x4 x6 x7 x8 ⊕ x5 x6 x7 x8 ⊕ x2 x3 x6 ⊕ x2 x3 x8 ⊕ x2 x4 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x7 ⊕ x3 x4 x5 ⊕ x3 x4 x7 ⊕ x3 x5 x8 ⊕ x4 x5 x8 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x7 x8 ⊕ x6 x7 x8 ⊕ x2 x4 ⊕ x2 x7 ⊕ x3 x7 ⊕ x3 x8 ⊕ x4 x8 ⊕ x5 x6 ⊕ x5 x8 ⊕ x6 x8 ⊕ x7 x8 ⊕ 1 ⊕ x1 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ x7 Sgf (28 ),y1 = x1 x2 x3 x4 x6 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x3 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x8 ⊕ x1 x2 x4 x6 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x5 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕ x1 x2 x3 x4 x7 ⊕x1 x2 x3 x4 x8 ⊕x1 x2 x3 x5 x8 ⊕x1 x2 x3 x6 x7 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x5 x8 ⊕ x1 x2 x4 x6 x7 ⊕x1 x2 x4 x7 x8 ⊕x1 x2 x5 x7 x8 ⊕x1 x3 x4 x5 x7 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x7 x8 ⊕x2 x3 x4 x5 x7 ⊕ x2 x3 x6 x7 x8 ⊕ x2 x4 x5 x7 x8 ⊕ x2 x4 x6 x7 x8 ⊕ x2 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x7 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x7 ⊕ x2 x3 x6 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x5 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x7 ⊕ x1 x2 x4 ⊕ x1 x2 x6 ⊕ x1 x3 x5 ⊕ x1 x3 x7 ⊕ x1 x4 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x1 x6 x8 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x7 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x6 x7 ⊕ x2 x7 x8 ⊕ x3 x4 x7 ⊕ x3 x5 x6 ⊕ x3 x5 x7 ⊕x3 x5 x8 ⊕x3 x7 x8 ⊕x4 x5 x8 ⊕x4 x6 x7 ⊕x4 x6 x8 ⊕x5 x6 x7 ⊕x1 x2 ⊕x1 x3 ⊕x1 x4 ⊕x1 x8 ⊕x2 x3 ⊕ x3 x4 ⊕x3 x5 ⊕x3 x6 ⊕x3 x7 ⊕x3 x8 ⊕x4 x5 ⊕x4 x7 ⊕x4 x8 ⊕x5 x6 ⊕x5 x7 ⊕x6 x7 ⊕x6 x8 ⊕x2 ⊕x3 ⊕x5 ⊕x6 ⊕1 Sgf (28 ),y2 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕x1 x2 x3 x4 x5 x7 ⊕ x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x4 x5 x6 x7 ⊕ x1 x2 x4 x5 x7 x8 ⊕x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x2 x3 x5 x6 x7 x8 ⊕x2 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕x1 x2 x3 x4 x6 ⊕x1 x2 x3 x5 x6 ⊕x1 x2 x3 x5 x7 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x5 x6 x8 ⊕x1 x2 x5 x7 x8 ⊕ x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x6 x8 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x6 x8 ⊕ x1 x3 x5 x7 x8 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x5 x7 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 ⊕x2 x3 x4 x5 x7 ⊕ x2 x3 x5 x7 x8 ⊕x2 x3 x6 x7 x8 ⊕x2 x4 x5 x6 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x6 x7 ⊕x3 x4 x5 x6 x8 ⊕x3 x4 x6 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x4 x7 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x7 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕ x3 x4 x7 x8 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x4 x6 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x5 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x4 x7 ⊕ x1 x5 x7 ⊕ x1 x7 x8 ⊕ x2 x3 x6 ⊕ x2 x5 x6 ⊕ x2 x5 x7 ⊕ x3 x4 x7 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x4 x6 x8 ⊕ x5 x6 x7 ⊕ x5 x7 x8 ⊕ x1 x2 ⊕ x1 x4 ⊕ x1 x7 ⊕ x2 x3 ⊕ x2 x8 ⊕ x3 x7 ⊕ x3 x8 ⊕ x4 x5 ⊕ x4 x6 ⊕ x4 x7 ⊕ x4 x8 ⊕ x5 x7 ⊕ x5 x8 ⊕ x6 x7 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ x7 ⊕ x8
66
ˇ ´ILOHA E. VYJAD ´ REN ˇ ´I SBOXU ˚ ZODIAC V ANF PR
Sgf (28 ),y3 = x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x4 x7 x8 ⊕ x1 x2 x3 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 ⊕x1 x2 x4 x5 x6 x8 ⊕x1 x2 x4 x5 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 ⊕ x1 x3 x4 x5 x7 x8 ⊕ x1 x3 x4 x6 x7 x8 ⊕ x1 x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕ x1 x2 x3 x4 x6 ⊕x1 x2 x3 x4 x8 ⊕x1 x2 x3 x5 x8 ⊕x1 x2 x4 x6 x7 ⊕x1 x2 x4 x6 x8 ⊕x1 x2 x5 x6 x7 ⊕x1 x3 x4 x5 x7 ⊕ x1 x3 x5 x6 x8 ⊕x1 x3 x5 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x6 x7 x8 ⊕x2 x3 x4 x5 x6 ⊕x2 x3 x4 x5 x7 ⊕x2 x3 x4 x5 x8 ⊕ x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x3 x6 x7 x8 ⊕x2 x4 x5 x6 x7 ⊕x2 x4 x6 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x6 x8 ⊕ x3 x4 x5 x7 x8 ⊕ x3 x4 x6 x7 x8 ⊕ x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x7 ⊕ x1 x2 x6 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x7 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x6 x7 ⊕ x3 x5 x6 x7 ⊕ x3 x5 x6 x8 ⊕ x3 x6 x7 x8 ⊕ x4 x5 x7 x8 ⊕x4 x6 x7 x8 ⊕x5 x6 x7 x8 ⊕x1 x2 x5 ⊕x1 x3 x8 ⊕x1 x4 x5 ⊕x1 x4 x6 ⊕x1 x4 x8 ⊕x1 x5 x8 ⊕x1 x7 x8 ⊕ x2 x3 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x7 ⊕ x2 x6 x7 ⊕ x2 x6 x8 ⊕ x3 x4 x6 ⊕ x3 x4 x7 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x7 ⊕ x3 x5 x8 ⊕x3 x6 x8 ⊕x4 x5 x6 ⊕x4 x6 x7 ⊕x4 x6 x8 ⊕x6 x7 x8 ⊕x1 x2 ⊕x1 x7 ⊕x1 x8 ⊕x2 x6 ⊕x2 x7 ⊕x2 x8 ⊕ x3 x4 ⊕x3 x5 ⊕x3 x6 ⊕x3 x7 ⊕x4 x6 ⊕x4 x7 ⊕x5 x6 ⊕x5 x8 ⊕x7 x8 ⊕x1 ⊕x2 ⊕x3 ⊕x4 ⊕x5 ⊕x6 ⊕x7 ⊕x8 ⊕1 Sgf (28 ),y4 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x6 ⊕ x1 x2 x3 x4 x5 x7 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x5 x7 x8 ⊕x1 x2 x3 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 ⊕x1 x2 x4 x6 x7 x8 ⊕ x1 x3 x4 x5 x6 x8 ⊕x1 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x2 x3 x5 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕ x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x4 x8 ⊕x1 x2 x3 x5 x7 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x4 x6 x7 ⊕x1 x2 x4 x7 x8 ⊕x1 x2 x5 x6 x7 ⊕ x1 x2 x5 x6 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x6 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x5 x8 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x7 x8 ⊕ x1 x3 x5 x6 x7 ⊕x1 x3 x6 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x6 x7 x8 ⊕x2 x3 x4 x5 x7 ⊕x2 x3 x4 x5 x8 ⊕ x2 x3 x4 x6 x7 ⊕x2 x3 x4 x7 x8 ⊕x2 x3 x5 x6 x8 ⊕x2 x3 x5 x7 x8 ⊕x2 x4 x6 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x7 x8 ⊕ x3 x4 x6 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕ x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x6 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x6 x7 ⊕ x1 x2 x6 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x6 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x4 x6 x7 x8 ⊕ x1 x2 x4 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x3 x4 ⊕ x1 x3 x7 ⊕ x1 x3 x8 ⊕ x1 x4 x6 ⊕ x1 x4 x7 ⊕ x1 x5 x6 ⊕ x1 x6 x7 ⊕ x1 x7 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x7 ⊕ x2 x3 x8 ⊕ x2 x4 x7 ⊕ x2 x5 x6 ⊕ x2 x5 x8 ⊕ x2 x7 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x8 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x5 x6 x7 ⊕ x6 x7 x8 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x5 ⊕ x1 x7 ⊕ x1 x8 ⊕ x2 x6 ⊕ x2 x8 ⊕ x3 x8 ⊕ x4 x8 ⊕ x5 x8 ⊕ x2 ⊕ x4 ⊕ x5 ⊕ x7 ⊕ x8 ⊕ 1 Sgf (28 ),y5 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x4 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x5 x7 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x5 x7 x8 ⊕x1 x2 x3 x6 x7 x8 ⊕ x1 x2 x4 x5 x6 x7 ⊕x1 x2 x4 x5 x6 x8 ⊕x1 x2 x4 x5 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 ⊕x1 x3 x4 x5 x7 x8 ⊕ x1 x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x4 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x6 ⊕ x1 x2 x3 x4 x8 ⊕x1 x2 x3 x5 x6 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x3 x7 x8 ⊕x1 x2 x4 x5 x6 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x4 x6 x7 ⊕ x1 x2 x4 x6 x8 ⊕x1 x2 x4 x7 x8 ⊕x1 x2 x5 x6 x8 ⊕x1 x3 x4 x5 x8 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x6 x8 ⊕ x1 x3 x6 x7 x8 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 ⊕x2 x3 x4 x6 x7 ⊕x2 x3 x4 x7 x8 ⊕ x2 x3 x5 x7 x8 ⊕ x2 x4 x5 x7 x8 ⊕ x2 x4 x6 x7 x8 ⊕ x2 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 ⊕ x1 x2 x3 x5 ⊕ x1 x2 x3 x8 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x6 x7 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x7 x8 ⊕ x1 x5 x7 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x4 x8 ⊕ x2 x3 x5 x6 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x8 ⊕ x2 x5 x7 x8 ⊕ x3 x4 x5 x6 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x7 ⊕ x3 x5 x6 x8 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x6 x7 x8 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x3 x4 ⊕ x1 x3 x5 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x3 x8 ⊕ x1 x4 x6 ⊕ x1 x4 x8 ⊕ x1 x5 x7 ⊕ x1 x6 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x7 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x7 ⊕ x2 x5 x8 ⊕ x2 x6 x7 ⊕ x3 x5 x7 ⊕ x3 x5 x8 ⊕ x3 x6 x8 ⊕ x4 x5 x6 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x8 ⊕ x5 x7 x8 ⊕ x6 x7 x8 ⊕ x1 x2 ⊕
ˇ ´ILOHA E. VYJAD ´ REN ˇ ´I SBOXU ˚ ZODIAC V ANF PR
67
x1 x3 ⊕ x1 x4 ⊕ x1 x5 ⊕ x1 x8 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x7 ⊕ x3 x4 ⊕ x3 x6 ⊕ x4 x7 ⊕ x5 x6 ⊕ x6 x7 ⊕ x6 x8 ⊕ x7 x8 ⊕ x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ x8 Sgf (28 ),y6 = x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x1 x2 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 x8 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x6 x8 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x3 x5 x7 x8 ⊕ x1 x2 x3 x6 x7 x8 ⊕x1 x2 x4 x5 x7 x8 ⊕x1 x2 x4 x6 x7 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕ x1 x4 x5 x6 x7 x8 ⊕ x2 x4 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x7 ⊕ x1 x2 x3 x4 x8 ⊕ x1 x2 x3 x5 x6 ⊕ x1 x2 x3 x5 x7 ⊕x1 x2 x3 x5 x8 ⊕x1 x2 x3 x6 x7 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x5 x6 x7 ⊕x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕ x1 x3 x4 x5 x8 ⊕x1 x3 x4 x6 x8 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x7 x8 ⊕x1 x3 x6 x7 x8 ⊕x2 x3 x4 x5 x6 ⊕x2 x3 x4 x5 x8 ⊕ x2 x3 x4 x6 x8 ⊕x2 x3 x5 x6 x8 ⊕x2 x3 x5 x7 x8 ⊕x2 x3 x6 x7 x8 ⊕x2 x4 x5 x7 x8 ⊕x2 x4 x6 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x3 x7 ⊕ x1 x2 x4 x7 ⊕ x1 x2 x5 x8 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x5 x8 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x5 x6 x8 ⊕ x2 x3 x4 x5 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x5 x8 ⊕ x2 x4 x5 x7 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x7 ⊕ x2 x4 x6 x8 ⊕ x2 x5 x6 x7 ⊕ x2 x5 x6 x8 ⊕ x3 x4 x5 x8 ⊕ x3 x4 x6 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x7 ⊕ x3 x6 x7 x8 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x1 x2 x3 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x6 ⊕ x1 x2 x8 ⊕ x1 x3 x6 ⊕ x1 x3 x7 ⊕ x1 x4 x8 ⊕ x1 x5 x6 ⊕ x1 x6 x7 ⊕ x2 x3 x5 ⊕ x2 x3 x6 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x2 x4 x7 ⊕ x2 x5 x7 ⊕ x2 x5 x8 ⊕ x2 x7 x8 ⊕ x3 x4 x6 ⊕ x3 x4 x7 ⊕ x3 x5 x6 ⊕ x4 x5 x6 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x4 x6 x8 ⊕ x4 x7 x8 ⊕ x5 x6 x7 ⊕ x2 x4 ⊕x2 x5 ⊕x2 x7 ⊕x3 x4 ⊕x3 x5 ⊕x3 x8 ⊕x4 x5 ⊕x4 x6 ⊕x4 x7 ⊕x5 x7 ⊕x5 x8 ⊕x6 x7 ⊕x1 ⊕x3 ⊕x5 ⊕x8 Sgf (28 ),y7 = x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x2 x3 x4 x6 x7 x8 ⊕x1 x2 x3 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 x6 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x3 x5 x6 x8 ⊕x1 x2 x4 x5 x6 x7 ⊕ x1 x2 x4 x5 x6 x8 ⊕x1 x2 x5 x6 x7 x8 ⊕x1 x3 x4 x5 x6 x7 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x1 x4 x5 x6 x7 x8 ⊕ x2 x3 x4 x5 x6 x8 ⊕ x2 x3 x4 x5 x7 x8 ⊕ x2 x3 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 ⊕ x1 x2 x3 x4 x8 ⊕ x1 x2 x3 x5 x7 ⊕ x1 x2 x4 x5 x8 ⊕x1 x2 x5 x6 x7 ⊕x1 x2 x5 x6 x8 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x5 x8 ⊕x1 x3 x4 x7 x8 ⊕x1 x3 x5 x6 x7 ⊕ x1 x3 x6 x7 x8 ⊕x1 x4 x5 x6 x7 ⊕x1 x4 x5 x6 x8 ⊕x1 x4 x6 x7 x8 ⊕x1 x5 x6 x7 x8 ⊕x2 x3 x4 x7 x8 ⊕x2 x3 x5 x6 x7 ⊕ x2 x3 x5 x6 x8 ⊕x2 x3 x5 x7 x8 ⊕x2 x4 x5 x6 x8 ⊕x2 x4 x6 x7 x8 ⊕x2 x5 x6 x7 x8 ⊕x3 x4 x5 x6 x7 ⊕x3 x5 x6 x7 x8 ⊕ x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x6 ⊕ x1 x3 x5 x6 ⊕ x1 x3 x5 x8 ⊕ x1 x3 x6 x7 ⊕ x1 x3 x6 x8 ⊕ x1 x3 x7 x8 ⊕ x1 x4 x5 x7 ⊕ x1 x4 x6 x7 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x4 x7 ⊕ x2 x3 x5 x7 ⊕ x2 x3 x5 x8 ⊕ x2 x3 x6 x8 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x5 x6 ⊕ x2 x4 x5 x8 ⊕ x2 x4 x6 x8 ⊕ x3 x4 x5 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x8 ⊕ x3 x5 x7 x8 ⊕ x3 x6 x7 x8 ⊕ x4 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕x5 x6 x7 x8 ⊕x1 x2 x8 ⊕x1 x3 x5 ⊕x1 x3 x6 ⊕x1 x3 x8 ⊕x1 x4 x6 ⊕x1 x5 x7 ⊕x1 x5 x8 ⊕x2 x3 x4 ⊕ x2 x4 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x6 ⊕ x2 x5 x7 ⊕ x3 x4 x6 ⊕ x3 x4 x7 ⊕ x3 x4 x8 ⊕ x3 x5 x6 ⊕ x3 x5 x8 ⊕ x3 x6 x7 ⊕ x3 x7 x8 ⊕ x4 x5 x6 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x5 x6 x8 ⊕ x5 x7 x8 ⊕ x6 x7 x8 ⊕ x1 x2 ⊕ x1 x4 ⊕ x2 x5 ⊕x2 x7 ⊕x2 x8 ⊕x3 x4 ⊕x4 x5 ⊕x4 x6 ⊕x4 x8 ⊕x5 x6 ⊕x5 x8 ⊕x6 x7 ⊕x1 ⊕x2 ⊕x3 ⊕x4 ⊕x6 ⊕x7 ⊕x8 Sgf (28 ),y8 = x1 x2 x3 x4 x5 x6 x7 ⊕x1 x2 x3 x4 x5 x6 x8 ⊕x1 x2 x3 x4 x5 x7 x8 ⊕x1 x3 x4 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 x8 ⊕ x1 x2 x3 x4 x5 x6 ⊕x1 x2 x3 x4 x6 x7 ⊕x1 x2 x3 x4 x7 x8 ⊕x1 x2 x3 x5 x6 x7 ⊕x1 x2 x3 x5 x7 x8 ⊕x1 x2 x3 x6 x7 x8 ⊕ x1 x2 x4 x5 x6 x7 ⊕x1 x3 x4 x6 x7 x8 ⊕x1 x3 x5 x6 x7 x8 ⊕x2 x3 x4 x5 x6 x7 ⊕x2 x3 x4 x5 x6 x8 ⊕x2 x3 x4 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 x8 ⊕x1 x2 x3 x4 x7 ⊕x1 x2 x3 x4 x8 ⊕x1 x2 x3 x6 x8 ⊕x1 x2 x4 x5 x7 ⊕x1 x2 x4 x6 x7 ⊕x1 x2 x4 x6 x8 ⊕ x1 x2 x5 x7 x8 ⊕x1 x2 x6 x7 x8 ⊕x1 x3 x4 x5 x7 ⊕x1 x3 x4 x6 x7 ⊕x1 x3 x4 x6 x8 ⊕x1 x3 x5 x6 x8 ⊕x1 x4 x5 x6 x8 ⊕ x1 x4 x5 x7 x8 ⊕x1 x4 x6 x7 x8 ⊕x2 x3 x4 x5 x8 ⊕x2 x3 x4 x7 x8 ⊕x2 x3 x5 x6 x7 ⊕x2 x4 x5 x7 x8 ⊕x2 x4 x6 x7 x8 ⊕ x2 x5 x6 x7 x8 ⊕ x3 x4 x5 x6 x7 ⊕ x3 x4 x6 x7 x8 ⊕ x3 x5 x6 x7 x8 ⊕ x1 x2 x3 x6 ⊕ x1 x2 x4 x5 ⊕ x1 x2 x4 x6 ⊕ x1 x2 x4 x7 ⊕ x1 x2 x4 x8 ⊕ x1 x2 x5 x7 ⊕ x1 x2 x7 x8 ⊕ x1 x3 x4 x5 ⊕ x1 x3 x4 x7 ⊕ x1 x3 x4 x8 ⊕ x1 x3 x5 x7 ⊕ x1 x3 x6 x7 ⊕ x1 x4 x5 x6 ⊕ x1 x4 x6 x7 ⊕ x1 x4 x6 x8 ⊕ x1 x5 x6 x7 ⊕ x1 x5 x6 x8 ⊕ x1 x6 x7 x8 ⊕ x2 x3 x4 x6 ⊕ x2 x3 x5 x6 ⊕ x2 x3 x7 x8 ⊕ x2 x4 x7 x8 ⊕ x2 x5 x6 x7 ⊕ x2 x5 x7 x8 ⊕ x2 x6 x7 x8 ⊕ x3 x4 x6 x7 ⊕ x3 x4 x6 x8 ⊕ x3 x5 x6 x8 ⊕ x3 x5 x7 x8 ⊕ x4 x5 x6 x7 ⊕ x4 x5 x6 x8 ⊕ x4 x5 x7 x8 ⊕ x1 x2 x4 ⊕ x1 x2 x5 ⊕ x1 x2 x7 ⊕ x1 x2 x8 ⊕ x1 x3 x4 ⊕ x1 x3 x8 ⊕ x1 x4 x7 ⊕ x1 x5 x7 ⊕ x1 x5 x8 ⊕ x1 x6 x7 ⊕ x1 x6 x8 ⊕ x2 x3 x4 ⊕ x2 x3 x5 ⊕ x2 x3 x6 ⊕ x2 x3 x8 ⊕ x2 x4 x5 ⊕ x2 x4 x6 ⊕ x2 x4 x8 ⊕ x2 x5 x6 ⊕ x2 x5 x7 ⊕ x2 x5 x8 ⊕ x2 x6 x8 ⊕ x2 x7 x8 ⊕ x3 x4 x5 ⊕ x3 x4 x8 ⊕ x3 x5 x7 ⊕ x3 x5 x8 ⊕ x3 x6 x8 ⊕ x3 x7 x8 ⊕ x4 x5 x7 ⊕ x4 x5 x8 ⊕ x4 x6 x7 ⊕ x4 x6 x8 ⊕ x6 x7 x8 ⊕ x1 x2 ⊕ x1 x3 ⊕ x1 x6 ⊕ x1 x8 ⊕ x2 x3 ⊕ x2 x4 ⊕ x2 x5 ⊕ x2 x8 ⊕ x3 x5 ⊕ x3 x6 ⊕ x4 x5 ⊕ x4 x7 ⊕ x4 x8 ⊕
68 x6 x7 ⊕ x7 x8 ⊕ x1 ⊕ x3 ⊕ x6 ⊕ x8 ⊕ 1
ˇ ´ILOHA E. VYJAD ´ REN ˇ ´I SBOXU ˚ ZODIAC V ANF PR
ˇ ´ILOHA F. LINEARN ´ ´I APROXIMACN ˇ ´I TABULKY DES PR
F Line´ arn´ı aproximaˇ cn´ı tabulky DES
69
ˇ ´ILOHA F. LINEARN ´ ´I APROXIMACN ˇ ´I TABULKY DES PR
70
α\β
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
0
–
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
4
-2
2
-2
2
-4
0
4
0
2
-2
2
-2
0
-4
3
0
0
-2
6
-2
-2
4
-4
0
0
-2
6
-2
-2
4
-4
4
0
2
-2
0
0
2
-2
0
0
2
2
4
-4
-2
-2
0
5
0
2
2
-4
0
10
-6
-4
0
2
-10
0
4
-2
2
4
6
0
-2
-4
-6
-2
-4
2
0
0
-2
0
-2
-6
-8
2
0
7
0
2
0
2
-2
8
6
0
-4
6
0
-6
-2
0
-6
-4
8
0
0
2
6
0
0
-2
-6
-2
2
4
-12
2
6
-4
4
9
0
-4
6
-2
0
-4
-6
-6
6
-2
0
-4
2
-6
-8
-4
A
0
4
0
0
-2
-6
2
2
2
2
-2
2
4
-4
-4
0
B
0
4
4
4
6
2
-2
-2
-2
-2
-2
2
0
-8
-4
0
C
0
2
0
-2
0
2
4
10
-2
4
-2
-8
-2
4
-6
-4
D
0
6
0
2
0
-2
4
-10
-2
0
-2
4
-2
8
-6
0
E
0
-2
-2
0
-2
4
0
2
-2
0
4
2
-4
6
-2
-4
F
0
-2
-2
8
6
4
0
2
2
4
8
-2
8
-6
2
0
10
0
2
-2
0
0
-2
-6
-8
0
-2
-2
-4
0
2
10
-20
11
0
2
-2
0
4
2
-2
-4
4
2
2
0
-8
-6
2
4
12
0
-2
0
-2
2
-4
-2
-8
4
6
4
6
-2
4
-6
0
13
0
-6
0
2
-2
4
2
0
4
-6
4
2
-6
4
-2
0
14
0
4
-4
0
0
0
0
0
-4
-4
4
4
0
4
-4
0
15
0
4
0
-4
-4
4
-8
-8
0
0
-4
4
8
4
0
4
16
0
0
6
6
2
-2
4
0
4
0
6
2
2
2
0
0
17
0
4
-6
-2
6
-2
-4
4
4
-4
-6
2
-2
2
0
4
18
0
6
0
2
4
-10
-4
2
2
0
-2
0
2
4
-2
-4
19
0
2
4
-6
0
-2
4
-2
6
8
6
4
10
0
2
-4
1A
0
2
2
-8
-2
4
0
2
-2
0
4
2
0
-2
-2
0
1B
0
2
6
-4
-6
0
0
2
6
8
0
-2
-4
-6
-2
0
1C
0
0
-2
2
4
0
-6
2
-2
6
-4
0
2
-2
0
0
1D
0
4
-2
6
-8
0
-2
2
10
-2
-8
-8
2
2
0
4
1E
0
-4
-8
0
-2
-2
-2
2
-2
2
-2
6
4
4
4
0
1F
0
-4
8
-8
2
-6
-6
-2
-2
2
-2
-2
-8
0
0
-4
Tabulka F.1: Line´ arn´ı aproximaˇcn´ı tabulka - DES(FIPS 46-3) SBOX 5 ˇc´ast 1.
ˇ ´ILOHA F. LINEARN ´ ´I APROXIMACN ˇ ´I TABULKY DES PR
α\β
0
1
2
3
4
5
6
7
8
9
A
71
B
C
D
E
F
20
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
21
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22
0
-4
-2
2
-2
2
-4
8
-4
0
-6
6
2
-2
-16
-12
23
0
0
-2
-2
6
-2
-4
4
0
0
-2
-2
-2
6
4
-4
24
0
-2
6
4
0
6
-2
4
4
-6
-2
4
0
14
2
0
25
0
6
2
0
0
6
2
0
-4
-6
2
-8
0
-2
6
-4
26
0
2
4
-2
-2
0
2
-4
4
-2
-4
-2
6
0
-2
0
27
0
-10
0
-2
6
4
6
-4
0
6
-12
2
2
0
6
-4
28
0
4
-2
-2
0
4
-6
2
2
-6
4
0
6
-2
-4
0
29
0
0
2
6
0
0
6
2
2
-2
-8
0
-2
-6
0
0
2A
0
0
-4
-8
6
6
6
-6
6
2
-2
-2
-8
4
-4
4
2B
0
8
0
4
6
-2
-6
6
2
6
-2
6
-4
0
4
4
2C
0
2
4
-6
0
-6
0
6
-2
-4
2
-4
-2
4
6
0
2D
0
-2
-4
-2
0
-2
-8
2
-2
0
-6
-8
-2
0
-2
4
2E
0
6
2
-4
6
4
4
-2
-10
-8
0
-2
4
-2
2
0
2F
0
6
-6
-4
6
-4
4
-2
2
4
4
-6
0
2
-2
-4
30
0
2
-2
0
-4
-6
-2
-4
4
2
2
0
0
2
2
4
31
0
2
-2
0
0
-2
2
0
0
-2
-2
-4
0
2
2
4
32
0
6
0
-2
-2
8
2
4
0
10
0
2
-2
4
2
0
33
0
-6
0
10
2
0
-2
-4
0
6
0
-10
2
4
-2
0
34
0
0
-12
4
-4
0
4
-8
-4
0
-4
0
-4
-4
0
0
35
0
-8
0
0
8
-4
4
0
0
-4
-4
0
4
4
-4
4
36
0
4
-2
-6
-2
-2
8
0
4
-4
-2
-2
6
2
-4
0
37
0
-8
-6
-6
-6
6
0
4
12
0
2
-2
2
2
4
-4
38
0
2
4
-6
0
-2
4
-2
-6
4
-6
0
6
4
-2
0
39
0
-2
8
2
-4
6
-4
-6
-2
-4
2
4
-2
0
2
0
3A
0
6
-10
0
2
4
0
-2
6
-4
0
2
4
-2
-2
-4
3B
0
-2
-6
-4
-10
0
-8
-2
-10
4
4
-2
0
2
-2
4
3C
0
-8
-6
-2
0
-4
2
2
-6
2
4
0
10
-2
4
4
3D
0
4
2
2
4
4
-2
2
-2
10
0
0
2
2
4
0
3E
0
-4
4
-4
2
2
-2
2
2
-2
-2
-2
4
-4
0
4
3F
0
-4
-4
-4
14
6
-6
-2
2
-2
6
-2
0
0
-4
0
Tabulka F.2: Line´ arn´ı aproximaˇcn´ı tabulka - DES(FIPS 46-3) SBOX 5 ˇc´ast 2.
72
ˇ ´ILOHA F. LINEARN ´ ´I APROXIMACN ˇ ´I TABULKY DES PR
ˇ ´ILOHA G. LINEARN ´ ´I APROXIMACN ˇ ´I GRAF S-BOXU BLOKOVE ´C ˇ ASTI ´ PR CSA
73
G Line´ arn´ı aproximaˇ cn´ı graf S-BOXu blokov´ eˇ c´ asti CSA Linearni aproximacni graf pro S-BOX blokove casti CSA
linearni aproximace [-] 15
80
10 5
60
0
40
-5
20
-10 -15
0 -20 250
50
200
100 vstupni vektor α[-]
150
150
100
200
50
vystupni vektor β[-]
250
Obr´ azek G.1: Line´ arn´ı aproximaˇcn´ı graf S-BOXu blokov´e ˇc´asti CSA
74
ˇ ´ILOHA G. LINEARN ´ ´I APROXIMACN ˇ ´I GRAF S-BOXU BLOKOVE ´C ˇ ASTI ´ PR CSA
ˇ ´ILOHA H. LINEARN ´ ´I APROXIMACN ˇ ´I GRAF S-BOXU ˚ SIFRY ˇ PR ZODIAC
75
H Line´ arn´ı aproximaˇ cn´ı graf S-BOX˚ uˇ sifry Zodiac Linearni aproximacni graf pro S-BOX S1 (45x) sifry Zodiac
linearni aproximace [-] 15
80
10 5
60
0
40
-5
20
-10 -15
0 -20 250
50
200
100 vstupni vektor α[-]
150
150
100
200
50
vystupni vektor β[-]
250
Obr´ azek H.1: Line´ arn´ı aproximaˇcn´ı graf S-BOXu S1 (45x ) ˇsifry Zodiac
ˇ ´ILOHA H. LINEARN ´ ´I APROXIMACN ˇ ´I GRAF S-BOXU ˚ SIFRY ˇ PR ZODIAC
76
Linearni aproximacni graf pro S-BOX S2 (GF(28)) sifry Zodiac
linearni aproximace [-] 15
80
10 5
60
0
40
-5
20
-10 -15
0 -20 250
50
200
100 vstupni vektor α[-]
150
150
100
200
50
vystupni vektor β[-]
250
Obr´azek H.2: Line´ arn´ı aproximaˇcn´ı graf S-BOXu S2 (GF (28 )) ˇsifry Zodiac
ˇ ´ILOHA I. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I TABULKY DES PR
I Diferenˇ cn´ı distribuˇ cn´ı tabulky DES
77
ˇ ´ILOHA I. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I TABULKY DES PR
78
∆X\∆Y
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
0
-
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
6
0
2
4
4
0
10
12
4
10
6
2
4
2
0
0
0
8
0
4
4
4
0
6
8
6
12
6
4
2
3
14
4
2
2
10
6
4
2
6
4
4
0
2
2
2
0
4
0
0
0
6
0
10
10
6
0
4
6
4
2
8
6
2
5
4
8
6
2
2
4
4
2
0
4
4
0
12
2
4
6
6
0
4
2
4
8
2
6
2
8
4
4
2
4
2
0
12
7
2
4
10
4
0
4
8
4
2
4
8
2
2
2
4
4
8
0
0
0
12
0
8
8
4
0
6
2
8
8
2
2
4
9
10
2
4
0
2
4
6
0
2
2
8
0
10
0
2
12
A
0
8
6
2
2
8
6
0
6
4
6
0
4
0
2
10
B
2
4
0
10
2
2
4
0
2
6
2
6
6
4
2
12
C
0
0
0
8
0
6
6
0
0
6
6
4
6
6
14
2
D
6
6
4
8
4
8
2
6
0
6
4
6
0
2
0
2
E
0
4
8
8
6
6
4
0
6
6
4
0
0
4
0
8
F
2
0
2
4
4
6
4
2
4
8
2
2
2
6
8
8
10
0
0
0
0
0
0
2
14
0
6
6
12
4
6
8
6
11
6
8
2
4
6
4
8
6
4
0
6
6
0
4
0
0
12
0
8
4
2
6
6
4
6
6
4
2
6
6
0
4
0
13
2
4
4
6
2
0
4
6
2
0
6
8
4
6
4
6
14
0
8
8
0
10
0
4
2
8
2
2
4
4
8
4
0
15
0
4
6
4
2
2
4
10
6
2
0
10
0
4
6
4
16
0
8
10
8
0
2
2
6
10
2
0
2
0
6
2
6
17
4
4
6
0
10
6
0
2
4
4
4
6
6
6
2
0
18
0
6
6
0
8
4
2
2
2
4
6
8
6
6
2
2
19
2
6
2
4
0
8
4
6
10
4
0
4
2
8
4
0
1A
0
6
4
0
4
6
6
6
6
2
2
0
4
4
6
8
1B
4
4
2
4
10
6
6
4
6
2
2
4
2
2
4
2
1C
0
10
10
6
6
0
0
12
6
4
0
0
2
4
4
0
1D
4
2
4
0
8
0
0
2
10
0
2
6
6
6
14
0
1E
0
2
6
0
14
2
0
0
6
4
10
8
2
2
6
2
1F
2
4
10
6
2
2
2
8
6
8
0
0
0
4
6
4
Tabulka I.1: Diferenˇcn´ı distribuˇcn´ı tabulka - DES(FIPS 46-3) SBOX 1 ˇc´ast 1.
ˇ ´ILOHA I. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I TABULKY DES PR
∆X\∆Y
0
1
2
3
4
5
6
7
8
9
79
A
B
C
D
E
F
20
0
0
0
10
0
12
8
2
0
6
4
4
4
2
0
12
21
0
4
2
4
4
8
10
0
4
4
10
0
4
0
2
8
22
10
4
6
2
2
8
2
2
2
2
6
0
4
0
4
10
23
0
4
4
8
0
2
6
0
6
6
2
10
2
4
0
10
24
12
0
0
2
2
2
2
0
14
14
2
0
2
6
2
4
25
6
4
4
12
4
4
4
10
2
2
2
0
4
2
2
2
26
0
0
4
10
10
10
2
4
0
4
6
4
4
4
2
0
27
10
4
2
0
2
4
2
0
4
8
0
4
8
8
4
4
28
12
2
2
8
2
6
12
0
0
2
6
0
4
0
6
2
29
4
2
2
10
0
2
4
0
0
14
10
2
4
6
0
4
2A
4
2
4
6
0
2
8
2
2
14
2
6
2
6
2
2
2B
12
2
2
2
4
6
6
2
0
2
6
2
6
0
8
4
2C
4
2
2
4
0
2
10
4
2
2
4
8
8
4
2
6
2D
6
2
6
2
8
4
4
4
2
4
6
0
8
2
0
6
2E
6
6
2
2
0
2
4
6
4
0
6
2
12
2
6
4
2F
2
2
2
2
2
6
8
8
2
4
4
6
8
2
4
2
30
0
4
6
0
12
6
2
2
8
2
4
4
6
2
2
4
31
4
8
2
10
2
2
2
2
6
0
0
2
2
4
10
8
32
4
2
6
4
4
2
2
4
6
6
4
8
2
2
8
0
33
4
4
6
2
10
8
4
2
4
0
2
2
4
6
2
4
34
0
8
16
6
2
0
0
12
6
0
0
0
0
8
0
6
35
2
2
4
0
8
0
0
0
14
4
6
8
0
2
14
0
36
2
6
2
2
8
0
2
2
4
2
6
8
6
4
10
0
37
2
2
12
4
2
4
4
10
4
4
2
6
0
2
2
4
38
0
6
2
2
2
0
2
2
4
6
4
4
4
6
10
10
39
6
2
2
4
12
6
4
8
4
0
2
4
2
4
4
0
3A
6
4
6
4
6
8
0
6
2
2
6
2
2
6
4
0
3B
2
6
4
0
0
2
4
6
4
6
8
6
4
4
6
2
3C
0
10
4
0
12
0
4
2
6
0
4
12
4
4
2
0
3D
0
8
6
2
2
6
0
8
4
4
0
4
0
12
4
4
3E
4
8
2
2
2
4
4
14
4
2
0
2
0
8
4
4
3F
4
8
4
2
4
0
2
4
4
2
4
8
8
6
2
2
Tabulka I.2: Diferenˇcn´ı distribuˇcn´ı tabulka - DES(FIPS 46-3) SBOX 1 ˇc´ast 2.
80
ˇ ´ILOHA I. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I TABULKY DES PR
ˇ ´ILOHA J. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I GRAF S-BOXU BLOKOVE ´C ˇ ASTI ´ PR CSA
81
J Diferenˇ cn´ı distribuˇ cn´ı graf S-BOXu blokov´ eˇ c´ asti CSA Diferencni distribucni graf pro S-BOX blokove casti sifry CSA
diference [-] 30 250
25 20
200
15 150
10 5
100
0 50 0
250
50
200
100 vstupni vektor ∆X[-]
150
150
100
200
50
vystupni vektor ∆Y[-]
250
Obr´ azek J.1: Diferenˇcn´ı distribuˇcn´ı graf S-BOXu blokov´e ˇc´asti CSA
82
ˇ ´ILOHA J. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I GRAF S-BOXU BLOKOVE ´C ˇ ASTI ´ PR CSA
ˇ ´ILOHA K. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I GRAF S-BOXU ˚ SIFRY ˇ PR ZODIAC
83
K Diferenˇ cn´ı distribuˇ cn´ı graf S-BOX˚ uˇ sifry Zodiac Diferencni distribucni graf pro S-BOX S1 (45x) sifry Zodiac
diference [-] 30 250
25 20
200
15 150
10 5
100
0 50 0
250
50
200
100 vstupni vektor ∆X[-]
150
150
100
200
50
vystupni vektor ∆Y[-]
250
Obr´ azek K.1: Diferenˇcn´ı distribuˇcn´ı graf S-BOXu S1 (45x ) ˇsifry Zodiac
ˇ ´ILOHA K. DIFERENCN ˇ ´I DISTRIBUCN ˇ ´I GRAF S-BOXU ˚ SIFRY ˇ PR ZODIAC
84
Diferencni distribucni graf pro S-BOX S2 (GF(28)) sifry Zodiac
diference [-] 30 250
25 20
200
15 150
10 5
100
0 50 0
250
50
200
100 vstupni vektor ∆X[-]
150
150
100
200
50
vystupni vektor ∆Y[-]
250
Obr´azek K.2: Diferenˇcn´ı distribuˇcn´ı graf S-BOXu S2 (GF (28 )) ˇsifry Zodiac
ˇ ´ILOHA L. PRUCHOD ˚ ´ ´ ´IMI APROXIMACEMI 85 PR KRYPTOSYSTEMEM DES LINEARN
L Pr˚ uchod kryptosyst´ emem DES line´ arn´ımi aproximacemi
R0
K1,23
S1
S2
S3
K1
S4
K1,25
S5
S6
S7
S8
S7
S8
+ L0
K2,3
S1
K2,10
S2
K2,12
K2
K2,20
S3
S4
K2,35 K2,37
S5
S6
+ L1
. . .
Obr´ azek L.1: Pˇr´ıklad pr˚ uchodu kryptosyst´emem DES line´arn´ımi aproximacemi
ˇ ´ILOHA L. PRUCHOD ˚ ´ ´ ´IMI APROXIMACEMI 86 PR KRYPTOSYSTEMEM DES LINEARN
ˇ ´ILOHA M. PRUCHOD ˚ ´ ˇ ´I TABULKY87 PR KRYPTOSYSTEMEM DES S POMOC´I DIFERENCN
M Pr˚ uchod kryptosyst´ emem DES s pomoc´ı diferenˇ cn´ı tabulky
R0
K1
S1
S2
S3
S4
S5
S6
S7
S8
S5
S6
S7
S8
+ L0
K2
S1
S2
S3
S4
+ L1
. . .
Obr´azek M.1: Pˇr´ıklad pr˚ uchodu kryptosyst´emem DES pomoc´ı distribuˇcnˇe diferenˇcn´ıch tabulek
ˇ ´ILOHA M. PRUCHOD ˚ ´ ˇ ´I TABULKY 88PR KRYPTOSYSTEMEM DES S POMOC´I DIFERENCN
ˇ ´ILOHA N. OBSAH PRILO ˇ ˇ EHO ´ PR ZEN DVD
N Obsah pˇ riloˇ zen´ eho DVD mi ni dvd
Al gebr ai ckénor mál ovéf or mypouži t épr o al gebr ai ckoukr ypt oanal ýzu Dat agr af ů Ukázkapouži t ímódubl okovýchši f er Sr ovnánípř í st upůkdi f er enci ál níkr ypt oanal ýze Př í kl adl avi novost iDESu Soubor ypot ř ebnépr owebovér ozhanípr ezent aceDVD Vl ast níobr azovésoubor ypouži t évdi pl omovépr áci Vyj ádř eníSBOXůvr ůznýchobr azovýchf or mát ech
Di f er enci ál nídi st r i bučnít abul ky
Li neár něapr oxi mačnít abul ky
Textdi pl omovépr ácevel ekt r oni cképodobě
Obr´ azek N.1: Obsah pˇriloˇzen´eho DVD
89