Piotr Kotlarz Instytut Mechaniki rodowiska i Informatyki Stosowanej Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zbigniew Kotulski Instytut Podstawowych Problemów Techniki PAN w Warszawie Instytut Telekomunikacji PW Neuronowa realizacja nieliniowych przekszta ce szyfruj cych W tej pracy prezentujemy kolejny etap naszych bada dotycz cy implementacji symetrycznych algorytmów szyfruj cych za pomoc sieci neuronowych. We wcze niejszych naszych pracach [], [], [3] przedstawiona zosta a ogólna koncepcja wykorzystania sieci neuronowych do realizacji szyfrów blokowych ze szczególnym uwzgl dnieniem implementacji permutacji. W tej pracy prezentujemy neuronow realizacj nieliniowych funkcji S-blok (S-bo).. Wprowadzenie Przekszta ceniem szyfruj cym powszechnie wyst puj cym we wspó czesnych algorytmach szyfruj cych jest nieliniowe podstawienie. Podstawienie realizowane jest za pomoc S-bloków. Dzia anie S-bloku mo e by interpretowane jako dzia anie wybierania z tablicy ustalonej warto ci przechowywanej w komórce o okre lonym adresie. S-bloki stosowane w praktycznych implementacjach sk adaj si z tablicy o kilku kolumnach i wierszach. W przypadku algorytmu DES jest to tablica w wymiarach 4 wiersze i 5 kolumn. Adres pojedynczej komórki sk ada si z 6 bitów, dwa skrajne okre laj numer wiersza, a 4 rodkowe numer kolumny. Je li natomiast przyjrzymy si aktualnemu standardowi szyfrowania, jakim jest szyfr AES, to stosowane tam S- bloki stanowi tablic o szesnastu wierszach i kolumnach. Adres pojedynczej komórki w takim S- bloku sk ada si z o miu bitów. W dalszej cz ci pracy przedstawiona zostanie propozycja realizacji za pomoc sieci neuronowej S-bloku wykorzystywanego w algorytmie DES. Analogicznie mo na skonstruowa S-blok szyfru AES, jednak z powodu jego wi kszego wymiaru takie przekszta cenie jest reprezentowane przez znacznie bardziej skomplikowan sie neuronow.. Realizacja jednego wiersza z S-bloku algorytmu DES Chc c zrealizowa za pomoc sieci neuronowej S-blok z algorytmu DES, problem dzielimy na dwa etapy. Pierwszy to realizacja pojedynczego wiersza, drugi to rozbudowa zaproponowanej metody do pe nego S-bloku (4 wiersze). Je li rozpatrzymy najpierw problem realizacji jednego wiersza, to sie neuronowa powinna da mo liwo realizacji wybierania wskazanej warto ci z tablicy. W tabeli pokazany jest S-blok numer algorytmu DES; pierwszy wiersz tej tabeli jest przedmiotem rozwa a w tym podrozdziale. Tabela. Zawarto S-blok nr algorytmu DES. 4 4 3 5 8 3 0 6 5 9 0 7 0 5 7 4 4 3 0 6 9 5 3 8 4 4 8 3 6 5 9 7 3 0 5 0 5 8 4 9 7 5 3 4 0 0 6 3 Ci g wej ciowy S-bloku to 6 bitów: PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 93
Tak wi c wobec powy szego, adresowanie komórki w obr bie jednego wiersza odbywa si z wykorzystaniem 4 bitów. Pierwszym zadaniem jest rozwi zanie problemu realizacji za pomoc sieci neuronowej wybierania konkretnej warto ci z tablicy 6. W literaturze dotycz cej sieci neuronowych znana jest koncepcja sieci CP [4], tak zwanej sieci przesy aj cej eton. Ogólna budowa tej sieci przedstawiona jest na rys... Rys.. Koncepcja budowy sieci CP. Sie ta sk ada si z dwóch warstw realizuj cych odr bne zadania. Warstwa Kohonena dzia a na zasadzie konkurencyjno ci. Warto pojawia si na wyj ciu jednego neuronu. dla ma( ϕ i ) yi =, gdzie i = * w T. 0 w inny wypadku Druga warstwa sieci jest adresowana przez warstw pierwsz. O warto ci na wyj ciu sieci CP ostatecznie decyduje warstwa Grossberga. Pomys na realizacj pojedynczego wiersza S-bloku za pomoc sieci neuronowej bazuje na ogólnej koncepcji sieci CP. Opisuj c proponowan konstrukcj sieci neuronowej dla przejrzysto ci opisu za o ono, e sie ma udziela odpowiedzi w postaci dziesi tnej. W toku bada i eksperymentów okaza o si, e to, czy sie ma udziela odpowiedzi w postaci binarnej czy dziesi tnej, jest kwesti konstrukcji ostatniej warstwy sieci. Wychodz c wi c z ogólnej koncepcji sieci CP, struktur uk adu neuronowego realizuj cego jeden wiersz S-bloku mo na przestawi za pomoc schematu blokowego, pokazanego na rys. : Rys.. Schemat budowy sieci realizuj cej pierwszy wiersz S-bloku. Warstwa I mia aby realizowa klasyfikacj obiektów okre lanych poprzez odpowiedni kombinacj 4 bitów na 6 ró nych klas (pierwszy wiersz S-bloku zawiera 6 komórek). Skupiaj c si na pierwszej warstwie, chodzi tu o konstrukcj sieci neuronowej, która dla ró nych kombinacji czterech bitów wej ciowych dla poszczególnych sygna ów b dzie odpowiada a jedynk tylko na jednym wyj ciu. Wykorzystane do tego zostan 4 sieci neuronowe, z których ka da b dzie realizowa a klasyfikacj obiektu na 4 klasy przy 4 cechach podawanych na wej ciu. Podobnie jak PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 94
by o to rozwi zane w przypadku realizacji permutacji [], [] równie i przy neuronowej realizacji S-bloku stosowane s do budowy bloki neuronowe, które mo na nazwa podsieciami. Rozwi zanie takie zosta o przyj te z dwóch powodów. Pozwala w czytelnej i zwartej formie przedstawia struktur sieci, a modu owo u atwia implementacj. Ponadto modu owa budowa u atwia ewentualn rozbudow rozmiaru S-bloku. Tak wi c sie pozwalaj ca na klasyfikacj na 4 klasy wykorzystuje dwa bloki elementarne, przedstawione na rys. 3. = 3 = 4 W W f f W W f f W W f3 Y Rys. 3. Neuronowe klasyfikatory elementarne. Bloki s-b oraz s-b sk adaj si z neuronów z trzema ró nymi funkcjami aktywacji: 0, ϕ p 0, ϕ p f = ϕ, f =, oraz f3 =,, ϕ > p, ϕ < p = w i i gdzie: ϕ, y (ϕ ) j = f k, p = 0,5, p = 0,, f wej cia/wagi neuronu, funkcja aktywacji, i numer ϕn - potencja membranowy, p - próg funkcji aktywacji, y j - wyj cie kolejnego neuronu, k - numer funkcji aktywacji. Korzystaj c z uk adu powy szych bloków, rys. 3, tworzymy sie, która dzia a wed ug tablicy prawdy pokazanej poni ej. Zgodnie z przyj t zasad konstrukcji bloków elementarnych sie realizuj ca poni sz tablic prawdy oznaczona zostanie jako 4-kl. Jest ona pokazana na rys. 4. y y y3 Y4 0 0 0 0 0 0 0 Rys. 4. Realizacja rozpoznawania czterech obiektów. Mo na oczywi cie dyskutowa z faktem z o ono ci tej sieci realizuj cej do proste zadanie. Jednak taki uk ad wydaje si optymalny pod wzgl dem dalszych jego zastosowa i wymogów stawianych przed neuronowym uk adem szyfruj cym do budowy którego zmierzamy. Na tym etapie rozwa a druga warstwa sieci ma realizowa podawanie konkretnej warto ci z zakresu (0-5). Po przeprowadzeniu wielu prób i eksperymentów dobrany zosta kszta t sieci realizuj cy podawanie 6 ró nych warto ci dziesi tnych na wyj ciu. Sie ta pokazana jest na rys. 5. Poniewa na wyj ciu sieci nie znajduje si funkcja progowa, to wa ne jest takie dobranie struktury sieci, aby uzyskane odpowiedzi sieci by y podawane z odpowiedni dok adno ci. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 95
3 4 5 6 7 8 9 0 3 4 5 6 W W W5 W6 W7 W8 W9 W0 W W W5 W6 f f f f f f f f W W W W f f f f W W f f W W f Y Rys. 5. Sie realizuj ca podawanie na wyj ciu warto ci od 0 do 5. W trakcie dotychczasowych prac zosta rozwi zany problem realizacji za pomoc sieci neuronowej problemu adresowania komórek wiersza S-bloku oraz rozwi zany problem podawania na wyj ciu sieci warto ci stanowi cej zawarto komórki o danym adresie. Mo na teraz przyst pi do z o enia sieci realizuj cej dzia anie pojedynczego wiersza S-bloku. Jej schemat ideowy przedstawiono na rys. 6. Rys. 6. Sie realizuj ca jeden wiersz w S-bloku. Sie pokazana na rys. 6 realizuje funkcj pojedynczego wiersza S-bloku algorytmu DES. Mo na j jednak przyj jako pierwsz wersj wst pn, bardziej jako konstrukcj teoretyczn, poniewa ma ona 8 wej. W praktycznym rozwi zaniu komórki w wierszach S-bloku maj adresy 4 bitowe. W rozwi zaniu ostatecznym zrealizowane zosta o to poprzez odpowiednie po czenie 4 wej ca ego uk ady (S-bloku) z o mioma wej ciami uk adu czterech modu ów 4-kl. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 96
3. Neuronowy dekoder warto ci dziesi tnych na binarne Odpowied S-bloku jest zawsze w postaci binarnej. Wobec tego koniecznym sta o si opracowanie uk adu neuronowego, który b dzie realizowa zamian warto ci zmiennoprzecinkowej na binarn. Zak adaj c, e ca y projektowany uk ad ma by realizowany za pomoc sieci neuronowej, zaistnia a wi c konieczno konstrukcji neuronowego dekodera. Uk ad taki na potrzeby przejrzysto ci dalszego wywodu nazwany zosta : decbin, rys. 7 Rys. 7. Sie realizuj ca jeden wiersz w S-bloku - odpowied binarna. Projektowany uk ad decbin posiada jedno wej cie, na które podawana b dzie odpowied pochodz ca z uk adu p-w-d, realizuj cego podanie wybranej z wiersza S-bloku warto ci w postaci binarnej. Decbin na wyj ciu ma udzieli odpowiedzi w postaci 4 bitowej, binarnej. Tablica prawdy dla projektowanego uk adu, przedstawiona jest w tabeli. Tabela. Tablica prawdy, kodowanie 6 warto ci dziesi tnych do postaci binarnej. y y y3 y4 0 0 0 0 0 3 0 0 4 0 0 0 5 0 0 6 0 0 7 0 8 9 0 0 0 0 0 0 0 0 3 0 4 0 5 Pami tamy, e g ównym celem, do realizacji którego maj doprowadzi badania opisane w ramach tej pracy, jest budowa neuronowego uk adu szyfruj cego. Funkcje nieliniowe s, obok permutacji, istotnym sk adnikiem takiego uk adu. Wa ne jest, aby konstrukcja uk adu szyfruj cego by a uniwersalna i mog a by w przysz o ci rozbudowywana. W tym celu przyj ta zosta a zasada budowy modu owej, dzi ki czemu mo liwa jest atwa modyfikacja uk adu koduj cego na przyk ad ze wzgl du na wielko zbioru mo liwych sygna ów wej ciowych, a co za tym idzie d ugo binarnego sygna u na wyj ciu. Podobnie jak mia o to miejsce w poprzednich rozdzia ach, pierwszym krokiem w rozwa aniach jest sprowadzenie problemu kodowania do realizacji zadania klasyfikacji, typowego dla sieci neuronowych. Je li zamiast jednej tablicy prawdy skonstruujemy cztery osobne PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 97
tablice zestawiaj c odpowiednio : y, : y, : y3, : y4, to mo emy zaobserwowa, e funkcje, które s opisywane przez te tabele realizuj podzia sygna u wej ciowego na dwie klasy. Tak wi c zadanie konstrukcji neuronowego uk adu koduj cego polega b dzie na konstrukcji czterech odr bnych sieci, które b d realizowa y poszczególne funkcje. Ich charakterystyki zapisane zosta y w tabeli 3 oraz na rys. 8. Tabela 3. Tablice prawdy dla uk adu decbin. A X 0 3 4 5 6 7 8 9 0 3 4 5 y 0 0 B X 0 3 4 5 6 7 8 9 0 3 4 5 y 0 0 C X 0 3 4 5 6 7 8 9 0 3 4 5 y3 0 0 0 0 0 0 0 0 D X 0 3 4 5 6 7 8 9 0 3 4 5 y4 0 0 0 0 0 0 0 0,5 0,5 0 Y 0 3 4 5 6 7 8 9 0 3 4 5 X,5 0,5 0 Y 0 3 4 5 6 7 8 9 0 3 4 5 X,5 0,5 0 Y 0 3 4 5 6 7 8 9 0 3 4 5 X,5 0,5 0 Y 0 3 4 5 6 7 8 9 0 3 4 5 X 3.. Realizacja bloku A Rys. 8. Bloki elementarne sieci decbin. Ten problem jest stosunkowo prostym do realizacji neuronowej, nie wymaga nawet przeprowadzania procesu uczenia i wystarczy pojedynczy neuron, przedstawiony na rys. 9. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 98
X X = X W= W = f Y f 0, =, ϕ p, ϕ = ϕ > p w i, p i = 7 Rys. 9. Sie realizuj ca blok A. 3.. Realizacja bloku B W tym przypadku zadanie jest nieco bardziej z o one, jeden neuron ju nie wystarczy. Punktem wyj cia do rozwa a jest zweryfikowanie, jakie informacje b d podawane na wej cie projektowanego uk adu. Na pewno na wej cie sieci B podawana b dzie warto zmiennoprzecinkowa (ta sama, która jednocze nie znajdzie si na wej ciu uk adu A ). Ponadto do dyspozycji mamy te odpowied uk adu A. Uk ad dokonuje podzia u warto ci zmiennoprzecinkowej na dwie grupy. Sie, która jest obecnie przedmiotem rozwa a, ma za zadanie równie dzielenie sygna u wej ciowego na grupy. Jak wida na rys. 0, odpowied uk adu B jest zale na od warto ci uzyskanej na wyj ciu bloku A. Rys. 0. Zale no pomi dzy uk adami B i A. Ta zale no w a nie zostanie wykorzystana do budowy uk adu B. Problem mo na wi c rozpatrywa w taki sposób, e mamy podzia zbioru warto ci sygna u wej ciowego na dwie grupy (modu A ) oraz w ka dej grupie podzia na dwie podgrupy (modu B ). W celu realizacji modu u B skonstruowana zosta a trzywarstwowa siec neuronowa, por. rys. i tabela 4. Rys.. Budowa modu u B. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 99
Tabela 4. Tablice prawdy dla modu u B. Warstwa I Warstwa II Warstwa III B y y y3 y4 0 0 0 0 3 0 0 4 0 5 0 6 0 7 0 8 0 9 0 0 0 0 3 4 5 3 X4 5 6 Y5 Y6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 8 Y 0 0 0 0 0 0 0 0 Y 0 0 0 0 3 0 0 4 0 5 0 6 0 7 0 8 0 9 0 0 0 0 3 4 5 Tabela 4 zawiera tablice prawdy dla poszczególnych warstw sk adaj cych si na sie neuronow modu u B. Na poszczególne warstwy sk adaj si modu y elementarne, rys., których zasada dzia ania zostanie teraz przestawiona. Modu b to neuron, którego zadaniem jest przekazanie na wyj cie tego samego sygna u, jaki podawany jest na jego wej cie. Modu y b i b 3 to pojedyncze neurony realizuj ce funkcj progow, odpowiednio z progiem p = 3 oraz p =. Elementy b, b, b3 nie wymagaj procesu uczenia, ich wagi przyjmuj warto ci 0 i. Elementy b 4, b5, b6 wymagaj ju przeprowadzenia procesu uczenia. Do realizacji poszczególnych elementów wystarczy równie jeden neuron posiadaj cy dwa wej cia i jedno wyj cie. W tabeli 5 przedstawione zosta y tablice prawdy, jakie maj realizowa poszczególne bloki b 4, b5, b6. Jednocze nie s one reprezentacj zbiorów ucz cych, z tym, e dla polepszenia jako ci procesu uczenia w zbiorach ucz cych warto ci 0 zosta y zast pione warto ciami -. Tabela 5. Tablice prawdy dla modu ów b4, b5, b5. b4 b5 b6 Y 0 0 0 0 y 0 0 0 0 y 0 0 Tak wi c uk ad sk adaj cy si z elementów b do b6 realizuje funkcj zapisan jako tabela prawdy uk adu B. 3.3. Realizacja bloku C Realizacja kolejnego bloku wymaga u ycia sieci neuronowej sk adaj cej si z dwóch warstw. Proces uczenia sieci przeprowadzany jest dla ca ej sieci od razu, bez potrzeby rozbijania na podbloki. Na tym etapie realizacji kodera decbin na wej ciu bloku C dysponujemy trzema ró nymi warto ciami. Dost pna jest warto zmiennoprzecinkowa, wynik dzia ania bloku A i bloku B, co obrazuje rys.. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 300
C X 0 3 4 5 6 7 8 9 0 3 4 5 X 0 0 X3 0 0 y3 0 0 0 0 0 0 0 0 Rys.. Schemat dzia ania modu u C. Szczegó owa konstrukcja sieci pokazana jest na rys. 3. Rys. 4 przedstawia wykres odzwierciedlaj cy pr dko zbie no ci w procesie uczenia sieci. f = ϕ, f 0, =, ϕ p, gdzie: = i ϕ < p ϕ w i, y (ϕ ) j = f k, p = 0,5, Rys. 3. Sie neuronowa realizuj ca modu C. B d sieci 0, 0, 0,08 0,06 0,04 0,0 Cykl ucz cy 0 0 00 000 0000 3.4. Realizacja bloku D Rys. 4. Przebieg procesu uczenia sieci neuronowej realizuj cej modu C. Ostatni blok neuronowego kodera warto ci dziesi tnych do postaci binarnej zrealizowany zosta zgodnie z tak sam ide jak blok C. Ró nic jest tu fakt, e w pierwszej warstwie sieci wykorzystane zosta y dwa neurony posiadaj ce cztery wej cia, w celu wykorzystania czterech sygna ów pochodz cych z wyj uk adów A, B i C oraz warto ci dziesi tnej, która poddawana jest kodowaniu. Rys. 5. Schemat uk adu decbin. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 30
Tworz c sie z przygotowanych bloków elementarnych A, B, C i D uzyskujemy sie neuronow, rys. 4, która realizuje kodowanie warto ci zmiennoprzecinkowych do postaci binarnej czterobitowej. 4. Realizacja kompletnego S-bloku W celu realizacji kompletnego S-bloku niezb dne jest rozwi zanie problemu adresowania wierszy. W 6 bitowym sygnale wej ciowych S-bloku dwa skrajne bity wskazuj numer wiersza z którego nast pnie wybierana jest konkretna warto z 6. Poniewa w algorytmie DES S-bloki posiadaj cztery wiersze, to mamy tu problem wyboru z 4. Problem budowy sieci realizuj cej podzia na cztery klasy zosta opisany we wcze niejszym rozdziale tej pracy. Neuronowy uk ad realizuj cy pe en S-blok pokazany jest na rys. 6. y y y6 p-w-d decdec w-w 3 4 y y y6 p-w-d decdec y y y y z6 y6 y6 5 * decbin Y y y p-w-d Y 4 y6 decdec w-w w-w 6 4-kl y y y6 p-w-d decdec w-w Rys. 6. Neuronowy uk ad realizuj cy S-blok algorytmu DES. Wyja nienia wymaga jeszcze kilka szczegó ów z powy szego rys. 6. Modu w-w sk ada si z pojedynczego neuronu, który realizuje funkcj : y 0, =, = 0 = Z sygna ów ( bitowych), jakie mog si pojawi na wej ciu uk adu 4-kl wynika, e warto 0 pojawi si tylko na wyj ciu jednego z czterech uk adów w-w, na pozosta ych pojawi si 0. T jedn warto ci b dzie element wskazany przez sygna wej ciowy S-bloku. Kolejnym elementem ca ego uk adu jest modu *. Jego zadaniem jest przekazanie na wej cie modu u decbin warto ci, jaka pojawi si na wyj ciu jednego z uk adów w-w. Do realizacji tego zadania równie wystarczy jeden neuron, tym razem posiadaj cy 4 wej cia, rys. 7. f = ϕ, ϕ = w i i Rys. 7 Schemat uk adu *. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 30
Kluczowym za o eniem, jakie poczynione zosta o na pocz tku bada dotycz cych neuronowej implementacji szyfrów (a wi c i S-bloków), jest aby rozwi zania by o uniwersalne w tym sensie, e zmiana szyfru (S-bloku) na inny polega na zmianie warto ci wag bez zmieniania struktury uk adu sieci neuronowej. Cel ten zosta osi gni ty, proponowany uk ad realizuj cy konkretny S-blok wymaga przeprowadzenia procesu uczenia w okre lonych warunkach, a nie wymaga przebudowy struktury sieci neuronowej. 5. Podsumowanie Zastosowanie metod sztucznej inteligencji w kryptologii ma ju pewna histori. Pierwsze prace dotyczy y wykorzystania algorytmów ewolucyjnych do ataków na proste szyfry podstawieniowe [5], [6]. W pracy [7] zosta y porównane metody wykorzystuj ce algorytmy genetyczne do ataków na szyfry wykorzystuj ce permutacje, podstawienia i transpozycje. Jedn z ciekawszych cytowanych tam koncepcji jest wykorzystanie algorytmów genetycznych do ekstrakcji klucza z szyfru opartego na koncepcji Feistela [8]. W 996 roku pojawi a si propozycja u ycia algorytmów genetycznych do ataku na kryptosystem Merkle-Hellmana [9]. W 997 roku [0] zaproponowano procedur wykorzystania metod genetycznych do przeszukiwania du ych przestrzeni kluczy dla czterowirnikowej maszyny rotorowej. Celem tej pracy by o przedstawienie mo liwo ci implementacji szyfrów blokowych za pomoc sieci neuronowych. Pokazano, jak zrealizowa skrzynk S-bo algorytmu DES. Za o ony cel, budowy uniwersalnego uk adu neuronowego realizuj cego dowolny S-blok zosta osi gni ty. Kolejnym etapem bada b dzie ocena wydajno ci proponowanego rozwi zania w procesie uczenia i dzia ania szyfru oraz identyfikacji potencjalnych mo liwo ci praktycznego wykorzystania neuronowej implementacji S-bloku. Literatura. P. Kotlarz, Z. Kotulski, On application of neural networks for S-boes design, in: P. S. Szczepaniak, J. Kacprzyk, A. Niewiadomski [Eds], Advances in Web Intelligence: Third International Atlantic Web Intelligence Conference, AWIC 005, LNCS 358, pp. 43-48, Springer-Verlag, Berlin 005. ISBN: 43-540-69-9.. P. Kotlarz, Z. Kotulski, Neural network as a programmable block cipher, in: J. Peja, Kh. Saeed [Eds], Advances in Information Processing and Protection, pp. 4-50, Springer-Verlag, Berlin 007. ISBN: 978-0-387-7336-0 3. P. Kotlarz, Z. Kotulski, "Application of neural networks for implementation of cryptographic functions" in: L. Kie tyka [Ed.], Multimedia in Business and Education, vol., pp. 3-8, Fundacja Wspó czesne Zarz dzanie, Bia ystok 005, ISBN 83-988-7-0. 4. S. Osowski, "Sieci neuronowe do przetwarzania informacji", Warszawa 000. 5. S. Peleg, A. Rosenfeld, Breaking substitution ciphers using a relaation algorithm. Communications of the ACM,, pp. 598-605, 979. 6. D. Hunter, A. McKenzie Eperiments with relaation algorithms for breaking simple substitution ciphers., The Computer Journal, Vol. 6, pp. 68-7, 983. 7. B. Delman, Genetic Algorithms in Cryptography, Department of Computer Engineering Thesis (M.S.)--Rochester Institute of Technology, 004. 8. R.A.J. Matthews, The use of genetic algorithms in cryptanalysis. Cryptologia, Vol. 7, pp. 87-0, 993. 9. D. Dascalu, C. Vertan, C. Geangala, Breaking the Merkle-Hellman Cryptosystem by Genetic Algorithms: Locality versus Performance, Real World Applications of Intelligent Technologies, Romanian Academy, 996, pp. 0-08. 0. T. Bagnall, G.P. McKeown, V.J. Rayward-Smith, The cryptanalysis of a three rotor machine using a genetic algorithm. In: T. Back [Ed.] Proceedings of the 7th International Conference on Genetic Algorithms (ICGA97), San Francisco, CA, Morgan Kaufmann, 997. PRZEGLĄD TELEKOMUNIKACYJNY - ROCZNIK LXXXI - nr 8/9 008 303