Podstawowa kryptografia

PODSTAWOWA KRYPTOGRAFIA. Celem kryptografii jest opracowanie systemów, które mogą szyfrować zwykły tekst w zaszyfrowanym tekście, który jest nieodróżnialny od czysto losowego zbioru danych. Oznacza to, że wszystkie możliwe odszyfrowane wersje danych, z wyjątkiem jednej, będą beznadziejnie niejednoznaczne, a żadna z nich nie będzie bardziej poprawna niż jakiekolwiek inne. Jednym z najprostszych sposobów tworzenia zaszyfrowanego tekstu jest przedstawienie każdego znaku lub słowa w zwykłym tekście za pomocą innego znaku lub słowa w zaszyfrowanym tekście, tak, że nie ma natychmiastowo widocznego związku między dwiema wersjami tego samego tekstu.

Wczesne szyfry.

Uważa się, że najwcześniejszy tekst wykazujący podstawowy atrybut kryptografii, po niewielkiej modyfikacji tekstu, wystąpił w Egipcie prawie 4000 lat temu. Skryba użył wielu nietypowych symboli, aby zmylić lub zasłonić znaczenie hieroglificznych napisów na grobie szlachcica o nazwisku Khnumhotep II. Uważa się również, że pierwszym skutecznym wojskowym użyciem kryptografii był prosty szyld transpozycyjny Spartan, który “Już w 400 rpne używano urządzenia szyfrującego, zwanego” scytale “do tajnej komunikacji między dowódcami wojskowymi.” Scytale było cylindrycznym lub stożkowym drążkiem z cienkim pasem ze skóry lub pergaminu owiniętego spiralnie. Wiadomość do ukrycia była napisana wzdłużnie bez pustych miejsc. Po rozplątaniu pergamin wydawał się nie zawierać nic prócz przypadkowych liter. Aby odczytać pergamin, odbiorca musiał mieć patyk o dokładnie takich samych wymiarach jak nadawca. Rozmieszczenie odpowiednich kodów dekodujących miało miejsce zanim dowódcy wojskowi odeszli na pole. Na przykład określona kombinacja sztyftu i paska może umożliwić tekst jawny:

atheniantroopswithionaysmarchofromereadynow

zostać podzielone na sześć rzędów ośmiu liter, które zostaną zapisane w zwiniętym ciągu aby rozebrać w ten sposób:

ateński

troopswi

rozcieńczony

aysmarch

ofromebe

teraz gotów

Wiadomość może pojawić się w scytale, jak pokazano schematycznie

Odczytanie nieopakowanego paska bez patyka spowoduje wygenerowanie tego zaszyfrowanego tekstu (pokazanego wielkimi literami):

ATTAORTRHYFEHOISREEONMODNPOAMYISNRENAWECBONIDHEW

“Pierwsze potwierdzone użycie [szyfru zastępczego] w sprawach wojskowych pochodzi od Rzymian.” W tym czasie Juliusz Cezar zakodował wszystkie swoje wiadomości, zastępując każdą literę literą trzy miejsca dalej. Na przykład litera może stać się literą d, litera b stanie się literą e, i tak dalej. Teraz nazywany Szyfrem Cezara, ten schemat jest najlepiej znany ze wszystkich algorytmów monoalchetycznych. Rozważ szyfr cezara zilustrowany w następnym porównaniu używając nowoczesnego alfabetu angielskiego, z literami alfabetu po prostu przesuniętymi o trzy miejsca.

Plaintext: abcdefghijklmnopqrstuvwxyz

Tekst zaszyfrowany: DEFGHIJKLMNOPQRSTUVWXYZABC

Aby zaszyfrować wiadomość, nadawca znajduje każdą literę wiadomości w alfabecie zwykłego tekstu i używa litery pod nim w alfabecie tekstu zaszyfrowanego. Tak więc jasny komunikat:

Czysty tekst: strzeż się przemarszów marszu

jest przekształcany w zaszyfrowaną wiadomość:

Tekst zaszyfrowany: EHZDUH WKH LGHV RI PDUFK

Ten rodzaj szyfrowania jest znany jako szyfr zastępczy. Chociaż szyfr Cezara jest stosunkowo prosty, szyfry zastępcze mogą być bardzo potężne. Większość przykładów szyfru Caesara przesuwa alfabet o trzy miejsca, jak pokazano, tak aby linia tekstu zaszyfrowanego zaczynała się od d, ale niektórzy autorzy sugerują, że Cezar mógł użyć innych liczb, więc termin “Szyfr Cezara” jest używany dla wszystkich szyfrów zgodnych z tym algorytmem (algorytm będący formułą lub receptą na rozwiązanie problemu). Ten poziom szyfrowania może wydawać się prymitywny, ale jest to ważny punkt wyjścia dla wielu następnych. Na przykład, jednym ze sposobów wizualizacji szyfru Caesara jest para pierścieni, jedna w drugiej, jak pokazano

