Wprowadzenie do kryptologii
Historia, pojęcia podstawowe i najstarsze metody szyfrowania
Tematyka: Kryptologia i bezpieczna wymiana informacji
Prezentacja ma charakter wprowadzający do zagadnień kryptologii
Historia, pojęcia podstawowe i najstarsze metody szyfrowania
Tematyka: Kryptologia i bezpieczna wymiana informacji
Prezentacja ma charakter wprowadzający do zagadnień kryptologii
Prezentacja 0 stanowi łagodne, przystępne wprowadzenie do kryptologii dla osób, które nie zetknęły się wcześniej z tą dziedziną.
Kryptologia jako dyscyplina naukowa zajmuje się nie tylko samym szyfrowaniem, lecz całym obszarem ochrony informacji, obejmując kryptografię odpowiadającą za konstrukcję systemów oraz kryptoanalizę badającą ich odporność. W ramach tego opracowania przedstawiono zarówno fundamenty teoretyczne, jak i narzędzia stosowane w praktyce inżynierskiej. Szczególny nacisk kładziony jest na związki kryptografii z sieciami komputerowymi, systemami rozproszonymi i bezpieczeństwem aplikacji. Zrozumienie tych powiązań pozwala świadomie oceniać, które rozwiązania rzeczywiście zapewniają ochronę danych, a które jedynie stwarzają jej pozory.
Materiał nie wymaga uprzedniej znajomości zaawansowanej matematyki, choć elementy teorii liczb i algebry ułatwiają opanowanie dalszych części opracowania. W kolejnych częściach omawiane są także techniki zarządzania kluczami, protokoły wymiany informacji oraz zagadnienia związane z ochroną danych. Dla informatyków szczególnie istotne jest praktyczne przełożenie omawianych pojęć na konfigurację systemów i tworzenie bezpiecznego oprogramowania. Warto od początku uruchamiać przykłady w środowisku testowym, aby obserwować działanie szyfrów na rzeczywistych danych.
Prezentacja 0 pełni rolę mapy wprowadzającej. Pojęcia i historia poznane teraz zostaną rozwinięte w kolejnych częściach 1–6: od zagrożeń, przez szyfry klasyczne, po algorytmy symetryczne i asymetryczne oraz systemy składowania danych.
Wprowadzenie pełni również funkcję porządkującą i wyrównującą poziom wiedzy, ponieważ odbiorcy rozpoczynający poznawanie kryptologii mają zróżnicowane doświadczenia z zakresu bezpieczeństwa systemów i matematyki. Dzięki takiemu układowi osoby, które po raz pierwszy spotykają się z pojęciem szyfru czy funkcji skrótu, mogą spokojnie opanować fundamenty, zanim przejdą do zagadnień wymagających większej biegłości. Warto w tym miejscu podkreślić, że kryptografia nie jest odosobnioną specjalizacją, lecz narzędziem wykorzystywanym niemal w każdym obszarze informatyki, od systemów operacyjnych po aplikacje webowe.
Aby ułatwić sobie naukę, warto od początku zwracać uwagę na powiązania między omawianymi koncepcjami a konkretnymi technologiami, które znamy z życia codziennego, takimi jak połączenia HTTPS czy komunikatory szyfrujące wiadomości. Każda kolejna część opracowania odwołuje się do pojęć wprowadzonych w prezentacji 0, dlatego zrozumienie podstaw ułatwi śledzenie dalszych części materiału. W materiale prezentowane są zarówno zagadnienia teoretyczne, jak i przykładowe narzędzia, które można uruchomić samodzielnie w środowisku testowym. Dzięki temu odbiorcy zdobywają nie tylko wiedzę, lecz także umiejętności praktyczne przydatne w pracy zawodowej.
Powyższe źródła stanowią dobry punkt wyjścia do samodzielnego zgłębiania zagadnień wprowadzających. Przydatne są też materiały wideo o historii kryptografii oraz demonstracje szyfrów dostępne w internecie.
Lata przy pozycjach literatury podano zgodnie z katalogiem polskich wydań wydawnictwa Helion. Sam wydawca zwraca uwagę, że data wydania wersji elektronicznej nie zawsze pokrywa się z datą wydania papierowego, dlatego przy szerszych opracowaniach warto sprawdzić rok w Bibliotece Narodowej.
Wymienione pozycje literatury różnią się poziomem trudności, dlatego studenci mogą wybierać je w zależności od własnego zaawansowania i zainteresowań. Popularnonaukowe opracowania pomagają oswoić dziedzinę, natomiast szczegółowe podręczniki, takie jak prace Schneiera, ukazują aspekty praktyczne i zaawansowane konstrukcje. Zachęcamy do korzystania również ze źródeł anglojęzycznych, które często zawierają aktualniejsze opisy standardów i narzędzi.
W aktywną naukę warto włączyć materiały wideo, które dzięki animacjom i demonstracjom pokazują działanie szyfrów w sposób bardziej przystępny niż prezentacja statycznych diagramów. Bogaty zestaw kursów i symulacji internetowych pozwala eksperymentować z szyfrowaniem bez konfigurowania własnego środowiska laboratoryjnego. Należy przy tym oczywiście zachować ostrożność i korzystać z wiarygodnych publikacji oraz udokumentowanych narzędzi bezpieczeństwa. Dobrze dobrane źródła, łączone z systematyczną pracą własną, znacząco przyspieszają budowę kompetencji potrzebnych w dalszych częściach cyklu wykładowego.
Przykład: Co to znaczy "zahaszować" hasło? To zamienić je na skrót (hash) funkcją jednokierunkową, np. bcrypt lub Argon2 - system przechowuje tylko skrót, więc wyciek bazy nie ujawnia hasła.
Kryptografia jest dziedziną interdyscyplinarną – łączy matematykę, informatykę oraz historię. Już na tym poziomie warto zwrócić uwagę na największego wroga każdego systemu: człowieka, który nieświadomie ujawnia hasła lub stosuje zbyt słabe zabezpieczenia.
Omawiając kryptografię, należy pamiętać, że mamy do czynienia z dziedziną o bardzo długiej tradycji, której początki sięgają czasów starożytnych cywilizacji Egiptu, Grecji i Rzymu. Z greckiej etymologii jasno wynika, że pierwotnie chodziło wyłącznie o ukrycie treści przed wzrokiem osoby postronnej, natomiast współcześnie ochrona informacji obejmuje znacznie szerszy zakres zagadnień, takich jak weryfikacja autentyczności czy zapewnienie integralności danych. Ten rozwój znaczeń pokazuje, jak bardzo zmienił się kontekst funkcjonowania szyfrów wraz z upowszechnieniem komputerów i sieci teleinformatycznych.
W życiu codziennym z podstaw kryptograficznych korzystamy częściej, niż mogłoby się wydawać, przy czym często odbywa się to bez naszej świadomej wiedzy. Dostęp do kont bankowych, połączenia z pocztą elektroniczną oraz zaszyfrowane dyski w telefonach i laptopach opierają się na algorytmach omawianych szerzej w dalszej części cyklu. Właśnie dlatego podstawowa świadomość zagrożeń i zasad działania zabezpieczeń jest cenna także dla osób, które nie planują zawodowego zajmowania się bezpieczeństwem. Z drugiej strony nadmierne zaufanie do technologii prowadzi do wielu incydentów, dlatego znajomość choćby najprostszych zasad kryptograficznych pozwala rozsądnie oceniać oferowane rozwiązania.
Rozróżnienie między kryptografią (projektowanie) a kryptoanalizą (łamanie) ma charakter metodologiczny – kryptograf przygotowuje system, kryptoanalityk szuka w nim słabości. W praktyce te same metody matematyczne są wykorzystywane do obu celów.
Historycznie kryptoanaliza rozwijała się równie szybko jak same metody szyfrowania, ponieważ każda nowa technika chronienia wiadomości stawała się rychło przedmiotem prób jej przełamania. Wielu wybitnych matematyków i językoznawców zasłynęło właśnie z analizy szyfrogramów, co przyczyniło się do rozwoju metod statystycznych i kombinatoryki. Współcześnie kryptoanalitycy pracują często w zespołach i publikują wyniki badań, które pozwalają projektantom wzmacniać istniejące algorytmy lub rezygnować z rozwiązań uznanych za niewystarczająco odporne.
Z punktu widzenia metodyk bezpieczeństwa istotne jest, aby struktura organizacyjna instytucji nie dopuszczała do sytuacji, w której osoba projektująca system samodzielnie ocenia jego odporność bez zewnętrznej weryfikacji. W praktyce stosuje się zasadę niezależnych audytów oraz testów penetracyjnych, których celem jest wykrycie słabości zanim wykorzystają je osoby nieuprawnione. Warto również zaznaczyć, że kryptoanaliza nie ogranicza się do badania matematycznych właściwości szyfrów, gdyż obejmuje także ataki na ich implementacje, zarządzanie kluczami czy konfigurację środowiska. Właśnie szeroko rozumiana analiza ryzyka decyduje często o tym, czy dany system pozostaje bezpieczny w rzeczywistych warunkach eksploatacji.
Klucz jest potrzebny zarówno do szyfrowania, jak i deszyfrowania.
Ten sam klucz do obu operacji → kryptografia symetryczna; para kluczy publiczny/prywatny → asymetryczna (szczegóły w częściach 3 i 4).
Szyfrowanie jednym kluczem – kryptografia symetryczna – oraz dwoma kluczami (publicznym i prywatnym) – kryptografia asymetryczna – stanowią podstawowy podział sposobów ochrony informacji. Szczegóły tego podziału omówiono w częściach 3 i 4 opracowania.
Schemat przedstawiający przepływ informacji między tekstem jawnym a szyfrogramem jest uproszczeniem, ponieważ w rzeczywistych systemach procesem tym steruje dodatkowo szereg parametrów technicznych, takich jak tryb pracy szyfru czy wektor inicjujący. Zapewnienie poprawnego działania wymaga także zadbania o synchronizację między nadajnikiem i odbiorcą, zwłaszcza gdy wiadomości przesyłane są przez zawodne łącza telekomunikacyjne. Właśnie z tego powodu inżynierowie protokołów kładą duży nacisk na precyzyjne zdefiniowanie kolejnych faz wymiany danych oraz na obsługę sytuacji, w których dostarczony szyfrogram okazuje się niekompletny.
Opisany podział na szyfrowanie symetryczne i asymetryczne ma fundamentalne znaczenie dla konstrukcji bezpiecznych systemów, dlatego kluczowe jest rozróżnienie tych dwóch podejść. W kryptografii symetrycznej ten sam klucz służy do szyfrowania i deszyfrowania, co wymaga wcześniejszego bezpiecznego uzgodnienia wspólnej wartości, natomiast w kryptografii asymetrycznej każda strona posiada parę kluczy o różnych funkcjach. Rozwiązania asymetryczne, mimo większych kosztów obliczeniowych, ułatwiają dystrybucję kluczy i umożliwiają dodatkowe usługi, takie jak podpis cyfrowy. Szczegółowe omówienie tych zagadnień wraz z przykładami zastosowań pojawi się w kolejnych częściach opracowania.
Klucz do zamka - bez odpowiedniego klucza nie można otworzyć zamka (odczytać wiadomości).
Przykład: Przesuwamy litery o 3, klucz = 3 → "A" → "D", "B" → "E" (szczegóły na slajdzie 11).
Zasada Kerckhoffsa, sformułowana w XIX wieku, pozostaje obowiązująca do dzisiaj – wyznacza metodykę projektowania algorytmów kryptograficznych. Ten sam model znajduje odzwierciedlenie w implementacjach nowoczesnych standardów stosowanych w systemach rozproszonych i w protokole TLS.
Analogię między kluczem a zwykłym kluczem do zamka można rozciągnąć na bardziej złożone scenariusze, w których zarządzanie kluczami wymaga stosowania dodatkowych procedur, takich jak hierarchia uprawnień, rotacja kluczy czy tworzenie kopii zapasowych. W systemach informatycznych klucze przechowuje się z reguły w dedykowanych modułach sprzętowych lub w postaci chronionych struktur plikowych, aby ograniczyć ryzyko ich przechwycenia przez osoby nieuprawnione. Świadomość tego, czym jest klucz i jakie ma właściwości, jest niezbędna do zrozumienia całej dalszej części wykładów o algorytmach symetrycznych i asymetrycznych.
Jawność algorytmu, czyli rezygnacja z ukrywania sposobu działania szyfru, wynika z praktyki, w której tajne procedury okazywały się trudne do utrzymania w sekrecie na dłuższą metę. Gdy algorytm jest publicznie dostępny, każdy niezależny badacz może próbować go osłabić, a wykryte słabości prowadzą do systematycznego ulepszania standardów bezpieczeństwa. Znane obecnie algorytmy z tej samej rodziny różnią się przede wszystkim długością kluczy i szczegółami obliczeniowymi, które są coraz dokładniej dobierane pod kątem przewidywanych zagrożeń. Studenci powinni zapamiętać, że w dobrze zaprojektowanym systemie całą siłę ochrony zapewnia tajność klucza, a nie tajność samej procedury szyfrującej. Entropia klucza oznacza jego nieprzewidywalność: im bardziej losowy jest ciąg bitów klucza, tym więcej czasu wymaga sprawdzenie wszystkich możliwości. Dlatego klucza nie wolno generować z prostych, przewidywalnych wzorców, takich jak słowo hasła czy data urodzenia.
Oprócz czterech klasycznych celów wymienia się także odpowiedzialność (accountability) oraz niezawodność systemu. W praktyce audyty bezpieczeństwa oceniają nie tylko szyfrowanie, ale cały proces zarządzania informacją w organizacji.
Wymienione cele tworzą spójną ramę, którą inżynierowie bezpieczeństwa stosują podczas projektowania nowych systemów, ponieważ każdy z nich odpowiada innemu rodzajowi zagrożenia. Poufność chroni przed nieuprawnionym odczytaniem danych, integralność przed ich niezauważoną modyfikacją, autentyczność przed podszywaniem się pod nadawcę, a niezaprzeczalność przed wyparciem się uczestnictwa w komunikacji. Żaden pojedynczy mechanizm kryptograficzny nie realizuje wszystkich celów naraz, dlatego w praktyce buduje się zestawy współpracujących ze sobą rozwiązań.
Warto zwrócić uwagę, że wiele pozornie bezpiecznych rozwiązań realizuje tylko część postawionych celów, co bywa źródłem poważnych incydentów. Przykładem może być samo szyfrowanie transmisji, które zapewnia poufność, ale nie gwarantuje, że dane nie zostały zmienione po drodze przez atakującego. Właśnie dlatego nowoczesne protokoły łączą szyfrowanie z kodami uwierzytelniającymi i podpisami cyfrowymi, tworząc kompletne zabezpieczenie sesji komunikacyjnej. W dalszej części cyklu wykładowego pokazane zostaną konkretne mechanizmy realizujące poszczególne cele oraz metody ich weryfikacji w praktycznych scenariuszach.
Motywacje szyfrowania – wojna, handel i zaufanie – pozostają aktualne w XXI wieku, choć zmieniają się ich techniczne odsłony: od szyfrów ręcznych po algorytmy postkwantowe chroniące transakcje i komunikację globalną.
Warto zauważyć, że we współczesnym świecie motywacje wojenne zastąpiła w dużej mierze cyberprzestępczość, która atakuje zarówno instytucje państwowe, jak i zwykłych użytkowników sieci. Organizacje finansowe, szpitale i urzędy są obiektem ciągłych prób kradzieży danych oraz zablokowania systemów, co wymusza stosowanie coraz bardziej zaawansowanych zabezpieczeń. Rozwój handlu elektronicznego sprawił natomiast, że ochrona transakcji stała się sprawą masową, a nie tylko domeną wybranych elit. Specyfika codziennych zagrożeń sprawia, że odpowiedzialność za bezpieczeństwo ponoszą zarówno projektanci systemów, jak i ich użytkownicy.
Historyczne przykłady, takie jak komunikacja Cezara czy renesansowych dyplomatów, uczą, że na trwałość systemu wpływa nie tylko sama technika szyfrowania, lecz także dyscyplina osób z niego korzystających. Przekazywanie kluczy, przechowywanie notatek czy sposób wysyłania wiadomości decydują o powodzeniu całego przedsięwzięcia nawet wtedy, gdy używany algorytm jest matematycznie poprawny. Ta zależność pozostaje aktualna również dzisiaj, o czym świadczą głośne przypadki wycieków danych spowodowanych błędami konfiguracji lub nieostrożnością pracowników. Dlatego podczas wykładu podkreślamy, że kryptografia to nie tylko matematyka, ale także organizacja procesów i odpowiedzialne zachowanie ludzi.
Pokazuje, że ludzie od zawsze chcieli ukrywać informacje - potrzeba szyfrowania jest wpisana w ludzką naturę.
Pierwsze udokumentowane metody szyfrowania pojawiły się w starożytnym Egipcie (ok. 1900 p.n.e.).
Pierwsze egipskie zapisy w grobowcach nie stanowią szyfru kryptograficznego w ścisłym sensie, są jednak świadectwem, że ludzie od zarania cywilizacji poszukiwali sposobów na ukrycie informacji lub ograniczenie dostępu do niej.
Specjaliści doszukują się pierwszych śladów kryptograficznych w egipskich inskrypcjach, w których pisarze zastępowali zwykłe symbole ich nietypowymi odpowiednikami, oraz w mezopotamskich zapisach zawierających elementy utrudniające odczyt. Trzeba jednak zachować ostrożność przy interpretacji tych materiałów, gdyż część zmodyfikowanych hieroglifów pełniła funkcje religijne i ozdobne, a nie ochronne. Z punktu widzenia historii kryptografii najcenniejsze są zapisy, w których można wykazać intencję celowego ukrycia treści przed nieuprawnionym czytelnikiem. Taka intencja pozwala odróżnić właściwy szyfr od zwykłej egzotyki pisma lub symboliki o znaczeniu mistycznym.
Badania nad początkami kryptografii pokazują, że potrzeba ukrywania informacji pojawiała się w różnych cywilizacjach niezależnie od siebie, co świadczy o jej uniwersalnym charakterze. Podobne techniki odnajdujemy w antycznych Chinach, Indiach czy Grecji, gdzie poufne komunikaty przekazywano z wykorzystaniem ukrytych tabliczek i nietypowych zapisów. Współcześnie pozostałości tej dawnej praktyki widzimy w sposobach ukrywania danych w obrazach i plikach dźwiękowych, popularnych w ramach steganografii. Zrozumienie, że fundamenty ochrony informacji są znacznie starsze niż komputery, ułatwia przyjęcie właściwego spojrzenia na całą dziedzinę.
Aby odczytać wiadomość, należy nawinąć pasek na walec tej samej średnicy - litery ułożą się w czytelny tekst.
Szyfrowanie za pomocą skytale (scytale) należy do najstarszych udokumentowanych szyfrów przestawieniowych, czyli transpozycyjnych. Sam schemat jest prosty, a jednak ilustruje fundamentalną koncepcję: sama zmiana kolejności znaków może całkowicie ukryć sens wiadomości przed osobą postronną.
Zastosowanie tego schematu wymaga, aby nadawca i odbiorca dysponowali dwoma jednakowymi walcami o zbliżonej średnicy, co w praktyce oznaczało wcześniejsze uzgodnienie parametru urządzenia. W dzisiejszej terminologii średnicę laski można potraktować jako pierwowzór klucza tajnego, który decyduje o możliwości ponownego złożenia tekstu w całość. Taki schemat działania jest zresztą charakterystyczny dla wszystkich szyfrów przestawieniowych, w których sam sposób uporządkowania znaków stanowi istotę ochrony.
Mimo swojej prostoty skytale stanowi doskonały materiał dydaktyczny, ponieważ pozwala pokazać, dlaczego same przestawienia bywają skuteczne wobec adwersarza nieznającego sposobu odwrócenia operacji. W polskiej literaturze termin spotykany jest w dwóch zapisach: skytale oraz scytale, przy czym ten drugi jest zgodny z zapisem łacińskim wywodzącym się z greckiego σκυτάλη. W dalszej części opracowania konsekwentnie używamy zapisu skytale. Podobne metody pozostają możliwe do zastosowania również współcześnie, gdy dane są przechowywane w uporządkowanych blokach, a atakujący nie zna schematu ich ponownego uporządkowania. W praktyce inżynierskiej transpozycję łączy się z podstawieniami w wielu rundach, czego przykładem są algorytmy blokowe omawiane w kolejnych częściach cyklu. Omówienie historycznych przestawień pozwala zatem zbudować intuicję niezbędną do zrozumienia nowoczesnych konstrukcji.
Wniosek: Dziś łamiemy go w kilka sekund - możliwych jest tylko 25 różnych przesunięć, a analiza częstotliwości wskazuje właściwe.
Szyfr Cezara jest klasycznym przykładem szyfru przesuwnego o stałym przesunięciu. Ze względu na niewielką przestrzeń kluczy (tylko 25 możliwych przesunięć) jest on dziś złamany nawet bez analizy częstotliwości.
Zastępowanie każdej litery alfabetu literą odległą o stałą liczbę pozycji można opisać prostą zależnością arytmetyczną, którą bez trudu realizują współczesne komputery. W starożytności skuteczność tego rozwiązania wynikała nie z matematycznej siły, lecz z niskiego poziomu umiejętności czytania u ówczesnych adresatów oraz ograniczonego zasięgu komunikacji. Niewielu rzymskich żołnierzy umiało czytać, a samo przechwycenie zagadkowego pisma nie dostarczało od razu dowodów na jego sens.
Analiza częstotliwościowa, która dziś całkowicie neutralizuje szyfr Cezara, polega na porównaniu częstości występowania liter w szyfrogramie z częstościami charakterystycznymi dla danego języka. W języku polskim do najczęstszych liter należą między innymi „a”, „e” i „i”, co pozwala szybko odnaleźć zastosowane przesunięcie nawet bez znajomości zasady działania szyfru. Warto zwrócić uwagę, że metoda działa tym lepiej, im dłuższy jest przechwycony tekst, natomiast przy bardzo krótkich wiadomościach bywa zawodna. Zrozumienie tego prostego narzędzia kryptoanalitycznego otwiera drogę do bardziej zaawansowanych technik omawianych w dalszej części wykładów.
Szyfr AtBash jest samoodwracalny - zastosowanie go ponownie daje oryginalny tekst. To podstawienie monoalfabetyczne: każda litera ma jedno stałe odwzorowanie (A→Z, B→Y itd.).
AtBash jest szyfrem odbiciowym (lustrzanym), w którym litera „A” przechodzi w „Z”, „B” w „Y” i tak dalej. Jego prostota oraz samoodwracalność sprawiają, że jest cenny dydaktycznie jako pierwszy przykład podstawienia symetrycznego.
Specyficzną cechą szyfru AtBash jest samoodwracalność, która wynika z symetrycznego układu par liter względem środka alfabetu. Ta właściwość oznacza, że ta sama procedura posłuży jednocześnie do szyfrowania i deszyfrowania, co upraszcza implementację, ale nie zwiększa bezpieczeństwa. Współczesne algorytmy, takie jak operacje XOR w szyfrach strumieniowych, również korzystają z przekształceń odwrotnych do samych siebie, choć w znacznie bardziej skomplikowanej konstrukcji.
Historyczne znaczenie AtBash polega na pokazaniu, że nawet teksty o charakterze religijnym bywały przedmiotem kryptograficznych przekształceń, o czym świadczą odniesienia w Księdze Jeremiasza. W kontekście śródziemnomorskim mamy do czynienia z jednym z najstarszych przykładów podstawienia monoalfabetycznego, czyli takiego, w którym każda litera ma stałe odwzorowanie. Taki schemat jest podatny na analizę statystyczną, dlatego już w starożytności próbowano go przełamywać prostymi domysłami i znajomością kontekstu. Jest to wygodny punkt wyjścia do porównania różnych klas podstawień, które pojawią się w kolejnych częściach opracowania.
Dysk Albertiego z XV wieku odegrał rolę punktu zwrotnego – umożliwiał ciągłą zmianę alfabetu w trakcie szyfrowania, co zapowiadało erę szyfrów polialfabetycznych i przezwyciężało ograniczenia stałego podstawienia.
Wynalezienie dysku szyfrującego przypisuje się Leonowi Battista Albertiemu, wszechstronnemu renesansowemu uczonemu, który około 1466-1467 roku opisał urządzenie składające się z dwóch obracalnych tarcz. Na obwodzie każdej tarczy umieszczano alfabet, a wzajemny obrót tarcz pozwalał w dowolnym momencie zmienić przyporządkowanie liter tekstu jawnego do liter szyfrogramu. Taka konstrukcja znacząco różniła się od wcześniejszych, statycznych tabel, ponieważ ten sam znak mógł być szyfrowany różnymi literami w zależności od aktualnego położenia dysku. Dzięki temu realizowana procedura znacznie utrudniała stosowanie prostych technik analizy częstotliwości.
W armiach rzymskich wykorzystywano z kolei nieskomplikowane podstawienia i techniki transpozycyjne, których opisy znamy głównie z dzieł autorów antycznych. Należy pamiętać, że komunikacja wojskowa w starożytności opierała się przede wszystkim na szybkości i prostocie, dlatego rzadko sięgano po rozwiązania o dużej złożoności. Dopiero rozwój miast, handlu i administracji sprawił, że pojawiło się zapotrzebowanie na systemy, którymi rządzą jasno opisane reguły i które można stosować niezależnie od umiejętności konkretnego pisarza. Ograniczeniami wszystkich technik antycznych pozostawały natomiast stałe podstawienia oraz opisy stosowanych wzorców, co umożliwiało ich szybkie rozpoznanie przez przeciwnika.
Średniowieczne klasztory przechowywały nie tylko rękopisy, ale także alfabety tajne i ćwiczenia kryptograficzne. Dokumentacja tych aktywności stanowi dziś cenne źródło dla historyków badających rozwój myśli o zabezpieczaniu informacji.
Średniowieczne środowiska monastyczne dysponowały najlepiej wyposażonymi warsztatami pisarskimi swoich czasów, co sprawiało, że to właśnie w ich skryptoriach powstawały kolejne kopie dzieł dotyczących rozmaitych dziedzin wiedzy. Część zgromadzonych tekstów otaczano szczególną ochroną, porządkując je według kluczy dostępowych i stosując zapisy ograniczające dostęp do treści. W praktyce klasztornej spotykamy także poświadczenia rzeczywistych alfabetów tajnych, które służyły do prowadzenia prywatnej korespondencji lub utrwalania sekretnych zapisów.
W wiekach średnich metody szyfrowania rozwijano przede wszystkim w środowisku dworskim, gdzie ochrona poufnej korespondencji dyplomatycznej miała bezpośrednie znaczenie polityczne. Zarazem powstawały opracowania o charakterze teoretycznym, wśród których kluczową rolę pełnił traktat Albertiego opisujący konstrukcję dysku szyfrującego. W szerszej perspektywie epokę tę cechuje stopniowe przejście od praktyki czysto empirycznej do systematyzacji wiedzy o zabezpieczaniu informacji. Zachowane rękopisy ilustrują również, że problemy związane z ochroną tajemnicy korespondencji były wówczas podobne do wyzwań, z jakimi mierzą się współcześni administratorzy systemów.
Traktat Albertiego, napisany około 1466-1467 roku, jest uważany za pierwszy europejski traktat o kryptografii. Wprowadzone tam pojęcia – takie jak tabela szyfru, klucz oraz idea zmiany szyfru – tworzą fundament współczesnej terminologii.
Alberti był postacią niezwykle wszechstronną, zajmował się bowiem równie poważnie architekturą, malarstwem, kartografią i filozofią przyrody, a ta wszechstronność wzbogaciła także jego spojrzenie na problemy kryptograficzne. Jego traktat wyszedł poza zbiór praktycznych przepisów, ponieważ autor postawił sobie za cel przedstawienie systematycznej metody projektowania zabezpieczeń tekstu. Wprowadzona przez niego zasada zmiany alfabetu w trakcie szyfrowania stanowiła odejście od prostych schematów monoalfabetycznych i okazała się zarodkiem szyfrów polialfabetycznych.
Z historycznego punktu widzenia istotną rolę w rozwoju kryptografii odegrały pisma dydaktyczne i podręczniki powstające w całej Europie po upowszechnieniu prac Albertiego. Koncepcje przez niego wprowadzone były wielokrotnie rozwijane przez późniejszych autorów, co doprowadziło do powstania bogatego zbioru technik stosowanych w służbach dyplomatycznych kolejnych stuleci. Warto przy tym zauważyć, że nie wszystkie postulaty Albertiego doczekały się od razu praktycznego wdrożenia, gdyż wiele zależało od dostępnej techniki i umiejętności operatorów. Współcześnie fundamenty ustanowione w XV wieku dostrzec można w terminologii dotyczącej kluczy i podstawień, która bez większych zmian przetrwała do dnia dzisiejszego.
Wprowadzenie do Vigenère’a - więcej szczegółów w części 2
Szyfry polialfabetyczne klasy Vigenère’a przez blisko trzy stulecia uchodziły za niezwykle trudne do złamania. Kluczową kwestią edukacyjną jest zrozumienie, że długość i losowość klucza decydują o realnym poziomie ochrony.
W przypadku szyfrów monoalfabetycznych głównym problemem była łatwość analizy częstotliwości, dlatego polialfabetyczność stanowiła celowy zabieg projektowy mający zrównoważyć statystyki występowania znaków. Zamiast jednej ustalonej tabeli podstawień stosuje się tutaj całą rodzinę alfabetów, a wybór właściwego zależy od pozycji znaku i wartości klucza. Właśnie dzięki temu w dłuższym szyfrogramie te same litery tekstu jawnego mogą być kodowane na różne sposoby, co maskuje naturalny rozkład częstotliwości.
Tabula recta, wprowadzona przez Trithemiusza w "Polygraphii" (1518) i następnie wykorzystywana przez Vigenère’a, jest zwięzłym zapisem wszystkich możliwych przesunięć alfabetu i stanowi podstawę do wyznaczania kolejnych podstawień w trakcie szyfrowania. Klucz pełni tu rolę instrukcji sterującej, wskazującej, które wiersze tabeli należy zastosować dla poszczególnych liter wiadomości. Jeżeli klucz jest krótki, wzorzec jego powtórzeń przenika do szyfrogramu i pozwala atakującemu odtworzyć jego długość oraz strukturę. Tylko klucz o długości porównywalnej z długością wiadomości, wygenerowany w sposób naprawdę losowy, daje gwarancje bezpieczeństwa na bardzo wysokim poziomie, co zostanie omówione szerzej w dalszej części wykładu.
Dyplomaci i szpiedzy uczyli się na błędach - bezpieczeństwo wymagało ciągłej zmiany kluczy.
Błędy operatora, takie jak powtórne użycie klucza czy nieostrożne zarządzanie hasłami, są dla praktyki ważniejsze niż teoretyczna siła algorytmu. Ta obserwacja dotyczy też współczesnych wdrożeń kryptografii.
Karty szyfrujące i klucze słowne upowszechniły się w kancelariach europejskich w XVI i XVII wieku, ponieważ umożliwiały szybkie szyfrowanie nawet długich pism bez posługiwania się skomplikowanymi urządzeniami. Stosowano przy tym osobne obszary odpowiedzialności, w ramach których dyplomaci zapamiętywali tylko fragment słownika, a pozostałą część przechowywano w miejscach o ograniczonym dostępie. Wielki Szyfr (le Grand Chiffre), z którego korzystano na dworach francuskich, wywodził się ze schematu opracowanego przez Antoine'a Rossignola około 1674 roku; podobnymi tabelami podstawień dla słów posługiwali się wcześniej m.in. Rzymianie, Mniszcy i kardynał Richelieu. System stanowił przykład rozbudowanej struktury kodowej, która przez długie lata pozostawała nieodgadniona.
Kluczowa nauka płynąca z epoki kart szyfrujących dotyczy roli, jaką odgrywa sposób przechowywania i wymiany materiałów kryptograficznych. Nawet najsilniejszy algorytm nie uratuje systemu, jeśli operatorzy będą wielokrotnie używać tego samego schematu lub trzymać klucze w niechronionych miejscach. Historyczna praktyka pokazuje, że francuscy łamacze kodów odnosili sukcesy przede wszystkim dzięki dyscyplinie analitycznej oraz cierpliwej obserwacji powtarzających się wzorców. Współczesne systemy podnoszą te wnioski do rangi standardów, wymagając od administratorów regularnej rotacji poświadczeń i natychmiastowego reagowania na wszelkie objawy nietypowego zachowania.
Wielkie szyfry dyplomatyczne stanowiły połączenie słowników podstawień słów i szyfrów alfabetowych. Ich rozszyfrowanie było możliwe dzięki pracy kryptoanalityków oraz znajomości częstości występowania zwrotów w językach urzędowych.
Systemy takie jak szyfr Ludwika XIV przynależą do grupy technik kodowych, w których zamiast pojedynczych liter kodowano całe słowa i typowe zwroty występujące w korespondencji dworskiej. Ogromna liczba kombinacji odpowiadająca tysiącom haseł skutecznie utrudniała odgadnięcie zasad podstawień metodą analizy pojedynczych znaków. Z drugiej strony ujednolicone struktury fraz urzędowych pozostawały rozpoznawalne dla doświadczonego kryptoanalityka, który potrafił dostrzec powracające układy o charakterze nagłówków lub formuł grzecznościowych.
Łamanie wielkich szyfrów dyplomatycznych wymagało połączenia znajomości języków, historii i zwyczajów kancelarii z systematyczną pracą nad powtarzającymi się sekwencjami. Naturalne języki odznaczają się strukturami przewidywalnymi, których nie da się całkowicie wyeliminować żadnym podstawieniem, dlatego bardzo długie szyfrogramy dostarczały kryptoanalitykom wystarczająco dużo przykładów powtórzeń. Zdarzało się również, że ta sama kluczowa fraza bywała kodowana w wielu przekazach według jednakowych reguł, co prowadziło do powstania znanych tekstów, ułatwiających identyfikację zastosowanego słownika. W ten sposób rozwinęła się kryptoanaliza jako odrębna dyscyplina łącząca statystykę, językoznawstwo i spostrzegawczość, a jej metody przekształciły się wprost we współczesne techniki analizy tekstu.
Analiza częstotliwości jest używana do dziś w kryptoanalizie - to jedna z najstarszych i najskuteczniejszych metod.
Al-Kindi pozostawił najstarszy znany, systematyczny opis metody analizy częstotliwości, która do dziś stanowi fundament kryptoanalizy tekstów naturalnych. Metoda ta pokazuje, że wiedza o strukturze języka ułatwia łamanie szyfrów nawet bez znajomości klucza.
Al-Kindi żył w IX wieku (ok. 801-873) w Bagdadzie, ówczesnym wielkim centrum nauki, i należał do grona uczonych, którzy przekładali oraz rozwijali dorobek starożytnej matematyki greckiej i indyjskiej. Jego traktat, spisany około 850 roku, zawiera nie tylko opis samej metody statystycznej, lecz także praktyczne wskazówki dotyczące sposobu postępowania z tekstem zaszyfrowanym. Analiza częstotliwości opierała się na bardzo prostym spostrzeżeniu, że w dowolnym naturalnym języku rozkład poszczególnych liter nie jest jednostajny.
Warto jednak pamiętać o niuansie: rozkład częstości liter arabskich był analizowany już wcześniej, między innymi przez al-Farachidiego (al-Chalila bin Ahmeda, 717-786), dlatego wartość traktatu al-Kindiego polega na systematycznym opisie procedury, a nie na samym spostrzeżeniu o nierównomiernych częstościach liter. Skuteczność tej metody wynika z nadmiarowości naturalnych języków, które dla zachowania porozumienia powtarzają pewne znaki znacznie częściej niż inne. Porównanie rozkładu liter szyfrogramu z charakterystycznym dla danego języka pozwala przypisać znakom ich prawdziwe wartości, nawet gdy podstawienie jest nieznane. Metoda zawodzi jednak przy bardzo krótkich tekstach, gdzie statystyki poszczególnych próbek odbiegają od wartości typowych, oraz przy zmianie alfabetu na każdą literę. Współczesna kryptoanaliza wciąż korzysta z tego samego pomysłu, rozszerzonego o zaawansowane narzędzia matematyczne i programy komputerowe.
Friedrich Kasiski (1805-1881), pułkownik pruski, opublikował metodę wyznaczania długości klucza w 1863 roku w książce "Die Geheimschriften und die Dechiffrir-Kunst"; jest prawdopodobne, że Babbage znał podobne rozwiązanie wcześniej, ale go nie upubliczył. Historia odkrycia pokazuje, jak ważna jest nie tylko poprawność rozumowania, ale i publikacja wyników.
Charles Babbage, znany przede wszystkim jako twórca koncepcji maszyny analitycznej, poświęcał wiele uwagi także problemom kryptograficznym, analizując między innymi wiadomości zaszyfrowane szyfrem Vigenère’a. Z dostępnych zapisów wynika, że jego podejście do łamania szyfru przypominało współczesne metody matematyczne, lecz wyniki tych prac pozostały w dużej mierze nieopublikowane. Drukowany opis metody, który dotarł do szerokiego grona odbiorców, opracował natomiast Friedrich Kasiski w 1863 roku.
Metoda Kasiskiego wykorzystuje obserwację, że w tekście jawnym pojawiają się powtarzające się sekwencje, które przy szyfrowaniu polialfabetycznym dają powtarzające się fragmenty szyfrogramu. Odległość między takimi powtórzeniami jest wówczas wielokrotnością długości klucza, co pozwala wyznaczyć długość sekwencji sterującej w sposób czysto mechaniczny. Znając długość klucza, kryptoanalityk może podzielić tekst na fragmenty szyfrowane tym samym alfabetem i zastosować do nich analizę częstotliwości. Przykład ten dobrze ilustruje, że na rozwój kryptografii wpływają nie tylko odkrycia, lecz także swobodny obieg wyników w środowisku naukowym.
Szyfry przestawieniowe przestawiają kolejność znaków, zachowując wszystkie znaki tekstu jawnego. Ich rozpoznanie wymaga zwrócenia uwagi na redundancję języka, np. obecność popularnych dwuznaków, co ułatwia kryptoanalizę.
Przestawienie różni się od podstawienia tym, że nie zmienia tożsamości pojedynczych liter, a jedynie porządkuje je w innej kolejności, przez co łatwiej je wykryć, porównując struktury tekstu jawnego i szyfrogramu. W transpozycji kolumnowej wiadomość zapisywana jest wierszami i dzielona na kolumny, a kolejność odczytu kolumn wynika z wartości klucza. Szyfr płotowy tymczasem wpisuje tekst wzdłuż figur przypominających zygzak, po czym czyta go wiersz po wierszu.
Chociaż transpozycja nie zmienia zbioru znaków, potrafi skutecznie utrudnić odczyt osobom postronnym, szczególnie gdy wiadomość jest długa i zawiera mało powtarzalnych elementów. Kryptoanalityk, który podejrzewa zastosowanie przestawienia, szuka przede wszystkim śladów charakterystycznej struktury języka, takich jak częste pary liter czy typowe przedrostki. Złożone systemy łączące przestawienie z podstawieniem były zresztą stosowane przez wieki, aby wykorzystać mocne strony obu klas szyfrów. Znajomość tych prostych technik pomaga zrozumieć, dlaczego współczesne algorytmy blokowe powtarzają wielokrotnie kombinacje podstawień i transpozycji.
Rozwój maszyn szyfrujących następował przede wszystkim pod wpływem potrzeb militarnych, gdzie liczba wiadomości rosła wykładniczo wraz ze skalą konfliktów. Automatyzacja ograniczała błędy ludzkie i przyspieszała szyfrowanie.
Ręczne szyfrowanie dużych partii materiału było nie tylko wolne, lecz także narażone na błędy wynikające z natury ludzkiej, które w warunkach frontowych przybierały często krytyczne rozmiary. Maszyny, które zaczęły powstawać na początku XX wieku, przeniosły zatem ciężar operacji na mechanizmy realizujące podstawienia w sposób automatyczny i powtarzalny. Prototyp Heberna z 1917 roku oraz prace Scherbiusa prowadzone od 1918 roku pokazują, że temat urządzeń szyfrujących dojrzewał równolegle w kilku krajach.
Wirniki, będące sercem wczesnych maszyn, wprowadzały ciągłą, cykliczną zmianę ustawień po każdej literze, co znacząco utrudniało klasyczną analizę częstotliwości. Z punktu widzenia inżynierskiego maszyny takie rozwiązywały jednocześnie problemy szybkości, poprawności i powtarzalności operacji, co miało szczególne znaczenie w warunkach wojennych. Gwałtowny wzrost zapotrzebowania na szyfrowanie w armiach XX wieku wymusił z kolei postęp organizacyjny, w tym podział pracy między operatorów i personel techniczny. Dalsze wykłady poświęcone Enigmie pokażą, jak połączenie konstrukcji mechanicznej z matematyką pozwoliło pokonać urządzenia uważane za niezawodne.
Gigantyczna jak na tamte czasy - ok. 1,6 × 1020 kombinacji ustawień (z czego ok. 150 bilionów przypada na samą łącznicę).
Enigma posiadała przestrzeń kluczy zależną od wyboru wirników, ich kolejności, połączeń łącznicy oraz początkowych ustawień. Podana wyżej wartość ok. 1,6 × 1020 to znana w literaturze przestrzeń kluczy dziennych: 60 możliwych wyborów i kolejności wirników spośród 5, 263 ustawień pierścieni oraz 150 738 274 937 250 konfiguracji 10 kabli łącznicy (ok. 150 bilionów). Te czynniki dają 158 962 555 217 826 360 000, czyli 1,59 × 1020 - zatem pierścienie są w tej liczbie już uwzględnione i nie należy doliczać ich ponownie. Uwzględnienie dodatkowo początkowych położeń wirników daje rząd wielkości 1024. Reflektor w armijnej Enigmie był stały (A, B, C), a nie zmienny. Ogromna liczba kombinacji sprawiała, że łamanie wymagało metod matematycznych, nie zaś brutalnej siły. Ogromna liczba kombinacji sprawiała, że łamanie wymagało metod matematycznych, nie zaś brutalnej siły.
Mechanizm Enigmy zbudowano z części elektryczno-mechanicznych, w których prąd płynący po naciśnięciu klawisza przechodził przez wirniki i reflektor, a wynik oświetlał odpowiednią lampkę na panelu. Konstrukcja ta sprawiała, że szyfrowanie i deszyfrowanie wykonywano dokładnie tę samą procedurą, co znacznie ułatwiało obsługę w warunkach polowych. Sygnał przechodzący przez reflektor wracał do wirników inną drogą, dzięki czemu żadna litera nie mogła zostać zaszyfrowana jako ona sama.
Liczba możliwych ustawień maszyny była tak wielka, że łamanie jej metodą prób nie wchodziło w rachubę nawet przy wsparciu techniką obliczeniową tamtej epoki. Kryptoanalitycy musieli zatem poszukiwać dodatkowych informacji, takich jak powtarzające się fragmenty wiadomości czy niezmienność formatu depesz kierowanych do poszczególnych odbiorców. Procedura szyfrowania stosowana przez niemieckich operatorów zawierała reguły, których nieprzestrzeganie wprowadzało do szyfrogramu powtarzalne wzorce. Analiza tych wzorców okazała się kluczem do złamania maszyny i pokazała, jak istotna jest współpraca matematyki z danymi pochodzącymi z praktyki operacyjnej.
Polska kryptologia lat 30. XX wieku wniosła do światowej kryptografii formalną teorię oraz pierwsze urządzenia – karty Zygalskiego i maszynę cykliczną. Te osiągnięcia należą do najważniejszych dokonań polskiej myśli technicznej.
Praca polskich matematyków w Biurze Szyfrów rozpoczęła się od prób zdekodowania niemieckich szyfrogramów, którym towarzyszyła systematyczna analiza struktury protokołu komunikacyjnego przeciwnika. Marian Rejewski wykorzystał znajomość tak zwanych pierwszych par liter wiadomości, czyli swego rodzaju nagłówków szyfrowanych wielokrotnie, do czego potrzebna była również znajomość konstrukcji maszyny. Dzięki połączeniu teorii permutacji z praktyczną wiedzą o Enigmie udało się w 1932 roku odtworzyć wewnętrzne połączenia wirników.
Opracowane następnie w Polsce urządzenia, takie jak bomba kryptologiczna i karty Zygalskiego, automatyzowały żmudne poszukiwanie dziennych kluczy, ograniczając czas potrzebny na złamanie ustawień maszyny. Przekazanie latem 1939 roku ustaleń Wielkiej Brytanii i Francji pozwoliło aliantom kontynuować prace, zanim jeszcze wybuch wojny uniemożliwił działanie warszawskiego ośrodka. Sukces polskich kryptologów wynikał także ze synergii między matematyką, inżynierią i wywiadem, która wówczas nie miała odpowiednika w Europie. Współcześnie osiągnięcia te są często przytaczane jako przykład, że teoretyczne podstawy kryptologii rzeczywiście decydują o powodzeniu w praktyce.
Często powtarzany, lecz nieudokumentowany szacunek głosi, że złamanie Enigmy skróciło wojnę o ok. 2 lata. Ocena wpływu na wynik II wojny światowej pozostaje przedmiotem dyskusji historyków.
Bletchley Park zatrudniał w latach 30. i 40. XX wieku wiele wybitnych umysłów, ale to m.in. praca Turinga oraz powstałe tam urządzenia kryptoanalityczne - elektromechaniczne bomby i elektroniczny komputer Colossus - odegrały kluczową rolę w historii informatyki oraz w łamaniu szyfrów.
Algorytmiczny model maszyny Turinga, który powstał z teoretycznego pytania o maszynę uniwersalną, okazał się później doskonałą podstawą do rozumienia procesów obliczeniowych wykonywanych przez bomby kryptograficzne. W Bletchley Park pracę organizowano w zespołach kompetencyjnych, w których obok matematyków działały osoby zajmujące się statystyką i językoznawstwem oraz operatorzy urządzeń, co przypomina współczesne zespoły bezpieczeństwa. Dane z przechwyconych depesz łączono na bieżąco z informacjami wywiadowczymi, tworząc system analityczny działający w czasie rzeczywistym. Po wojnie wiele ze zdobytych tam doświadczeń trafiło do powstających ośrodków komputerowych i przyczyniło się do rozwoju elektronicznych maszyn liczących.
Udoskonalenie polskiej bomby przez brytyjskich inżynierów polegało przede wszystkim na dostosowaniu urządzenia do zmienionych struktur niemieckiej korespondencji oraz na rozbudowaniu logiki sprzętowej odpowiedzialnej za testowanie hipotez. Skala operacji wymuszała koordynację wielu osób i maszyn, a każdy sukces w łamaniu kluczy przekładał się natychmiast na planowanie działań bojowych aliantów. Historycy podkreślają, że informacje pozyskane dzięki złamaniu Enigmy miały znaczenie strategiczne dla przebiegu bitew o Atlantyk i kampanii w Afryce Północnej. Z tego względu prace Bletchley Park są dziś uznawane za przykład, że bezpieczeństwo komunikacji bywa równie ważne jak siła militarna.
Przejście od szyfrów literowych do operacji na bitach zmieniło sposób projektowania algorytmów. Standardyzacja (jak DES, AES) pozwoliła na interoperacyjną współpracę systemów oraz kontrolę bezpieczeństwa na skalę globalną.
Reprezentowanie tekstu w postaci ciągów bitów oznacza, że pojedynczą operacją można teraz objąć całe bloki danych, które są przekształcane zgodnie z regułami zapisanymi w jawnym algorytmie. Projektanci zaczęli przy tym myśleć w kategoriach złożonych przekształceń, łącząc ze sobą podstawienia, przestawienia i operacje arytmetyczne w wielu tak zwanych rundach. Takie podejście umożliwiło budowanie algorytmów niezależnych od konkretnego alfabetu, a przez to uniwersalnych dla całej komunikacji globalnej.
Rozpowszechnienie komputerów przyczyniło się równocześnie do powstania instytucji odpowiedzialnych za opracowywanie wspólnych standardów, których rola wzrastała wraz ze skalą systemów teleinformatycznych. Wspólne algorytmy i jawne specyfikacje pozwalały bowiem producentom sprzętu oraz twórcom oprogramowania budować interoperacyjne rozwiązania działające na całym świecie. Standardyzacja pełniła także funkcję kontrolną, umożliwiając organizacjom rządowym i niezależnym ekspertom prowadzenie systematycznych ocen odporności proponowanych rozwiązań. Właśnie w tym nurcie mieści się wspomniana w slajdzie geneza algorytmów DES, a później AES, oraz powstanie kryptografii asymetrycznej, których szczegóły zostaną omówione w kolejnych częściach.
Klucz 56-bitowy okazał się zbyt krótki dla współczesnych mocy obliczeniowych - rozpoczęto prace nad następcą.
DES oparty na strukturze Feistela przez 20 lat stanowił wzorzec bezpieczeństwa. Jego złamanie metodą DES Cracker pokazało, że przestrzeń kluczy nie gwarantuje bezpieczeństwa, jeśli jest możliwa do pełnego przeszukania.
Historia DES sięga projektu Lucifer przygotowanego w laboratoriach IBM, który po konsultacjach z Agencją Bezpieczeństwa Narodowego Stanów Zjednoczonych przekształcono w standard używany pierwotnie przez administrację federalną. Mimo trwających latami dyskusji o możliwych ukrytych osłabieniach, wieloletnie analizy nie doprowadziły do odkrycia prostego sposobu obejścia algorytmu bez znajomości klucza. Z perspektywy dydaktycznej DES pozostaje cennym przykładem struktury Feistela, w której ta sama funkcja przekształcenia służy zarówno szyfrowaniu, jak i deszyfrowaniu.
Złamanie DES w 1998 roku przez komputer skonstruowany przez Electronic Frontier Foundation w ciągu 56 godzin stało się ostrzeżeniem dla społeczności zajmującej się bezpieczeństwem. Pokazało bowiem, że klucz o długości 56 bitów, choć wydawał się wystarczający w momencie standaryzacji, pozostawał podatny na atak metodą brutalnej siły przy rosnącej mocy obliczeniowej. Reakcją środowiska było opracowanie rozwiązań przejściowych, takich jak potrójne szyfrowanie bloków, oraz ogłoszenie konkursu na nowy standard, który zakończył się wyborem algorytmu Rijndael. Doświadczenia z DES potwierdzają, że ocena bezpieczeństwa systemu musi uwzględniać rozwój techniki i możliwy w danym okresie poziom nakładów na atak.
Zarys: To zmieniło świat - dwie obce strony mogą uzgodnić wspólny klucz, wymieniając informacje nawet jawnym (niechronionym) kanałem.
Kryptografia asymetryczna rozwiązała problem dystrybucji kluczy, umożliwiając publiczną wymianę danych. Idea klucza publicznego i prywatnego zmieniła sposób zarządzania bezpieczeństwem internetu, bankowości i komunikacji.
Trudność opisana w slajdzie sprowadza się do pytania, w jaki sposób uzgodnić wspólny tajny parametr bez wcześniejszego skorzystania z bezpiecznego kanału, co w kryptografii symetrycznej pozostawało nierozwiązane. Przełomowy artykuł Diffiego i Hellmana z 1976 roku pokazał, że strony mogą w jawny sposób wygenerować wspólny materiał szyfrujący, wymieniając publicznie pewne wartości liczbowe. Pojęcie klucza publicznego i prywatnego zmieniło także podejście do podpisów, gdyż każda strona może teraz potwierdzić autentyczność danych przez użycie swojej tajnej części klucza.
W praktyce kryptografia asymetryczna nie zastąpiła całkowicie rozwiązań symetrycznych, lecz została z nimi połączona w konstrukcjach hybrydowych, w których szybki szyfr symetryczny chroni właściwe dane, a wolniejsza kryptografia asymetryczna zabezpiecza wymianę kluczy. Taki podział zadań pozwala pogodzić bezpieczeństwo z wydajnością, co ma szczególne znaczenie w protokołach wykorzystywanych w przeglądarkach i telefonach komórkowych. Standardowe mechanizmy wymiany kluczy oparte na kryptografii asymetrycznej stanowią dziś fundament funkcjonowania bankowości internetowej i szyfrowanych połączeń sieciowych. W kolejnych częściach wykładu omówione zostaną formalne definicje, właściwości matematyczne oraz tryby łączenia obu typów szyfrowania.
Zapowiedź: Szczegóły matematyczne w części 4.
Bezpieczeństwo RSA opiera się na trudności faktoryzacji dużych liczb złożonych. Ze względu na algorytm Shora i rozwój komputerów kwantowych, RSA jest stopniowo zastępowany algorytmami postkwantowymi.
W systemie RSA wybiera się dwie duże liczby pierwsze i oblicza ich iloczyn, który pełni funkcję części wspólnej zarówno w kluczu publicznym, jak i prywatnym, a całość bezpieczeństwa spoczywa na założeniu, że rozłożenie tego iloczynu na czynniki jest praktycznie niewykonalne. Przy dzisiejszej mocy obliczeniowej klasyczne ataki polegające na faktoryzacji okazują się nieopłacalne dla wystarczająco dużych modułów. Wykorzystywanie danych w bankowości, poczcie elektronicznej i systemach poświadczania tożsamości opiera się na zaufaniu do tej trudności.
Jednocześnie pojawienie się algorytmu zaproponowanego przez Petera Shora zmieniło długoterminowe przewidywania dotyczące przyszłości kryptografii, ponieważ komputer kwantowy mógłby rozwiązywać problem faktoryzacji w czasie wielomianowym. Zagrożenie to skłoniło środowiska standaryzacyjne do rozpoczęcia prac nad kryptografią odporną na ataki kwantowe, określaną mianem postkwantowej. Należą do niej między innymi schematy ML-KEM służące do wymiany kluczy, które bazują na trudnych problemach z dziedziny teorii krat, a nie na faktoryzacji dużych liczb. Migracja istniejących systemów do nowych rozwiązań potrwa jeszcze wiele lat, dlatego poznanie algorytmu RSA pozostaje istotne także w perspektywie dydaktycznej.
AES (Rijndael) stanowi standard NIST od 2001 roku i jest jednym z najszerzej stosowanych algorytmów symetrycznych. Jego przewaga polega na wydajnej implementacji sprzętowej oraz odporności potwierdzonej wieloletnią analizą.
Konkurs NIST zorganizowano w formie otwartego zaproszenia, w którym wszyscy zainteresowani mogli przedstawić własne projekty algorytmów blokowych oraz wziąć udział w publicznej dyskusji nad ich właściwościami. Spośród wielu zgłoszonych kandydatów wybrano ostatecznie algorytm Rijndael opracowany przez belgijskich kryptografów Joana Daemena i Vincenta Rijmena. Ten tryb postępowania po raz pierwszy na taką skalę zaangażował środowisko naukowe w proces tworzenia standardu, zwiększając zaufanie do jego konstrukcji.
Algorytm działa na blokach danych o długości 128 bitów i obsługuje klucze o długościach 128, 192 oraz 256 bitów, co pozwala dostosować poziom ochrony do wymagań konkretnego zastosowania. Właściwości implementacyjne sprawiają, że może być skutecznie wykonywany zarówno na niewielkich urządzeniach wbudowanych, jak i na maszynach o dużej mocy obliczeniowej. Konstrukcja wykorzystująca operacje na tak zwanej macierzy stanów umożliwia szybkie przekształcenia realizowane sprzętowo i programowo, co decyduje o jego uniwersalności. Wieloletnie próby złamania i brak praktycznie skutecznych ataków potwierdzają, że decyzja o wyborze Rijndaela była trafna, a algorytm pozostaje standardem dla ochrony różnego rodzaju danych.
Kryptografia chroni obecnie praktycznie każdą komunikację cyfrową. Nawet użytkownik nieświadomy jej mechanizmów korzysta z niej przy każdej transakcji bankowej, wysyłce e-maila czy wiadomości w komunikatorze.
Ze wszystkich wymienionych na slajdzie obszarów najbardziej rozpoznawalnym jest szyfrowanie połączeń przeglądarki, sygnalizowane ikoną kłódki, które opiera się na protokole TLS wykorzystującym zarówno kryptografię asymetryczną, jak i symetryczną. W momencie otwarcia strony internetowej bądź wysłania przelewu system wymienia klucze, ustala parametry sesji i dopiero wtedy przesyła właściwe dane w formie zaszyfrowanych bloków. Użytkownik nie musi znać szczegółów tego procesu, jednak świadomość jego istnienia pozwala rozsądniej oceniać ryzyko związane z korzystaniem z publicznych sieci.
Warto zwrócić uwagę, że szyfrowanie dysku w systemie operacyjnym działa w tle i zabezpiecza dane w sytuacji zgubienia lub kradzieży urządzenia, kiedy to fizyczny dostęp do sprzętu staje się możliwy. Podobną rolę odgrywa blokada dostępu przez PIN, która wymusza znajomość poświadczenia jeszcze przed przekazaniem danych do szyfrowania. W komunikatorach stosowane jest szyfrowanie typu end-to-end, dzięki któremu serwer pośredniczący nie może odtworzyć treści rozmowy nawet przy wglądzie w przechowywane pliki. Takie wielopoziomowe podejście sprawia, że kryptografia naprawdę chroni nas każdego dnia, choć rzadko kiedy zdajemy sobie z tego sprawę.
Dla każdej rozmowy strony wyprowadzają klucze sesji z wymienionych kluczy publicznych (protokół Signal, Double Ratchet): dla każdej wiadomości powstaje nowy klucz wiadomości, a klucze prywatne nie opuszczają urządzeń.
Szyfrowanie E2E oznacza, że klucze pozostają wyłącznie u nadawcy i odbiorcy, a infrastruktura usługowa nie może odczytać wiadomości. To kluczowa różnica względem szyfrowania transportowego, stosowanego w TLS.
W praktyce E2E wymaga, aby program komunikatora samodzielnie wygenerował parę kluczy na urządzeniu użytkownika oraz przechowywał część prywatną w sposób chroniony, na przykład w zabezpieczonym magazynie kluczy. Podczas rozpoczynania rozmowy nadawca i odbiorca wymieniają klucze publiczne, z których każda ze stron niezależnie wyprowadza materiał szyfrujący sesji (protokół Signal, Double Ratchet): z klucza łańcuchowego powstaje nowy klucz wiadomości dla każdej wiadomości, a klucz główny zmienia się przy kroku ratchet. Taka konstrukcja powoduje, że nawet dostawca usługi, który przekazuje szyfrogram między urządzeniami, nie posiada żadnych informacji pozwalających na jego deszyfrowanie.
Różnica między E2E a szyfrowaniem na poziomie transportu polega na tym, kto dysponuje kluczami i kiedy treść podlega ochronie. W rozwiązaniu transportowym szyfrogram jest chroniony na odcinku klient-serwer, natomiast serwer usługodawcy widzi tekst jawny i może przetwarzać lub archiwizować treść wiadomości. Z szyfrowaniem E2E serwer pozostaje jedynie kanałem przekazującym zaszyfrowane dane, co zwiększa prywatność kosztem niektórych funkcji, takich jak automatyczne skanowanie treści. Dlatego komunikatory decydujące się na E2E przyjmują model, w którym ochrona prywatności ma pierwszeństwo także względem aspektów operacyjnych swoich usług. Należy jednak pamiętać, że ochrona treści nie obejmuje metadanych: dostawca nadal widzi numery telefonów, godziny, długości oraz łącza połączeń rozmowy, a także własny kod klucza szyfrowania.
Ujęcie popularne - szczegóły techniczne w częściach 4-5.
Kryptowaluty i blockchain łączą funkcje skrótu, podpisy cyfrowe oraz rozproszony konsensus. Zrozumienie tych fundamentów jest konieczne, by ocenić faktyczne bezpieczeństwo systemów zdecentralizowanych.
Łańcuch bloków tworzony jest w taki sposób, że każda nowa transakcja wpisana do nowego bloku zostaje powiązana z zawartością bloku poprzedniego za pomocą wartości funkcji skrótu, przez co jakakolwiek zmiana przeszłych danych natychmiast zaburza cały ciąg. Podpisy cyfrowe umieszczane w transakcjach zapewniają autentyczność i niezaprzeczalność, gdyż tylko właściciel klucza prywatnego może potwierdzić zgodę na wykonanie operacji. W sieciach rozproszonych weryfikacją transakcji i uzgadnianiem stanu księgi zajmują się niezależne węzły, które komunikują się zgodnie z wybranym protokołem konsensusu.
Adres odbiorcy w popularnych systemach stanowi skrót klucza publicznego, co ogranicza ujawnianie danych właściciela, ale nie czyni systemu w pełni anonimowym, ponieważ analiza przepływów między adresami może ujawnić powiązania. Utworzenie portfela nie wymaga podawania tożsamości, wystarczy klucz prywatny, a jego utrata oznacza trwałą utratę dostępu do środków, gdyż nie istnieje centralny operator mogący przywrócić zgubione poświadczenia. Podwójne wydawanie środków uniemożliwia mechanizm konsensusu, który odrzuca bloki zawierające sprzeczne transakcje, a sam blockchain pełni też funkcję publicznego rejestru zdarzeń. Z tych względów systemy oparte na blockchain są często opisywane jako połączenie kryptografii, ekonomii i rozproszonych systemów komputerowych.
Kryptografia postkwantowa obejmuje algorytmy odporne na obliczenia kwantowe, takie jak ML-KEM (dawniej Kyber) czy ML-DSA (dawniej Dilithium). Proces standaryzacji NIST był kontynuowany po sierpniu 2024 roku: trzy pierwsze standardy opublikowano w sierpniu 2024 roku, a 11 marca 2025 roku do standaryzacji wybrano HQC jako zapasowy mechanizm enkapsulacji klucza, oparty na kodach korygujących błędy.
Zagrożenie wynikające z rozwoju komputerów kwantowych dotyczy przede wszystkim algorytmów opartych na faktoryzacji dużych liczb i logarytmie dyskretnym, które przy odpowiednio dużej maszynie kwantowej mogłyby zostać złamane w czasie wielomianowym. Dotyczy to zatem nie tylko kolejnych wiadomości, lecz także danych zaszyfrowanych wiele lat temu, dlatego powstała koncepcja ataku określanego jako zbierz dziś, odszyfruj później. Zabezpieczenie się przed takim scenariuszem wymaga przyjęcia standardów odpornych na kwantowe metody obliczeń, zanim takie maszyny staną się powszechnie dostępne.
Do tej pory opublikowane schematy postkwantowe bazują między innymi na problemach z dziedziny teorii krat, których złożoność nie jest wykorzystywana w prosty sposób przez algorytmy kwantowe. 13 sierpnia 2024 roku amerykański instytut NIST opublikował trzy główne standardy: FIPS 203 (ML-KEM, mechanizm enkapsulacji klucza – KEM) oraz FIPS 204 (ML-DSA) i FIPS 205 (SLH-DSA) do podpisów cyfrowych. W przygotowaniu jest FIPS 206 ze schematem FN-DSA, pochodzącym z rodziny Falcon, a jako zapasowy mechanizm wymiany kluczy wybrano 11 marca 2025 roku algorytm HQC. Równolegle prowadzone są prace nad kolejnymi schematami i rozwiązaniami hybrydowymi, które łączą stare i nowe algorytmy w celu zachowania zgodności w okresie przejściowym. Nie ma oficjalnego terminu, do którego wdrożenia miałyby się zakończyć: zalecenia dotyczą harmonogramu zależnego od konkretnych zastosowań, a część organizacji wyznacza sobie wewnętrzne daty do końca lat trzydziestych. W praktyce oznacza to konieczność uwzględnienia migracji już dziś w projektowaniu systemów.
Napastnik przechwytuje komunikację między dwiema stronami, podszywając się pod każdą z nich - może odczytać i modyfikować wiadomości.
Podczas ataku Man-in-the-Middle napastnik podszywa się pod obie strony komunikacji. Zabezpieczeniem przed nim są mechanizmy uwierzytelniania wzajemnego oraz zaufane certyfikaty w infrastrukturze PKI.
Atak brutalnej siły polega na wypróbowaniu wszystkich możliwych kluczy z przestrzeni kluczowej, dlatego jego skuteczność zależy wyłącznie od liczby kombinacji i mocy obliczeniowej dostępnej dla atakującego. Dla algorytmów z kluczami o długości 128–256 bitów liczba możliwych przyporządkowań osiąga wartości astronomiczne, co czyni taki atak praktycznie niewykonalnym w realistycznym czasie. Współczesna kryptoanaliza wykorzystuje ponadto metody matematyczne, które pozwalają atakować algorytmy znacznie wydajniej niż proste przeszukiwanie kluczy.
W przypadku ataku pośredniczącego napastnik musi najpierw zyskać możliwość przechwycenia ruchu, na przykład w sieci bezprzewodowej lub przez skonfigurowany serwer przekazujący, a następnie rozpocząć proces uzgadniania kluczy z obiema ofiarami. Właściwe uwierzytelnienie stron, oparte na certyfikatach i infrastrukturze klucza publicznego, uniemożliwia taki manewr, ponieważ każda ze stron weryfikuje tożsamość drugiej. Stosowane w zaufanych bibliotekach mechanizmy zapewniają, że dane nie są modyfikowane podczas transmisji, a klucze sesyjne pozostają znane wyłącznie nadawcy i odbiorcy. Pomimo istnienia ataków na konkretne wdrożenia, wytrwałe stosowanie wzajemnego uwierzytelniania i standardowych mechanizmów znacząco ogranicza podatność systemów.
Zapowiedź: Szczegółowe omówienie modelu CIA w części 1.
Model CIA jest fundamentem analizy bezpieczeństwa informacji. W praktyce ocena organizacji wymaga zrównoważenia tych trzech filarów, dlatego model CIA pojawi się wielokrotnie w kolejnych częściach wykładu.
Trzy filary modelu CIA opisują wymagania, które system informatyczny powinien spełniać, aby informacja znajdowała się pod właściwą kontrolą przez cały cykl jej życia. Poufność oznacza, że do danych uzyskują dostęp wyłącznie uprawnione osoby, integralność gwarantuje, że treść nie ulegnie przypadkowej albo celowej modyfikacji, a dostępność decyduje o tym, czy zasoby są osiągalne wtedy, gdy są potrzebne. Równorzędność tych kryteriów sprawia, że naruszenie jednego z nich osłabia całościowe bezpieczeństwo organizacji.
Realizacja modelu CIA wymaga połączenia środków technicznych z organizacyjnymi, ponieważ samo szyfrowanie nie zapewni dostępności ani nie zastąpi prawidłowych procedur przechowywania danych. W przedsiębiorstwach stosuje się w tym celu szersze zestawy kontroli, które obejmują takie obszary jak autoryzacja dostępu, tworzenie kopii zapasowych czy monitorowanie incydentów. Niejednokrotnie trzeba przy tym podejmować decyzje kompromisowe, na przykład pomiędzy silnym szyfrowaniem a wydajnością systemu, dlatego ocena bezpieczeństwa ma zawsze charakter analityczny. Szczegółowe omówienie modelu CIA oraz pokrewnych rozszerzeń, jak uwzględnienie niezaprzeczalności i rozliczalności, znajdzie się w pierwszej części cyklu wykładowego.
Podział materiału na 6 części odzwierciedla logikę budowania kompetencji: od zagrożeń, przez architekturę szyfrów, po systemy PKI i składowanie danych. Wszystkie te obszary mają związek z prezentacją 0.
Zaproponowany podział na sześć części nie jest przypadkowy, ponieważ kolejne części opierają się na pojęciach poznanych wcześniej, a każde zagadnienie wymaga solidnych podstaw z obszaru, który go poprzedza. Część pierwsza poświęcona zagrożeniom wyznacza, czym w ogóle jest ochrona informacji, natomiast część druga wprowadza klasyczne szyfry jako punkt odniesienia do zrozumienia algorytmów współczesnych. Dopiero po opanowaniu tych fundamentów można przejść do kryptografii symetrycznej i asymetrycznej oraz do ich praktycznych zastosowań w infrastrukturze klucza publicznego.
W ramach cyklu omówione zostaną także protokoły uwierzytelniania oraz systemy składowania danych, dzięki czemu odbiorcy przygotują się do pracy w zespołach zajmujących się bezpieczeństwem w przedsiębiorstwach. Terminy wprowadzone w prezentacji 0, powracające w kolejnych częściach, ułatwią rozumienie szczegółowych opisów algorytmów i schematów proceduralnych. Dodatkowo każda kolejna część łączy stronę teoretyczną z przykładami narzędzi, co sprzyja budowaniu kompetencji praktycznych. Z tego względu zachęcamy do systematycznego powracania do zapisów z prezentacji 0 podczas studiowania kolejnych części materiału.
Mity o „niezniszczalnych” szyfrach powstają, gdy nie docenia się postępu metod kryptoanalizy. Lekcja płynąca z historii: bezpieczeństwo systemu zależy od jego architektury, a nie od deklarowanej prostoty.
Przykład Enigmy pokazuje, że nawet bardzo rozbudowana konstrukcja bywa podatna na analizę, gdyż pewne własności, takie jak to, że żadna litera nie mogła być zaszyfrowana jako ona sama, ułatwiają zawężenie przestrzeni poszukiwań. Współczesne systemy projektuje się z założeniem, że szczegóły algorytmu są jawne, a bezpieczeństwo polega na mocy klucza, co wymaga otwartej analizy i testów prowadzonych przez środowisko naukowe. Pozostaje faktem, że żaden algorytm nie gwarantuje bezpieczeństwa na zawsze, dlatego specjaliści uwzględniają w planach ochrony możliwość migracji do nowszych rozwiązań.
Rozważając zagadnienie wojny o prywatność, warto pamiętać, że kryptografia pełni podwójną rolę, chroniąc jednocześnie prawa użytkowników i utrudniając pracę organom ścigania. Spory o dostęp do zaszyfrowanych danych są obecnie stałym elementem debat politycznych i prawnych na całym świecie. Studenci powinni dostrzegać przy tym, że dawne systemy wydają się nam słabe jedynie z perspektywy środków dostępnych współcześnie. Porównanie pokazane na slajdzie jest zatem dobrym pretekstem do refleksji nad tym, jak zmieniają się kryteria oceny siły rozwiązań kryptograficznych.
Uwaga: to tematy praktyczne - ocena konfiguracji, wykrywanie słabych protokołów, testy łamania.
Wiedza kryptograficzna znajduje zastosowanie w sieciach, programowaniu, bazach danych oraz audytach bezpieczeństwa. Znajomość podstaw jest oczekiwana od niemal każdego specjalisty IT, nie tylko od dedykowanych ekspertów.
W sieciach komputerowych kryptografia pojawia się wielokrotnie: od szyfrowania samego ruchu przez poziomy TLS i IPsec, po budowane w oparciu o szyfry instalacje VPN obsługujące połączenia między oddziałami przedsiębiorstw. Administratorzy muszą przy tym rozumieć, jakie parametry i konfiguracje zapewniają wymagany poziom ochrony oraz jak wycofywać przestarzałe protokoły. Z kolei programiści stykają się z kryptografią, gdy muszą poprawnie zastosować funkcje skrótu i szyfrowanie danych wrażliwych w tworzonych aplikacjach.
Audyt bezpieczeństwa i testy penetracyjne wymagają umiejętności oceny faktycznych, a nie deklarowanych, właściwości konfiguracji, w tym wykrywania słabych algorytmów oraz błędnie stosowanych kluczy. Brak odpowiednich kompetencji po stronie zespołu projektowego prowadzi często do pozornego zabezpieczenia, które sprawia wrażenie ochrony, choć w rzeczywistości nie zapewnia jej wcale. Na rynku pracy znajomość fundamentów kryptografii łączy się z wieloma ścieżkami kariery, od analityka bezpieczeństwa po audytora kryptograficznego. Dlatego treści prezentowane w tym cyklu wykładowym są cenne nie tylko dla przyszłych kryptografów, lecz także dla szerokiego grona osób zajmujących się technologiami informacyjnymi.
Motor rozwoju: wojna, handel, zaufanie. Kryptografia rośnie wraz z zagrożeniami.
Rys historyczny pokazuje, że kryptografia rozwijała się skokowo pod wpływem wojen, handlu i rozwoju technik kryptoanalizy. Ta dynamika jest punktem wyjścia do szczegółowych tematów w częściach 1–6.
Oś czasu przedstawiona w slajdzie pozwala porządkować wiedzę, ułatwiając powiązanie poszczególnych odkryć z kontekstem historycznym, w którym powstały. Kolejne kamienie milowe nie pojawiały się w próżni, lecz były odpowiedzią na konkretne wyzwania komunikacyjne i organizacyjne swoich czasów. Dostrzeżenie tej zależności pozwala lepiej zrozumieć kierunek dalszych badań nad algorytmami i systemami bezpieczeństwa.
Na szczególną uwagę zasługuje wzajemne oddziaływanie między twórcami metod ochrony a kryptoanalitykami, którego efektem było stopniowe przechodzenie od prostych podstawień do złożonych konstrukcji stosowanych we współczesnych standardach. Każde pojawienie się nowego narzędzia obliczeniowego, od maszyn wirnikowych po komputery elektroniczne, wymuszało zmianę sposobu myślenia o bezpieczeństwie informacji. Najnowsze zagadnienia, takie jak blockchain czy kryptografia postkwantowa, są naturalną kontynuacją tej dynamiki i jednocześnie wyzwaniem dla przyszłych inżynierów. Zachęcamy zatem do podchodzenia do dalszych części materiału z perspektywą historyczną, która ułatwia trwałe zapamiętanie kolejnych odkryć.
Słownik pojęć stanowi punkt odniesienia dla całego opracowania – do terminów tu zdefiniowanych będziemy wracać w częściach 1–6. Warto utrwalić rozróżnienie między szyfrowaniem, hashowaniem a podpisem cyfrowym.
Przedstawione w słowniku definicje tworzą wspólny język komunikacji, którym posługiwać się będziemy w kolejnych częściach materiału. Przygotowując się do zajęć, warto traktować ten zestaw pojęć jako punkt wyjścia do samodzielnego budowania dłuższych notatek, w których każde pojęcie zyskuje przykładowe zastosowanie. Wyjaśnienie różnic między operacjami szyfrowania, hashowania i podpisu cyfrowego jest przy tym szczególnie istotne, ponieważ bywa źródłem wielu nieporozumień.
Funkcja skrótu przekształca dowolnie długie dane na wartość o ustalonej długości, ale w przeciwieństwie do szyfrowania nie przewiduje odtworzenia oryginału, a jej wynik poświadcza integralność lub zgodność haseł. Podpis cyfrowy natomiast łączy funkcję skrótu z kluczem prywatnym, dzięki czemu można zweryfikować, kto podpisał dokument i czy nie został on zmieniony. Te trzy mechanizmy współdziałają w praktyce, na przykład podczas nawiązywania bezpiecznej sesji w protokole TLS. Swoboda posługiwania się tymi terminami w połączeniu ze zrozumieniem ich definicji pozwoli płynnie podążać za kolejnymi częściami materiału.
Terminy przedstawione w słowniku obejmują zarówno szyfry klasyczne, jak i współczesne algorytmy oraz technologie (Enigma, bomba, Bletchley Park, DES, AES, RSA, ECC, funkcje skrótu, blockchain, kryptografia postkwantowa).
Poruszając się między klasycznymi szyframi a nowoczesnymi technologiami, studenci powinni pamiętać, że wiele pojęć zachowało swoje podstawowe znaczenie przez stulecia, a zmieniały się jedynie techniki ich realizacji. Rozróżnienie między szyfrem podstawieniowym i przestawieniowym, obecne w prezentacji, pozostaje równie przydatne przy opisie współczesnych algorytmów blokowych, które łączą oba typy operacji. Z kolei pojęcia algorytmu i klucza przenikają całe wykłady, ponieważ opisują podstawową zależność między jawnymi procedurami a tajnymi parametrami. Także terminy dotyczące infrastruktury bezpieczeństwa, takie jak certyfikat czy infrastruktura PKI, będą powracać przy omawianiu praktycznych zastosowań kryptografii.
Warto już w tej chwili zwrócić uwagę, że rozwój terminologii przebiega razem z rozwojem samych technik, a każda kolejna epoka wprowadzała pojęcia potrzebne do opisu nowych mechanizmów. Warto odróżnić dwa podobne, lecz różne pojęcia: wektor inicjalizacyjny (IV) jest losowym blokiem danych dołączonym do jednorazowego szyfrowania, aby ten sam tekst przy tym samym kluczu dawał różne szyfrogramy, natomiast sól to losowy składnik dołączany do hasła przed jego zabezpieczeniem funkcją skrótu, co utrudnia atak tablicową wstępnie przygotowanych skrótów. Pojawienie się maszyn szyfrujących zaowocowało terminami związanymi z wirnikami, a era komputerów przyniosła słownictwo dotyczące bloków, trybów pracy i funkcji skrótu. Współczesne słowniki bezpieczeństwa zawierają także pojęcia z zakresu blockchainu i kryptografii postkwantowej, które odzwierciedlają kierunek aktualnych badań. Podczas dalszej nauki studenci będą stopniowo poszerzać ten zbiór, dlatego uporządkowanie pojęć na samym początku cyklu ułatwia późniejsze przyswajanie nowych terminów.
Podpowiedź do pytania 1: kodowanie to jawne mapowanie danych (np. ASCII), a szyfrowanie ukrywa treść za pomocą klucza.
Pytania kontrolne są przygotowane tak, aby podsumować słownik i historię z całej prezentacji. Dodatkowo zachęcamy do samodzielnej refleksji: dlaczego np. długość klucza wpływa na bezpieczeństwo szyfru?
Formułując odpowiedzi na pytania kontrolne, warto przede wszystkim odwoływać się do przykładów omówionych w tekście, gdyż konkretne przypadki ułatwiają trwałe zapamiętanie zasad ogólnych. W przypadku pytań historycznych nie wystarczy wymienienie nazwisk i dat, lecz trzeba także opisać, dlaczego dane osiągnięcie było przełomowe. Doświadczenie uczy, że czynne odpowiadanie na pytania jest skuteczniejsze od biernego czytania notatek, dlatego zadania te stanowią integralną część prezentacji.
Pytanie o różnice między kryptografią i kryptoanalizą pozwala sprawdzić, czy pojęcie obejmujące całość dyscypliny zostało właściwie zrozumiane. Z kolei pytania dotyczące szyfru Cezara i analizy częstotliwości skłaniają do refleksji nad słabymi stronami prostych podstawień, co jest punktem wyjścia do dalszych rozważań. Warto zapamiętać, że niemal każde z pytań ma znaczenie praktyczne, gdyż pojawia się w różnej formie także w pracy zawodowej specjalisty ds. bezpieczeństwa. Odpowiadając, sugerujemy zatem nie tylko zapamiętywanie odpowiedzi, lecz także tłumaczenie ich innym osobom, co jeszcze mocniej utrwala zdobywane kompetencje.
Zrozumieć pojęcia klucza, tekstu jawnego i szyfrogramu w praktyce - to fundament wszystkiego, co nastąpi w częściach 1-6.
Zadanie samodzielne ma charakter czysto praktyczny – rozszyfruj szyfr Cezara na kartce oraz narysuj oś czasu. Tego typu ćwiczenia budują intuicję, na której oprą się kolejne części opracowania.
Wykonując ćwiczenie polegające na ręcznym kodowaniu i dekodowaniu, zyskuje się bezpośrednie doświadczenie procesu szyfrowania, które trudno uzyskać wyłącznie z teoretycznego opisu. Przy przypisywaniu liter warto pracować metodą tabelaryczną, aby uniknąć pomyłek i jednocześnie dostrzec powtarzalność wykonywanych przekształceń. Przykładowe zadanie z kluczem 5 pozwala również zwrócić uwagę na to, jak zmienia się wynik po zmianie parametru przesunięcia.
Narysowanie osi czasu wymaga natomiast powiązania wielu informacji z prezentacji i uporządkowania ich według epok oraz motywów rozwoju, co wzmacnia umiejętność syntezy wiedzy. Obejrzenie filmów historycznych, takich jak opowieść o pracy ekipy z Bletchley Park, pomaga zobaczyć kryptografię jako dyscyplinę wymagającą pracy zespołowej i determinacji. Zachęcamy także do samodzielnego poszukiwania odpowiedzi, w jakich sytuacjach codziennego życia spotykamy szyfrowanie bez zwracania na to uwagi. Wszystkie te elementy mają wspólny cel, którym jest zbudowanie intuicji stanowiącej fundament realnego zrozumienia kolejnych części materiału.
Te uwagi końcowe zamykają część wprowadzającą. W kolejnych częściach opracowania przejdziemy od ogólnych pojęć do szczegółów algorytmów i systemów bezpieczeństwa.
Zaprezentowany w prezentacji 0 przegląd pokazuje, że kryptografia spaja w sobie matematykę, historię i informatykę, a znajomość jej podstaw pozwala rozumieć wiele współczesnych technologii. Nawet pobieżne przejrzenie osi czasu uświadamia, jak szybko zmieniały się metody ochrony informacji i jak trudne bywa przewidywanie kierunku dalszych badań. Przedstawione zagadnienia stanowią jednocześnie wstęp do szczegółowych tematów każdej z sześciu kolejnych części.
Najważniejszym celem tego wprowadzenia jest wyrobienie nawyku uważnego śledzenia treści oraz samodzielnego weryfikowania informacji na podstawie wiarygodnych źródeł. W kolejnych częściach znane już pojęcia będą rozwijane i konfrontowane z praktycznymi przykładami, dlatego warto utrwalać notatki już od pierwszej jednostki zajęć. Serdecznie zapraszamy także do zadawania pytań i zgłaszania wątpliwości, ponieważ aktywna wymiana myśli sprzyja lepszemu opanowaniu materiału. Liczymy, że poznane tutaj zagadnienia okażą się dla całej grupy źródłem motywacji do dalszej nauki kryptologii i bezpieczeństwa informacji.