background image

 
Bezpieczeństwo i ochrona danych 

dr Andrzej Bobyk 
 

BEZPIECZEŃSTWO I OCHRONA DANYCH 

 
LITERATURA: 
1.  Edward Amorozo „Sieci: wykrywanie intruzów”, RM, W-wa 1999 
2. „Elementarz kryptologii”, 

http://www.enigma.com.pl/publikacjie/EL.ARJ

 

3. Kutyłowski, Strothman „Kryptologia”, ReadMe, W-wa 1999 
4.  Garfinkel, Spafford „Bezpieczeństwo w Unixie i Internecie”, 
RM, W-wa 1997 
5.  W. Stallings „Ochrona danych w sieci”, WNT, W-wa 19997 
6.  D. Ferbacle „Patologia wirusów komputerowych”, WNT, W-wa 1999 
 
 
 

BEZPIECZEŃSTWO KOMPUTEROWE 

 
1.  Komputer jest bezpieczny, jeżeli użytkownik może na nim polegać, a zainstalowane oprogramowanie 

działa zgodnie ze stawianymi mu oczekiwaniami. 

2.  Zbiór technicznych rozwiązań nietechnicznych problemów. 
 
Żeby móc powiedzieć,  że nasz system jest bezpieczny należy stworzyć struktury bezpieczeństwa, który 
tworzy się w etapach: 
1. planowanie 
2. ocena ryzyka 
3.  analiza kosztów i zysków 
4.  tworzenie strategii odpowiadającej konkretnym potrzebom 
5. implementacja (wdrażanie) 
6.  audyt i reagowanie na incydenty. 
 
Praktyczne stworzenie struktur bezpieczeństwa to kwestia zarządzania i administracji, co powinno być 
priorytetowe dla zarządzających. 
 
Zasady efektywnej strategii planowania bezpieczeństwa: 
1.  Świadomość strategii i bezpieczeństwa musi spływać z góry na dół w hierarchii organizacji tzn. zarząd 

organizacji powinien traktować bezpieczeństwo jako coś ważnego. 

2. Efektywne bezpieczeństwo komputerowe oznacza ochronę danych tzn. wszelkie informacje powinny być 

chronione bez względu, na jakim nośniku są zgromadzone. 

 
 
Kategorie bezpieczeństwa (usługi związane z ochroną informacji): 
1.  Poufność – ochrona informacji przed odczytem przez osoby nie upoważnione. 
 Formy 

złamania tej kategorii: 

• 

drukowanie 

• 

wyświetlanie 

• 

ujawnienie istnienia jakiegoś obiektu 

2.  Uwierzytelnianie – poprawne określenie pochodzenia informacji z zapewnieniem autentyczności źródła. 
3.  Spójność (nienaruszalność) – ochrona informacji przed nieautoryzowanymi zmianami. 

Formy ataku: 

• 

pisanie 

• 

zmiany stanu 

• 

kasowanie 

• 

tworzenie 

• 

opóźnianie 

4.  Dostępność (dyspozycyjność) – ochrona świadczonych usług przed zniekształceniem i uszkodzeniem. 

Usługa ta polega na zapewnieniu uprawnionym osobom możliwości korzystania z systemu w dowolnej 
chwili. 

background image

 
Bezpieczeństwo i ochrona danych 

5.  Niezaprzeczalność  – uniemożliwienie nadawcy i odbiorcy informacji zaprzeczenia faktowi jej 

przysłania. 

6.  Prawidłowość – zapewnienie pracy systemu zgodnie z oczekiwaniami. 
7.  Kontrola dostępu  (sterowanie) – regulowanie dostępu do systemu określonym osobo, w określonym 

czasie i do określonych zasobów. 

8.  Audyt  – zapewnienie niepodatnego na zniszczenia i uszkodzenie zapisu zdarzeń systemu. Może on 

przyjąć formę np. pliku, wydruku itp. 

 
W różnych  środowiskach są różne priorytety korzystania z kategorii bezpieczeństwa. W wojsku na 
pierwszym miejscu będzie poufność, a potem dostępność. Natomiast na wyższej uczelni ważniejsza jest 
spójność (integralność) danych oraz dostępność, mniej ważne jest sterowanie lub audyt. W bankach na 
pierwszym miejscu będzie audyt, poufność, ale mniej ważna jest dostępność. 
 
Usługi: 
1.  Integralność zawartości – usługa ta zapewnia możliwość sprawdzenia czy przesyłane dane nie uległy 

