METODY KRYPTOGRAFICZNE

Obrazek
Do podstawowych technik służących do wzmocnienia poziomu bezpieczeństwa należą metody kryptograficzne. Początkowo była dostępna wyłącznie kryptografia symetryczna. Technika ta polega na szyfrowaniu danych na czas transmisji lub przechowywania na dysku, a następnie deszyfrowaniu tym samym kluczem, którym zostały zaszyfrowane. Jednak stwarza ona spore ograniczenia. Zasadniczą trudnością jest konieczność dysponowania takim samym kluczem przez dwie strony biorące udział w komunikacji. Pojawia się więc problem, jak przekazać taki klucz partnerowi, jak chronić go przed obcymi, w jaki sposób dyscyplinować użytkowników, by nie używali tego samego klucza symetrycznego do komunikacji z wieloma osobami, co zdecydowanie zmniejsza wiarygodność klucza. Wady te doprowadziły do poszukiwania innych rozwiązań.

Szerokie możliwości w zakresie ochrony sieciowych systemów komputerowych otworzyła kryptografia asymetryczna. Szyfry asymetryczne korzystają z dwóch różnych, ale zależnych od siebie kluczy. Jeden z tych kluczy jest nazywany publicznym. Może on być rozgłaszany, przesyłany w sieci, magazynowany. Nie stanowi to żadnego zagrożenia dla bezpieczeństwa drugiego klucza pary - prywatnego. Jak sama nazwa wskazuje klucz prywatny musi być ściśle chroniony. Nie jest możliwe, by ktoś inny poza twórcą klucza wyznaczył klucz prywatny na podstawie klucza publicznego. Stąd bierze się nazwa techniki: kryptografia klucza publicznego Public Key Cryptography, PKC.

Obrazek
Ogromną zaletą kryptografii klucza publicznego jest możliwość zastosowania obu kluczy pary zarówno do szyfrowania, jak i deszyfrowania. Drugą ważną własnością jest rozszerzony zakres zastosowań, zaoferowanie innych usług niż szyfrowanie. Wadą jest mniejsza wydajność niż w przypadku kryptografii symetrycznej i stosunkowo rozbudowana implementacja. Za pomocą kryptografii klucza publicznego można wysyłać zaszyfrowane dane. Wówczas do zaszyfrowania używamy klucza publicznego adresata, a do rozszyfrowania jest niezbędny jego klucz prywatny odbiorcy. Technika ta pozwala również złożyć podpis cyfrowy pod komunikatem, udowadniający wiarygodność źródła danych. W tym celu komunikat jest poddawany działaniu jednokierunkowej funkcji skrótu, hash function. Niezależnie od rozmiaru komunikatu daje to ciąg znaków o stałym rozmiarze, który w następnym kroku jest szyfrowany kluczem prywatnym nadawcy. Weryfikacji podpisu może dokonać każdy, kto zna klucz publiczny nadawcy. Pozytywna weryfikacja podpisu daje pewność, że komunikat nie został sfałszowany, wysłała go faktycznie osoba wskazywana jako nadawca.

Z podpisem cyfrowym łączy się kolejna usługa kryptografii klucza publicznego - integralność danych. Opisany powyżej sposób może służyć nie tylko uwierzytelnieniu nadawcy, ale również daje gwarancję, że wysłane dane nie zostały po drodze przejęte i zmienione. Pewność taką można mieć dlatego, że jednokierunkowa funkcja skrótu nie może wyprodukować tej samej wartości na podstawie dwóch różnych ciągów znaków. Z powodu stosunkowo słabej wydajności algorytmów asymetrycznych często stosuje się kryptografię klucza publicznego wyłącznie do zainicjowania poufnej komunikacji. Jeden z partnerów generuje klucz tajny, szyfruje go kluczem publicznym adresata i wysyła. Odbiorca rozszyfrowuje klucz tajny swoim kluczem prywatnym, następnie klucz tajny zwany kluczem sesji stosuje do szyfrowania symetrycznego. W ten sposób przekazywane są dane przez czas trwania sesji. Takie rozwiązanie jest więc kluczem krótkotrwałym.

Obrazek
Jeżeli klucz publiczny ma być podstawą bezpiecznej komunikacji, to musi być wiarygodny. W tym celu wprowadza się specjalne urzędy certyfikacyjne, które są instytucjami gwarantującymi zaufanie. Urząd certyfikacyjny poświadcza swoim podpisem klucz publiczny i właśnie ten poświadczony klucz publiczny, czyli certyfikat, jest jednym z istotnych elementów bezpiecznej komunikacji. Aby ułatwić użytkownikowi certyfikację klucza urzędy certyfikacyjne zazwyczaj tworzą hierarchię zintegrowaną ze strukturą organizacyjną jednostki. Powstaje tzw. infrastruktura kluczy publicznych, Public Key Infrastructure, PKI. Jej zadaniem jest świadczenie wiarygodnej usługi certyfikacji, utrzymywanie repozytoriów certyfikatów, odwoływanie certyfikatów, które utraciły wiarygodność, prowadzenie list odwołanych certyfikatów, itp.

PKI to obecnie istotny komponent bezpiecznego środowiska pracy. Coraz więcej aplikacji sieciowych korzysta z technik kryptograficznych. Powstały specjalne protokoły wspomagające współpracę z infrastrukturą kluczy publicznych. Do grupy tej zaliczyć można:

We wszystkich tych rozwiązaniach kryptografia asymetryczna jest stosowana do nawiązania komunikacji między klientem a serwerem. Serwer posługuje się swoją parą kluczy: certyfikat, klucz prywatny. Od klienta, w zależności od kontekstu pracy aplikacji oraz od wprowadzonego poziomu ochrony może być wymagane przedstawienie się za pomocą certyfikatu. Na ogół w następnej fazie po uwierzytelnieniu, czyli do samego przesyłania danych między klientem i serwerem jest stosowana kryptografia symetryczna.

Obrazek
Opisana powyżej technika pracy daje dwie ważne korzyści. Po pierwsze dostęp do usług serwera może być autoryzowany. Oraz po drugie dane przekazywane między klientem i serwerem są szyfrowane. Wdrożenie infrastruktury kluczy publicznych umożliwia również implementowanie rozwiązań, w których użytkownik posługuje się kluczem prywatnym oraz certyfikatem w procesie uzyskiwania dostępu do usług sieciowych. Np. przy logowaniu do systemu, dostępie do skrzynki pocztowej, czy dostępie do chronionych danych serwera www. Powstają też systemy pozwalające danemu użytkownikowi korzystać z różnych usług sieciowych, do których wcześniej przyznano mu uprawnienia po jednokrotnym zalogowaniu (single sign-on).



Powrót do spisu treści