Szyfrowanie

Jak działa szyfrowanie i po co nam algorytmy szyfrujące?

1. Dlaczego stosujemy szyfry?

Wyobraź sobie, że chcesz wysłać wiadomość, ale nie chcesz, aby ktoś niepowołany ją przeczytał. Rozwiązaniem jest szyfrowanie – proces, w którym zwykły tekst (tzw. tekst jawny) zamienia się w niezrozumiały ciąg znaków, czyli szyfrogram.
Odbiorca, który zna sposób szyfrowania i odpowiedni klucz, może go odczytać – czyli przeprowadzić deszyfrowanie.

Dziś szyfry stosuje się wszędzie:

  • w bankowości internetowej,
  • w zabezpieczeniach danych osobowych,
  • w komunikatorach i poczcie elektronicznej,
  • w handlu elektronicznym (np. płatności kartą).

2. Podstawowe pojęcia

  • Szyfr – algorytm przekształcający wiadomość.
  • Szyfrowanie – proces zamiany tekstu jawnego w szyfrogram.
  • Deszyfrowanie – odtwarzanie tekstu jawnego z szyfrogramu.
  • Tekst jawny – wiadomość przed zaszyfrowaniem.
  • Szyfrogram – zaszyfrowana wiadomość.
  • Kryptografia – to dziedzina zajmująca się tworzeniem metod i algorytmów szyfrowania, które mają na celu ochronę poufności, integralności i autentyczności informacji. Polega na zamianie tekstu jawnego na szyfrogram w taki sposób, aby osoby nieznające klucza nie mogły odczytać wiadomości. Współczesna kryptografia wykorzystuje zarówno proste metody (np. szyfr Cezara), jak i bardzo złożone algorytmy matematyczne (np. RSA). Dzięki niej możliwe jest bezpieczne korzystanie z bankowości internetowej, poczty elektronicznej czy komunikatorów.
  • Kryptoanaliza – to nauka zajmująca się badaniem i łamaniem szyfrów. Jej celem jest odtworzenie tekstu jawnego lub klucza bez znajomości algorytmu szyfrowania czy hasła. W przeszłości kryptoanalitycy odgrywali kluczową rolę w działaniach wojennych, np. przy łamaniu szyfru Enigmy w czasie II wojny światowej. Dziś kryptoanaliza służy m.in. do testowania bezpieczeństwa systemów kryptograficznych, aby znaleźć ich słabe punkty.
  • Kryptologia – to wspólna dziedzina łącząca kryptografię i kryptoanalizę. Zajmuje się zarówno tworzeniem szyfrów, jak i ich badaniem oraz łamaniem. Dzięki kryptologii możemy rozwijać coraz bezpieczniejsze systemy ochrony danych, które chronią nasze informacje przed cyberatakami. To interdyscyplinarna nauka łącząca matematykę, informatykę i inżynierię, mająca ogromne znaczenie w świecie nowoczesnych technologii.

3. Szyfry podstawieniowe – przykład szyfru Cezara

Jeden z najstarszych szyfrów, używany już w starożytnym Rzymie. Polega na zastąpieniu każdej litery tekstu inną literą, przesuniętą w alfabecie o określoną liczbę miejsc.

Alfabet polski, bez znaków diakrytycznych, 26 liter.

Tekst jawny: K O T E K
Klucz: przesunięcie o +3

Alfabet: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

  • K → L (1), M (2), N (3)
  • O → P (1), Q (2), R (3)
  • T → U (1), V (2), W (3)
  • E → F (1), G (2), H (3)
  • K → (tak jak na początku) → N

Szyfrogram: NRWHN ✅

Aby odczytać wiadomość, trzeba znać klucz, czyli liczbę przesunięć.


4. Szyfry przestawieniowe i anagramy

W szyfrach przestawieniowych nie zmieniamy liter, lecz ich kolejność.
Przykład:
Tekst jawny: ALA MA KOTA
Zapis w wierszach i odczytanie kolumnami: AMOLATAKA

Jak to zrobić poprawnie (3 kolumny — naturalny wybór, bo 9 liter = 3×3)

  1. Usuwamy spacje: ALAMAKOTA (9 liter).
  2. Układamy w wierszach po 3 znaki:
A L A
M A K
O T A

  1. Odczytujemy kolumnami (kol. 1, potem 2, potem 3):
  • kol. 1: A M O
  • kol. 2: L A T
  • kol. 3: A K A
  1. Sklejamy: AMOLATAKA

