Publiczna prywatność - prywatna publiczność

Dostępne technologie kryptograficzne odpowiednio zabezpieczają całe środowisko pracy - od plików przechowywanych na lokalnym dysku, po komunikację w sieciach rozległych.

Dostępne technologie kryptograficzne odpowiednio zabezpieczają całe środowisko pracy - od plików przechowywanych na lokalnym dysku, po komunikację w sieciach rozległych.

Współczesne systemy wymiany informacji (dostępne w postaci usług internetowych czy też dedykowanego elektronicznego systemu obiegu informacji w firmie) cechuje zorientowanie na użytkownika, co oznacza, że jednym z ich głównych celów jest udostępnienie użytkownikowi informacji w możliwie najprostszy i najwygodniejszy sposób. Często odbywa się to kosztem bezpieczeństwa.

W większości przypadków transmisje sieciowe odbywają się w sposób jawny i są łatwe do odczytania. Dotyczy to także fazy przekazywania hasła podczas logowania w sieci. Zatem potencjalny złodziej może nie tylko podsłuchać i zarejestrować przebieg transakcji sieciowych, ale także przechwycić hasła sieciowe użytkowników będące kluczami do określonych zasobów sieci korporacyjnej.

Jak zatem pogodzić chęć jak najszerszego dzielenia się informacjami z ich zabezpieczeniem w taki sposób, aby tylko uprawnione osoby i serwery miały prawo do ich odczytania? Jak to wykonać nie naruszając istniejącej infrastruktury i nie naginając przyjętych standardów? Jak uczynić prywatne prywatnym przy zachowaniu wszelkich atrybutów publiczności?

Techniki szyfrowania

Przesyłanie i przechowywanie poufnych informacji za pomocą mediów w środowiskach, którym nie możemy ufać, staje się możliwe dzięki technikom kryptograficznym. Dzięki ich stosowaniu zaspokajane są wszelkie aspekty ochrony informacji:

Poufność, czyli możliwość ich odczytania przez ściśle określonych odbiorców.

Integralność dająca gwarancję nienaruszalności, niemożności modyfikacji danych między kolejnymi ich interakcjami z uprawnionymi użytkownikami.

Niezaprzeczalność, czyli potwierdzenie autorstwa danych i ich modyfikacji nawet przy formalnych zaprzeczeniach autora.

Ochrona każdego z tych atrybutów informacji jest zapewniana za pomocą innych technik kryptograficznych, a podstawową rolę pełnią tutaj algorytmy szyfrowania i funkcje skrótu.

Algorytmy szyfrowania można podzielić na dwie grupy charakteryzujące się różnymi sposobami wykorzystania kluczy do szyfrowania i odszyfrowywania informacji. Algorytmy z kluczem symetrycznym wykorzystują ten sam klucz zarówno do operacji utajniania, jak i odtajnienia danych. Są one bardzo szybkie, a właściwie jedyną ich wadą jest konieczność przekazania drugiej stronie w bezpieczny sposób klucza tajnego. Do tej klasy algorytmów należą np. DES (Digital Encryption Standard), RC5 czy IDEA.

Z tym problemem radzi sobie druga grupa algorytmów - algorytmy szyfrowania z kluczem asymetrycznym. W ich przypadku do szyfrowania i deszyfrowania używana jest ściśle określona para kluczy. Informacja zaszyfrowana jednym z kluczy może być odtajniona tylko i wyłącznie za pomocą drugiego. Co więcej, odtwo- rzenie na podstawie znajomości jednego klucza z pary jego odpowiednika wykonującego operację deszyfrowania jest zadaniem niezwykle skomplikowanym obliczeniowo, tak bardzo złożonym, że przyjmuje się, iż praktycznie niemożliwym. Powoduje to, że jeden z kluczy udostępniany jest wszystkim, którzy chcieliby przekazywać zaszyfrowane wiadomości (tzw. klucz publiczny). Drugi z kluczy powinien być natomiast pilnie strzeżony, gdyż będzie służył do odszyfrowywania wiadomości oraz do podpisywania wysyłanych wiadomości (tzw. klucz prywatny). W tej grupie algorytmów najbardziej znane i wykorzystywane są RSA i DSS.

Jedyną wadą algorytmów z kluczem asymetrycznym jest ich niewielka prędkość, powodująca, że są one praktycznie bezużyteczne, jeśli chodzi o ochronę kryptograficzną transmisji sie- ciowych. Najczęściej służą one więc wyłącznie do stworzenia bezpiecznego kanału przekazującego właściwy dla danej transmisji klucz używany w algorytmie z kluczem symetrycznym. Ten ostatni, będąc w posiadaniu bezpiecznie przekazanego klucza, może szybko wykonać zadanie szyfrowania przekazu sieciowego.