Oba okręgi zawierają litery alfabetu. Jeśli jeden jest obrócony względem drugiego, wynikiem jest koło szyfrujące, coś dobrze przystosowanego do automatyzacji. W końcu tak się stało, najpierw mechanicznie, potem elektrycznie, a dziś cyfrowo. Automatyzacja ułatwia powtórzenie, a wiadomości zaszyfrowane za pomocą szyfru zastępczego mogą być trudniejsze do rozszyfrowania, jeśli zastosuje się wiele różnych podstawień. Tak więc koło kodu dostało miejsce w pieczęcie NSA, agencji rządowej USA, która ma największy wpływ na rozwój szyfrowania.

Bardziej tajemnicza terminologia.

Klucz lub hasło do szyfru Cezara przedstawione w ostatniej sekcji to liczba miejsc, w których alfabet został przesunięty, w tym przypadku trzy. Ponieważ klucz ten musi pozostać prywatny, aby wiadomość pozostała chroniona, musi zostać dostarczona do odbiorcy, aby wiadomość została zdekodowana lub odszyfrowana z powrotem do zwykłego tekstu. Dlatego szyfr cezara jest opisany jako algorytm klucza prywatnego, a także symetryczny algorytm szyfrowania, przy użyciu tego samego klucza prywatnego, który jest używany do szyfrowania i odszyfrowywania wiadomości. Algorytmy tego typu mogą zostać pokonane przez kogoś, kto ma klucz, zaszyfrowaną wiadomość i znajomość użytego algorytmu. Może to brzmieć jak stwierdzenie tego, co oczywiste; jednak, jak zobaczymy w dalszej części tego rozdziału, istnieją algorytmy szyfrowania, które wykorzystują klucze, które można jawnie wymieniać bez udostępniania danych zaszyfrowanych. Znajomość zastosowanego algorytmu często można uzyskać lub poddać inżynierii wstecznej analizie jego wydajności. Innym pozornie oczywistym faktem jest to, że gdy używa się klucza prywatnego, aby osiągnąć poufność, jeden problem zostaje zamieniony na inny. Problem wymiany wiadomości przy zachowaniu zawartości od niezamierzonych odbiorców zostaje zastąpiony przez problem wymiany kluczy między nadawcą a odbiorcą bez ujawniania kluczy. Ten nowy problem jest znany jako problem wymiany klucza. Problem z wymianą kluczy zostanie bardziej szczegółowo zbadany później.

Podstawowa kryptoanaliza.

“Pierwszymi ludźmi, którzy zrozumieli wyraźnie zasady kryptografii i wyjaśnienia początków kryptoanalizy, byli Arabowie.” Do piętnastego wieku odkryli technikę analizy rozkładu częstotliwości liter i pomyślnie odszyfrowali grecką wiadomość w drodze do Cesarz bizantyjski. W 1492 roku człowiek znany jako al-Kalka-shandi opisał tę technikę w encyklopedii. Opisał także kilka technik kryptograficznych, w tym szyfru zastępczego i transpozycji. Wracając do szyfru Caesara, zastanów się, jak ten kod mógł zostać złamany przy pomocy nauki kryptoanalizy. Podczas badania przez pewien czas ten konkretny kod jest dość przejrzysty. Jak tylko kilka liter zostanie poprawnie zidentyfikowanych, reszta zostanie wprowadzona. Na przykład, ponieważ “the” jest najczęściej używanym trzyliterowym słowem w języku angielskim, testowanie “XLI” względem “the” ujawnia, że ​​każda litera tekstu jawnego ma ustalony związek z zaszyfrowanym tekstem: przesunięcie trzech w prawo. Jeśli ta różnica zostanie zastosowana do reszty komunikatu, wynikiem jest fragment tekstu jawnego, który jest zrozumiały, a zatem zakłada się, że jest poprawnym rozwiązaniem problemu. Jednak nawet w tym prostym przykładzie działa szereg wyrafinowanych procesów i założeń; zasługują na większą uwagę, zanim przyjrzą się bardziej skomplikowanym kodeksom. Po pierwsze, test “the” przeciwko “XLI” zakłada, że ​​tekst jawny jest angielski i że atakujący ma szczegółową wiedzę o tym języku, na przykład częstotliwość niektórych słów. Po drugie, zakłada się, że zaszyfrowany tekst podąża za tekstem jawnym pod względem słów. Zazwyczaj tak nie jest. Tekst zaszyfrowany jest zwykle pisany blokami liter o jednakowej długości, aby je dalej ukryć, jak w:

Tekst zaszyfrowany: EHZDU HWKHL GHVRI PDUFK

Gdy odbiorca wiadomości odszyfrowuje go, wynik, choć nie jest dokładnie łatwy do odczytania, jest jednak całkowicie zrozumiały:

Plaintext: bewar ethei desof march Zwróć także uwagę na konwencję ignorowania przypadku pojedynczych liter i umieszczania całego tekstu jawnego małymi literami, podczas gdy cały tekst zaszyfrowany jest wielkimi literami.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *