Tytuł artykułu ma na celu wzbudzenie ciekawości i skłonienie do odkrycia, co kryje się za tym zagadkowym zapisem. W rzeczywistości jest to jedynie przykład prostego szyfru, który mógłby być używany w kontekście ochrony danych – podobnie jak kryptografia, która chroni informacje przed nieautoryzowanym dostępem.
Kryptografia (lub inaczej w formie zaszyfrowanej: „Tahycxpajorj”) to nauka o zabezpieczaniu informacji za pomocą technik matematycznych, zapewniająca poufność, integralność i autentyczność danych. Jest podstawą bezpiecznych systemów w cyberbezpieczeństwie, tworzeniu oprogramowania i w sieciach komputerowych. Niezależnie od tego, czy chodzi o ochronę wrażliwych danych, uwierzytelnianie użytkowników, czy zabezpieczenie komunikacji online, kryptografia odgrywa kluczową rolę w ochronie cyfrowego świata.
Artykuł wprowadzi Cię w podstawy kryptografii, przybliży kluczowe pojęcia, pokaże zastosowanie tej dziedziny w IT oraz podsumuje powszechne zagrożenia i wyzwania.
Kontekst historyczny
Kryptografia ma bogatą historię – ewoluowała od prostych szyfrów podstawieniowych po złożone algorytmy cyfrowe.
Szyfr Cezara, jedna z najwcześniejszych metod kryptograficznych, polegał na przesuwaniu liter w celu kodowania wiadomości. Dokładnie ten sam szyfr został wykorzystany w tytule. Mechanika jest wyjątkowo nieskomplikowana i polega na przesunięciu liter alfabetu o zadaną ilość. Na pierwszy rzut oka szyfrogram „Tahycxpajorj” wygląda po prostu jak ciąg losowych znaków, ale po zastosowaniu zwykłego ataku brute force łatwo można się przekonać o słabości tego algorytmu:
| RotR | RotL | Plaintext |
| 1 | 25 | Szgxbwozinqi |
| 2 | 24 | Ryfwavnyhmph |
| 3 | 23 | Qxevzumxglog |
| 4 | 22 | Pwduytlwfknf |
| 5 | 21 | Ovctxskvejme |
| 6 | 20 | Nubswrjudild |
| 7 | 19 | Mtarvqitchkc |
| 8 | 18 | Lszquphsbgjb |
| 9 | 17 | Kryptografia |
| 10 | 16 | Jqxosnfqzehz |
| 11 | 15 | Ipwnrmepydgy |
| 12 | 14 | Hovmqldoxcfx |
| 13 | 13 | Gnulpkcnwbew |
| 14 | 12 | Fmtkojbmvadv |
| 15 | 11 | Elsjnialuzcu |
| 16 | 10 | Dkrimhzktybt |
| 17 | 9 | Cjqhlgyjsxas |
| 18 | 8 | Bipgkfxirwzr |
| 19 | 7 | Ahofjewhqvyq |
| 20 | 6 | Zgneidvgpuxp |
| 21 | 5 | Yfmdhcufotwo |
| 22 | 4 | Xelcgbtensvn |
| 23 | 3 | Wdkbfasdmrum |
| 24 | 2 | Vcjaezrclqtl |
| 25 | 1 | Ubizdyqbkpsk |
Rotując szyfrogram w prawo o 9 znaków lub w lewo o 17, można w łatwy sposób uzyskać plaintext czyli tekst jawny – Kryptografia.
(~prawie) nie do złamania
Podczas II wojny światowej maszyna Enigma szyfrowała niemiecką komunikację wojskową, podkreślając znaczenie kryptografii w czasie wojny.
Enigma uznawana była za maszynę o kodzie nie do złamania. Jednak słabym punktem okazał się czynnik ludzki. W sieci można znaleźć mnóstwo informacji na temat projektu oraz ataków, dlatego tę część pominę. Warto natomiast podkreślić, że Enigma jest jednym z wielu rozwiązań kryptograficznych, którym można poświęcić całą książkę.
Warto tu polecić: „X, Y & Z: The Real Story of How Enigma Was Broken” a dla osób preferujących ekranizacje kinowe film „The Imitation Game”.
Wraz z pojawieniem się komputerów kryptografia weszła w erę cyfrową. Szyfry typu AES (Advanced Encryption Standard) oraz innowacje takie jak PKI (kryptografia klucza publicznego) zrewolucjonizowały bezpieczną komunikację, umożliwiając technologie takie jak HTTPS, podpisy cyfrowe i blockchain.
Szyfr AES
Kryptografia ewoluuje z czasem. Chcąc zaszyfrować słowo „Kryptografia” przy pomocy silnego i popularnego szyfru AES otrzymamy następujący szyfrogram:
Pua40OBO1wh/BhwbKEHflA==
Szyfrogram wygląda inaczej w porównaniu z poprzednim szyfrem użytym w tytule, jest też dłuższy. O ile w przypadku prostego szyfru Cezara znajomość mechanizmu szyfrującego stanowi dodatkowe ryzyko ataku (jak widać prosty brute force poradzi sobie błyskawicznie), o tyle z czasem znajomość użytego szyfru przestała mieć znaczenie. Większe skupienie zaczęło pojawiać się wokół zabezpieczenia klucza.
W kryptografii jest to zasada znana jako Kerckhoffs’s principle i mówi ona o tym że:
System kryptograficzny powinien być bezpieczny, nawet gdy wszystkie szczegóły jego działania – poza kluczem – są znane.
(~prawie) nie do złamania… znowu…
AES jest świetnym przykładem, który spełnia powyższe założenie. Stosowany od wielu lat, zyskał miano szyfru nie do złamania. Posiada on jednak swoje wady w zależności od wybranej konfiguracji. AES ECB często pojawia się na CTF (Capture the Flag). W teorii nie do złamania, jednak w praktyce podatny na odszyfrowanie bez znajomości klucza.
AES ECB szyfruje każdy blok plaintextu niezależnie, używając tego samego klucza. Powoduje to ujawnianie wzorców w danych, co może być widoczne, na przykład w zaszyfrowanym obrazie, gdzie zachowane są kształty i kontury:

