referat c ko 9ccielny 2 AEMK7K2EUH7D2GTQLMZ5J3B5GRKRNUXIHX5AEDA


Czesław Kościelny

Uniwersytet Zielonogórski,

Instytut Sterowania i Systemów Informatycznych

Wyższa Szkoła Menedżerska w Legnicy

Zakład Informatyki

Metoda konstrukcji szyfrów blokowych

korygujących manipulacje na kryptogramach

Streszczenie

W referacie przedstawiono zasady ogólnej metody konstrukcji odpornych na złamanie szyfrów blokowych, posiadających cenną dla praktyki właściwość wykrywania i korygowania manipulacji na kryptogramach. Prezentowane szyfry są szyframi endomorficznymi, w których stosuje się ten sam alfabet dla zapisu tekstu jawnego, klucza i kryptogramu, a zdolność detekcji i korygowania celowo wprowadzonych zmian w kryptogramie przez oponenta lub zmian przypadkowych, powodowanych przez zakłócenia w kanale transmisyjnym, uzyskuje się dzięki dwustopniowym procedurom szyfrowania i deszyfrowania. Procedura szyfrowania polega bowiem na złożeniu przekształcenia, zamieniającego tekst jawny na wektor kodowy niesystematycznego kodu cyklicznego z podstawieniem, które każdemu znakowi tekstu jawnego przyporządkowuje inny znak.

  1. Wstęp

Sprawne funkcjonowanie każdej instytucji lub organizacji zależy dużej mierze od właściwie zorganizowanej komunikacji między wszystkimi komórkami jej struktury. Chodzi tu nie tylko o efektywną realizację przesyłania poleceń, sprawozdań i różnego rodzaju innych komunikatów, ale też o zagwarantowanie, by przekazywane wiadomości trafiały do właściwych adresatów. Inaczej mówiąc, musi być zapewniona poufność korespondencji, polegająca na uniemożliwianiu odczytania jakiegokolwiek komunikatu przez osobę nieupoważnioną. W szczególności należy starać się o to, by instytucja lub organizacja konkurencyjna nie mogła odczytać żadnego dokumentu wewnętrznego danej firmy. Od tajemnicy korespondencji, związanej z działalnością różnego rodzaju instytucji, organizacji i firm, zależy bowiem ich istnienie na rynku, a jedynym ekonomicznie uzasadnionym środkiem, który tę tajemnicę gwarantuje, jest niezawodny system kryptograficzny.

„Szyfrowanie jest za poważne, aby zostawiać je jedynie rządom” napisał w przedmowie do swojej książki znany kryptolog amerykański [1]. Pisząc te słowa autor miał zapewne na myśli zagrożenia, towarzyszące stosowaniu kryptografii. Na pierwszym miejscu należy tu wymienić zaufanie do instytucji, oferujących usługi kryptograficzne. Ale w Internecie można znaleźć dokumenty z których niezbicie wynika, że nawet renomowane firmy, oferujące komercyjne produkty kryptograficzne, czyli aparaturę lub programy do szyfrowania wiadomości, dokonują celowo takiej degradacji swoich produktów, która pozwala osobie, znającej szczegóły tej degradacji, prawie natychmiast zdeszyfrować kryptogram [8]. Motywem tej nieetycznej działalności jest oczywiście chęć ogromnego zysku, jaki można czerpać ze szpiegostwa przemysłowego i nieuczciwej konkurencji. Dlatego też niezłym wyjściem jest zakup programu, realizującego algorytmy kryptograficzne, w postaci źródłowej. Program powinien być przed zakupem szczegółowo zbadany przez kompetentnego i zaufanego informatyka-kryptologa. Dopiero po dokonaniu transakcji zakupu program szyfrujący i deszyfrujący należałoby skompilować, uruchomić i wdrożyć. Kupowanie aparatury kryptograficznej jest bardziej ryzykowne, gdyż sprawdzenie zasady działania układów scalonych dużej skali integracji, realizujących procedury kryptograficzne jest o wiele trudniejsze niż sprawdzenie programów. Poza tym oprogramowanie kryptograficzne jest bardziej elastyczne niż wyspecjalizowany sprzęt, używany do kryptograficznej ochrony danych. Wyjściem najlepszym wydaje się jednak system kryptograficzny, opracowany przez kompetentnych i lojalnych fachowców, zatrudnionych przez firmę, która będzie ten system używać.

