Informatyka · Bezpieczeństwo i prawo

Kryptografia i szyfrowanie — jak ukryć informację przed niepowołanymi

Chcesz wysłać wiadomość tak, żeby postronna osoba jej nie odczytała. Innym razem chcesz tylko sprawdzić, czy plik się nie zmienił. Te potrzeby wymagają różnych narzędzi.

  • Sprawdź mechanizm
  • Podejmij decyzję
  • Wyjaśnij dlaczego

Po tej lekcji: Odróżnisz szyfrowanie od skrótu i wykonasz edukacyjny szyfr Cezara.

Zakres podstawowy · materiał otwarty

Co chcesz ochronić?

Wyobraź sobie plan klasowej gry. Czasem chcesz ukryć treść przed inną drużyną, czasem wykryć zmianę pliku, a czasem sprawdzić autora. Poufność, integralność i uwierzytelnienie nie są jednym zadaniem.

Szyfrowanie zamienia dane w szyfrogram przy użyciu klucza. Odszyfrowanie właściwym kluczem odtwarza treść. Skrót jest obliczanym odciskiem danych. Podpis jest inną operacją kryptograficzną: pozwala weryfikować treść i związek z kluczem nadawcy.

Sprawdź w działaniu

Przesuń alfabet i zobacz zawinięcie

Dla Z i klucza 3 przewidź C. Zmień klucz na 25 i sprawdź A. To model alfabetu A–Z, nie wszystkich znaków Unicode.

Ta interakcja wymaga włączonego JavaScriptu.

Cezar krok po kroku — przykład edukacyjny

PYTHONpython
def cezar(tekst, przesuniecie):
    wynik = ""
    for znak in tekst:
        if "A" <= znak <= "Z":
            numer = ord(znak) - ord("A")
            wynik += chr(ord("A") + (numer + przesuniecie) % 26)
        else:
            wynik += znak
    return wynik

jawny = "ABC XYZ"
szyfr = cezar(jawny, 3)
print(szyfr)
print(cezar(szyfr, -3))
Wynik
DEF ABC
ABC XYZ

Co robią te linie?

ZapisZnaczenie
ord(znak) - ord("A")Zamiana A–Z na pozycje 0–25
(numer + przesuniecie) % 26Przesunięcie i zawinięcie; w Pythonie również dla ujemnego przesunięcia
chr(...)Zamiana kodu znaku na literę
else: wynik += znakSpacje i znaki spoza A–Z pozostają bez zmiany
return wynikFunkcja oddaje wynik wywołującemu

Dlaczego to nie sejf?

Jest tylko 26 przesunięć. Można sprawdzić je po kolei i rozpoznać sensowny tekst. Dłuższa wiadomość nie naprawia tej słabości. Cezar uczy modulo i przekształcania znaków; nie używamy go do prawdziwych haseł, dokumentów i danych osobowych.

Ćwiczenie z pomocą · samodzielna praca

Zaszyfruj i odwróć

Dla ABC XYZ i przesunięcia 3 oblicz wynik, następnie odwróć operację. Sprawdź także klucz 0 i literę Z.

Oczekiwany rezultat
DEF ABC, a po odwróceniu ABC XYZ.
Potrzebujesz pomocy? Rozwiązuj krok po kroku.
Krok 1 — pokaż podpowiedź

Numeruj litery od zera.

Krok 2 — pokaż podpowiedź

Do odszyfrowania użyj przeciwnego przesunięcia.

Krok 3 — pokaż podpowiedź

Spacje pozostają bez zmian.

Otwórz tylko tyle podpowiedzi, ile potrzebujesz. Po każdym kroku wróć do zadania i sprawdź wynik.

Podsumowanie

Co warto zapamiętać

  1. Szyfrowanie służy poufności.
  2. Cezar przesuwa znaki z zawinięciem alfabetu.
  3. Cezar jest przykładem do nauki, nie ochroną prawdziwych danych.

Po zalogowaniu zobaczysz dodatkowe lekcje i materiały oznaczone jako rozszerzenie. Podstawowe quizy i zadania pozostają dostępne w biurku.

Dalej na swoim koncie

Rozgrzewki, quiz i zadania są w biurku ucznia.

Teoria jest otwarta dla wszystkich. Żeby rozwiązywać zadania, zapisywać szkice i widzieć swój postęp, zaloguj się.

Zaloguj się →
Źródła i dalsza nauka