KRYPTOGRAFIA Krzysztof Majewski Paweł Szustakowski Bartosz Frąckowiak.

Slides:



Advertisements
Podobne prezentacje
Infrastruktura kluczy publicznych
Advertisements

IDENTYFIKACJA UŻYTKOWNIKA W SIECI INTERNET
dr A Kwiatkowska Instytut Informatyki
KRYPTOLOGIA =KRYPTOGRAFIA+KRYPTOANALIZA
przetwarzaniu informacji
Czyli czym się różni bit od qubitu
PODPIS ELEKTRONICZNY PODSTAWY WIEDZY I ZASTOSOWANIA
SSL - protokół bezpiecznych transmisji internetowych
Kryptografia i kryptoanaliza
Obsługa serwera zdalnego przez klienta FTP
PGP Instalacja Poradnik.
PKI, OPIE Auth Mateusz Jasiak.
Artur Szmigiel Paweł Zarębski Kl. III i
Internet Sieci komputerowe.
Zapis informacji Dr Anna Kwiatkowska.
Techniczne aspekty realizacji podpisu cyfrowego z zastosowaniem algorytmu RSA mgr inż. Wojciech Psik Zespół Szkół Elektronicznych i Ogólnokształcących.
Ochrona danych wykład 2.
Ochrona danych wykład 3.
KRYPTOGRAFIA.
Dążenie do odkrywania tajemnic tkwi głęboko w naturze człowieka, a nadzieja dotarcia tam, dokąd inni nie dotarli, pociąga umysły najmniej nawet skłonne.
KRYPTOGRAFIA Krzysztof Majewski Paweł Szustakowski Bartosz Frąckowiak.
Podstawowe usługi internetu
Uwierzytelnianie i autoryzacja System Użytkowników Wirtualnych Michał Jankowski Paweł Wolniewicz
Strategia skutecznego szukania informacji w Internecie
SIEĆ P2P 1. Definicja sieci równouprawnionej. To taka sieć, która składa się z komputerów o takim samym priorytecie ważności, a każdy z nich może pełnić.
PKI – a bezpieczna poczta
opracowanie: Agata Idczak
MATEMATYCZNE METODY SZYFROWANIA
Protokół Komunikacyjny
MODEL WARSTWOWY PROTOKOŁY TCP/IP
Tworzenie nowych kont lokalnych i domenowych, oraz zarządzanie nimi
RODZAJE TRANSMISJI PRZESYŁANIE INFORMACJI W MODELU WARSTWOWYM
BUDOWA I DZIAŁANIE SIECI KOMPUTEROWYCH
czyli jak poradzić sobie bez listonosza.
Wymiana informacji w sieciach komputerowych
Prezentacja i szkolenie
Sieciowe Systemy Operacyjne
Wykonywanie kopii bezpieczeństwa danych
Zastosowania ciągów.
SZYFROWANIE INFORMACJI
ZASTOSOWANIE KRYPTOGRAFII W SZYFROWANIU DANYCH
Algorytmy.
Wybrane zagadnienia relacyjnych baz danych
OCHRONA DANYCH OSOBOWYCH Dr hab. Mariusz Jagielski
Narzędzie wspierające zarządzanie organizacj Parentis Sp. z o. o
Dofinansowano ze środków Ministra Kultury i Dziedzictwa Narodowego Komunikacja.
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
Razem tworzymy bezpieczny Internet
Poczta elektroniczna "electronic mail") A.Ś.
Zasady korzystania z Internetu
SZYFROWANIE Kacper Nowak.
Andrzej Majkowski 1 informatyka +. 2 Bezpieczeństwo protokołu HTTP Paweł Perekietka.
Aby do danych nie dostała się postronna osoba ( hacker ) stosuje się różne metody kryptograficzne.
niezawodności Z problemem jakości systemów informacyjnych wiąże się problem zapewnienia odpowiedniej niezawodności ich działania.
INTERNET jako „ocean informacji”
Model warstwowy ISO-OSI
HISTORIA Ludzie od dawnych czasów próbowali się ze sobą porozumiewać. Nauczyli oni się komunikować ze sobą za pomocą przeróżnych środków: od wyrazu twarzy,
Metody komunikacji.
K ODY ZMIENNEJ DŁUGOŚCI Alfabet Morsa Kody Huffmana.
Elementy przeglądarki internetowej Pasek menu Pasek kart Pasek adresowy Pasek wyszukiwania Okno z zawartością strony internetowej Zakładki (ulubione)
Temat: Tworzenie bazy danych
PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES
Wady i zalety pracy w chmurze
SIECI KOMPUTEROWE WYKŁAD 8. BEZPIECZEŃSTWO SIECI
SIECI KOMPUTEROWE WYKŁAD 8. BEZPIECZEŃSTWO SIECI
Podstawy Informatyki.
materiały dla uczestników
KRYPTOGRAFIA KLUCZA PUBLICZNEGO WIKTOR BOGUSZ. KRYPTOGRAFIA KLUCZA PUBLICZNEGO Stosując metody kryptograficzne można zapewnić pełną poufność danych przechowywanych.
Poczta elektroniczna "electronic mail") A.Ś.
Zapis prezentacji:

