Zastosowanie kryptografii w szyfrowaniu danych

background image

ZASTOSOWANIE

ZASTOSOWANIE

KRYPTOGRAFII

KRYPTOGRAFII

W SZYFROWANIU DANYCH

W SZYFROWANIU DANYCH

AUTOR

EWA MICHNIEWICZ

EWA MICHNIEWICZ

PRACA NAPISANA POD KIERNKIEM

DR JACKA MATULEWSKIEGO

DR JACKA MATULEWSKIEGO

background image

PODSTAWOWE ZADANIA KRYPTOGRAFII

Poufność

zapewnia tylko i wyłącznie uprawnionym do tego

jednostkom na korzystanie i oglądanie danych w czytelnej
formie.

Uwierzytelnianie

jest to proces potwierdzający podaną

tożsamość użytkownika, urządzenia końcowego, bądź jednego
i drugiego. Może to być klient, serwer, zwrotnica, router,
ściana ogniowa.

Integralność

zapewnia, że dane nie zostały w żaden sposób

zmienione lub zniszczone przez osoby niepowołane.

Niezaprzeczalność

tworzenie zaszyfrowanych dowodów

przesłania wiadomości, uniemożliwiających nadawcy wyparcie
się autorstwa

background image

Techniki szyfrowania

danych

Tryb
elektronicznej
książki kodowej

ECB

(Electronic

Code Book)

Tryb wiązania
bloków
zaszyfrowanych

CBC

