e-mail:kontakt@signet.pl
Strona główna > Wprowadzenie do PKI

WstępInfrastruktura Klucza Publicznego - PKI
Metody szyfrowania informacjiFunkcje PKI
Certyfikaty cyfroweStandardy PKI


Wstęp

Nowoczesne, elektroniczne środki przekazu wymagają zastosowania metod, gwarantujących przynajmniej taki sam poziom bezpieczeństwa jak metody tradycyjne. Dokumenty elektroniczne przesyłane siecią komputerową (np. przez Internet) powinny być szyfrowane, aby nie mogły ich odczytać osoby niepowołane. W ten sposób mamy zagwarantowaną tajemnicę korespondencji. Dodatkowo musi istnieć system dający pewność, że podczas transmisji dokument nie został zmieniony. Jeżeli do dokumentu nie można nic dodać ani nic z niego usunąć, to korespondencja jest chroniona przed fałszerstwem. Podobieństwo do sposobów zabezpieczeń z przeszłości mają w nowej technologii podkreślać specjalnie dobrane nazwy: podpis elektroniczny, certyfikat cyfrowy, klucz elektroniczny itp. Zwykły podpis składany na papierze powinien zostać zastąpiony podpisem elektronicznym. Tylko jedna osoba może posługiwać się takim podpisem, co zapewnia autentyczność nadawcy. Ostatnim warunkiem stawianym elektronicznym systemom wymiany dokumentów jest tzw. niezaprzeczalność nadania i odbioru, czyli gwarancja na to, że dokument na pewno został wysłany przez tego, który figuruje na nim jako nadawca i trafił na pewno do tej osoby, która przez nadawcę została wskazana jako adresat przesyłki. Dodatkowo takie dokumenty mogą być dodatkowo stemplowane znacznikiem czasu, który określa moment ich wysłania.

do góry

Metody szyfrowania informacji

Metody szyfrowania dzielą się generalnie na dwie grupy :

Pierwsza metoda nazywana jest również szyfrowaniem symetrycznym, gdyż ten sam tajny klucz jest wykorzystywany zarówno do szyfrowania jak i deszyfrowania wiadomości. Natomiast metoda szyfrowania z parą kluczy nazywana jest szyfrowaniem asymetrycznym lub szyfrowaniem z kluczem jawnym (publicznym), gdyż posługuje się dwoma oddzielnymi kluczami, z których jeden jest tajny (prywatny) a drugi jawny (publiczny). Klucz publiczny jest ogólnie dostępny w sieci, klucz prywatny jest natomiast znany tylko właścicielowi klucza i chroniony przed innymi osobami. Któregokolwiek ze związanych ze sobą kluczy można użyć do szyfrowania, drugiego do deszyfrowania. Dzięki temu każdy użytkownik może odszyfrować to, co zostało zaszyfrowane kluczem prywatnym. Jednocześnie tylko posiadacz klucza prywatnego może odszyfrować to, co ktokolwiek zaszyfrował jego kluczem publicznym. Ponieważ nie jest możliwe na drodze obliczeń określenie klucza deszyfrującego przy znajomości jedynie algorytmu kryptograficznego (sposobu szyfrowania) i klucza szyfrującego, to wynalezione ćwierć wieku temu metody szyfrowania asymetrycznego zyskały sobie w tym czasie opinię wyjątkowo bezpiecznych.

Jedynym zagrożeniem dla procesu bezpiecznej wymiany dokumentów z zastosowaniem szyfrowania asymetrycznego jest możliwość zastąpienia klucza publicznego jednej z korespondujących stron kluczem publicznym intruza. Druga strona, będąc przekonana o tym, że korzysta z klucza publicznego odbiorcy korespondencji, zaszyfruje ją niewłaściwym kluczem, przez co umożliwi odczytanie wiadomości intruzowi. Aby zapobiec takiej sytuacji, należy stworzyć mechanizm zwany procesem certyfikacji klucza, który potwierdzałby autentyczność używanego klucza i prawo do korzystania z niego przez daną osobę, firmę czy instytucję.

Rys. 1  Szyfrowanie symetryczne





Rys. 2  Szyfrowanie asymetryczne


do góry

Certyfikaty cyfrowe

Certyfikat cyfrowy to zgodnie z Dyrektywą Unii Europejskiej elektroniczne zaświadczenie za pomocą którego dane służące do weryfikacji podpisu elektronicznego są przyporządkowywane do określonej osoby i potwierdzają tożsamość tej osoby.