Anagramy to forma szyfrowania, gdzie litery słowa przestawiamy, np. słowo RA-MA można zaszyfrować jako MA-RA.

🔹 Szyfry przestawieniowe

W szyfrach przestawieniowych nie zmieniamy liter na inne znaki, jak w szyfrach podstawieniowych, lecz zmieniamy ich kolejność. Tekst jawny zostaje „przemieszany” zgodnie z określonym schematem.

Przykład 1 – zapis kolumnowy

Tekst jawny: KOMPUTER
Zapisujemy w wierszach o długości 3:

K O M  
P U T  
E R _

Odczytując kolumnami: KPEOURMT (podkreślenie oznacza pustą kratkę).


Przykład 2 – klucz przestawienia

Możemy ustalić kolejność odczytywania liter za pomocą klucza numerycznego.
Tekst jawny: MATURA
Dzielimy na grupy po 3 litery:

M A T  
U R A

Klucz: 3-1-2
Odczyt według kolejności: TMA AUR.


Przykład 3 – prosty szyfr przestawieniowy (od tyłu)

Tekst jawny: INFORMATYKA
Czytamy od końca: AKYTAMROFNI.
Choć proste, też jest to szyfr przestawieniowy.


🔹 Anagramy

Anagram to szczególny przypadek szyfru przestawieniowego, w którym litery lub sylaby są przestawiane, aby utworzyć nowe słowo lub frazę.

Przykład 1 – pojedyncze słowo

Słowo: RA-MA
Anagram: MA-RA

Przykład 2 – przestawienie sylab

Słowo: POEZJA → można zaszyfrować jako:

EZ-PO-JA
JA-PO-EZ
EZ-JA-PO

🔹 Anagramy literowe z kolei rzeczywiście mogą wyglądać tak: POEZJA → EZJAPO albo POEZJA → ZAPOJE – tutaj przestawiamy wszystkie litery.

Przykład 3 – hasło zdaniowe

W anagramie zdaniowym mieszamy wszystkie litery z całego zdania (spacje są umowne), tak by powstał inny układ znaków. Nie musimy zachowywać liter w obrębie poszczególnych słów — litery mogą „przechodzić” między słowami.

Weryfikacja krok po kroku

  1. Długość (bez spacji):
  • „TO JEST POWAZNY SPRAWDZIAN” → 23 znaki
  • „JNPWOST I AEAPZDOZTY SN AWR” → 23 znaki
  1. Zliczenie liter (częstości) – w obu napisach identyczne:
  • A×3
  • T×2, O×2, S×2, P×2, W×2, Z×2, N×2
  • J×1, E×1, Y×1, R×1, D×1, I×1

(Każda litera występuje tyle samo razy w oryginale i w anagramie, nic nie dodano, nic nie zgubiono.)

Co z odstępami?

Spacje w anagramach literowych są dowolnym formatowaniem — służą tylko do czytelności. Tutaj podział „JNPWOST I AEAPZDOZTY SN AWR” nie musi tworzyć sensownych słów; liczy się jedynie zgodność zestawu liter.


👉 Jak rozpoznać szyfr przestawieniowy?

  • W szyfrogramie występują dokładnie te same litery co w tekście jawnym (nic nie ginie, nic się nie dodaje).
  • Zmienia się tylko kolejność liter.
  • Dla krótkich tekstów można próbować odtworzyć oryginał metodą prób i błędów, sprawdzając, czy powstaje sensowne słowo lub zdanie.

5. Szyfrowanie symetryczne i asymetryczne

  • Symetryczne – ten sam klucz służy do szyfrowania i deszyfrowania. Przykład: szyfr Cezara.
  • Asymetryczne – używa się dwóch kluczy: publicznego (znanego wszystkim) i prywatnego (znanego tylko właścicielowi). Przykład: algorytm RSA.
    Metoda asymetryczna stosowana jest w transakcjach bankowych czy przy logowaniu do stron internetowych (HTTPS).

6. Maszyna Enigma

Podczas II wojny światowej Niemcy używali Enigmy – mechanicznej maszyny szyfrującej. Dzięki skomplikowanemu systemowi wirników tworzyła miliony kombinacji.
Złamanie szyfru Enigmy przez polskich matematyków (Rejewskiego, Różyckiego i Zygalskiego) było jednym z największych sukcesów kryptologii XX wieku.


7. Algorytm RSA