zmodyfikowaniu w czasie transmisji. 

2.  Integralność sekwencji – chroni przed przechwyceniem i opóźnionym przesłaniem wiadomości, zmianą 

kolejności wiadomości oraz przed powieleniem, dodaniem lub usunięciem wiadomości. 

3.  Uwierzytelnienie nadawcy – możliwość sprawdzenia czy nadawca wiadomości jest tym użytkownikiem 

systemu, za którego się podaje. 

4.  Poufność zawartości – uniemożliwienie odczytania przesyłanych danych przez inną osobę niż właściwy 

odbiorca informacji. 

5.  Niezaprzeczalność nadania wiadomości – ochrona odbiorcy komunikatu przez nadawcę faktu wysłania 

wiadomości. 

6.  Niezaprzeczalność nadania wiadomości - ochrona nadawcy komunikatu przez odbiorcę faktu wysłania 

wiadomości. 

 
Istnieją usługi, które zawierają w sobie inne usługi np.: 
 

NIEZAPRZECZALNOŚĆ NADANIA 

 

UWIERZYTELNIANIE NADAWCY 

 

INTEGRALNOŚĆ ZAWARTOŚCI 

 
 
 

KATEGORIE ZAGROŻEŃ 

 
Ocena ryzyka (szacowanie ryzyka): 
 
1.  Określanie zasobów – odpowiedź na pytanie: „Co chronić?” 
 

Należy sporządzić listę elementów chronionych tzn. zarówno środków materialnych (np. dyski), jak i 
niematerialnych (np. wizerunek firmy). 
 
MATERIALNE:  

• 

komputery 

• 

dane o charakterze strategicznym 

• 

kopie zapasowe i archiwa 

• 

podręczniki i książki 

• 

wydruki 

• 

nośniki z komercyjnym oprogramowaniem 

• 

urządzenia i okablowanie komunikacyjne 

• 

dane osobowe 

• 

dane audytu 

background image

 
Bezpieczeństwo i ochrona danych 

 
 NIEMATERIALNE: 

• 

bezpieczeństwo i zdrowie pracowników 

• 

prywatność użytkowników 

• 

hasła pracowników 

• 

wizerunek publiczny i reputacja firny 

• 

dobre imię klientów 

• 

zdolności produkcyjne lub do prowadzenia usług tzn. zdolność funkcjonowania firmy 

• 

dane konfiguracyjne 

 
2.  Identyfikowanie zagrożeń - odpowiedź na pytanie: „Przed czym chronić?” 
 

• 

O charakterze środowiskowym tzn. powódź, pożar, wyładowania atmosferyczne i inne, ale też np. 

kurz, dym, szkodniki (np. szczury) 

• 

Zagrożenia związane z pracownikami lub osobami z zewnątrz. 

• 

Awarie systemów, programowe, sieciowe. 

• 

Celowe lub bezmyślne zniszczenie. 

 
 Również: 

• 

Choroby ważnych osób np. administratora 

• 

Choroba wielu pracowników 

• 

Utrata mediów np. telefoniczna sieć 

• 

Zwolnienie się pracowników 

• 

Błędy w programach 

• 

Złośliwość rzeczy martwych 

• 

Przypadkowi włamywacze 

• 

Próby anarchistów itp. 

 
3.  Wyznaczanie wymiaru zagrożeń  (wyliczanie ryzyka) - odpowiedź na pytanie: „Ile czasu, wysiłku i 

pieniędzy można i trzeba poświęcić, aby zapewnić sobie należną ochronę?”. 
Wymiar ryzyka określa się w wymiarze rocznym, Dane takie można uzyskać np. od firm 
ubezpieczeniowych, na podstawie własnych danych itp. Informacje takie należy regularnie weryfikować. 

 
4.  Analiza kosztów i zysków. 

Analizujemy koszty strat oraz koszty prewencji. Każdemu zagrożeniu przypisujemy koszty strat. Ważne 
jest do jakiej kategorii te zagrożenia przypiszemy np. 500 – 1000 zł lub nienaprawialne. 
Należy również analizować w kategorii płynnej tzn. np. niedostępność przez długi lub krótki czas. Koszty 
te odpowiednio przemnażamy przez prawdopodobieństwo wystąpienia ich w stosunku rocznym.  
Z drugiej strony należy przeanalizować koszty prewencji i na podstawie takiego bilansu analizujemy 
zyski i straty. 

 