Fizycznie jest to ciąg danych zapisanych na odpowiednim nośniku - np. na karcie mikroprocesorowej (ang. smartcard). Najpopularniejszym standardem certyfikatów jest X.509 składający się z pól takich jak: wersja, numer seryjny, wydawca certyfikatu, ważność, podmiot dla którego certyfikat został wystawiony, klucz publiczny oraz podpis organu wydającego certyfikat. Autentyczność tego podpisu można sprawdzić tylko wtedy, gdy znany jest klucz publiczny organu certyfikującego. Klucz ten znajduje się na certyfikacie wystawionym dla organu certyfikującego przez organ wyższej instancji. Zatem weryfikacja certyfikatu to prześledzenie łańcucha zaufania, zakończonego przez organ nadrzędny, cieszący się powszechnym zaufaniem, który sam dla siebie wystawia certyfikat. Dlatego też kryptografia klucza publicznego wymaga sprawnie funkcjonującej infrastruktury, zwanej Infrastrukturą Klucza Publicznego (PKI). Infrastruktura ta służy do zarządzania cyfrowymi certyfikatami i kluczami szyfrującymi dla osób, programów i systemów. Większość najważniejszych standardów w dziedzinie bezpieczeństwa teleinformatycznego jest zaprojektowana tak, aby umożliwić współpracę z PKI. Do standardów tych należą: SSL (Secure Socket Layer), TLS , SMIME (Secure Multipurpose Internet Mail Extensions), SET (Secure Eletronic Transactions), IPSec (IP Security).

Aplikacje korzystające z infrastruktury PKI stosują :

  • szyfrowanie danych dla zapewnienia ich poufności,
  • podpisy cyfrowe dla zapewnienia niezaprzeczalności i weryfikacji integralności danych,
  • certyfikaty dla uwierzytelnienia osób, aplikacji i serwisów oraz dla zapewnienia kontroli dostępu (uwierzytelnienia).

Infrastruktura PKI ma zastosowanie w :

  • bezpiecznej poczcie,
  • transakcjach typu e-commerce (handel elektroniczny),
  • wirtualnych sieciach prywatnych (Virtual Private Network - VPN),
  • systemach ERP,
  • zabezpieczeniach stacji roboczej użytkownika (jego danych),
  • zapewnieniu bezpieczeństwa na witrynach internetowych, urządzeniach i aplikacjach klienta.

Certyfikaty cyfrowe zostały skodyfikowane w ustawodawstwie wielu państw.

do góry

Infrastruktura Klucza Publicznego - PKI

Idea PKI oparta jest na cyfrowych certyfikatach potwierdzających związek między konkretnymi uczestnikami transakcji a kluczami kryptograficznymi, stosowanymi podczas realizowania bezpiecznych transakcji.

Certyfikat cyfrowy jest wydawany przez Urząd Certyfikacji (Certification Authority - CA), który w momencie wydania dokumentu potwierdza podpisem cyfrowym związek pomiędzy użytkownikiem a kluczem, którego używa. Ponieważ tak wystawiony certyfikat ma zawsze pewien okres ważności (np. jeden rok), należy przewidzieć następujące sytuacje związane z zarządzaniem certyfikatami: rejestracja użytkowników, generowanie certyfikatów, dystrybucja, aktualizacja i unieważnianie.

Struktura PKI składa się z trzech głównych elementów :

  • Urzędów Rejestracji (ang. Registration Authority - RA), dokonujących weryfikacji danych użytkownika a następnie jego rejestracji.

  • Urzędów Certyfikacji (ang. Certification Authority - CA), wydających certyfikaty cyfrowe. Jest to poprzedzone procesem identyfikacji zgłaszającego się o wydanie certyfikatu. Pozytywne rozpatrzenie zgłoszenia kończy się wydaniem certyfikatu wraz z datą jego rozpatrywania.

  • Repozytoriów kluczy, certyfikatów i list unieważnionych certyfikatów (ang. Certificate Revocation Lists - CRLs). Typowa implementacja to umożliwienie, w oparciu o protokół LDAP, dostępu do certyfikatów i CRLs. Inne sposoby realizacji mogą być oparte na protokołach X.500, HTTP, FTP i poczcie elektronicznej. Certyfikat może stać się nieważny przed datą jego wygaśnięcia. Przyczyną tego może być np. zmiana nazwiska lub adresu poczty elektronicznej użytkownika czy ujawnienie klucza prywatnego. W takich przypadkach CA odwołuje certyfikat i umieszcza jego numer seryjny na ogólnodostępnej liście CRL.

