Kryptografia - nie tylko szyfrowanie danych (cz. 2)

Zarządzanie kluczami

Głównym problemem przy wdrażaniu dowolnego systemu kryptograficznego jest zarządzanie kluczem. Cykl życia każdego utworzonego klucza szyfrowania jest określany przez zarządzanie kluczem. Tworzenie i wydawanie kluczy szyfrujących to łatwiejsza część tego procesu.

Po pierwsze, klucze nie powinny być tworzone czy aprobowane dopóki, dopóty nie zostanie zweryfikowana tożsamość ich przyszłych posiadaczy. Niektóre systemy wymagają jedynie, aby użytkownik miał istniejące konto logowania i pomyślny proces logowania potwierdził jego prawa do klucza. Inne wymagają dodatkowego sprawdzania przez stronę trzecią, audytu lub sprawdzenia tożsamości (paszport, dowód osobisty itp.).

Użytkownicy często też gubią swoje klucze. Dlatego istotne jest, aby zarządzanie zapewniało także utrzymanie kopii (lub klucza alternatywnego) do ich odtworzenia (tzw. key escrow), kiedy klucze są tworzone i rozprowadzone. Jeżeli potrzebne jest key escrow, to trzeba też rozstrzygnąć, czy ma być przeprowadzone automatycznie, czy wymaga ręcznej interwencji? A także czy metoda odtwarzania zapewnia odtwarzanie klucza, czy też tylko danych?

Kryptografia - nie tylko szyfrowanie danych (cz. 2)

Uzyskanie certyfikatu

W każdym systemie szyfrowania pojawiają się również zdarzenia, które wymuszają unieważnienie rozprowadzonych kluczy przed wygaśnięciem normalnego terminu ważności. Sytuacja taka może wystąpić, gdy zostaną naruszone warunki usługi, podjęte zostanie złośliwe działanie lub po prostu klucze nie są dłużej potrzebne.

Bez względu na przyczynę, dobry system kryptograficzny musi mieć klarowną procedurę odwołania klucza, która powinna określać: jak klucz jest odwoływany; czy proces jest automatyczny, czy też wymaga ręcznej interwencji, oraz ile czasu zajmuje dotarcie informacji o odwołaniu do użytkowników lub aplikacji zależnych od zarządzanych kluczy? Ważne jest też to, czy aplikacje zależne od kluczy sprawdzają informacje o odwołaniu.

W świecie cyfrowych certyfikatów PKI odwołanie jest tradycyjnie obsługiwane przez listy odwołanych certyfikatów CRL (Certificate Revocation Lists). Aplikacje sprowadzają listy odwołanych certyfikatów z CDP (Certificate Revocation List Distribution Point) i konfrontują każdy certyfikat z taką listą.

Coraz częściej jednak metoda CRL jest zastępowana przez OCSP (Online Certificate Status Protocol), w której numery seryjne certyfikatów wysyła się do wcześniej ustalonego respondera OCSP, skąd zwrotnie odsyłana jest informacja, czy certyfikat jest ważny czy odwołany. Proces ten wymaga wysłania i odebrania tylko jednej pozycji, co jest dużo bardziej efektywne niż ściąganie całej listy.

Pomimo to, odwoływanie może być skomplikowane, ponieważ zawsze należy do aplikacji. Wiele aplikacji używających szyfrowania nie sprawdza odwoływania. Odpowiedzialni za bezpieczeństwo powinni zawsze zwracać uwagę, czy ich system obsługuje odwołane lub wygasłe certyfikaty i, w razie braku takiej funkcji, zaimplementować procedury ręczne.


TOP 200