Przykład 1. 
Chcemy obronić się przed wyłączeniem zasilania dłuższego niż kilka sekund. Szacujemy 
prawdopodobieństwo w skali rocznej. 
 
Straty
p=0,5%   prawdopodobieństwo wyłączenia 
25000,-   straty wynikające z niemożności wykonywania pracy. 
10000,-    koszty pracy personelu sprawdzającego  
    poprawność działania systemu 
 
(25000+10000)*0,5%=175 zł 
 
Koszty prewencji: 
15000,-    zakup UPS 
  1500,-    koszt roczny działania  UPS (jeżeli będzie działał 10 lat: 15000/10) 

background image

 
Bezpieczeństwo i ochrona danych 

 
Odpowiedź: 
Koszty prewencji są większe niż strat (1500>175) 
 
 
Przykład 2. 
Zagrożeniem jest utrata (wyjawienie) haseł pracowników. 
 
Straty: 
1.000.000,-            koszt 
            50           ilość osób pracujących 
 
p

1

=2%              jedna osoba w ciągu roku zdradza hasło 

p’

1

=987%    prawdopodobieństwo, że 1 osoba nie wyjawi hasła 

p’=(0,98)

50

           prawdopodobieństwo, że żadna osoba nie wyjawi hasła 

p=1-(0,98)

50

=63,6% prawdopodobieństwo wyjawienia hasła przez którąkolwiek  

                  osobę w ciągu roku 
 
63,6%*1.000.000 = 636.000,- 
 
Prewencja: 
75,-      instalacja programu na jednorazowe hasło na osobę 
20.000,-   zakup oprogramowania, które będzie działało 5 lat 
 
75*50=3.750,- 
3.750+20.000=23.750,- 
 
23.750:5 = 4.750,- 
 
Odpowiedź: 
Bardziej opłaca się prewencja (4.750<636.000). 

 
5.  Strategia bezpieczeństwa. 

Strategia pomaga określić  to  co  jest  wartościowe i jakie kroki należy podjąć w celu ochrony tych 
wartości. 

 
  Zadania strategii bezpieczeństwa: 

a. Wyjaśnia co ma być chronione i dlaczego. 
b. Wyznacza odpowiedzialność za ochronę. 
c. Zapewnia grunt do interpretacji sporów i analizy zdarzeń. 

 

Strategia powinna być ogólna i zwięzła tzn. nie powinno się zamieszczać np. list osób, komputerów itp. 
Mówi się np., że: „za przechowywaną informację jest odpowiedzialny główny szef informacji” – 
wymienia się stanowisko, ale nie ma nazwiska. 

 
6.  Normy bezpieczeństwa. 

Mają kodyfikować, służyć do określania kryteriów jakie muszą być spełnione przez mechanizmy, których 
dotyczą. Mówi się np., że: „kopie zapasowe całego systemu będą sporządzane regularnie, każdego 
tygodnia
”. Norma nie wskazuje mechanizmów, ale jest bardziej szczegółowa niż strategia. 

 
7.  Procedury. 

Służą do interpretacji norm dla konkretnego środowiska. Mogą być łamane o ile celem tego złamania jest 
spełnienie normy, która jest nadrzędna. Mówi się np., że: „kopie zapasowe całego systemu UNIX powinny 
być wykonywane za pomocą programu DUMP”; „Dane zapisane na nośnikach powinny zostać odczytane 
w celu ich weryfikacji”

background image

 
Bezpieczeństwo i ochrona danych 

Reguły: 
1. Przypisywanie 

właściciela – wszelkie informacje, urządzenia, aby były właściwie chronione muszą mieć 

właściciela. 

2.  Pozytywne nastawienie – wszelkie normy itp. Formułować należy w sposób pozytywny. 
3. Pracownicy to też ludzie – w wypadku popełnienia błędu nie należy „palić go na stosie” – tylko 

wytłumaczyć skutki. 

4.  Nacisk na edukację – regularne szkolenia oraz doraźne, gdy pojawia się nowe oprogramowanie. 
5. Władza proporcjonalna do odpowiedzialności. 
6.  Wybór prostej filozofii: 

a. liberalnej – wszystko co nie jest zabronione jest dozwolone 
b. konserwatywnej – wszystko co jest niedozwolone – jest zabronione. 

7.  Zasada ochrony w głąb – wielopoziomowe zabezpieczenia. 
 
 
Problem bezpieczeństwa przez ukrywanie 
Każdy użytkownik posiada swą część wiedzy, która potrzebna jest mu do pracy (np. w wojsku). Ukrywanie 
informacji nie jest dobrym sposobem ochrony, gdyż zawsze znajdzie się osoba, która metodą analizy 
znajdzie te informacje i ich słabe strony. 
 
 
Ataki na przepływającą informację: 