Struktura PKI jest tworzona w oparciu o Główne CA, przy czym dla każdego z obszarów zastosowań (np. handel elektroniczny, sektor bankowo-finansowy, administracja publiczna), które będą korzystać z PKI, można tworzyć odrębne CA podległe Głównemu Urzędowi. Główne CA określa ogólną politykę certyfikacji, natomiast CA obsługujące dany obszar zastosowań odpowiadając za politykę w tym obszarze. W strukturze podległej danemu CA dla konkretnych zastosowań może istnieć dowolna liczba podległych CA oraz użytkowników. Taka struktura tworzy hierarchię uwierzytelniania, która z kolei określa łańcuch certyfikatów, wiodący od użytkowników aż do cieszącego się ich zaufaniem Głównego CA. Krajowa struktura PKI musi współdziałać ze strukturami PKI innych krajów, aby zapewnić usługi o podobnym do opisanych charakterze w kontaktach międzypaństwowych.

PKI zapewnienia usługi uwierzytelniania takie jak :

  • uwierzytelnianie podmiotów partnerskich (ang. peer-entity authentication), pozwalające na pewną identyfikację przez innych użytkowników,
  • uwierzytelnianie danych (ang. data authentication), pozwalająca stwierdzić, że informacja była świadomie podpisana przez danego użytkownika,
  • integralność danych (ang. data integrity), pozwalająca łatwo określić, czy informacja podpisana cyfrowo nie została zmieniona,
  • niezaprzeczalność (ang. non-repudation), uniemożliwiająca użytkownikom późniejsze wyparcie się faktu nadania wiadomości.

oraz usługi poufności do których należą:

  • poufność (ang. confidentiality), umożliwiająca użytkownikom ochronę danych przed nieuprawnionym ujawnieniem,
  • prywatność (ang. privacy), pozwalająca użytkownikom na nakazanie specjalnej obsługi informacji podczas transmisji w centrach łączności, pomiędzy centrami łączności a odbiorcami końcowymi oraz w zakresie przechowywania informacji.

do góry

Funkcje PKI