KRYPTOGRAFIA Krzysztof Majewski Paweł Szustakowski Bartosz Frąckowiak

CO TO JEST KRYPTOGRAFIA Kryptografia jest to dziedzina zajmująca się praktycznym zastosowaniem wiedzy matematycznej w celu ochrony danych przechowywanych w komputerach, podczas przesyłu informacji przez sieć komputerową bądź jakąś inną, w której występują dane w postaci cyfrowej. Ma ona ogromne znaczenie w ochronie danych komputerowych. Powszechnie też wykorzystuje się kryptografię w bankowości internetowej, gdzie wszystkie transakcje odbywają się w tak zwanym bezpiecznym połączeniu, a dodatkowo każda operacja jest zatwierdzana przy użyciu klucza prywatnego. Jednak poszczególne metody zależą już od konkretnego w tym przypadku banku, ale również każdej innej instytucji potrzebującej szyfrowania bądź uwierzytelniania.

Kryptografia symetryczna Kryptografia symetryczna oparta jest na tzw. kluczu symetrycznym, zwanym również kluczem tajnym lub też pojedynczym. Klucz jest to niezbędna do szyfrowania i odszyfrowania wiadomości porcja danych. Znajomość samego algorytmu nie wystarcza do odczytania danych, co zdecydowanie utrudnia kryptoanalizę. Szyfry oparte jedynie na tajnych algorytmach nie wytrzymały próby czasu, ze względu na potrzebę udostępnienia szerokiemu gronu użytkowników programów lub urządzeń, stosujących te algorytmy. Klucz symetryczny musi być znany zarówno nadawcy jak i odbiorcy przesyłki. Służy on więc zarówno do zakodowania, jak i odkodowania danych. Z oczywistych względów klucz ten musi być tajny. Podstawowym problemem związanym ze stosowaniem tej metody szyfrowania jest bezpieczny sposób przekazania klucza pomiędzy osobami, które chcą się porozumieć.

KRYPTOGRAFIA ASYMETRYCZNA Kryptografia asymetryczna to rodzaj kryptografii, w którym używa się zestawów dwu lub więcej powiązanych ze sobą kluczy, umożliwiających wykonywanie różnych czynności kryptograficznych. Najważniejsze zastosowania kryptografii asymetrycznej – szyfrowanie i podpisy cyfrowe – zakładają istnienie 2 kluczy – prywatnego i publicznego, przy czym klucza prywatnego nie da się łatwo odtworzyć na podstawie publicznego, w niektórych innych zastosowaniach kluczy może być więcej. Kryptografia asymetryczna została wynaleziona przez Martina Hellmana i Whitfielda Diffie w 1976 roku, chociaż prawdopodobnie była znana wcześniej tajnym służbom. Obecnie jest szeroko stosowana do wymiany informacji poprzez kanały o niskiej poufności jak np. Internet. Stosowana jest także w systemach elektronicznego uwierzytelniania, obsługi podpisów cyfrowych, do szyfrowania poczty (OpenPGP) itd.

Kodowanie i dekodowanie Informacja, która może być przeczytana bez stosowania żadnych specjalnych zabiegów jest nazywana tekstem jawnym. Jeżeli chcemy ją bezpiecznie przekazać do odbiorcy - czyli tak, by nikt inny nie mógł jej przeczytać podczas transmisji - powinniśmy poddać ją procesowi szyfrowania. Kodowanie informacji polega na przekształceniu informacji jawnej w postać zaszyfrowaną, przy wykorzystaniu mniej lub bardziej skomplikowanych operacji matematycznych. Zaszyfrowane informacje mogą być przekazywane nawet przez otwarte kanały transmisyjne (do takich zalicza się Internet) - gdyby wiadomość była niezakodowana, mogłaby zostać przeczytana albo zmodyfikowana przez osobę postronną. Adresat, po odebraniu informacji zakodowanej, powinien poddać ją operacji odwrotnej do szyfrowania, czyli deszyfrowaniu. Dobry system kryptograficzny powinien, oprócz możliwości odmowy dostępu do informacji, zapewniać metody uwierzytelniania oraz potwierdzania integralności wiadomości. Uwierzytelnianie pozwala na sprawdzenie źródła informacji, natomiast integralność wiadomości daje pewność, że informacja nie została zmodyfikowana podczas transmisji.

