Certyfikaty publicznych kluczy zapewniają ochronę danych

Zapewnienie poufności danych przesyłanych przez internet i intranety staje się jednym z podstawowych wymagań, którego spełnienie będzie warunkować rozszerzenie usług świadczonych przez te sieci.

Zapewnienie poufności danych przesyłanych przez internet i intranety staje się jednym z podstawowych wymagań, którego spełnienie będzie warunkować rozszerzenie usług świadczonych przez te sieci.

Do powszechnie stosowanych narzędzi zabezpieczających transmisję danych poprzez Internet i sieci intranet należą: kryptografia kluczy publicznych i wykorzystanie organu certyfikującego CA (Certificate Authority). Jako powszechnie stosowaną metodę formatowania certyfikatów kluczy publicznych przyjęto standard X. 509.

Certyfikaty standardu X.5O9 są stosowane w większości aplikacji sieciowych, które mają na celu zapewnienie bezpieczeństwa. Należą do nich: IP Security (IPSec), Secure Sockets Layer (SSL), Secure Electronic Tmusaction (SET) i Secure Multi-propose Internet Maił Extensions (S/MIME).

Standard X.5O9 przewiduje posiadanie przez użytkownika dwóch kluczy: klucza prywatnego, który jest znany tylko użytkownikowi, i klucza publicznego, który jest ogólnie dostępny innym użytkownikom. Kryptografii kluczy publicznych używa się głównie do rozpowszechniania i legalizacji kluczy. Użytkownik może zakodować wiadomość używając konwencjonalnego klucza, takiego jak klucz DES (Dnta Encryption Standard), a następnie zakodować go przy użyciu klucza publicznego odbiorcy i dołączyć do wiadomości. Odbiorca może użyć pasującego prywatnego klucza do odzyskania klucza DES i zdeko-dować wiadomość.

Standard X.5O9 i kryptografia kluczy publicznych stosują do legalizacji podpis cyfrowy. Użytkownik tworząc komunikat może w nim wygenerować streszczenie (digest) lub odcisk palca. Następnie za pomocą prywatnego klucza użytkownik szyfruje streszczenie do postaci podpisu. Odbiorca może użyć publicznego klucza nadawcy w celu zdeszyfrowania podpisu i jego porównania z odciskiem palca zawartym w przychodzącym komunikacie, w ten sposób upewniając się co do jego autentyczności.

Chociaż kryptografia kluczy publicznych, dzięki odpowiedniemu algorytmowi i dostatecznej długości klucza, jest właściwie niemożliwa do złamania, to jednak ma słaby punkt: skąd odbiorca może wiedzieć, który z kluczy jest kluczem obowiązującym?

Rozwiązanie problemu

Problem ten rozwiązują standard X.5O9 i certyfikacja kluczy publicznych. W gruncie rzeczy certyfikat składa się z dwu elementów: klucza publicznego i identyfikacji (rozpoznania) użytkownika będącego właścicielem klu-

cza, wraz z całym blokiem podpisanym przez godną zaufania osobę trzecią. Zazwyczaj tą osobą trzecią jest organ CA, który cieszy się zaufaniem środowiska użytkowników - agencji rządowych lub instytucji finansowych.

W celu uzyskania certyfikatu użytkownik może, w sposób zapewniający bezpieczeństwo, przedstawić swój klucz publiczny do CA. Po otrzymaniu certyfikatu użytkownik może go opublikować i każdy, kto potrzebuje klucza publicznego tego użytkownika, może otrzymać certyfikat i zweryfikować ważność klucza przez CA.

Certyfikat publicznego klucza wykorzystuje technologię szyfrowania klucza publicznego do zabezpieczenia i zatwierdzenia kluczy publicznych. Aby utworzyć klucz, użytkownik musi zgłosić się do CA. Rozpowszechniając swój klucz publiczny użytkownik dołącza pewien rodzaj swojego unikatowego identyfikatora.

Klucz publiczny i identyfikator użytkownika łącznie z identyfikacją CA tworzą nie podpisany certyfikat. Następnie CA wybiera kod hash (hash codc) tego nie podpisanego certyfikatu. Kod hash jest małym blokiem danych, które pełnią funkcję odpowiednika linii papilarnych. W praktyce dwa różne certyfikaty będą zawsze rodzić dwa różne kody hash.

Następnie, w celu wytworzenia podpisu, CA przy pomocy własnego klucza utajnia kod hash Powszechnie stosowany do tego celu algorytm klucza publicznego pochodzi od RSA Data Security. Ponieważ tylko CA ma jego prywatny klucz, to tylko CA może wytworzyć ten pod-

pis. CA dołącza podpis do certyfikatu, tworząc w ten sposób podpisany certyfikat.

Użytkownik może dostarczyć ten certyfikat do wszystkich, którzy potrzebują jego klucza publicznego. W celu zweryfikowania poprawności tego klucza odbiorca odzyskuje z podpisu kod hash dekodując podpis przy użyciu klucza publicznego CA.

Następnie odbiorca wylicza kod hash nie podpisanego certyfikatu i porównuje go z kodem hash odzyskanym z podpisu. Jeśli oba kody są zgodne, to oznacza, że certyfikat jest ważny i odbiorca może ufać, że publiczny klucz w tym certyfikacie należy do identyfikowanego użytkownika.

Inne własności

Oprócz identyfikatora użytkownika, jego klucza publicznego i identyfikatora CA certyfikat standardu X.5O9 zawiera inne elementy: identyfikator algorytmu użytego do podpisania certyfikatu i okres ważności certyfikatu. Ostatnia wersja standardu - X.509v3 - zawiera również pole rozszerzenia w celu zapewnienia większej elastyczności i przekazywania informacji potrzebnej w szczególnych sytuacjach.

Ponadto standard X.5O9 zapewnia opcje potrzebne do unieważnienia klucza przed wygaśnięciem jego ważności. Umożliwia to użytkownikowi anulowanie klucza w dowolnej chwili.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200