Podstawowe funkcje, które musi realizować każde PKI, aby zapewnić właściwy poziom usług to :

  • Rejestracja (ang. Registration)
    Użytkownik końcowy składa wniosek do Organu Rejestracji o wydanie certyfikatu. Jest to związane z dostarczeniem szeregu informacji, wymaganych przez Kodeks Postępowania Certyfikacyjnego (Certification Practices Statement - CPS) wybranego CA. Dane te to np. nazwa własna, nazwa domenowa czy adres IP. Zanim CA wystawi certyfikat sprawdza (korzystając z wytycznych zapisanych w CPS), czy podane przez użytkownika dane są zgodne z prawdą. Jeżeli o certyfikat ubiega się osoba fizyczna, CA weryfikuje także autentyczność własnoręcznego podpisu na wniosku o wydanie certyfikatu.

  • Certyfikacja (ang Certification)
    Jeżeli dane podane przez ubiegającego się o certyfikat we wniosku zostaną potwierdzone, CA wystawia nowy certyfikat (zawierający m.in. klucz publiczny posiadacza) i dostarcza go użytkownikowi. Jednocześnie certyfikat zostaje udostępniony wszystkim zainteresowanym poprzez złożenie go we właściwym repozytorium publicznym.

  • Generacja kluczy (ang. Key generation)
    Para kluczy (prywatny i publiczny) może zostać wygenerowana samodzielnie przez użytkownika końcowego lub może on tę operację powierzyć CA. W pierwszym przypadku użytkownik przesyła do CA jedynie swój klucz publiczny w celu poddania go procesowi certyfikacji. Klucz prywatny pozostaje przez cały czas w rękach właściciela, dlatego też metodę tę uważa się za najbardziej bezpieczną. Jeżeli natomiast klucze generuje CA, to są one dostarczane do użytkownika końcowego w sposób gwarantujący ich poufność. Najchętniej wykorzystuje się do tego celu karty mikroprocesorowe (ang. smartcard) czy karty PCMCIA, obie zabezpieczone dodatkowym kodem PIN.

  • Odnawiania kluczy (ang. Key update)
    Wszystkie pary kluczy oraz skojarzone z nimi certyfikaty wymagają okresowego odnawiania. Jest to kolejne zabezpieczenie na wypadek ujawnienia klucza prywatnego skojarzonego z kluczem publicznym umieszczonym na certyfikacie. Istnieją dwa przypadki, kiedy wymiana kluczy jest konieczna :

    • Upłynął okres ważności certyfikatu.
      Jest to sytuacja normalna, występująca regularnie co pewien czas (np. raz do roku). Wymiana kluczy odbywa się wtedy w możliwie krótkim czasie, bez dodatkowych formalności.

    • Klucz prywatny skojarzony z kluczem publicznym umieszczonym na certyfikacie został skompromitowany.
      Jest to sytuacja wyjątkowa, a więc wymiana kluczy nie będzie już tak płynna jak poprzednio. W takich przypadkach CA odwołuje certyfikat poprzez umieszczenie jego numeru seryjnego na ogólnodostępnej liście CRL. Od tego momentu stary certyfikat traci ważność i rozpoczyna się procedura wystawiania nowego certyfikatu. Najgorszy przypadek dla każdego CA to kompromitacja klucza prywatnego jego Głównego CA (Root CA). W takim przypadku cała infrastruktura PKI podległa temu pechowemu CA zostaje uznana za skompromitowaną i musi być tworzona od nowa.

  • Certyfikacja wzajemna (ang. Cross-cerification)
    Ponieważ społeczność międzynarodowa nie stworzyła dotąd Globalnego Organu Certyfikacji (Global Root CA), powstało wiele Głównych Organów Certyfikacji (Root CA), początkowo nie powiązanych wzajemnie relacjami zaufania. Certyfikacja wzajemna rozwiązuje ten problem i pozwala użytkownikom z jednej struktury PKI ufać certyfikatom wystawianym przez CA z innej struktury. Główne CA z różnych struktur certyfikują się wzajemnie - może być to certyfikacja jednokierunkowa albo dwukierunkowa.

  • Odwołanie certyfikatu (ang. Revocation)
    Istnieją sytuacje, w których zachodzi potrzeba wcześniejszego odwołania certyfikatu. Powodem może być kompromitacja klucza prywatnego, zmiana nazwy przez użytkownika końcowego czy też odejście pracownika z firmy, która wystawiła mu certyfikat. Zdefiniowana w standardzie X.509 metoda odwoływania certyfikatów wykorzystuje wspomniane już Listy Unieważnionych Certyfikatów (Certificate Revocation Lists - CRLs), okresowo publikowane przez CA w tym samym repozytorium, w którym są przechowywane certyfikaty. Każdy certyfikat posiada swój unikalny numer seryjny przypisany przez CA w momencie jego wystawiania. Lista CRL zawiera spis identyfikatorów odwołanych certyfikatów i jest opatrzona znacznikiem czasu wystawionym przez CA.

  • Odzyskiwanie klucza (ang. Key recovery)
    Jest to dodatkowe zabezpieczenie na wypadek sytuacji, gdy użytkownik utraci swoje klucze. Jeżeli wszystkie klucze do szyfrowania albo negocjacji kluczy były przechowywane w bezpiecznym archiwum, to będzie można je odzyskać i umożliwić dostęp do zaszyfrowanych danych. Najważniejszym zagadnieniem przy realizacji tej funkcji jest zagwarantowanie, że klucze będzie mógł odzyskać tylko ich właściciel a nie osoba trzecia.

do góry

Standardy PKI

Standardy PKI można podzielić na dwie grupy: standardy poziomu użytkownika i standardy dla samego PKI. Zastosowanie określonych standardów w strukturze PKI pozwala na współpracę między licznymi strukturami PKI i korzystanie z PKI w wielu aplikacjach.

Standardy PKI są konieczne dla:

  • procedury rejestracji,
  • formatów certyfikatów,
  • formatów CRL,
  • formatów podpisów cyfrowych,
  • protokołów typu challenge / response.

Próbę zestandaryzowania funkcji PKI podjęła grupa robocza IETF (Internet Engineering Task Force), znana również jako grupa PKIX (PKI dla certyfikatów X.509). Cztery podstawowe składniki modelu PKIX to: użytkownik, CA, RA oraz repozytorium certyfikatów. Specyfikacja PKIX oparta jest na dwóch innych standardach: X.509 Międzynarodowego Związku Telekomunikacji (International Telecommunication Union - ITU) i PKCS Standardów Kryptografii Klucza Publicznego (Public Key Cryptography Standards) autorstwa RSA Data Security.

Najpopularniejsze standardy PKCS to :

  • PKCS#7 - Cryptographic Message Syntax Standard (standard kryptograficznego kodowania wiadomości) ,
  • PKCS#10 - Certificate Request Syntax Standard (standard kodowania wniosku o certyfikat),
  • PKCS#12 - Personal Information Exchange Syntax Standard (standard kodowania informacji poufnych w postaci plików).

do góry


© TELEKOMUNIKACJA POLSKA S.A. Wszelkie prawa zastrzeżone.   Nota prawna.
TPI    TP    Orange    WP    Marketplanet