dr inż. Marcin Markowski, Legnica 2007
O
CHRONA DANYCH W SYSTEMACH KOMPUTEROWYCH
dr inż. Marcin Markowski, Legnica 2007
P
ODSTAWOWE POJĘCIA
Atak na bezpieczeństwo to jakiekolwiek działanie, które narusza bezpieczeństwo
informacji należących do firm lub instytucji.
Mechanizm zabezpieczający przeznaczony jest do wykrywania, zapobiegania i
likwidowania skutków ataku.
Usługa ochrony to działanie zwiększające bezpieczeństwo systemów informatycznych
z użyciem mechanizmów zabezpieczających.
dr inż. Marcin Markowski, Legnica 2007
U
SŁUGI OCHRONY
• Poufność (ang. confidentiality). Usługa przekształca dane w taki sposób, że są one
niemożliwe do odczytania przez inną osobę poza właściwym odbiorcą.
• Uwierzytelnianie (ang. authentication). Usługa zapewnia możliwość sprawdzenia,
czy komunikujące się strony są rzeczywiście tymi, za których się podają.
• Integralność (ang. integrity). Usługa zapewnia, że dane zawarte w systemie lub
przesyłane przez sieć nie będą zmienione lub przekłamane.
• Niezaprzeczalność (ang. nonrepudiation). Dostarcza dowody, że dane przesyłane
zostały faktycznie nadane przez odbiorcę bądź też odebrane przez nadawcę.
dr inż. Marcin Markowski, Legnica 2007
U
SŁUGI OCHRONY
• Dystrybucja kluczy (ang. key management). Usługa ta zapewnia poprawną
dystrybucję kluczy oraz gwarantuje, że posiadane klucze są ważne.
• Kontrola dostępu (ang. access control). Zapewnieniu, że dostęp do informacji jest
kontrolowany - tylko uprawnieni użytkownicy mogą z nich korzystać.
• Dyspozycyjność (ang. availability). Usługa ta zapewnia uprawnionym osobom
możliwość ciągłego korzystania z zasobów systemu w dowolnym czasie.
dr inż. Marcin Markowski, Legnica 2007
A
TAKI NA BEZPIECZEŃSTWO
Przerwanie (interruption)
Przechwycenie (interception)
Modyfikacja (modification)
Podrobienie (fabrication)
dr inż. Marcin Markowski, Legnica 2007
A
TAKI NA BEZPIECZEŃSTWO
• Pasywne
Przechwycenie (poufność)
→ Odkrycie treści komunikatu
→
Analiza przesyłu
• Aktywne
Przerwanie (dyspozycyjność)
Modyfikacja (nienaruszalność)
Podrobienie (nienaruszalność)
dr inż. Marcin Markowski, Legnica 2007
M
ODEL OCHRONY DANYCH W SIECI KOMPUTEROWEJ
Kanał informacyjny
Przetworzenie
o charakterze
ochronnym
Przetworzenie
o charakterze
ochronnym
intruz
Zaufana strona trzecia
dr inż. Marcin Markowski, Legnica 2007
M
ODEL OBRONY DOSTĘPU DO SIECI KOMPUTEROWEJ
Kanał dostępu
Intruz
Człowiek (np. haker)
Program (np. wirus)
Funkcja
Bramkująca
System Informatyczny
Zasoby obliczeniowe, dane,
procesy, oprogramowanie
dr inż. Marcin Markowski, Legnica 2007
S
ZYFROWANIE
D
ANYCH
Kryptologia to nauka o pismach szyfrowanych, sposobach ich tworzenia i
rozwiązywania. W jej skład wchodzą:
Kryptografia zajmuje się zapisywaniem tekstu w sposób utajniony. Szyfrowanie
to zamiana tekstu jawnego na kryptogram. Deszyfrowaniem nazywamy operację
odwrotną.
Kryptoanaliza zajmuje się zagadnieniami związanymi z łamaniem szyfru, czyli
próbą znalezienia klucza szyfru lub odczytaniu tekstu jawnego na podstawie
kryptogramu, bez znajomości klucza.
Systemy kryptograficzne opisują sposób realizacji usług w sieci
teleinformatycznej przy użyciu technik kryptograficznych.
dr inż. Marcin Markowski, Legnica 2007
R
ODZAJE SYSTEMÓW KRYPTOGRAFICZNYCH
Systemy kryptograficzne rozróżniamy używając trzech niezależnych kryteriów:
• Rodzaj operacji stosowanej do przekształcenia tekstu jawnego w tekst
zaszyfrowany:
Metoda podstawienia zakłada, że każdy element tekstu jawnego (bit, znak,
litera) jest odwzorowywany na inny element.
Metoda transpozycji zakłada przestawienie kolejności elementów tekstu
jawnego.
Podstawowy wymogi to brak straty informacji i odwracalność każdej operacji.
Większość systemów, zwanych systemami produktowymi (ang. product systems)
przewiduje wiele etapów podstawiania i transponowania.
dr inż. Marcin Markowski, Legnica 2007
R
ODZAJE SYSTEMÓW KRYPTOGRAFICZNYCH
• Liczba używanych kluczy. Rozróżniamy szyfrowanie z jednym kluczem
(konwencjonalne, symetryczne, z tajnym kluczem) i szyfrowanie z dwoma
kluczami (asymetryczne, z kluczem jawnym).
• Sposób przetwarzania tekstu jawnego:
Szyfr blokowy przetwarza po kolei każdy blok tekstu wejściowego, produkując
jeden blok wyjściowy na każdy blok wejściowy.
Szyfr strumieniowy przetwarza elementy wejściowe w sposób ciągły, produkując
jednocześnie materiał wyjściowy.
dr inż. Marcin Markowski, Legnica 2007
S
POSOBY KRYPTOANALIZY
Metoda łamania
szyfru
Znane kryptoanalitykowi
Tylko tekst
zaszyfrowany
Algorytm szyfrujący
Tekst zaszyfrowany do zdekodowania
Znany tekst jawny
Algorytm szyfrujący
Tekst zaszyfrowany do zdekodowania
Jedna lub więcej par tekst jawny-tekst
zaszyfrowany utworzonych przy użyciu
tajnego klucza
Wybrany tekst jawny Algorytm szyfrujący
Tekst zaszyfrowany do zdekodowania
Wybrany komunikat w postaci jawnej
wraz z odpowiadającym mu tekstem
zaszyfrowanym wygenerowanym przy
użyciu tajnego klucza
dr inż. Marcin Markowski, Legnica 2007
B
EZPIECZEŃSTWO SYSTEMÓW KRYPTOGRAFICZNYCH
Schemat szyfrujący jest bezwarunkowo bezpieczny, jeżeli generowany tekst
zaszyfrowany nie zawiera wystarczająco dużo informacji, by jednoznacznie określić
odpowiadający mu tekst jawny, niezależnie od ilości dostępnego tekstu
zaszyfrowanego.
Schemat szyfrujący jest obliczeniowo bezpieczny, jeżeli koszt złamania szyfru
przewyższa wartość informacji zaszyfrowanej oraz/lub czas potrzebny do złamania
szyfru przekracza użyteczny „czas życia” informacji.
dr inż. Marcin Markowski, Legnica 2007
L
ITERATURA
• W. Stallings, Ochrona danych w sieci i intersieci, WNT, Warszawa, 1997
• M. Strebe, Podstawy bezpieczeństwa sieci, Mikom, Warszawa, 2005
• J. Stokłosa, Ochrona danych i zabezpieczenia w systemach teleinformatycznych,
Wydawnictwo Politechniki Poznańskiej, Poznań, 2003
• R. Wobst, Kryptologia budowa i łamanie zabezpieczeń, RM, Warszawa, 2002
• D. Robling Denning, Kryptografia i ochrona danych, WNT, Warszawa, 1992
• M. Kaeo, Tworzenie bezpiecznych sieci, Mikom, Warszawa, 2000
• K. Lam, D. LeBlanc, B. Smith, Ocena bezpieczeństwa sieciowego, Microsoft
Press, 2004
dr inż. Marcin Markowski, Legnica 2007
S
ZYFROWANIE KONWENCJONALNE
Szyfrowanie konwencjonalne, nazywane również symetrycznym lub szyfrowaniem z
jednym kluczem to podstawowa metoda szyfrowania używana w informatyce.
dr inż. Marcin Markowski, Legnica 2007
U
PROSZCZONY MODEL SZYFROWANIA KONWENCJONALNEGO
Kanał informacyjny
Algorytm
szyfrujący
Algorytm
deszyfrujący
Wspólny klucz
Tekst zaszyfrowany
Tekst
jawny
Tekst
jawny
dr inż. Marcin Markowski, Legnica 2007
M
ODEL SZYFROWANIA KONWENCJONALNEGO
Źródło
komunikatu
Szyfrator
Źródło
klucza
Bezpieczny kanał
Deszyfrator
Miejsce
przeznaczenia
Kryptoanalityk
X`
K`
X
Y
X
K
Szyfrator tworzy tekst zaszyfrowany Y=E
K
(X). Odbiorca posiadający klucz może
odwrócić przekształcenie X=D
K
(Y). Przeciwnik śledzący Y, ale pozbawiony dostępu
do X i K, próbuje odgadnąć hipotetyczny tekst jawny X` i hipotetyczny klucz K`.
Zakładamy, że zna on algorytm szyfrujący E i deszyfrujący D.
dr inż. Marcin Markowski, Legnica 2007
K
LASYCZNE TECHNIKI SZYFROWANIA
S
TEGANOGRAFIA
Metody steganograficzne służą do ukrycia faktu istnienia komunikatu, np.
zaznaczanie liter, atrament sympatyczny.
T
ECHNIKI PODSTAWIANIA
Polegają na zastępowaniu elementów (liter, bitów) tekstu jawnego innymi
elementami (literami, bitami).
T
ECHNIKI TRANSPOZYCYJNE
Polegają na permutacji (przestawieniu) liter (bitów) w tekście jawnym.
M
ASZYNY ROTOROWE
Maszyny zbudowane z obracających się niezależnie cylindrów (Enigma, Purple).
dr inż. Marcin Markowski, Legnica 2007
S
ZYFR
C
EZARA
polega na zastąpieniu każdej litery alfabetu literą znajdującą się o określoną liczbę
pozycji dalej, czyli (dla przesunięcia o 3 pozycje):
C = E(p) = (p+3) mod (26)
tekst jawny : szyfr juliusza cezara
tekst zaszyfrowany: VCBIU MXOLXVCD FHCDUD
Przesunięcie może mieć wielkość dowolną. Ogólna postać algorytmu:
C = E(p) = (p+k) mod (26), 0<k<26
Algorytm deszyfrujący ma postać:
p = D(C) = (C-k) mod (26)
Dla szyfru Cezara łatwo można przeprowadzić kryptoanalizę metodą brutalną
polegającą na wypróbowaniu 25 możliwych kluczy k.
dr inż. Marcin Markowski, Legnica 2007
S
ZYFRY JEDNOALFABETOWE
Przyporządkowanie liter dla szyfru Cezara to:
tekst jawny : abcdefghijklmnopqrstuvwxyz
tekst zaszyfrowany: DEFGHIJKLMNOPQRSTUVWZYZABC
Dla szyfrów jednoalfabetowych możemy zastosować jako szyfr dowolną permutację
26 znaków alfabetu. Oznacza to 26! = 4*10
26
możliwych kluczy, czyli można
wykluczyć próby rozszyfrowania metodą brutalną. Jednak, jeśli krypotanalityk zna
tekst zaszyfrowany i jego charakter (język tekstu jawnego), może on wykorzystać
regularności zawarte w języku. Dla każdego języka można określić względną
częstość występowania liter.
dr inż. Marcin Markowski, Legnica 2007
Poniższa tabela prezentuje procentową częstość względną występowania
poszczególnych liter w tekście angielskim.
Litera Częstość (%) Litera Częstość (%) Litera
Częstość (%)
E
12,75
L
3,75
W
1,50
T
9,25
H
3,50
V
1,50
R
8,50
C
3,50
B
1,25
N
7,75
F
3,00
K
0,50
I
7,75
U
3,00
X
0,50
O
7,50
M
2,75
Q
0,50
A
7,25
P
2,75
Z
0,25
D
4,25
G
2,00
Można również przeanalizować częstość występowania kombinacji dwuliterowych,
zwanych dwuznakami. Szyfry jednoalfabetowe są łatwe do złamania ponieważ
odzwierciedlają częstości alfabetu oryginału. Aby temu zaradzić można jednej literze
przypisać rotacyjnie kilka symboli szyfrowych (homofony).
dr inż. Marcin Markowski, Legnica 2007
S
ZYFROWANIE WIELOLITEROWE
Szyfr Playfair, traktuje dwuznaki tekstu jawnego jako osobne jednostki i tłumaczy na
dwuznaki zaszyfrowane. Algorytm Playfair używa matrycy 5x5, zbudowanej przy
użyciu słowa kluczowego. Np. dla słowa kluczowego MONARCHY matryca wygląda
następująco:
M
O
N
A
R
C
H
Y
B
D
E
F
G I/
J
K
L
P
Q
S
T
U
V
W
X
Z
Tekst szyfruje się po parze liter, zgodnie z następującymi regułami:
1. Powtarzające się litery tekstu jawnego oddziela się literą wypełniającą np. X., czyli
flood szyfrowalibyśmy jako floxod.
dr inż. Marcin Markowski, Legnica 2007
M
O
N
A
R
C
H
Y
B
D
E
F
G I/
J
K
L
P
Q
S
T
U
V
W
X
Z
2. W przypadku, gdy litery pary liter tekstu jawnego występują w tym samym wierszu
matrycy, zastępuje się każdą z nich literą o jedną pozycję w prawo, np. ar szyfruje
się jako RM.
3. W przypadku, gdy litery pary liter tekstu jawnego występują w tej samej kolumnie
matrycy, zastępuje się każdą z nich literą o jedną pozycję w dół, np. mu szyfruje się
jako CM.
dr inż. Marcin Markowski, Legnica 2007
M
O
N
A
R
C
H
Y
B
D
E
F
G I/
J
K
L
P
Q
S
T
U
V
W
X
Z
4. Jeżeli nie zachodzi żaden z powyższych przypadków, każda litera z pary liter tekstu
jawnego zastępuje się literą leżącą w tym samym, co ona rzędzie, lecz w kolumnie,
w której leży druga litera, np. hs szyfruje się jako BP, ea szyfruje się jako IM(JM).
tekst jawny : the Playfaif is good
tekst jawny : th eP la yf ai fi sg ox od
tekst zaszyfrowany: PD FL SM HG BS GK QI AV RH
dr inż. Marcin Markowski, Legnica 2007
S
ZYFRY WIELOALFABETOWE
Szyfr wieloalfabetowy polega na stosowaniu różnych podstawień jednoalfabetowych
podczas szyfrowania jednego komunikatu. Przykładem szyfru wieloalfabetowego jest
szyfr Vigenere’a, w którym stosuje się szyfr Cezara z przesunięciami od 0 do 25.
Litera klucza wyznacza wiersz, a litera tekstu jawnego kolumnę w tablicy.
a b c d e f g h i j k l m n o p q r s t u v w x y z
a A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
b B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
c C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
d D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
e E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
f F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
g G H I J K L M N O P Q R S T U V W X Y Z A B C D E F
h H I J K L M N O P Q R S T U V W X Y Z A B C D E F G
i I J K L M N O P Q R S T U V W X Y Z A B C D E F G H
j J K L M N O P Q R S T U V W X Y Z A B C D E F G H I
k K L M N O P Q R S T U V W X Y Z A B C D E F G H I J
dr inż. Marcin Markowski, Legnica 2007
l L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
m M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
n N O P Q R S T U V W X Y Z A B C D E F G H I J K L M
o O P Q R S T U V W X Y Z A B C D E F G H I J K L M N
r R S T U V W X Y Z A B C D E F G H I J K L M N O P Q
s S T U V W X Y Z A B C D E F G H I J K L M N O P Q R
t T U V W X Y Z A B C D E F G H I J K L M N O P Q R S
u U V W X Y Z A B C D E F G H I J K L M N O P Q R S T
v
V W X Y Z A B C D E F G H I J K L M N O P Q R S T U
w
W X Y Z A B C D E F G H I J K L M N O P Q R S T U V
x
X Y Z A B C D E F G H I J K L M N O P Q R S T U V W
y
Y Z A B C D E F G H I J K L M N O P Q R S T U V W X
z
Z A B C D E F G H I J K L M N O P Q R S T U V W X Y
a b c d e f g h i j k l m n o p q r s t u v w x y z
klucz : deceptivedeceptivedeceptive
tekst jawny : wearediscoveredsaveyourself
tekstzaszyfrowany: ZICVTWQNGRZGVTWAVZHCQYGLMGJ
dr inż. Marcin Markowski, Legnica 2007
L
OSOWE SZYFRY WIELOALFABETOWE
Dla szyfru wieloalfabetowego można zastosować losowy klucz, o takiej samej
długości co komunikat, bez powtórzeń. Taki system, zwany systemem z kluczem
jednorazowym (ang. one time pad), jest nie do złamania. Wynikiem jego działania jest
losowy tekst, który nie ma żadnych statystycznych związków z tekstem jawnym.
Praktycznym utrudnieniem jest konieczność posiadania i strzeżenia losowego klucza
przez nadawcę i odbiorcę.
P
ORÓWNANIE SZYFRÓW
Na poniższym rysunku pokazano rozkład częstości występowania liter dla kilku
szyfrów. W celu znormalizowania wykresu liczba wystąpień każdej litery w tekście
zaszyfrowanym została podzielona przez liczby wystąpień litery e w tekście jawnym.
dr inż. Marcin Markowski, Legnica 2007
0
10
20
30
40
50
60
70
80
90
100
0
2
4
6
8
10
12
14
16
18
20
22
24
26
Tekst jawny
Szyfr Playfair
Szyfr Vienere'a
Losowy szyfr wieloalfabetowy
dr inż. Marcin Markowski, Legnica 2007
T
ECHNIKI TRANSPOZYCYJNE
Techniki transpozycyjne polegają na permutacji liter tekstu jawnego. Najprostszym
takim szyfrem jest tzw. technika płotu, polegająca na tym, że tekst jawny zapisuje się
jako ciąg kolumn, a odczytuje jako ciąg wierszy.
Dla płotu o głębokości 2 mamy:
syrrnpzcjy
zftasoyyn
tekst jawny :
szyfrtranspozycyjny
tekst zaszyfrowany:
syrrnpzcjyzftasoyyn
dr inż. Marcin Markowski, Legnica 2007
Bardziej skomplikowany system polega na zapisaniu komunikatu w prostokącie, a
następnie odczytanie ze zmianą kolejności kolumn.
Klucz :
3 1 4 2 7 6 5
tekst jawny :
b a r d z i e
j s k o m p l
i k o w a n y
s y s t e m p
o l e g a n a
tekst zaszyfrowany: ASKYLDOWTGBJISORKOSEELYPAIPNMNZMAEA
Szyfr transpozycyjny można uczynić znaczenie bezpieczniejszym poprzez stosowanie
kilku etapów transpozycji, co utrudnia znacznie rekonstrukcję klucza.
dr inż. Marcin Markowski, Legnica 2007
M
ASZYNY ROTOROWE
Składają się z ruchomych cylindrów, przez które przepływają impulsy elektryczne.
Każdy cylinder składa się z pewnej liczby styków wejściowych i wyjściowych,
połączonych między sobą wewnętrznymi przewodami.
Pojedynczy cylinder realizuje szyfr wieloalfabetowy (np. 26)
Zastosowanie wielu cylindrów zwiększa liczbę wykorzystywanych alfabetów:
3
→ 26
3
= 17576
4
→ 456976
5
→ 11881376
Zasada działania maszyn rotorowych dała podstawy do stworzenia szyfru DES.
Ciekawy symulator maszyny rotorowej:
http://enigmaco.de/enigma/enigma.swf
dr inż. Marcin Markowski, Legnica 2007
dr inż. Marcin Markowski, Legnica 2007
dr inż. Marcin Markowski, Legnica 2007
dr inż. Marcin Markowski, Legnica 2007
K
ONFUZJA I DYFUZJA
Shannon, twórca teorii informacji. przedstawił w 1949 roku dwie główne zasady
szyfrowania:
• Konfuzja oznacza rozmycie zależności pomiędzy tekstami jawnymi a ich
zaszyfrowanymi wersjami.
• Dyfuzja oznacza rozłożenie zawartych w tekście jawnym informacji w całym
tekście zaszyfrowanym.
Proste szyfry podstawieniowe (szyfr Cezera, szyfr Vigenere’a) zapewniają tylko
konfuzję.
dr inż. Marcin Markowski, Legnica 2007
E
FEKT LAWINOWY
Efektem lawinowym określamy intensywniejszy niż dla dyfuzji rozmazanie tekstu
jawnego w tekście zaszyfrowanym. Jest spotykany dla szyfrowania blokowego. Każdy
bit zaszyfrowanego tekstu zależy od wszystkich bitów tekstu jawnego w danym bloku.
Wymagania wobec algorytmów blokowych są jeszcze większe. Dla zmiany
pojedynczego bitu tekstu jawnego lub klucza, każdy bit tekstu zaszyfrowanego
powinien zmienić swoją wartość z prawdopodobieństwem równym dokładnie 50%.
Kryptoanaliza różnicowa wykorzystuje nawet niewielkie odstępstwo od tej zasady.