Kluczowe pojęcia w kryptografii
Kryptografia symetryczna vs. asymetryczna
- Kryptografia symetryczna: Używa jednego klucza do szyfrowania i deszyfrowania. Jest wydajna i idealna do szyfrowania dużych zbiorów danych. Przykład: AES (Advanced Encryption Standard)

- Kryptografia asymetryczna: Używa pary kluczy – klucza publicznego do szyfrowania i klucza prywatnego do deszyfrowania. Zapewnia bezpieczną wymianę kluczy. Przykład: RSA

| Cecha | Kryptografia symetryczna | Kryptografia asymetryczna |
| Klucze | Jeden klucz używany do szyfrowania i deszyfrowania | Dwa różne klucze: publiczny (do szyfrowania) i prywatny (do deszyfrowania) |
| Wydajność | Bardziej wydajna, szybsza dla dużych ilości danych | Wolniejsza, bardziej obciążająca obliczeniowo |
| Bezpieczeństwo kluczy | Klucz musi być bezpiecznie przekazany obu stronom | Klucz publiczny może być swobodnie udostępniany, klucz prywatny musi być chroniony |
| Zastosowanie | Szyfrowanie dużych ilości danych, np. plików, baz danych | Szyfrowanie komunikacji, wymiana kluczy, podpisy cyfrowe |
| Algorytmy | Przykłady: AES, DES, ChaCha20 | Przykłady: RSA, ECC, DSA |
Funkcje skrótu (hash)
Funkcje skrótu przekształcają dane w wartość o stałym rozmiarze, zapewniając integralność danych. Są kluczowe w przechowywaniu haseł i technologii blockchain. Przykład: SHA-256.
Podpisy cyfrowe i certyfikaty
Podpisy cyfrowe weryfikują autentyczność dokumentów lub wiadomości, a certyfikaty wydawane przez zaufane urzędy certyfikacji (CA) zapewniają wiarygodność kluczy publicznych w bezpiecznej komunikacji.
Zastosowania kryptografii w IT
Kryptografia znajduje zastosowanie we wszystkich warstwach modelu OSI, zapewniając kompleksowe bezpieczeństwo:
Warstwa fizyczna
- Szyfrowanie transmisji danych: np. AES implementowany sprzętowo w urządzeniach.
- HSM (Hardware Security Module): Urządzenie sprzętowe używane do ochrony i zarządzania kluczami kryptograficznymi oraz wykonywania bezpiecznych operacji kryptograficznych.
Warstwa łącza danych
- MACsec (Media Access Control Security): Szyfrowanie ramek Ethernet.
- WPA2/WPA3: Używa AES do zabezpieczania połączeń Wi-Fi.
Warstwa sieciowa
- IPsec (Internet Protocol Security): Szyfruje i uwierzytelnia pakiety IP w celu zapewnienia bezpiecznego routingu.
- VPN: Używa protokołów IPsec lub OpenVPN do tworzenia szyfrowanych tuneli między sieciami.
Warstwa transportowa
- TLS (Transport Layer Security): Szyfruje dane między klientami i serwerami (np. HTTPS).
- Biblioteki takie jak OpenSSL oferują narzędzia do szyfrowania w warstwie transportowej.
Warstwa sesji
- Szyfrowanie sesji: Klucze sesji TLS szyfrują dane podczas sesji.
- Kerberos: Używa kryptografii symetrycznej do zarządzania bezpiecznymi sesjami.
Warstwa prezentacji
- Szyfrowanie danych: Szyfrowanie formatów danych, takich jak JSON czy XML,
- Bezpieczne kodowanie: Łączy szyfrowanie z formatami kodowania, takimi jak Base64.
Warstwa 7: Warstwa aplikacji
- Szyfrowanie e-maili: Protokoły takie jak PGP i S/MIME chronią treść wiadomości.
- Blockchain: Polega na haszowaniu i kryptografii klucza publicznego do zabezpieczania transakcji.
- Bezpieczeństwo API: Wykorzystuje tokeny takie jak JWT do uwierzytelniania.
Powszechne zagrożenia i wyzwania
Password Spraying
Atak, w którym testuje się popularne hasła na wielu kontach. Haker próbuje uzyskać dostęp do kont użytkowników, testując niewielką liczbę popularnych lub prostych haseł na dużej liczbie kont w systemie. W przeciwieństwie do klasycznego ataku brute force, który koncentruje się na łamaniu jednego konta poprzez testowanie wielu haseł, Password Spraying minimalizuje ryzyko wykrycia przez systemy zabezpieczeń, stosując rzadkie próby logowania dla każdego konta.
Zabezpieczenie: MFA, silne polityki haseł i monitorowanie nieudanych logowań.
W kontekście kryptografii: Generowanie i weryfikacja jednorazowych kodów (OTP), uwierzytelnianie za pomocą certyfikatów cyfrowych, szyfrowanie danych biometrycznych, tokeny sprzętowe (np. YubiKey, FIDO U2F).
Kolizje haszowania
Gdy dwa różne wejścia generują ten sam hasz, integralność danych jest zagrożona.
Zabezpieczenie: Algorytmy odporne na kolizje, takie jak SHA-256.
Ataki typu „Birthday Attack”
Birthday Attack to technika kryptograficzna, która wykorzystuje zasadę paradoksu urodzin (ang. birthday paradox) do znalezienia kolizji w funkcjach skrótu (hash). Atak ten pozwala na znalezienie dwóch różnych wejść, które generują ten sam hash, co podważa integralność i bezpieczeństwo danych w systemach wykorzystujących funkcje skrótu.
Zabezpieczenie: Użycie dłuższych wyjść haszowania, np. SHA-512.
Tablice tęczowe
Wstępnie obliczone tablice mapujące hasze na ich pierwotne dane.
Zabezpieczenie: Salting oraz silne funkcje haszujące.
Przykłady ataków z wykorzystaniem tablic tęczowych:
- LinkedIn: W 2012 roku hakerzy uzyskali dostęp do bazy danych zawierającej ponad 6,5 miliona zahashowanych haseł użytkowników serwisu społecznościowego LinkedIn. Wykorzystali tęczowe tablice, aby złamać te hasła, a następnie opublikowali je w internecie, narażając miliony kont użytkowników.
- Adobe Systems: W 2013 roku hakerzy włamali się do bazy danych Adobe Systems, uzyskując dostęp do ponad 150 milionów zaszyfrowanych haseł. Ze względu na zastosowanie słabego algorytmu hashującego, hasła te były stosunkowo łatwe do złamania przy użyciu tęczowych tablic.
- Ubuntu Forums: W 2013 roku zhakowano stronę internetową Ubuntu Forums, a napastnicy zdobyli bazę danych zawierającą ponad 1,8 miliona nazw użytkowników i zahashowanych haseł. Wykorzystali brute force i tęczowe tablice, aby złamać hasła i uzyskać dostęp do kont użytkowników.
Public Key Infrastructure (PKI)
PKI zarządza cyfrowymi certyfikatami i kluczami szyfrowania, zapewniając bezpieczną komunikację. Główna idea PKI opiera się na kryptografii asymetrycznej i certyfikatach cyfrowych, które pozwalają na wzajemne uwierzytelnianie i szyfrowanie danych.
Kluczowe komponenty PKI
- Certyfikaty: Zawierają informacje takie jak nazwa podmiotu, klucz publiczny, okres ważności i podpis CA.
- Chain of trust: Certyfikaty główne i pośrednie budują łańcuch zaufania weryfikowany przez przeglądarki i urządzenia.
Rodzaje certyfikatów
- Certyfikaty maszynowe: Uwierzytelniają urządzenia.
- Certyfikaty użytkownika: Weryfikują tożsamość użytkowników.
- Certyfikaty e-mailowe (S/MIME): Zabezpieczają komunikację e-mailową.
- Certyfikaty do podpisywania kodu: Chronią integralność oprogramowania.
- Certyfikaty self-signed: Stosowane bez publicznego zaufania.
- Certyfikaty root: Fundament zaufania w PKI.
- Certyfikaty wildcard: Obejmują domenę i jej poddomeny.
Formaty certyfikatów
- PEM: Kodowanie Base64, szeroko używane na serwerach WWW.
- DER: Format binarny, często używany w Windows.
- PKCS#12 (PFX): Łączy certyfikaty z kluczami prywatnymi.
- PKCS#7 (P7B): Zawiera certyfikaty i łańcuchy, ale bez kluczy prywatnych.
Podsumowanie
Kryptografia odgrywa fundamentalną rolę w zapewnieniu bezpieczeństwa w cyfrowym świecie. Umożliwia ochronę danych, uwierzytelnianie użytkowników, weryfikację integralności informacji oraz budowanie zaufania między stronami komunikacji. Mechanizmy takie jak szyfrowanie symetryczne i asymetryczne, funkcje skrótu, podpisy cyfrowe czy infrastruktura klucza publicznego (PKI) stanowią podstawowe narzędzia do zabezpieczania nowoczesnych systemów IT.
Jednak kryptografia nie jest wolna od wyzwań. Ataki pokazują, że nawet najlepiej zaprojektowane algorytmy mogą być podatne, jeśli nie są stosowane zgodnie z najlepszymi praktykami. Pojawienie się technologii takich jak komputery kwantowe dodatkowo zagraża obecnym standardom kryptograficznym, zmuszając do rozwijania nowych, bardziej odpornych algorytmów, jak kryptografia postkwantowa.
Aby skutecznie zabezpieczyć systemy, nie wystarczy jedynie zastosowanie algorytmów kryptograficznych – kluczowe jest ich poprawne wdrożenie i zarządzanie. Mechanizmy takie jak HSM (Hardware Security Module), SSL/TLS czy MFA (Multi-Factor Authentication) łączą zaawansowaną kryptografię z praktycznymi narzędziami, chroniąc dane w codziennych zastosowaniach.
W obliczu rosnącej liczby zagrożeń, kluczowym zadaniem jest też edukacja użytkowników i profesjonalistów IT w zakresie najnowszych technik ochrony oraz potencjalnych wektorów ataków. Tylko świadome i odpowiedzialne podejście do kryptografii pozwoli na utrzymanie bezpieczeństwa w coraz bardziej skomplikowanym ekosystemie cyfrowym. Kryptografia to nie tylko nauka – to fundament zaufania w świecie technologii.
***
Jeśli interesuje Cię tematyka Cyberbezpieczeństwa, sprawdź również inne artykuły naszych specjalistów.
Zostaw komentarz