Jedną z rzeczy, które stały się oczywiste w erze Internetu, jest to, że uniemożliwienie osobom nieupoważnionym uzyskania dostępu do danych przechowywanych w systemach komputerowych z dostępem do sieci jest niezwykle trudne. Wystarczy, że pracownik kliknie na niewłaściwy link w e-mailu lub odpowie nieświadomie na pozornie uzasadnioną prośbę o informacje, a intruz może uzyskać pełny dostęp do wszystkich Twoich danych. W dzisiejszym środowisku regulacyjnym i public relations takie naruszenie może mieć katastrofalne skutki.
Ale co by było, gdybyś miał pewność, że nawet jeśli napastnik uzyska dostęp do Twoich informacji, nie będzie mógł ich wykorzystać? Taką rolę pełni szyfrowanie danych.
Jak działa szyfrowanie
Podstawową ideą szyfrowania jest przekształcenie danych w formę, w której oryginalne znaczenie jest zamaskowane i tylko osoby odpowiednio upoważnione mogą je odszyfrować. Dokonuje się tego poprzez zakodowanie informacji przy użyciu funkcji matematycznych opartych na liczbie zwanej kluczem. Odwrotny proces, przy użyciu tego samego lub innego klucza, jest używany do odkodowania (lub odszyfrowania) informacji. Jeśli ten sam klucz jest używany zarówno do szyfrowania, jak i deszyfrowania, mówi się, że proces jest symetryczny. Jeśli używane są różne klucze, proces jest określany jako asymetryczny.
Dwa z najczęściej używanych obecnie algorytmów szyfrowania to AES i RSA. Oba są bardzo skuteczne i bezpieczne, ale zazwyczaj są używane na różne sposoby. Przyjrzyjmy się, jak je porównać.
Szyfrowanie AES
AES (Advanced Encryption Standard) stał się algorytmem szyfrowania wybieranym przez rządy, instytucje finansowe i dbające o bezpieczeństwo przedsiębiorstwa na całym świecie. Amerykańska Agencja Bezpieczeństwa Narodowego (NSC) używa go do ochrony „ściśle tajnych” informacji w kraju.
Algorytm AES kolejno stosuje serię przekształceń matematycznych do każdego 128-bitowego bloku danych. Ponieważ wymagania obliczeniowe tego podejścia są niskie, AES może być stosowany w urządzeniach konsumenckich, takich jak laptopy i smartfony, a także do szybkiego szyfrowania dużych ilości danych. Na przykład, seria komputerów mainframe IBM z14 używa AES do szyfrowania wszechobecnego, w którym wszystkie dane w całym systemie, w stanie spoczynku lub w tranzycie, są szyfrowane.
AES jest algorytmem symetrycznym, który używa tego samego 128-, 192- lub 256-bitowego klucza zarówno do szyfrowania, jak i deszyfrowania (bezpieczeństwo systemu AES wzrasta wykładniczo wraz z długością klucza). W przypadku nawet 128-bitowego klucza, zadanie złamania AES poprzez sprawdzenie każdej z 2128 możliwych wartości klucza (atak „brute force”) jest tak pracochłonne obliczeniowo, że nawet najszybszy superkomputer potrzebowałby na to średnio ponad 100 trylionów lat. W rzeczywistości AES nigdy nie został złamany i na podstawie obecnych trendów technologicznych oczekuje się, że pozostanie bezpieczny przez wiele lat.
Zapoznaj się z naszym eBookiem
IBM i Encryption 101
Ten eBook zawiera wprowadzenie do szyfrowania, w tym najlepsze praktyki szyfrowania w systemie IBM i.
Szyfrowanie RSA
Nazwa RSA pochodzi od nazwisk naukowców z MIT (Rivest, Shamir i Adleman), którzy po raz pierwszy opisali ją w 1977 roku. Jest to algorytm asymetryczny, który używa publicznie znanego klucza do szyfrowania, ale wymaga innego klucza, znanego tylko zamierzonemu odbiorcy, do odszyfrowania. W tym systemie, zwanym odpowiednio kryptografią klucza publicznego (PKC), klucz publiczny jest iloczynem dwóch wielkich liczb pierwszych. Tylko ten iloczyn, o długości 1024, 2048 lub 4096 bitów, jest udostępniany publicznie. Ale deszyfrowanie RSA wymaga znajomości dwóch czynników pierwszorzędnych tego iloczynu. Ponieważ nie jest znana metoda obliczania czynników pierwszych tak dużych liczb, tylko twórca klucza publicznego może również wygenerować klucz prywatny wymagany do odszyfrowania.
RSA jest bardziej wymagający obliczeniowo niż AES i znacznie wolniejszy. Jest zwykle używany do szyfrowania tylko małych ilości danych.
Jak AES i RSA współpracują ze sobą
Poważnym problemem z AES jest to, że jako algorytm symetryczny, wymaga, aby zarówno szyfrujący, jak i deszyfrujący używali tego samego klucza. Powoduje to powstanie kluczowego problemu związanego z zarządzaniem kluczem – w jaki sposób można rozprowadzić ten najważniejszy tajny klucz do setek odbiorców na całym świecie bez ponoszenia ogromnego ryzyka, że zostanie on gdzieś po drodze nieostrożnie lub celowo skompromitowany? Odpowiedzią jest połączenie zalet szyfrowania AES i RSA.
W wielu nowoczesnych środowiskach komunikacyjnych, w tym w Internecie, większość wymienianych danych jest szyfrowana za pomocą szybkiego algorytmu AES. Aby uzyskać tajny klucz wymagany do odszyfrowania tych danych, upoważnieni odbiorcy publikują klucz publiczny, zachowując jednocześnie powiązany z nim klucz prywatny, który znają tylko oni. Następnie nadawca używa tego klucza publicznego i algorytmu RSA do zaszyfrowania i przesłania każdemu odbiorcy jego własnego tajnego klucza AES, którego można użyć do odszyfrowania danych.
Aby uzyskać więcej informacji na temat szyfrowania, przeczytaj nasz eBook: IBM i Encryption 101
.