
Klasyczne szyfry: Cezara, ROT13, Atbash i afiniczny.
Jak działają szyfry Cezara, ROT13, Atbash, afiniczny i szyfr z użyciem słowa kluczowego, jak je łamać, licząc litery, i dlaczego żaden z nich nie jest dziś bezpieczny.
Ludzie ukrywają wiadomości na oczach wszystkich od ponad dwóch tysięcy lat. Najstarsze metody polegają na zamianie każdej litery na inną według ustalonej reguły. Są one łatwe w użyciu i stanowią doskonały punkt wyjścia do nauki kryptografii, ale każdą z nich może złamać cierpliwy atakujący uzbrojony w ołówek. W tym przewodniku wyjaśnimy, jak działają pięć klasycznych szyfrów i dlaczego żaden z nich nie zapewni już bezpieczeństwa.
Tekst jawny, tekst zaszyfrowany i klucze.
Oryginalna wiadomość to tekst jawny. Wersja, w której zmieniono kolejność znaków, to tekst zaszyfrowany. Szyfr to reguła, która zamienia jeden w drugi, a klucz to tajny szczegół wskazujący dokładnie, którego sposobu zmiany użyć.
Dobrą zasadą, sięgającą lat 1800., jest założenie, że wróg zna metodę szyfru i tylko klucz pozostaje tajny. Wszystko poniżej należy oceniać według tego standardu: jeśli ktoś wie, co zostało zrobione, ale nie zna klucza, czy nadal może odczytać wiadomość?
Szyfr Cezara: przesunięcie alfabetu.
Szyfr Cezara przesuwa każdą literę do przodu o ustaloną liczbę miejsc. Przy przesunięciu o 3 A zapisuje się jako D, B jako E, a Z przechodzi z powrotem na C. Rzymski pisarz Swetoniusz wspomina, że Juliusz Cezar używał tego sposobu w listach wojskowych.
Liczba miejsc jest kluczem. Każdy, kto ją zna, może przesunąć litery z powrotem. Problemem jest niewielka liczba kluczy: istnieje tylko 25 użytecznych przesunięć. Atakujący może po prostu wypróbować je wszystkie — to atak siłowy, który ręcznie zajmuje minutę, a komputer wykonuje go natychmiast.
ROT13
ROT13 zawsze przesuwa litery o 13 miejsc. Ponieważ alfabet ma 26 liter, dwa przesunięcia o 13 miejsc przywracają alfabet do początku. Szyfrowanie i odszyfrowywanie to ta sama operacja. Fora internetowe używały ROT13 do ukrywania spoilerów, ponieważ chroni przed przypadkowym spojrzeniem, a nie dlatego, że zapewnia prawdziwe bezpieczeństwo.
Atbash: alfabet w lustrzanym odbiciu
Atbash zapisuje alfabet od tyłu pod oryginalnym alfabetem, więc A pasuje do Z, B do Y, C do X i tak dalej. Szyfr ten pochodzi z alfabetu hebrajskiego i pojawia się w niektórych starożytnych tekstach.
Podobnie jak ROT13, nie ma żadnego klucza i odszyfrowuje się sam: odbij lustrzane odbicie, a wrócisz do punktu wyjścia. To sprawia, że jest zagadką, a nie zamkiem. Gdy ktoś rozpozna wzór, każda wiadomość napisana w ten sposób staje się dostępna.
Szyfr afiniczny: najpierw mnożenie, potem przesunięcie
Nadaj każdej literze liczbę: A = 0 aż do Z = 25. Szyfr afiniczny bierze tę liczbę, mnoży ją przez a, dodaje b i zawija wynik po przekroczeniu 26:
E(x) = (a·x + b) mod 26
Ustaw a = 1, a otrzymasz zwykłe przesunięcie Cezara. Mnożenie rozsuwa sąsiednie litery, dzięki czemu szyfrogram wygląda na bardziej chaotyczny.
Jest jednak pewien haczyk. Aby odszyfrowywanie działało, każda litera szyfrogramu musi pochodzić dokładnie od jednej litery tekstu jawnego. Dzieje się tak tylko wtedy, gdy a nie ma wspólnego dzielnika z 26. Dlatego a = 3 i a = 5 działają, ale a = 2 lub a = 13 nie, ponieważ wysłałyby dwie różne litery w to samo miejsce. Dozwolonych jest tylko 12 wartości a, co przy 26 wartościach b daje 312 kluczy. To więcej niż 25, ale dla komputera wciąż bardzo mało.
Podstawienie z użyciem słowa kluczowego: dowolne przetasowanie
Po co przesuwać każdą literę według reguły? Szyfr podstawieniowy pozwala, aby kluczem był dowolnie pomieszany alfabet. Aby łatwo zapamiętać takie przestawienie, najpierw zapisz słowo kluczowe, usuń powtarzające się litery, a następnie dodaj w kolejności nieużyte litery. Słowo kluczowe ZEBRAS daje alfabet klucza ZEBRASCDFGHIJKLMNOPQTUVWXY, więc A zamienia się w Z, B w E, C w B i tak dalej.
Liczba możliwych przestawień to silnia z 26, czyli około 4 × 10²⁶. Wypróbowanie ich wszystkich jest niemożliwe, dlatego przez całe stulecia szyfr podstawieniowy wydawał się nie do złamania. Tak jednak nie było.
Dlaczego żaden z tych szyfrów nie jest obecnie bezpieczny.
Szyfry podstawieniowe mają fatalną wadę: dana litera zawsze zamienia się w tę samą literę. Dlatego kształt języka zostaje zachowany. W języku angielskim najczęściej występuje E, następnie T, A i O, a Q i Z są rzadkie. Uczeni w świecie islamu opisali analizę częstotliwości około IX wieku: policz litery w tekście zaszyfrowanym, dopasuj najczęściej występującą do E i wykorzystaj wzorce słów (jednoliterowe słowo to prawdopodobnie A lub I), aby uzupełnić resztę.
Dłuższe wiadomości dają lepsze statystyki, więc nawet ogromna liczba możliwych kluczy nie pomaga. Współczesne szyfry projektuje się tak, aby tekst zaszyfrowany nie ujawniał takich wzorców, a ich bezpieczeństwo opiera się na kluczach zbyt dużych, by dało się je odgadnąć. Do prawdziwych zastosowań używaj sprawdzonych nowoczesnych narzędzi, a nigdy własnego rozwiązania.
Jak to zbadać w laboratorium.
Laboratorium kodów i szyfrów udostępnia koło szyfrujące, które możesz obracać, a także narzędzia do liczenia liter i sprawdzania hipotez. Dobra kolejność przejścia przez pierwszy, bezpłatny świat:
- Zacznij od przesunięcia Cezara i spróbuj je złamać.
- Zobacz zachowanie samoodwrotne w ROT13, a następnie w szyfrze Atbash.
- Sprawdź, które mnożniki działają w szyfrze afinicznym: najpierw mnożenie, potem przesunięcie.
- Zbuduj przetasowany klucz w szyfrze podstawieniowym z użyciem słowa kluczowego.
To uproszczony model dydaktyczny historycznych szyfrów. Ma pomóc zrozumieć klucze i ataki, a nie chronić prawdziwe wiadomości.
- Klucz wybiera sposób przetasowania; załóż, że atakujący znają metodę.
- Szyfr Cezara ma tylko 25 użytecznych kluczy, a ROT13 i Atbash nie mają tajnego klucza.
- Mnożnik afiniczny musi być względnie pierwszy względem 26, więc pozostaje 12 poprawnych wartości.
- Szyfr podstawieniowy z użyciem słowa kluczowego ma ogromną przestrzeń kluczy, ale można go złamać za pomocą analizy częstotliwości liter.
Szyfr Cezara
Każda litera przesuwa się o tę samą odległość.. Około 6 minut. Swobodny dostęp, bez konta, działa w przeglądarce.
Więcej swobodnych lekcji z tego przewodnika
- 01ROT13: szyfr, który sam się odwraca.Laboratorium: Kody i szyfry | Dla uczniów w wieku 12 lat i starszych. · 5 minBEZPŁATNE
- 02Atbash: lustrzany alfabet.Laboratorium: Kody i szyfry | Dla uczniów w wieku 12 lat i starszych. · 5 minBEZPŁATNE
- 03Affine: pomnóż, a następnie wykonaj przesunięcie.Laboratorium: Kody i szyfry | Dla uczniów w wieku 12 lat i starszych. · 7 minBEZPŁATNE
- 04Zastępowanie słów kluczowych.Laboratorium: Kody i szyfry | Dla uczniów w wieku 12 lat i starszych. · 7 minBEZPŁATNE
Symulacje na platformie Novareka to modele edukacyjne celowo uproszczone. Pokazują, jak działa dana idea, ale nie zastępują profesjonalnych porad medycznych ani inżynierskich.
Laboratoria w tym przewodniku
Na żywo
Na żywoCzytaj dalej
Wszystkie przewodniki →
Wyjaśnienie
Wyjaśnienie
Wyjaśnienie