• 

Pasywne 

PASYWNE 

 
 
 

PRZECHWYCENIE 

(POUFNOŚĆ) 

 
 

ODKRYCIE TREŚCI                         ANALIZA PRZESYŁU 

   KOMUNIKATU                         tzn. ODKRYCIE SAMEGO  

          FAKTU PRZESYŁU 

 
 

• 

Aktywne: 
a. Przerwanie 

(dyspozycyjność) 

b. Modyfikacja 

(nienaruszalność) 

c. Podrobienie 

(autentyczność) 

 
 
A – nadawca  
B – odbiorca 
C – osoba niepowołana 
 

Normalny przepływ informacji. 

 
 

Przerwanie. 

 

A

B

A

B

background image

 
Bezpieczeństwo i ochrona danych 

 

Przechwycenie. 

 
 

Modyfikacja 

 
 

Podrobienie (np. wirusy, konie trojańskie). 

 
 
 

ZAGROŻENIA SYSTEMU 

 
„Orange book” wydana przez Amerykański Departament Stanu
 
Poziomy bezpieczeństwa systemów komputerowych

1.  D1 – określa całkowity brak wiarygodności systemu. Do klasy tej należą systemy pozornie bezpieczne 

np. Windows (hasło). 

2.  C1 – najniższy poziom bezpieczeństwa, gdzie jest zapewniony odpowiedni poziom autoryzacji 

użytkowników (odczyt, zapis plików). 
System taki nie ma zazwyczaj administratora. Cechą tego poziomu jest również brak mechanizmów 
rejestracji zdarzeń. 

3.  C2 – automatyczna rejestracja zdarzeń. 
4.  B1 – obsługuje bezpieczeństwo na różnych poziomach, zawiera mechanizmy uznaniowej kontroli 

zasobów tzn., że np. właściciel zasobów może nie mieć praw udostępniania ich innym. 

5.  B2 – wprowadzono „etykiety bezpieczeństwa” przypisane każdemu obiektowi systemu (ludzie, drukarki, 

itp.). Etykiety te mogą zmieniać się dynamicznie. 

6.  B3 – bezwzględna ochrona przesyłanej i przechowywanej informacji (np. tak, aby nikt nie mógł 

podsłuchać klawiatury, odczytać ekranu,…). 

7.  A1 – najwyższy poziom. Wprowadzono certyfikację – cała konfiguracja sprzętowo – systemowa 

wymaga matematycznej weryfikacji. Sprzęt i oprogramowanie wymaga specjalnej ochrony w czasie 
transportu. 

A

B

C

A

B

C

A

B

C

background image

 
Bezpieczeństwo i ochrona danych 

POUFNOŚĆ INFORMACJI 

 
Szyfrowanie – ukrycie treści komunikatu tak, by nie był zrozumiały dla osób postronnych. 
 

)

X

(

E

Y

Ks

=

 

 
X – teks jawny 
Y – tekst zaszyfrowany (kryptogram, szyfrogram) 
E – algorytm szyfrujący 
Ks – klucz (parametr mówiący o sposobie przeprowadzenia szyfrowania), jego tajność oznacza 
bezpieczeństwo. 
 
 
Tworzeniem algorytmów szyfrowania zajmuje się kryptografia. 
Nauka, o tym, jak z tekstu zaszyfrowanego uzyskać tekst jawny nazywa się kryptoanalizą. 
 
 
Deszyfrowanie. 
 

)

Y