Mając to na uwadze, w referacie przedstawiono nową wersję metody konstrukcji trudnych do złamania blokowych szyfrów symetrycznych, opisywaną wcześnie w pracach [3, 5, 6], które posiadają zdolność wykrywania i korygowania manipulacji na kryptogramach. Ta właściwość szyfru jest szczególnie cenna, gdyż zatrudnieni przez konkurencję kryptoanalitycy często stosują tzw. podsłuch czynny i poprzez manipulacje na kryptogramach usiłują uzyskać dodatkową wiedzę o treści szyfrowanych komunikatów i o metodzie szyfrowania.

  1. Metoda konstrukcji nadmiarowego symetrycznego szyfru blokowego korygującego manipulacje na kryptogramach

Cechą charakterystyczną prezentowanej metody konstrukcji szyfru jest sposób likwidowania nadmiarowości tekstu jawnego i usuwania zależności statystycznych między tekstem jawnym i kryptogramem. Zamiast zalecanej przez Shannona techniki mieszania i rozpraszania, polegającej na naprzemiennym stosowaniu podstawień i przestawień, proponowana metoda wmontowuje do procedur szyfrowania i deszyfrowania procedury kodowania i dekodowania kodów cyklicznych, w których występują m. in. nieliniowe operacje mnożenia wielomianów, oraz jedną permutację 0x01 graphic
, za pomocą której każdy znak tekstu jawnego zastępuje się innym znakiem. Uzyskano dzięki temu zadowalający efekt usuwania nadmiarowości i bardzo dużą przestrzeń klucza, gwarantującą odporność szyfru na złamanie. Jak wspomniano wcześniej, rozpatrywany szyfr jest szyfrem endomorficznym, w którym tekst jawny i kryptogram zapisuje się za pomocą znaków tego samego alfabetu. Znakami alfabetu w rozważanym szyfrze są elementy ciała skończonego GF(q).

0x01 graphic
Niech system algebraiczny

0x01 graphic
(1)

złożony ze zbioru liczb całkowitych 0x01 graphic
i z operacji dodawania i mnożenia elementów tego zbioru reprezentuje q-elementowe ciało skończone i niech

0x01 graphic
(2)

będzie wielomianem generującym kodu cyklicznego 0x01 graphic
nad 0x01 graphic
, korygującego 0x01 graphic
błędów. Niech też

0x01 graphic
(3)

będzie dowolną permutacją elementów ciała 0x01 graphic
. Jeśli sekwencja elementów ciała 0x01 graphic
w postaci wektora

0x01 graphic
(4)

stowarzyszonego z wielomianem

0x01 graphic

oznacza k-elementowy blok tekstu jawnego, i jeśli wektor

0x01 graphic
0x01 graphic
(5)

będzie wraz z permutacją 0x01 graphic
tajnym kluczem, to następujące przekształcenie szyfrujące służy do generowania szyfru blokowego korygującego manipulacje na kryptogramach

0x01 graphic
(6)

Przekształcenie (6) jest opisane przy pomocy funkcji trzech zmiennych

0x01 graphic
(7)

gdzie g, 0x01 graphic
, m, K jak we wzorach (2), (3), (4) i (5), zaś

0x01 graphic
0x01 graphic

oznacza odpowiednio procedurę konwersji wielomianu 0x01 graphic
stopnia 0x01 graphic
na wektor o m składowych i wektora o m składowych na wielomian stopnia 0x01 graphic
Operacja mnożenia wielomianów i operacja dodawania, występujące w zależności (7) należy wykonywać zgodnie z arytmetyką ciała GF(q).

Z definicji funkcji E wynika, że odpowiadający blokowi tekstu jawnego m blok kryptogramu c jest sumą nad 0x01 graphic
n-znakowego bloku klucza K i n-znakowego zmodyfikowanego wektora kodowego niesystematycznego kodu (n, k), w którym każdą składową zastąpiono stosownym elementem ciała 0x01 graphic
zgodnie z permutacją 0x01 graphic
.