Tradycyjne metody kryptograficzne W tradycyjnej kryptografii, zwanej też kryptografią z tajnym kluczem do kodowania i dekodowania, używany jest jeden klucz. Nadawca szyfruje informacje przy użyciu klucza, a następnie przesyła kryptogram do odbiorcy przez niebezpieczny kanał. Oprócz kryptogramu musi też przesłać klucz kanałem bezpiecznym. Odbiorca, po otrzymaniu klucza i kryptogramu, jest w stanie odczytać informację. Taka metoda kodowania zapewnia ochronę oraz integralność wiadomości. Zakodowana informacja jest zupełnie nieprzydatna dla osób nie posiadających właściwego klucza. W przypadku gdy informacja uległa zmianie podczas przesyłania, zdekodowanie jej będzie niemożliwe, a to będzie oznaczało brak integralności wiadomości. Poważną wadą metody opartej na jednym kluczu jest konieczność posiadania bezpiecznego kanału do przekazania klucza. Drugim minusem jest wymóg silnej ochrony kluczy. Jeżeli w wymianie informacji bierze udział kilku uczestników i każdy ma klucz każdego, to utrata zbioru kluczy przez jednego z nich wiąże się z utratą bezpieczeństwa całego systemu wymiany informacji. Gdy klucz znajdzie się w posiadaniu osoby niepowołanej, będzie ona mogła zarówno czytać, jak i fałszować informacje. Bezpieczeństwo tego systemu zależy więc od bezpieczeństwa klucza .

Kryptografia z kluczem publicznym Alternatywą dla tradycyjnych metod kodowania jest kryptografia z kluczem publicznym, zwana też metodą z dwoma kluczami (rys. 3). Nadawca do zakodowania informacji musi dostać od adresata jego klucz publiczny. Klucz ten może zostać przesłany przez niebezpieczny kanał transmisyjny. Taka możliwość pojawia się ze względu na asymetryczność klucza. Klucz publiczny może posłużyć tylko do zakodowania informacji, do jej odczytania potrzebny jest klucz prywatny. Przy użyciu klucza publicznego, otrzymanego od adresata, nadawca koduje informacje, a następnie przesyła ją do odbiorcy. Dodatkowo do wiadomości może zostać dołączony elektroniczny podpis nadawcy, generowany na podstawie klucza prywatnego nadawcy. Odbiorca, dzięki swojemu unikatowemu kluczowi prywatnemu, może odczytać otrzymaną informację. Podpis dołączony przez nadawcę może zostać zweryfikowany za pomocą klucza publicznego nadawcy. Weryfikacja ta pozwala na jednoznaczne określenie nadawcy.

Co to jest szyfr rodzaj kodu, który umożliwia odtworzenie wiadomości, jedynie odbiorcy znającemu klucz szyfrowy (sposób dekodowania); stosowany m.in. w służbie wywiadowczej, dyplomatycznej i wojskowej.

Co to jest KOD zbiór reguł wzajemnie jednoznacznego przyporządkowania elementów jednego skończonego zbioru elementom drugiego skończonego zbioru. Najczęściej występuje przypadek, gdy jeden zbiór jest alfabetem, tzn. zbiorem liter, liczb lub innych znaków, a drugi jest zbiorem ciągów elementów sygnału, czyli wiadomości; tak więc poszczególnym wiadomościom przyporządkowuje się tzw. słowa kodowe w postaci ciągów znaków. Kod przedstawia się często w postaci księgi (tablicy) kodowej, zestawiającej kodowane wiadomości i kodujące je słowa. Najbardziej rozpowszechnione w technice, zwł. w telekomunikacji i informatyce, są: kody alfanumeryczne (ASCII), kody zabezpieczająco-kontrolne — do wykrywania i ewentualnego poprawiania błędów, które mogą powstać przy przechowywaniu lub przesyłaniu informacji kodowanych cyfrowo (np. kody z kontrolą parzystości),