RSA to jeden z najważniejszych i najczęściej stosowanych algorytmów szyfrowania asymetrycznego. Został opracowany w 1977 roku przez trzech matematyków: Rivesta, Shamira i Adlemana (stąd skrót RSA). Jego działanie opiera się na własnościach liczb pierwszych i trudności faktoryzacji, czyli rozkładu bardzo dużej liczby na czynniki pierwsze.

W RSA każdy użytkownik posiada dwa klucze:

  • klucz publiczny – znany wszystkim, służy do szyfrowania wiadomości,
  • klucz prywatny – znany tylko właścicielowi, używany do deszyfrowania.

Dzięki temu możliwe jest bezpieczne przesyłanie danych przez Internet, nawet jeśli ktoś przechwyci szyfrogram – bez klucza prywatnego nie będzie w stanie go odczytać. RSA wykorzystywany jest m.in. w bankowości internetowej, certyfikatach cyfrowych, podpisach elektronicznych i protokole HTTPS.


8. Algorytmy sortowania – bąbelkowy i przez wstawianie

Oprócz szyfrowania w informatyce poznajemy też inne algorytmy.

  • Sortowanie bąbelkowe (bubble sort)
    Sortowanie bąbelkowe to jeden z najprostszych algorytmów porządkowania danych. Działa na zasadzie porównywania sąsiednich elementów i zamieniania ich miejscami, jeśli są w złej kolejności. W trakcie kolejnych „przejść” największe elementy „wypływają” stopniowo na koniec listy, podobnie jak bąbelki powietrza w wodzie – stąd nazwa algorytmu. Proces powtarza się aż do całkowitego uporządkowania zbioru.

    Przykład krok po kroku
    Mamy liczby: [5, 3, 4, 1, 2]
    Przebieg 1:
    porównaj (5,3) → zamień → [3, 5, 4, 1, 2]
    porównaj (5,4) → zamień → [3, 4, 5, 1, 2]
    porównaj (5,1) → zamień → [3, 4, 1, 5, 2]
    porównaj (5,2) → zamień → [3, 4, 1, 2, 5]
    Największa liczba „5” znalazła się na końcu.
    Przebieg 2:
    (3,4) – ok → [3, 4, 1, 2, 5]
    (4,1) → zamień → [3, 1, 4, 2, 5]
    (4,2) → zamień → [3, 1, 2, 4, 5]
    Przebieg 3:
    (3,1) → zamień → [1, 3, 2, 4, 5]
    (3,2) → zamień → [1, 2, 3, 4, 5]
    Zbiór jest posortowany rosnąco.

    Podsumowanie
    Algorytm jest łatwy do zrozumienia, ale nieefektywny dla dużych zbiorów, bo wykonuje wiele niepotrzebnych porównań.

  • Sortowanie przez wstawianie (insertion sort)
    Sortowanie przez wstawianie polega na budowaniu uporządkowanego fragmentu listy krok po kroku. Zaczynamy od pierwszego elementu (który traktujemy jako posortowany). Następnie każdy kolejny element „wstawiamy” w odpowiednie miejsce w już uporządkowanej części, przesuwając większe elementy w prawo.
    Można to porównać do układania kart w ręce: zawsze trzymasz karty posortowane, a nową kartę wkładasz na odpowiednią pozycję.

    Przykład krok po kroku
    Mamy liczby: [5, 3, 4, 1, 2]
    Początek: [5] – traktujemy jako posortowane.
    Bierzemy 3 → wstawiamy przed 5 → [3, 5].
    Bierzemy 4 → porównujemy: 4 > 3, ale 4 < 5 → wstawiamy między → [3, 4, 5].
    Bierzemy 1 → 1 < 3, więc trafia na początek → [1, 3, 4, 5].
    Bierzemy 2 → 2 > 1, ale 2 < 3 → wstawiamy w środek → [1, 2, 3, 4, 5].
    Ostatecznie mamy zbiór posortowany rosnąco.

    Podsumowanie
    Algorytm prosty do zrozumienia i często szybszy od sortowania bąbelkowego dla małych zbiorów.

Te metody pokazują, że algorytmy to zestaw kroków, które prowadzą do rozwiązania problemu.


9. Podsumowanie

Szyfrowanie danych to podstawa bezpieczeństwa w dzisiejszym świecie. Od prostych metod, jak szyfr Cezara, po skomplikowane algorytmy RSA – wszystkie służą jednemu: ochronie informacji.
Wiedza o szyfrach nie tylko rozwija logiczne myślenie, ale też pokazuje, jak matematyka i informatyka mają wpływ na nasze codzienne życie.

Pobierz Kartę pracy – szyfrowanie