Przekształcenie deszyfrujące będzie zatem miało postać

0x01 graphic
(8)

czyli

0x01 graphic
(9)

gdzie 0x01 graphic
oznacza kryptogram, w którym dokonano manipulacji, 0x01 graphic
jest procedurą dekodowania wektora kodowego z korekcją błędów, 0x01 graphic
jest permutacją odwrotną permutacji (3), przy pozostałych oznaczeniach jak we wzorze (7). Procedura deszyfrowania działa poprawnie, jeśli liczba manipulacji, czyli liczba zmienionych znaków w kryptogramie, nie jest większa od parametru t, który zależy od zdolności korekcyjnej kodu cyklicznego, zastosowanego do konstrukcji szyfru. Jeśli przy tym założy się, że wszystkie szczegóły algorytmów szyfrowania i deszyfrowania są ogólnie znane, wówczas klucz szyfrujący ma dwie składowe: permutację 0x01 graphic
oraz klucz właściwy K. Wtedy liczba możliwych do zastosowania kluczy wyniesie

0x01 graphic
(10)

gdzie n jest długością wektora kodowego.

  1. Przykład

Dla zilustrowania przedstawionej metody generowania szyfru pozwalającego korygować manipulacje na kryptogramach przyjęto, że stosuje się alfabet w postaci zbioru liczb

0x01 graphic
.

Wobec tego przy realizacji programowej algorytmów kryptograficznych trzeba zastosować ciało skończone o 8 elementach

0x01 graphic

w którym operacje dodawania i mnożenia zdefiniowano przy pomocy podanych niżej tabliczek:

Tabliczki dodawania i mnożenia w ciele GF(8)

+

0

1

2

3

4

5

6

7

0x01 graphic

0

1

2

3

4

5

6

7

0

0

1

2

3

4

5

6

7

0

0

0

0

0

0

0

0

0

1

1

0

3

2

5

4

7

6

1

0

1

2

3

4

5

6

7

2

2

3

0

1

6

7

4

5

2

0

2

4

6

3

1

7

5

3

3

2

1

0

7

6

5

4

3

0

3

6

5

7

4

1

2

4

4

5

6

7

0

1

2

3

4

0

4

3

7

6

2

5

1

5

5

4

7

6

1

0

3

2

5

0

5

1

4

2

7

3

6

6

6

7

4

5

3

2

1

0

6

0

6

7

1

5

3

2

4

7

7

6

5

4

3

2

1

0

7

0

7

5

2

1

6

4

3

Jak wiadomo, jest to ciało charakterystyki 2, więc operacja dodawania jest taka sama, jak odejmowanie. Przyjęto też, że zastosowana będzie permutacja

0x01 graphic

i jej permutacja odwrotna

0x01 graphic

oraz cykliczny rozszerzony kod Reeda-Solomona [4] (9, 5), korygujący dwa błędy, o wielomianie generującym, stowarzyszonym z wektorem

0x01 graphic
,

co oznacza, że

0x01 graphic

Kod powyższy generuje wektory kodowe o długości 9, składające się z 5 symboli informacyjnych i 4 symboli nadmiarowych. Niech wektory

0x01 graphic
, 0x01 graphic

reprezentują odpowiednio tekst jawny i drugą składową klucza. Wobec tego trzeba wyznaczyć

0x01 graphic

Oto kolejne etapy obliczania kryptogramu

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

i ostatecznie

0x01 graphic
.

Jeśli zostanie odebrany kryptogram w postaci

0x01 graphic
,

w którym zmieniono 3. i 6. symbol, to procedura deszyfrowania ma przebieg:

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

Przestrzeń klucza dla rozpatrywanego szyfru wyniesie

0x01 graphic

7. Wnioski