a także kody liczbowe — do zapisu informacji liczbowych (np a także kody liczbowe — do zapisu informacji liczbowych (np. naturalny kod dziesiętny i dwójkowy, kod pierścieniowy oraz kod dwójkowo-dziesiętny, tzw. BCD, ang. Binary Coded Decimal). W koderach i dekoderach stosuje się (jako kod odpowiednio wejściowy i wyjściowy) kod „1 z n” — kodujący n wykluczających się wiadomości n-bitowymi zerojedynkowymi słowami w taki sposób, że określonej wiadomości odpowiada określony bit słowa kodowego, a aktualną wiadomość oznacza jedynka w odpowiadającym mu bicie (w słowie kodowym nie może wystąpić więcej niż jedna jedynka). Kody są też szeroko stosowane w telegrafii (alfabet telegraficzny), automatyce (kody refleksyjne), metrologii (przetwarzanie analogowo-cyfrowe), handlu (kod kreskowy), wojsku (szyfr).

SZYFRY Szyfry podstawieniowe to szyfry w których bity, znaki lub bloki znaków są zastępowane ich ustalonymi zamiennikami. Wyróżniamy cztery rodzaje szyfrów podstawienowych: Szyfry przestawieniowe polegają na zmianie porządku znaków według określonego schematu. Wszystkie znaki tekstu jawnego pojawiają się w szyfrogramie w innej kolejności. Najczęściej przestawienia dokonywano za pomocą pewnej figury geometrycznej. Deszyfrowanie odbywało się również za pomocą tej samej figury. Figura oraz sposób przestawienia znaków były kluczem. Szyfry kaskadowe stanowią połączenie idei szyfru podstawieniowego i przestawieniowego. Określa się go jako dowolne złożenie funkcji szyfrów takich jak permutacja czy podstawienie. Dzięki takiemu rozwiązaniu następuje duże rozproszenie treści jawnej po kryptogramie. Przestawienia i podstawienia są stosowane naprzemiennie.

Szyfry strumieniowe przekształcają tekst jawny w szyfrogram kolejno bit po bicie. W przypadku tego szyfru jeden bit tekstu jawnego jest za każdym razem zaszyfrowany w inny bit. Szyfr strumieniowy wykorzystuje tzw. generator strumienia klucza. Wytwarza on strumień bitów: k1, k2, k3,....,ki. Strumień ten jest sumowany modulo 2 z ciągiem bitów tekstu jawnego p1, p2, p3,....,pi. Tworzony jest w ten sposób strumień bitów szyfrogramu. Generator strumienia klucza wytwarza strumień bitów , który jest strumieniem zdeterminowanym, choć wygląda na losowy. Może być on bezbłędnie odtworzony podczas odszyfrowywania. Algorytmy blokowe zakładają podział pliku lub wiadomości na bloki, często o długości 64 bitów i dokonują operacji kryptograficznej na każdym z bloków za pomocą tego samego klucza. Jest to ich podstawowe zastosowanie, choć wykorzystywane są także w obu technikach strumieniowych jako nieliniowe przekształcenie do generowania klucza. Szyfrowanie blokowe jest uznawane za nieco szybsze od obu metod strumieniowych, gdyż dla każdej porcji n znaków jest wymagane tylko jednokrotne wykonanie algorytmu szyfrowania.

Przykład szyfrowania: szyfr cezara Rodzaj: Monoalfabetyczny szyfr podstawieniowy, ograniczony Historia i zastosowanie: Jest to szyfr za pomocą, którego Juliusz Cezar szyfrował swoje listy do Cycerona. Jako ciekawostkę można podać, że szyfr ten był podobno używany jeszcze w 1915 roku w armii rosyjskiej, gdyż tylko tak prosty szyfr wydawał się zrozumiały dla sztabowców Opis metody: Każdą literę tekstu jawnego zamieniamy na literę przesuniętą o 3 miejsca w prawo. I tak literę A szyfrujemy jako literę D, literę B jako E itd. W przypadku litery Z wybieramy literę C. W celu odszyfrowania tekst powtarzamy operację tym razem przesuwając litery o 3 pozycje w lewo.

Zapis matematyczny tych operacji wygląda następująco: Szyfrowanie: C=E(p)=(p+3)mod 26 Deszyfrowanie: p=D(c)=(c-3)mod 26 Przyjmuje się, że alfabet składa się z 26 liter. Opis procedury: Szyfrowany/deszyfrowany tekst znajduje się w pliku. Dodatkowo przed uruchomieniem procedury należy stworzyć drugi plik, będący plikiem wynikowym. W programie podajemy nazwy tych plików. Następnie otwierane są oba pliki i jeżeli operacja ta powiedzie się, zaczyna się szyfrowanie/deszyfrowanie. Za każdym razem pobierana jest jedna litera tekstu. Następnie według kod ASCII przydzielana jest ona do trzech możliwych grup: duże litery, małe litery lub cyfry. W przypadku oryginalnego szyfru Cezara nie było możliwości szyfrowania cyfr. Cyfry są w procedurze szyfrowane za pomocą przesunięcia o trzy a następnie wykonywana jest operacja mod 10. Co nie jest w pełni zgodne ze standardem algorytmu Cezara. Jeżeli ktoś uważa szyfrowanie cyfr za coś niepotrzebnego wystarczy, że usunie ostatnią instrukcję else if. Wszystkie inne znaki w tym spacja podczas szyfrowania ulegają usunięciu. Jeżeli komuś zależy, aby inne znaki też były szyfrowane wystarczy, aby dodał kolejne instrukcje else if (operacja mod wystąpi tylko wtedy gdy dodajemy jeszcze jakąś grupę znaków a nie pojedyncze znaki). Należy dodać je w miejscu

gdzie w programie widnieje odpowiedni komentarz gdzie w programie widnieje odpowiedni komentarz. Po zamianie każdej litery zapisywana jest ona w pliku wyjściowym. Na końcu oba pliki są zamykane i procedura kończy się. W przypadku procedury deszyfrującej zastosowałem trochę inną metodę. Ponieważ litera a ma numer zero. Zatem gdy odejmujemy wartość 3. Uzyskujemy wynik -3. Aby uzyskać poprawny wynik Wystarczy odjąć od 26 wartość bezwzględną wyniku (lub jeżeli ktoś woli dodać ten wynik). Oto przykładowy ciąg poddany działaniu algorytmu: Tekst jawny: Algorytmy i Struktury Danych Tekst zaszyfrowany: DojrubwpblVwuxnwxubGdqbfk Poziom bezpieczeństwa: szyfr nie zapewnia bezpieczeństwa Metody kryptoanalizy: analiza częstości występowania poszczególnych liter

PODPIS ELEKTRONICZNY Definicja podpisu elektronicznego zawarta w ustawie składa się z dwóch części. Odpowiednie artykuły ustawy stanowią: "Podpis elektroniczny - dane w postaci elektronicznej, które wraz z innymi danymi, do których zostały dołączone lub z którymi są logicznie powiązane, służą do identyfikacji osoby składającej podpis elektroniczny" (Art. 3 ust. 1) "Bezpieczny podpis elektroniczny to podpis elektroniczny, który: 1 Jest przyporządkowany wyłącznie do osoby składającej ten podpis, 2 Jest sporządzany za pomocą podlegających wyłącznej kontroli osoby składającej podpis elektroniczny bezpiecznych urządzeń służących do składania podpisu elektronicznego i danych służących do składania podpisu elektronicznego, 3 Jest powiązany z danymi, do których został dołączony, w taki sposób, że jakakolwiek późniejsza zmiana tych danych jest rozpoznawalna" (Art. 3 ust. 2).

Definicja bezpiecznego podpisu elektronicznego daje dostateczną gwarancję, że dane tworzące podpis ustalają tożsamość osoby, która ma wyłączną kontrolę nad urządzeniem służącym do składania podpisu, spełniającym jednocześnie szereg wymagań bezpieczeństwa. Podpis elektroniczny gwarantuje też integralność danych, do których został dołączony. Jest to cecha w zasadniczy sposób odróżniająca podpis elektroniczny od tradycyjnego: podpis elektroniczny jest bowiem oparty na tworzony w oparciu o funkcji jednoznacznego przekształcenia danych, których dotyczy, a to oznacza, że za każdym razem jest inny. Jakakolwiek zmiana danych, które zostały podpisane, pociąga za sobą zmianę danych tworzących podpis elektroniczny. Podpis elektroniczny nie jest więc dokładnym odpowiednikiem podpisu złożonego na papierze, który przecież nie jest związany z treścią dokumentu. Bezpieczny podpis elektroniczny zapewnia integralność całego dokumentu - nie istnieje więc potrzeba parafowania każdej jego strony ani też wyróżniania oryginału i jego kopii, ponieważ każdy dokument, opatrzony ważnym bezpiecznym podpisem elektronicznym, nie może ulec zmianie.

Podsumowując zalety podpisu elektronicznego, można wymienić następujące jego cechy: · równoważność z podpisem odręcznym, · jest związany wyłącznie z podpisującym, · umożliwia identyfikację podpisującego, · jest tworzony przez podpisującego, · brak konieczności fizycznej obecności przy dokonywaniu większości czynności prawnych, · brak konieczności przechowywania dokumentów papierowych.

KODY KRESKOWE Kod kreskowy to graficzne odzwierciedlenie określonych znaków poprzez kombinację ciemnych i jasnych elementów, ustaloną według przyjętych reguł budowy danego kodu (symboliki). Rozróżnia się znaki kodujące dane oraz znaki pomocnicze, charakterystyczne dla danej symboliki. Symbol kodu kreskowego składa się z zestawu elementów, których struktura wynika z danej symboliki oraz ze znaków czytelnych wzrokowo, przedstawionych graficznie. Kody kreskowe pozwalają na automatyczną identyfikację (AI) i są efektywną techniką wprowadzania danych do systemów komputerowych, zostawiającą w tle wprowadzanie danych z klawiatury. Identyfikacja obiektów dokonuje się bez bezpośredniego udziału człowieka. Technika ta jest z powodzeniem stosowana na świecie od kilkudziesięciu lat. Kody kreskowe to obecnie jeden z najczęściej stosowanych sposobów znakowania i identyfikacji danych. Wprowadzenie kodów kreskowych powoduje usprawnienia organizacyjne, co związane jest z obniżeniem kosztów. Dzięki temu dany podmiot gospodarczy zwiększa swoje szanse wygrania konkurencji na wolnym rynku.

Podstawowe rodzaje kodów kreskowych linearne dwuwymiarowe hybrydowe Symbole linearnych kodów kreskowych są łatwo rozpoznawalne przez pionowe paski ciemne i jasne o różnych szerokościach. Istnieje wiele różnych rodzajów linearnych kodów, natomiast te najbardziej używane to Code 128, Code 39, EAN-13, EAN-8, ITF (Interleaved 2 z 5) UPC-A, UPC-E. Kody dwuwymiarowe można podzielić na dwie grupy: symboliki macierzowe, wielowierszowe (liniowe) kody kreskowe. Symboliki macierzowe wyglądają jak macierze punktów, a wielowierszowe wyglądają jakby linearne kody kreskowe z bardzo krótkimi paskami ułożone jeden na drugim. Kody hybrydowe są kategorią kodów kreskowych, które stanowią połączenie cech kodów linearnych i dwuwymiarowych.

CERTYFIKATY CYFROWE Stosując system kryptograficzny z publicznym kluczem, użytkownik nadający wiadomość musi mieć całkowitą pewność, że używa klucza osoby, do której wysyła wiadomość. W przypadku gdy klucze są wymieniane przez proste umieszczenie ich na serwerze kluczy, istnieje potencjalne zagrożenie, że zostanie tam umieszczony klucz przez osobę podającą się za kogoś innego, a my użyjemy tego klucza. Dla przykładu, serwery kluczy PGP przyjmują klucze poprzez system poczty elektronicznej, a osoba generująca klucz podpisuje go sama. W ten sposób można umieścić dowolny klucz. Przykładowo można wygenerować klucz i podpisać go: Aleksander Kwaśniewski <prezydent@gov.pl> Gdy otrzymamy wiadomość sygnowaną tym podpisem i z serwera kluczy pobierzemy ten właśnie klucz publiczny, to będziemy uważali, że nadawcą był prezydent. System działa więc bezbłędnie, a klucz, znajdując się w niepowołanych rękach, wprowadza nas w błąd. Certyfikat cyfrowy różni się od certyfikatu będącego fizycznym dokumentem jedynie tym, że jest w postaci elektronicznej. Cyfrowy certyfikat zawiera, oprócz publicznego klucza osoby, jej dane personalne, identyfikator, datę nadania oraz datę ważności. Dodatkowo są umieszczone cyfrowe podpisy zaufanych osób. Jeden klucz może zostać autoryzowany przez więcej niż jedną osobę, co podnosi poziom zaufania wobec klucza.

Ochrona danych Współczesna kryptografia chroni dane przesyłane z wielką szybkością kanałami transmisyjnymi lub przechowywane w systemach komputerowych. Wyróżniamy dwa zasadnicze przedmioty ochrony: poufność (lub prywatność), tj. zabezpieczenie przed nieupoważnionym wglądem do danych, oraz auten­tyczność (lub integralność), czyli zabezpieczenie przed nieupoważnioną mody­fikacją danych. Podsłuch aktywny "(zniekształcanie) dotyczy rozmyślnych modyfikacji wykonywanych na strumieniu wiadomości. Celem tego działania może być zmiana wiadomości lub zastąpienie danych w wiadomości danymi z wcześniej przesłanych wiadomości (np. zastąpienie wartości pola w transakcji „kredytuj konto Smitha sumą 10 $" wartością z wcześniejszej transakcji „kredytuj konto Jonesa sumą 5000 $". Działania takie mogą mieć na celu wprowadzenie błędnych komunikatów, wszczepianie powtórzeń oryginalnych danych (np. powtórzenie transakcji kredytowania) lub usunięcia komunikatu (np. w celu niedopuszczenia do wykonania transakcji „odejmij z konta Smitha kwotę 1000 $"). Szyfrowanie chroni przed modyfikacją wiadomości i wprowadze­niem fałszywych komunikatów uniemożliwiając przeciwnikowi tworzenie takiego tekstu zaszyfrowanego, który po zdeszyfrowaniu dałby zrozumiały tekst jawny. Zauważmy, że choć szyfrowanie umożliwia wykrycie modyfikacji wiadomości, to jednak nie zapobiega temu zjawisku. Do zagrożeń poufności zaliczamy: przeglądanie, przenikanie i wnioskowanie. Przeglądanie polega na przeszukiwaniu pamięci głównej i pomocniczej w celu uzyskania informacji (np. zastrzeżonych danych lub programów). Jest to proces podobny do podsłuchiwania w kanałach łączności, przy czym istnieją tu dwie istotne różnice. Po pierwsze, w systemach komputerowych informacja jest przecho­wywana znacznie dłużej i dlatego przeglądanie jest zdecydowanie większym zagrożeniem niż podsłuchiwanie. Po drugie, informacja przesyłana kanałami łączności jest narażona na podsłuch nawet wtedy, kiedy dostęp do systemu jest zabroniony. Przeglądanie natomiast jest możliwe jedynie wówczas, gdy użytkownik ma prawo dostępu do systemu i do wybranych obszarów pamięci.

