Cryptology Academy · Lekcja

Analiza częstości i podstawy kryptoanalizy

Łam klasyczne szyfry za pomocą statystyk częstości liter.

Lekcja 4 z 413 kroki

Analiza częstości i podstawy kryptoanalizy to bezpłatna lekcja Cryptology Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cryptology Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cryptology Academy zawiera 4 lekcji w sumie.

Wprowadzenie

Analiza częstości to sztuka wykorzystywania statystycznych wzorców języka do łamania szyfrów podstawieniowych. Odkryto ją w 850 roku n.e., a do dziś pozostaje aktualna.

Częstość liter w języku angielskim

Najczęściej występujące litery języka angielskiego (w przybliżeniu): E(12,7%), T(9,1%), A(8,2%), O(7,5%), I(7,0%), N(6,7%). Jeśli litera „X” pojawia się w szyfrogramie przez 12% czasu, prawdopodobnie oznacza E.

Budowanie tabeli częstości

from collections import Counter def freq_table(text): letters = [c for c in text.upper() if c.isalpha()] counts = Counter(letters) total = len(letters) return {k: v/total for k,v in counts.most_common()}

Bigramy i trigramy

Typowe bigramy języka angielskiego: TH, HE, IN, ER, AN. Typowe trigramy: THE, AND, ING, ION. Te wzorce przetrwają szyfry podstawieniowe i przyspieszają deszyfrowanie.

Indeks zgodności (IoC)

IoC = Σ(n_i * (n_i-1)) / (N*(N-1)). Dla języka angielskiego IoC ≈ 0,065, a dla losowego tekstu IoC ≈ 0,038. Wysoki IoC oznacza podstawienie monoalfabetyczne.

Zastosowanie IoC do szyfru Vigenère’a

Należy sprawdzić długości klucza od 1 do 20. Dla każdej długości k należy podzielić szyfrogram na k grup i obliczyć średnią wartość IoC. Prawdziwa długość klucza daje wartość IoC najbliższą 0,065.

Atak na szyfr Cezara za pomocą analizy częstości

W przypadku szyfru Cezara należy znaleźć najczęściej występującą literę szyfrogramu (prawdopodobnie E). Przesunięcie = (most_frequent - ord('E')) mod 26. Następnie należy odszyfrować tekst i sprawdzić, czy jest czytelny.

Wzorce słów

Krótkie słowa ujawniają wzorce: słowo jednoliterowe to zwykle „A” lub „I”. Trzyliterowe słowo pasujące do wzorca „the_” często jest słowem „the”. Takie wskazówki szybko ograniczają możliwe podstawienia.

Schemat ręcznego ataku

1. Należy policzyć częstości. 2. Należy przypisać najczęściej występującym literom szyfrogramu najczęstsze litery języka angielskiego (E, T, A, O, I). 3. Należy wykorzystać bigramy i wzorce słów, aby uzupełnić braki. 4. Należy powtarzać te kroki, aż tekst stanie się czytelny.

Znaczenie we współczesności

Analiza częstości zagraża współczesnej kryptografii, gdy programiści niewłaściwie używają prymitywów (np. tryb ECB ujawnia wzorce bloków). Zrozumienie tej zasady pomaga zapobiegać błędom projektowym.

Automatyczna kryptoanaliza

Narzędzia takie jak dcode.fr i quipqiup.com automatyzują ataki na szyfry podstawieniowe, wykorzystując wzorce słownikowe i algorytmy hill climbing. Łamią szyfrogramy o długości 100 znaków w kilka sekund.

Szybki test

Co wysoki indeks zgodności (≈0,065) mówi o szyfrogramie?

Podsumowanie

Świetna praca! Analiza częstości jest jednym z fundamentów kryptoanalizy. Następnie przejdziemy do współczesnej kryptografii: systemów liczbowych i arytmetyki modularnej.
Bezpłatny start

Ucz się Cryptology Academy dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
67
Lekcje
261

Często zadawane pytania

Czy lekcja „Analiza częstości i podstawy kryptoanalizy” jest bezpłatna?

Tak — pełny tekst „Analiza częstości i podstawy kryptoanalizy” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cryptology Academy, przejdź na CoddyKit PRO. Kurs Cryptology Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Analiza częstości i podstawy kryptoanalizy”?

Łam klasyczne szyfry za pomocą statystyk częstości liter. Ćwiczysz Cryptology Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Cryptology Academy?

Nie wymagamy żadnego doświadczenia. Cryptology Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Analiza częstości i podstawy kryptoanalizy”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Cryptology Academy?

Tak. Każda lekcja Cryptology Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Mechanika szyfru Cezara
  2. Szyfry Atbash i afiniczny
  3. Szyfry Vigenère’a i polialfabetyczne
  4. Analiza częstości i podstawy kryptoanalizy
← Powrót do Cryptology Academy