(

D

X

Kd

=

 

 
D – algorytm deszyfrujący 
Kd – klucz deszyfrujący (nie musi być taki sam jak klucz szyfrujący) 
 

 
Jeżeli nie mamy klucza deszyfrującego pozostaje tylko kryptoanaliza. 
 
 
Kryteria podziału systemów kryptograficznych. 
1. Liczba 

używanych kluczy: 

• 

szyfrowanie symetryczne – klucze szyfrowania i deszyfrowania są identyczne 

• 

szyfrowanie asymetryczne – klucze szyfrowania i deszyfrowania są różne 

2.  Rodzaj operacji używanych do przekształcenia tekstu: 

• 

szyfry podstawieniowe – zamieniają symbole tekstu jawnego na inne symbole 

• 

szyfry przestawieniowe – przestawienia symboli w obrębie tekstu jawnego 

• 

szyfry podstawieniowo – przestawieniowe – (kaskadowe, produktowe, iloczynowe) – na przemian 
dokonują podstawień i przestawień 

3. Sposób 

przekształcania tekstu jawnego: 

• 

może przekształcać bloki informacji 

• 

może przekształcać informacje na bieżąco – szyfr strumieniowy 

A

B

E

E

X

X

Y

K

S

K

D

background image

 
Bezpieczeństwo i ochrona danych 

I. 

SCHEMAT BEZWARUNKOWO BEZPIECZNY 

 
Algorytm jest bezwarunkowo bezpieczny, jeżeli generowany przez niego tekst zaszyfrowany nie zawiera 
informacji w ilości wystarczającej do tego, aby jednoznacznie określić odpowiadający mu tekst jawny, 
niezależnie od ilości dostępnego tekstu zaszyfrowanego. 
 
Istnieje tylko jeden algorytm bezwarunkowo bezpieczny – algorytm bloczka jednorazowego (ang. one – time 
pad). Wadą tego algorytmu jest, że klucz jest takiej samej długości jak szyfrowany tekst. 
Działa na zasadzie różnicy symetrycznej: 
 

k

x

y

a

symetryczn

 

róznica

    

...

1111001

y

klucz

   

1001101...

k

0110101...

x

klucz

 -

 

jawny;

 tekst 

-

          

x

y

)

y

x