Ochrona systemu komputerowego Stosowanie technik kryptograficznych nadal jest mało popularne w Polsce. Wynika to zarówno ze słabej znajomości tematu, jak i z braku wiedzy o zagrożeniach, na jakie narażone są dane przechowywane w systemach komputerowych oraz transmitowane za pośrednictwem rozmaitych mediów. Niewielu użytkowników systemów komputerowych zdaje sobie sprawę z faktu, iż większość informacji przesyłanych za pośrednictwem sieci lokalnych i rozległych może być w stosunkowo łatwy sposób przechwycona bądź też zmodyfikowana. Często spotykam się z przeświadczeniem użytkowników systemów komputerowych, że ochrona zasobów przy użyciu prostej identyfikacji użytkownika, polegającej na podaniu systemowi zdalnemu odpowiedniego identyfikatora i hasła, zapewnia wysoki poziom bezpieczeństwa. Jest to jednak dalekie od prawdy. Postaram się pokazać, jak złudne jest przekonanie o rzekomym bezpieczeństwie danych przesyłanych za pośrednictwem sieci komputerowych i jakie najczęstsze zagrożenia czyhają na Wasze dane, a także jak można zabezpieczyć się przed tymi zagrożeniami, stosując dostępne techniki kryptograficzne, czyli mówiąc wprost poprzez odpowiednie szyfrowanie przesyłanych informacji, zapewniające odpowiedni poziom ich poufności, oraz właściwą identyfikację systemu i użytkownika.