Pokazano stosunkowo prosty sposób generowania symetrycznych szyfrów blokowych, odpornych na złamanie i umożliwiających korekcję manipulacji na kryptogramach. Zaprezentowane szyfry nadają się zarówno do realizacji sprzętowej, pozwalającej na duże szybkości szyfrowania, oraz wolniejszej, ale bardziej elastycznej realizacji programowej. Szyfry można konstruować nad dowolnym alfabetem o liczbie elementów, równej potędze liczby pierwszej. Najbardziej praktycznym sposobem jest jednak zastosowanie uniwersalnego kodu ASCII, kiedy procedury szyfrowania i deszyfrowania można realizować w ciele GF(256). Wówczas przestrzeń klucza, przy stosowaniu rozszerzonego kodu Reeda-Solomona nad GF(256) będzie zawierać 0x01 graphic
elementów. Procedury szyfrowania i deszyfrowania można także konstruować w oparciu o skrócone kody cykliczne. Warto też wspomnieć, że opisany szyfr może pracować w trybie elektronicznej książki kodowej, trybie łączenia bloków zaszyfrowanych i w trybach sprzężenia zwrotnego kryptogramu. Szyfr jest szczególnie przydatny do szyfrowania dużych plików, rzędu 10 i więcej megabajtów.

Literatura

[1]

B. Schneier, Applied Cryptography, John Wiley & Sons, 1996, second edition

[2]

Cz. Kościelny, Programowa realizacja działań w ciałach skończonych do zastosowań w technice kodowania korekcyjnego i kryptografii, Prace Naukowe Instytutu Cybernetyki Technicznej Politechniki Wrocławskiej nr 61, seria monografie nr 11 , 115 s.,

1983.

[3]

Cz. Kościelny, W. Mochnacki, Kryptografia z zastosowaniem kodów cyklicznych, II Krajowa Konferencja Naukowo-Techniczna Przetwarzanie sygnałów w telekomunikacji, sterowaniu i kontroli, Tom 1: transmisja informacji s. 20-23, Bydgoszcz, 23-25 września 1986.

[4]

Cz. Kościelny, Constructing a Better Cyclic Code than Cyclic Reed-Solomon Code, IEEE Trans. on Information Theory, vol. 41 No. 4, July 1995, s. 1191 - 1194

[5]

Cz. Kościelny, T. Hebisz, Metoda konstrukcji szyfru blokowego wykrywającego manipulacje na kryptogramach, Materiały II Krajowej Konferencji Zastosowań Kryptografii ENIGMA'98, Warszawa, 26 - 28 maja 1998, str. KII-WOC-29 - KII-WOC-42.

[6]

Cz. Kościelny, T. Hebisz, Kod Reeda-Solomona jako symetryczny szyfr blokowy wykrywający manipulacje na kryptogramach, Prace V Krajowej Konferencji Naukowo-Technicznej Diagnostyka Procesów Przemysłowych, str. 343 - 346, Łagów

Lubuski, 17 - 19 września 2001

[7]

Cz. Kościelny, T. Hebisz, More Secure Computing in Finite Fields for Cryptographic Applications, Proceedings C. D. of Fourteenth International Symposium on Mathematical Theory of Networks and Systems MNTS 2000, Perpignan, France, June 19 - 23, 2000

[8]

Cz. Kościelny, Polityczne i prawne uwarunkowania techniki ochrony poufności informacji w Internecie, materiały Ogólnopolskiej Konferencji Naukowej Funkcjonowanie i rozwój organizacji w zmiennym otoczeniu, Legnica, 11 września 2001.

.

Metoda konstrukcji szyfrów blokowych korygujących manipulacje na kryptogramach

1



Wyszukiwarka

Podobne podstrony:
referat c ko 9ccielny VOAXZ6IFKBBH6WPV4OZ4WQU6DSBUH6YUN4PXWJQ
ko
Referat Inżynieria Produkcji Rolniczej
referat solidy
statystyka referat MPrzybyl
referat 4
Referat 3 v3
Referat 4
7) Laboratoria EMG i MMG na pziomach sily i ko
OM z 04 2013 05 02 ko
instrukcja bhp na stanowisku ko Nieznany
04 referat Pieprzyk szczelność powietrzna
e 12 2015 08 02 ko
Prywatne znaczy gorsze referat a krol 0
instrukcja bhp na stanowisku ko Nieznany (3)
referat z biochemi, notatki

więcej podobnych podstron