(

ny

zaszyfrowa

 

tekst

=

=

=

=

=

4

4 3

4

4 2

1

 

 
II. 

SCHEMAT OBLICZENIOWO BEZPIECZNY 

 
Kryteria bezpieczeństwa: 
1. 

Czas potrzebny na złamanie szyfru (powinien być dużo większy niż czas „życia” informacji). 

2. Koszt 

złamania szyfru (powinien być dużo większy niż koszt informacji). 

 
**** 
Metoda brutalnego ataku polega na zastosowaniu wszystkich możliwych kluczy. Można ją zastosować, 
gdy jest sensowność tekstu. 
 
**** 
 

Rozmiar klucza 

Liczba możliwych kluczy  Czas (1/µs)  Czas (

s

/

10

6

µ

32 bity 

9

32

10

3

,

4

2

×

=

 

36 min. 

2 ms 

56 bitów 

16

56

10

2

,

7

2

×

=

 

1142 lata 

10 godz. 

128 bitów 

38

128

10

4

,

3

2

×

=

 

lat

 

10

4

,

5

24

×

 

lat

 

10

4

,

5

18

×

 

26 znaków (permutacja) 

26

10

4

1

!

26

×

=

 

lat

 

10

4

,

6

12

×

 

lat

 

10

4

,

6

6

×

 

 

background image

 
Bezpieczeństwo i ochrona danych 

Analiza częstości jest podstawową metodą łamania szyfrów podstawieniowych (np. szyfr Cezara). 
 
Tworzy się histogram częstości: 
 

litera

Pr

oc

en

t w

ys

po

w

an

ia

 d

an

ej

 li

te

ry

A

B

C

D

E

F

18%

17%

10%

15%

7%

2%

................

 

 
Możemy wiedzieć lub przypuszczać, w jakim języku został napisany tekst i jakiej dotyczy dziedziny. 

background image

 
Bezpieczeństwo i ochrona danych 

10 

SYSTEMY SZYFROWANIA 

 
I. 

Klasyczne techniki szyfrowania. 

 
1. 

STEGANOGRAFIA – ukrywana jest nie tyle treść tekstu, lecz sam fakt istnienia tego tekstu (np. 
pisanie atramentem sympatycznym; nakłucia szpilką pod literami w książce; znaki napisane za 
pomocą taśmy korekcyjnej). 

 
2.  TECHNIKI PODSTAWIENIOWE – symbolom tekstu jawnego przypisujemy symbole tekstu 

szyfrowanego. 

)

x

(

E

y

x

)

X

(

E

Y

a

szyfrowani

 

oces

Pr

k

y

j

x

nego

zaszyfrowa

 tekstu 

znaków

 

ciąg

 -

  

}

y

,...,

y

,

y

,

y

{

Y

jawnego

 tekstu 

znaków

 

ciąg

 -

  

}

x

,...,

x

,

x

,

x

{

X

nego

zaszyfrowa

kstu 

alfabet te

 -

k  

jawnego

kstu 

alfabet te

 -

  

j

i

k

i

i

k

i

i

n

3

2

1

n

3

2

1

=

=

=

=

 

 

3. 

SZYFRY JEDNOALFABETOWE (monoalfabetyczne) – ilość symboli tekstu jawnego jest taka sama 
jak ilość znaków alfabetu zaszyfrowanego. 
 
Np. szyfr Cezara: 

 

26

mod

)

k

x

(

y

  x

:

Cezara

 

szyfr typu

:

czyli

3)mod26

-

(y

D(y)

ca

deszyfrują

 

funkcja

 -

        

          

)

Y

(

D

X

szyfrująca

 

funkcja

 -

  

26

mod

)

3

x

(

)

X

(

E

26

mod

)

3

x

(

y

x

i

i

i

k

i

i

i

+

=

=

=

+

=

+

=

 

 
SZYFR PODSTAWIENIOWY: 
 

)

X

(

E

y

x

i

i

Π

=

=

Π

 

Π(X) – permutacja zbioru 26 – cio elementowego 

 
Kluczem podstawienia jest „Π” 
 

pierwotna

 

permutacja

 -

  

 

          

)

y

(

)

y

(

D

x

-1

i

1

i

i

Π

Π

=

=

Π

 

background image

 
Bezpieczeństwo i ochrona danych 

11 

Ażeby uniemożliwić analizę częstości liter stosuje się szyfry: 
 
1.  Homofoniczne – stosuje się różne podstawienia dla jednej litery, np: 

A → 13, 26, 18, 7, 15, 3 
Q → 9 
Symbole te (cyfry) to homofony tzn. jednej literze tekstu jawnego odpowiada zbiór znaków. 
Jeżeli liczba homofonów będzie proporcjonalna do częstości liter wówczas rozkład częstości będzie 
„płaski”, np.: 
A → 13, 26, 18, 7, 15, 3 
M → 12, 8 
K →  9 
C → 11 
L → 5 
Tekst jawny: ALA MA KACA 
Tekst zaszyfrowany: 13, 5, 26, 12, 18, 9, 7, 11, 15 
Szyfry homofoniczne wyższych stopni – każdej literze przypisuje się więcej niż jeden zbiór homofonów. 

2. Wieloalfabetowe 

(polialfabetyczne) 

- szyfr 

Cezara 

 

26

mod

)

k

x

(

y

i

i

i

+

=

 

-  szyfr Vigenere’a – polega na tym, że pod tekstem jawnym podpisuje się klucz i oblicza przesunięcie 

pozycji 

T E K  S  T    J  A W N Y 
K L U C Z    K  L  U C  Z 

-  Inny szyfr wykorzystano w maszynie ENIGMA 

A

B

C
D

Y

Z

A

B
C

D

Y
Z

żarówki

styki (26)

klawisze

 

Po każdym naciśnięciu litery następuje obrót walca o 1/26, co powodowało, że powstało 

3

26

 alfabetów. 

 

3.  Poligramowe (wieloalfabetowe) – szyfrujemy nie pojedyncze litery, lecz ich grupy. 

-  szyfr Playfair’a – szyfruje pary liter 

Tworzymy tabelę 5 na 5 i wpisujemy słowo (pomijając litery powtarzające się), które będzie kluczem 
i uzupełniamy pozostałymi literami alfabetu. 

background image

 
Bezpieczeństwo i ochrona danych 

12 

KAKOFONIA 
 

I/J B C D E 

G H L M P 

Q R S T U 

V W X  Y  Z 

 
TE|KS|TX|TA|JN|YX  

jeżeli liczba znaków jest nieparzysta, wstawiamy na koniec X 

UD|OQ|SY|RF|EK|FO 
 

background image

 
Bezpieczeństwo i ochrona danych 

13 

Algorytm DES 

 
DES (Data Encryption Standard) – jest to standard szyfrowania w USA, zaakceptowany w 1977 r., 
zaproponowany przez NBS (obecnie NIST). 
 
Pod koniec lat 60 – tych IBM stworzył projekt badawczy, który w 1971 roku zaowocował szyfrem 
LUCIFER (działał na 64 bitowych blokach danych i 128 bitowy klucz). Klucz był zbyt długi by zamieścić 
go na ówczesnych układach scalonych i zmniejszono go do 52 bitów.  W 1973 roku szyfr ten wygrał konkurs 
w USA i został zaakceptowany. Jest to szyfr kaskadowy (podstawienia i przestawienia na przemian). 
 
Szyfr ten jest użytkowany od 1973 roku: 
1. zmniejszenie 

długości klucza (128 → 52) osłabia jego moc 

2.  jest osiem tzw. „S – BOX” – ów, a szczegóły ich konstrukcji są tajne, co nasuwa podejrzenie, że NBS 

pozostawiło sobie furtkę do łamania szyfru bez konieczności użycia klucza. 

 
 
Szczegóły konstrukcji „S – BOX”- ów. 
1.  Jest osiem „S – BOX” – ów, są to macierze o 4 wierszach i 16 kolumnach. 
2. Każdy wiersz zawiera liczby od 0 do 15. 
3.  Żaden z wierszy nie jest podobny do pozostałych i nie jest liniową kombinacją. 
 
 

S

1

 

 

 0 1 2 3 4 5 6 7 8 9 10 

11 

12 

13 

14 

15 

14 4 13 

1 2 15 

11 8  3 10 6 12 5 9 0 7 

1 0 15 7  4 14 2 13 

10 6 12 

11 9 5 3 8 

2 4 1 

14 8 13 6  2 11 

15 

12 

9 7 3 10 5  0 

15 

12 8  2  4  9  1 7 5 11 3 14 

10 0  6 13 

 
S – BOX jest funkcją, która pobiera 6 bitów i wydaje 4 bity. 
S(6 bitów) → 4 bity 
 
Przykład. 
Mamy liczbę 110010. Bity skrajne dają numer wiersza; bity środkowe dają numer kolumny. 

}

10

2

S

2

10

||

9

12

1100

0

1001

1

1

10

2

=

→

=

3

2

1

 

Funkcja ta jest jednokierunkowa, tzn. nie ma dla niej funkcji odwrotnej. 
 
 
Szyfrowanie DES składa się z 16 rund (operacji) oraz funkcji końcowej. 
Efektywna długość klucza wynosi 56 bitów, zaś na wejściu wymaga 64 bity, z których co ósmy jest 
zerowany. 

background image

 
Bezpieczeństwo i ochrona danych 

14 

Schemat działania algorytmu 
Na wejściu mamy 64 bitowy tekst jawny. 

 

x = 64 bitowy tekst jawny

0

1

63

0

1

63

y = 64 bitowy tekst zaszyfrowany

k = 64 bitowy klucz

0

1

63

PC2

K

48

16

PC2

PC2

K

48

2

K

48

1

64

64

56

56

56

cykliczne przesunięcie w lewo

cykliczne przesunięcie w lewo

cykliczne przesunięcie w lewo

PC1

IP

iteracja 16

iteracja 2

iteracja 1

zamiana bloków 32 bitowych

IP - 1

background image

 
Bezpieczeństwo i ochrona danych 

15 

Pojedyncza iteracja DES – a. 
 
Działa na 32 bitowych połówkach bloków: 

- lewa 

L

i – 1

 – dane wyjściowe poprzedniej iteracji 

- prawa 

R

i – 1

 – dane, które są jednocześnie wejściowymi dla następnej 

-  E – permutacja z rozszerzeniem 
-  XOR – różnica symetryczna 
- k

i

 – klucz 

-  S – S – BOX – y 
-  PC2 – permutacja z wyborem 

 

 
 
 
 
 
 
 
 
 
 
 
 
 

L

i-1

R

i-1

P

R

i

L

i

D

i

C

i

C

i-1

D

i-1

XOR

XOR

S

E

32

48

48

32

32

32

32 bity

PC2

28 bity

28 bity

28

28

28

28

48

32

32

f(R , k )

i-1

i

k

i

S

1

S

2

S

3

S

8

6 * 8 = 48

4 * 8 = 32

background image

 
Bezpieczeństwo i ochrona danych 

16 

SZYFROWANIE 

=

=

)