JAK CHRONIĆ INFORMACJE Przed tego typu zagrożeniami możemy chronić nasze dane, korzystając z obecnie dostępnych narzędzi kryptograficznych. Co może wydać się dziwne, efektywne narzędzia tego rodzaju mogą okazać się dość tanie lub wręcz bezpłatne. Istnieją także rozwiązania drogie, a nawet bardzo drogie, bazujące na specjalizowanym sprzęcie współpracującym z odpowiednim oprogramowaniem. Dziś przedstawię pokrótce rozwiązania najbardziej dostępne - bezpłatne i tanie, co wcale nie musi oznaczać, że mało wartościowe. Podstawową zaletą tych rozwiązań jest ich dostępność i niekiedy bardzo wysoka jakość i efektywność. Zacznijmy od bezpiecznej pracy zdalnej przy użyciu zwykłego identyfikatora i hasła użytkownika. Bardzo często do otwarcia sesji na zdalnym komputerze wykorzystuje się protokół telnet (najczęściej program umożliwiający otwarcie zdalnej sesji również nazywa się telnet) lub rlogin (od ang. Remote Login). Obie te metody mają zasadniczą wadę - zarówno identyfikator, jak i hasło użytkownika przesyłane są za pośrednictwem sieci (niejednokrotnie rozległej - np. Internetu) w postaci czystego tekstu ASCII. Wystarczy więc, by intruz przechwycił tego typu informację i włamanie do systemu gotowe! Goryczy dopełnia fakt, iż cały dialog użytkownika z komputerem zdalnym również jest przesyłany przez sieć w formie czytelnego tekstu. Podobnie wygląda sprawa transmisji plików za pośrednictwem FTP lub też rcp (od ang. Remote Copy).