(Cipher Block

Chaining

Tryb
sprzężenia
zwrotnego
zaszyfrowaneg
o tekstu

CFB

(Cipher
Feedback)
.

Tryb sprzężenia
zwrotnego bloków
wyjściowych

OFM

(Output Feedback

)

Reprezentuje
najprostszą
technikę
szyfrowania
blokowego. Po
wstępnym
podzieleniu
tekstu jawnego
na bloki, każdy
blok szyfrowany
jest w blok
szyfrogramu.

Każdy blok tekstu
jawnego jest przed
szyfrowaniem łączony
operacją XOR z
poprzednim blokiem
szyfrogramu.
Wykorzystano w tym
trybie mechanizm
sprzężenia zwrotnego
tzn. blok wyjściowy
jest wykorzystywany
do modyfikacji
kolejnego bloku
wejściowego.

Umożliwia
szyfrowanie
danych w
jednostkach
mniejszych niż
rozmiar
pobranego bloku
tekstu jawnego.

Jest podobny do
trybu CFB z tą
różnicą, że zamiast
wyniku operacji XOR
na najmłodszej
pozycji rejestru
przesuwającego
kierowany jest wynik
szyfrowania kluczem
K bloku najstarszych
bitów rejestru.

Stosowane do
transmisji
pojedynczych
wartości, np.
klucza;

Transmisja większych
zestawów danych, np.
FTP;

Transmisja
strumieniowa
bajt po bajcie,
np. TELNET;

Transmisja
strumieniowa bajt po
bajcie, w kanałach
podatnych na
zakłócenia.

background image

Pojęcia stosowane w kryptografii

Szyfrowanie

Proces przekształcania tekstu jawnego w szyfrogram tak, że zostaje ukryta
jego zawartość. Do przekształcenia używa się algorytmu szyfrującego.

Deszyfrowanie

Proces przekształcania szyfrogramu w tekst jawny tak, że

jego zawartość zostaje ponownie odkryta. Do przekształcenia używa się
algorytmu deszyfrującego.

Algorytm szyfrujący

Jest to zbiór metod postępowania, który prowadzi do

zaszyfrowania tekstu jawnego w szyfrogram

.

Algorytm deszyfrujący

Zbiór metod służących do przekształcenia

szyfrogramu w tekst jawny.

Klucz

Zbiór informacji potrzebnych algorytmowi szyfrującemu lub

deszyfrującemu do poprawnego działania. Może to być jeden bajt albo
kilkaset bitów. Klucz może być tajny albo publiczny.

Klucz tajny

Dla algorytmów symetrycznych jest to zarówno klucz szyfrujący

jak i deszyfrujący. Dla algorytmów asymetrycznych jest to klucz prywatny
służący jedynie do deszyfrowania.

Klucz jawny

Dla algorytmów asymetrycznych jest to klucz szyfrujący. Jest

udostępniany publicznie.

background image

Kryptograficzne funkcje hashujące

są zwykle używane do obliczenia

wyciągu z wiadomości podczas tworzenia cyfrowego podpisu. Funkcja hashująca
kompresuje bity wiadomości do wartości o określonej długości (hash value).
Funkcja hashująca czyni to w sposób, który sprawia niezwykle trudnym
pojawienie się wiadomości, która dałaby w rezultacie tę samą hash-wartość.

Cyfrowe podpisy

Niektóre algorytmy z kluczem publicznym mogą być

używane do generowania cyfrowych podpisów. Podpis cyfrowy jest blokiem
danych, który został wygenerowany za pomocą określonego tajnego klucza oraz
istnieje klucz publiczny, który może być użyty do weryfikacji czy podpis został
naprawdę wygenerowany za pomocą odpowiadającego klucza prywatnego.
Algorytm użyty do generowania podpisu musi być taki, że bez znajomości klucza
prywatnego nie jest możliwe stworzenie podpisu, który byłby zweryfikowany
jako ważny.

background image

Podział algorytmów

I.

Algorytmy ograniczone

Dzisiaj interesuje się nimi jedynie z

historycznego punktu widzenia i nie są dobre

dla potrzeb prawdziwego bezpieczeństwa.

Wystarczy bowiem odkryć jeden algorytm by

możliwe było odszyfrowanie wszystkich

wiadomości, które zostały nim zakodowane.

II

Algorytmy z kluczem

ich algorytmy są znane, ale by odczytać

konkretną wiadomość musimy posiadać

właściwy klucz.

background image

1. Symetryczne

– używają tego samego klucza do

szyfrowania i do deszyfrowania wiadomości, albo
klucz deszyfrujący da się bezpośrednio wyprowadzić
z klucza szyfrującego. Znajomość zatem dobrego
klucza służącego do zakodowania wiadomości
umożliwia także jej odczytanie. Są szybsze od
asymetrycznych.

1.

Strumieniowe

– kodują jedną jednostkę informacji (bit) w

tym samym czasie

2.

Blokowe

– kodują grupę informacji (wiele bitów) w tym

samym czasie

2. Asymetryczne (z kluczem publicznym)

– używają

odmiennego klucza do szyfrowania i deszyfrowania,
a klucza deszyfrującego nie da się wyprowadzić z
klucza szyfrującego. Klucz szyfrujący jest zwykle
udostępniany publicznie tak, iż każdy może
zakodować informację jednak jej odczytanie możliwe
jest

jedynie

przez

adresata,

który

posiada

odpowiedni klucz deszyfrujący – nie ujawniany.  

background image

Szyfrowanie symetryczne

Nadawca

Odbiorca

Wiadomość jawna Wiadomość zdeszyfrowana





wiadomość

wiadomość

zaszyfrowana

zaszyfrowana

Szyfrowanie

klucz prywatny

Deszyfrowanie

klucz prywatny

background image

Do najczęściej używanych i obecnie stosowanych
algorytmów z kluczem symetrycznym należą:

 

DES

3DES

  RC-2

           RC-4

           RC-5

           IDEA

           Blowfish

           Rijndael

background image

Szyfrowanie asymetryczne

Nadawca

Odbiorca

Wiadomość jawna Wiadomość zdeszyfrowana


wiadomość zaszyfrowana wiadomość zaszyfrowana

Szyfrowanie

klucz publiczny

odbiorcy

Deszyfrowanie

klucz prywatny

odbiorcy

background image

Do wykorzystywanych obecnie algorytmów
opartych o metodę klucza asymetrycznego
należą:

      

DSS

     ElGamal

       RSA.

background image

PROGRAM SZYFROWNIK

background image

Program ma na celu
przedstawienie różnych
rodzajów szyfrów

Szyfrowanie tekstowe

Zastosowanie szyfru Cezara

Rot 13

Zastosowanie dowolnego
przesunięcia

Operacja XOR

Kodowanie przy użyciu hasła

background image

Szyfrowanie tekstowe

Tekst jawny

Tekst
zaszyfrowany

background image

Szyfr Cezara

Szyfr Cezara jest

prostym rodzajem
szyfrowania
wiadomości, która
stosował już Juliusz
Cezar. Jest to szyfr
podstawieniowy prosty
(monoalfabetyczny), w
którym każdemu
pojedynczemu znakowi
w tekście odpowiada
dokładnie jeden znak w
tekście zaszyfrowanym.

background image

ROT 13

Zasada działania jest

identyczna jak w

przypadku szyfru Cezara -

różnica polega na wartości

przesunięcia. W tym

przypadku każdą literę

tekstu jawnego

zamieniamy na literę,

znak przesunięty o 13

miejsca w prawo podczas

szyfrowania . W celu

odszyfrowania tekst

powtarzamy operację tym

razem przesuwając litery,

znaki o 13 pozycje w lewo.

background image

Dowolne przesunięcie

Działanie

szyfrowania/deszyfrowan
ia z przesunięciem ma
identyczna genezę jak w
przypadku szyfru Cezara
czy ROT 13. Jednak
przesunięcie w tym
programie wyznacza
sam użytkownik.
Wartość ta dla
szyfrowania jak i
deszyfrowania musi być
identyczna.

background image

XOR

Operacja XOR to operacja na

dwóch

bitach

zwracająca

wartość 1 lub 0.

0 XOR 0 = 0

1 XOR 1 = 0
0 XOR 1 = 1
1 XOR 0 = 1

Procedura

szyfrowania/deszyfrowania
zostaje wykonana tak, że
każdy znak tekstu
jawnego/zaszyfrowanego
zostaje xor’owany przez
wartość $a86 i następnie
zapisany do pliku
wyjściowego. Po kolejnym
dokonaniu operacji XOR z
pliku zaszyfrowanego
otrzymamy plik z tekstem
jawnym. Procedury szyfruj
/deszyfruj są identyczne.

background image

Kodowanie przy użyciu

hasła

Znacznie lepszym sposobem

ukrywania informacji jest ich
kodowanie z użyciem hasła.
Wybierając

plik

do

zaszyfrowania

z

pola

FileListBox1

wpisujemy

hasło według którego ma
być

dany

plik

szyfrowany/odszyfrowywany
.

Wykonana

zostaje

procedura
szyfrowania/deszyfrowania.

hasło

xor

tekst_niezaszyfrowany =
tekst_zaszyfrowany

hasło xor tekst_zaszyfrowany
= tekst_niezaszyfrowany

background image

Podsumowanie


Document Outline


Wyszukiwarka

Podobne podstrony:
Kryptografia a bezpieczeństwo danych
kurs-asembler-zlotowicz, [ Algorytmy: Szyfrowanie danych ]
13 Zastosowania kryptografi 2014
Kryptografia szyfrowanie i deszyfrowanie kod RSA
szyfrowanie danych
API, kurs-api-robal, [ Algorytmy: Szyfrowanie danych ]
szyfrowanie danych
zastosowanie kryptografia
8 Szyfrowanie danych
Współczesne algorytmy szyfrowania danych
OKLADKA Struktury danych i ich zastosowania indd struktury danych i ich zastosowania
szyfrowanie danych
Generacja i dystrybucja danych kryptograficznych
KRYPTOGRAFIA ASYMETRYCZNA I JEJ ZASTOSOWANIE
Kryptologia, Wykad 6, BEZPIECZEŃSTWO SZYFRÓW
,informatyka w zastosowaniach inżynierskich,Tworzenie modelu logicznego i fizycznego danych
Inteligen Bank Danych Kryptograf
Metodologia SPSS Zastosowanie komputerów Brzezicka Rotkiewicz Opisywanie danych

więcej podobnych podstron