Szyfr Cezara

Z Wikipedii

(Przekierowano z Szyfr przesuwający)
Skocz do: nawigacji, szukaj
Przykład zamiany liter w szyfrze Cezara, z przesunięciem równym 3

W kryptografii, szyfr Cezara, inaczej szyfr przesuwający, to jeden z najprostszych i najbardziej znanych szyfrów. Szyfr Cezara jest szczególnym przypadkiem szyfru monoalfabetycznego. Znany był już w starożytności, używany między innymi przez Juliusza Cezara, rzymskiego wodza i polityka. Współczesne techniki kryptoanalityczne pozwalają z łatwością złamać szyfr Cezara, a zatem nie zapewnia on żadnego bezpieczeństwa.

Spis treści

[edytuj] Przykład

W szyfrze Cezara każdemu znakowi tekstu jawnego odpowiada dokładnie jeden znak w szyfrogramie, przesunięty o określoną, stałą liczbę znaków w alfabecie. Litery z końca alfabetu stają się literami z jego początku. Przykładowo, przesuwając o 3 znaki w alfabecie łacińskim (bez polskich liter) litera A staje się literą D, litera B staje się literą E, E staje się H, L staje się O, a Y – B.

Tekst jawny: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Szyfrogram:  DEFGHIJKLMNOPQRSTUVWXYZABC

Aby zaszyfrować tekst, każdą literę tekstu jawnego zastępuje się odpowiednią literą szyfru:

Tekst jawny: ALEA IACTA EST
Szyfrogram:  DOHD LDFWD HVW

Deszyfrowanie polega po prostu na odwróceniu tej operacji.

Formalnie operację szyfrowania można zapisać – zamieniając najpierw litery na liczby według klucza A=0, B=1, C=2, ..., Z=25 – w następujący sposób:

E_n(x) = (x + n) \mod {26}

gdzie x jest liczbą odpowiadającą literze tekstu jawnego, zaś En(x) liczbą odpowiadającą literze szyfrogramu. Podobnie, odkodowanie tekstu można formalnie zapisać jako:

D_n(x) = (x - n) \mod {26}

gdzie x jest liczbą odpowiadającą literze szyfrogramu, zaś Dn(x) liczbą odpowiadającą literze tekstu jawnego.

Ponieważ operacja mod w większości języków programowania daje ujemne wyniki dla ujemnego pierwszego argumentu, stąd w praktyce do deszyfrowania lepiej użyć wzoru:

D_n(x) = (26 + x - n) \mod {26}

[edytuj] Historia i zastosowanie

Nazwa szyfru pochodzi od Juliusza Cezara, który stosował szyfr przesuwający z przesunięciem równym 3

Nazwa szyfru pochodzi od Juliusza Cezara, rzymskiego wodza i polityka. Szyfrował on listy o znaczeniu wojskowym do swoich generałów, używając szyfru przesuwającego z przesunięciem 3. Z tego powodu niekiedy szyfrem Cezara określa się wyłącznie szyfr przesuwający o przesunięciu 3, zaś termin szyfr przesuwający jest zarezerwowany dla przypadku ogólnego.

Przed Cezarem, jego adoptowany syn, Oktawian August, używał szyfru przesuwającego z przesunięciem 1. Bezpieczeństwo szyfru przesuwającego w ówczesnych czasach jest nieznane. Należy jednak pamiętać, że w starożytności analfabetyzm był powszechny, zatem wielu wrogów Cezara mogło mieć kłopot z przeczytaniem samego tekstu, a co dopiero z rozkodowaniem go.

Pierwsze udokumentowane techniki złamania szyfru Cezara pochodzą z IX wieku, gdy w świecie arabskim odkryto analizę częstościową. Wraz z odkryciem tej techniki szyfr Cezara utracił swoją praktyczną wartość. Mimo tego, ze względu na swoją prostotę był podobno stosowany przez Rosjan jeszcze w 1915 roku w czasie I wojny światowej. Kryptoanalitycy niemieccy i austriaccy nie mieli większych kłopotów z rozkodowaniem przechwyconych wiadomości.

[edytuj] Kryptoanaliza

Kryptoanaliza szyfru Cezara jest wyjątkowo prosta i można go łatwo złamać nawet w sytuacji, gdy dostępny jest wyłącznie szyfrogram. Zasadniczo istnieją dwie możliwości: 1) wiadomo (lub przypuszcza się), że zastosowano szyfr monoalfabetyczny, ale nie wiadomo, czy zastosowano szyfr Cezara; 2) wiadomo (lub przypuszcza się), że zastosowano szyfr Cezara, ale nieznane jest przesunięcie jakiego użyto do zakodowania wiadomości.

W pierwszym przypadku, szyfr może zostać łatwo złamany przy pomocy kryptoanalizy statystycznej. W drugim przypadku, szyfr Cezara może być wyjątkowo łatwo złamany metodą brute force, gdyż istnieje tylko 25 różnych możliwych przesunięć (w alfabecie łacińskim), co przy pomocy komputerów pozwala sprawdzić wszystkie możliwości w ciągu ułamków sekund.

Ze względu na istniejące techniki kryptoanalityczne pozwalające na jego złamanie, współcześnie szyfr Cezara nie zapewnia żadnego praktycznego bezpieczeństwa przesyłanych informacji.

[edytuj] Linki zewnętrzne

Utwórz książkę