ZABEZPIECZ SWOJĄ POCZTĘ Świat nie kończy się jednak na tradycyjnej pracy zdalnej. Ogromną rolę we współczesnych systemach informatycznych odgrywa przesyłanie dokumentów - najczęściej w formie poczty elektronicznej. Najpopularniejszy obecnie protokół transmisji poczty elektronicznej - SMTP (ang. Simple Mail Transfer Protocol), stosowany powszechnie w Internecie i w sieciach wykorzystujących technologie intranetowe - nie zawiera praktycznie żadnych mechanizmów, umożliwiających zapewnienie bezpieczeństwa przesyłanej informacji. Podobnie jest z autoryzacją. Użytkownik otrzymujący tradycyjną pocztę internetową nigdy nie może być pewien, że konkretny list napisał nadawca, którego dane można odczytać z nagłówka wiadomości. Co gorsza, nie można mieć pewności, że wiadomość nie jest zmodyfikowana. Autorzy programów obsługujących pocztę internetową próbowali w ciągu ostatnich lat nieco poprawić mechanizmy autoryzacji. W efekcie wysyłanie tzw. fakemails stało się nieco trudniejsze, ale nadal nie niemożliwe. Sytuacja nie jest jednak tragiczna! Użytkownikom Internetu i intranetów pomocny staje sie słynny program PGP (ang. Pretty Good Privacy), którego autorem jest Amerykanin - Philip R. Zimmermann, znany specjalista z zakresu kryptografii i inżynierii oprogramowania, nagrodzony wieloma prestiżowymi nagrodami. P. Zimmermann jest również założycielem firmy PGP Inc., która obecnie wchodzi w skład konsorcjum o nazwie Network Associates. Program PGP jest dostępny w Internecie. Do programu dołączona jest dokładna dokumentacja wraz z opisem bezpiecznego posługiwania się nim. Program PGP może być wykorzystywany do kodowania dowolnych rodzajów plików komputerowych. Więcej informacji na ten temat można znaleźć na stronach WWW: http://www.pgpi.com/ oraz http://www.pgp.com/