k

,

R

(

f

L

:

R

R

:

L

i

1

i

1

i

i

1

i

i

 

DESZYFROWANIE 

1

-

i

1

-

i

i

i

R

 ,

L

  

:

Szukane

R

 ,

L

  

:

Dane

 

 
RÓŻNICA SYMETRYCZNA XOR 

z)

(y

x

z

y)

(x

  

3.

x

0

  x

2.

0

y

  x

.

1

=

=

=

 

 
ZATEM 

1

i

i

L

0

1

i

i

1

i

i

i

1

i

1

i

i

L

f

R

)

f

f

(

L

f

R

3

 

z

 

c

korzystają

   

f

)

f

L

(

f

R

f

|

    

)

k

,

R

(

f

L

R

1

i

=

=

=

+

=

4

4 3

4

4 2

1

3

2

1

 

 
WIĘC DESZYFRUJĄC 

)

k

,

L

(

f

R

:

L

L

:

R

i

1

i

i

1

i

1

i

1

i

=

=

 

 
 
Cechy algorytmu DES 
 
EFEKT LAWINOWY 
Zmiana jednego bitu na wejściu powoduje zmianę >1 na wyjściu 
 
 
W 1993 roku opracowano koszt budowy maszyny, która znajdzie 52 bitowy klucz 
 

Koszt ($) 

Czas 

    100.000 35 

godzin 

  1.000.000 3,5 

godziny 

10.000.000 21 minut 

 
Dlatego zaproponowano proste udoskonalenie DES → 3DES (potrójny DES) 
 

Z

z

y

x

k

k

bitów

 

112

 

 

bitów

 

56

2

k

1

k

2

k

1

k

E

D

E

2

1

→

→

→

=

×

=

 

 
k – klucz 
E – szyfrowanie 
D – deszyfrowanie 
 
 

background image

 
Bezpieczeństwo i ochrona danych 

17 

Szyfrowanie blokowe 
 
1.  Tryb ECB (Electronic Code Book) – tekst jest dzielony na 64 bitowe bloki i niezależnie szyfrowany 

kluczem k. 

 

Szyfrowanie 

 
 
Deszyfrowanie 

 

Wady: 
- brak 

odporności na atak typu powtórka, zamiana, podmiana bloków → trzeba stosować dodatkowe 

zabezpieczenia 

- powtarzający się tekst jest tak samo szyfrowany 

 
2.  Tryb CBC – jeżeli pojawia się taki sam blok danych, wówczas jest on szyfrowany inaczej. 

 
Szyfrowanie 

 
IV – wektor początkowy 

DES

x

1

y

1

64

64

x

2

y

2

64

64

x

3

y

3

64

64

64

64

64

64

64

64

X

k

Y

DES

DES

DES

x

1

y

1

64

64

x

2

y

2

64

64

x

3

y

3

64

64

64

64

64

64

64

64

X

k

Y

-1

DES

-1

DES

-1

DES

x

1

y

1

64

64

x

2

y

2

64

64

x

3

y

3

64

64

64

64

64

64

64

X

k

Y

DES

DES

XOR

XOR

XOR

IV

64

64

64

64

64

background image

 
Bezpieczeństwo i ochrona danych 

18 

Deszyfrowanie 

 
Wadą jest, że zmiana jednego bloku wymusza potrzebę ponownego szyfrowania reszty bloków. 
 
 
ALGORYTMY STRUMIENIOWE 

 
3.  Tryb CFB (Clipher Feed Back) – tryb ze sprzężeniem zwrotnym 

 
Szyfrowanie 

 
RP – rejestr przesuwający 
n – n bitów 
 
Deszyfrowanie (odwracamy tylko kierunek strzałek na dole) 

 
Algorytm ten nie jest odporny na zniszczenie pierwszego bloku danych (dlatego stosuje się 4 tryb OFB). 

DES

x

1

y

1

64

64

x

2

y

2

64

64

x

3

y

3

64

64

64

64

64

64

64

64

X

k

Y

-1

DES

-1

DES

-1

XOR

XOR

XOR

IV

64

IV

64

RP

64

64

DES

k

64 - n

n

kosz

n

XOR

n

x

1

n

RP

64

DES

kosz

64 - n

n

kosz

n

XOR

n

x

2

n

64

n

y

1

n

y

2

n

n

n

n

n

64

XOR

x

1

n

y

1

n

n

n

background image

 
Bezpieczeństwo i ochrona danych 

19 

4.  Tryb OFB – tryb ze sprzężeniem zwrotnym wyjściowym 

 
 
**** 
 
IDEA (International Data Encrypcion Algoritm) 
 
Algorytm ten stworzona na początku lat 90 – tych, w Europie. Stosuje 128 bitowy klucz, co podnosi 
niezawodność tego algorytmu. 
64 bitowe bloki danych dzielone są na 4 bloki 16 bitowe podczas 8 rund. 

IV

64

RP

64

64

DES

k

64 - n

n

kosz

n

XOR

n

x

1

n

RP

64

DES

kosz

64 - n

n

kosz

n

XOR

n

x

2

n

64

n

y

1

n

y

2

n

n

n

n

n

64