Kryptografia na co dzień Większość znanych metod szyfrowania znajduje zastosowanie w życiu codziennym. Elektroniczne systemy kryptograficzne są używane wszędzie tam, gdzie potrzebne jest zaufanie do przekazywanej informacji. Najpowszechniejszym zastosowaniem kryptografii jest wymiana bezpiecznej poczty elektronicznej, do czego najczęściej wykorzystywany jest system PGP. Również dane zgromadzone na dysku twardym często wymagają ochrony przed niepowołanym wzrokiem. Używając jednego z programów szyfrujących, można zaszyfrować katalog, partycję lub nawet cały dysk. Inne zastosowanie to elektroniczne transfery pieniężne. Nie tylko banki, ale także sklepy internetowe wykorzystują metody kryptograficzne do zabezpieczenia informacji przesyłanych pomiędzy sklepem a kupującym. Do nawiązywania bezpiecznego połączenia między dwiema aplikacjami wykorzystywana jest technologia SSL (Secure Sockets Layer), opracowana przez Netscape Communications. Protokół ten pozwala na autoryzację i serwera, i klienta. Jego podstawowe zastosowanie to przesyłanie zakodowanych informacji pomiędzy przeglądarką WWW a serwerem. Protokół SSL umożliwia zestawienie sesji chronionych FTP, Telnet oraz dowolnych innych usług, np. kodowanego dostępu do baz danych.       Program SSH (Secure Shell) pozwala z kolei na zalogowanie się do zdalnej maszyny oraz pracę w chronionej sesji. Narzędzie to przydaje się zwłaszcza administratorom, którzy muszą łączyć się z serwerem przez Internet. Dzięki kodowaniu sesji nie jest możliwe podglądanie przesyłanych informacji, a to oznacza, że operacje wykonywane przez administratora są bezpieczne. Hasło do konta również jest przesyłane jako zaszyfrowany ciąg znaków. Rodzaje programów do szyfrowania informacji Szyfrowanie plików zapisanych na dyskach nie jest popularną metodą zabezpieczania danych przed nieuprawnionym dostępem. Tymczasem liczba programowych narzędzi kryptograficznych wciąż rośnie, a ich ceny spadają. Wśród darmowych lub niedrogich aplikacji do szyfrowania znajdziemy programy służące do ochrony pojedynczych plików (tych jest najwięcej), narzędzia szyfrujące całe partycje lub dyski oraz aplikacje do tworzenia zaszyfrowanych dysków wirtualnych. Bezpieczny program do szyfrowania danych korzysta z certyfikowanego algorytmu szyfrowania i klucza o długości przynajmniej 128 bitów

Programy do szyfrowania To najszerzej reprezentowana rodzina aplikacji szyfrujących. Większość programów jest udostępniana za darmo. Należą do nich: Enigma (z interfejsem w języku polskim), FineCrypt, HandyBits EasyCrypto Deluxe, MaxCrypt, Mooseoft Encrypter, Secure Task i Ashampoo Privacy Protector Plus. Wszystkie wspomniane aplikacje, z wyjątkiem MaxCrypta prócz szyfrowania pojedynczych plików oferują również ochronę całych katalogów. Mechanizm szyfrowania pojedynczych plików znajdziemy też w niektórych aplikacjach szyfrujących całe dyski (Cryptainer, CryptoMagic, PGP, Encryption Plus Folders). Zazwyczaj mamy możliwość stworzenia zaszyfrowanego pliku wykonywalnego, który zostanie automatycznie odkodowany po wpisaniu hasła, także na komputerze, na którym nie zainstalowano pakietu szyfrującego. Niestety, najprostsze aplikacje nie umożliwiają automatyzacji procesu szyfrowania. Po skończeniu pracy z plikiem i zaszyfrowaniu go należy pamiętać o trwałym usunięciu go z dysku twardego. Zwykłe skasowanie nie wystarczy. Gdy użytkownik, przed którym chcemy ukryć nasze informacje, zorientuje się, że zostały one po prostu usunięte, skorzysta z narzędzi do odzyskiwania utraconych danych i uzyska dostęp do skasowanych plików. Spośród wspomnianych pakietów na takie skasowanie danych, by nie można ich było odzyskać, pozwalają programy PGP, FineCrypt i Mooseoft Encrypter.

BIBLIOGRAFIA Dorothy Elizabeth Robling Denning "Kryptografia i ochrona danych" http://www.cyber.com.pl/archiwum/12/25.shtml http://pl.wikipedia.org/wiki/Kryptografia_asymetryczna http://www.wsp.krakow.pl/papers/pkirys1.html