Zacznijmy od upewnienia się czy rozumiemy różnicę pomiędzy szyfrem a kodem. W zasadzie proponuje Ci wstać i zadać to samo pytanie komuś innemu. W międzyczasie poczekam tutaj i będę podziwiać tą maszynę szyfrowania Lorenza...
Czy głowili się nad odpowiedzią? Dla większości osób to tak jakbyś zapytał ich jaka jest różnica pomiędzy miksowaniem, a blendowaniem. Trudne pytanie. Na szczęście mamy film na temat Alfabetu Morse'a który wprowadza pojęcie księgi szyfrów — sprawdźmy to! W tym filmie widzimy jak operator telegrafu zaoszczędza czas poprzez mapowanie (odwzorowanie) całych zdań do krótszych słów.
Tutaj słowo "księgowy" (z ang. accountant) to kod dla "Przyjdź natychmiast. Nie zwlekaj". Szyfr jest odwzorowaniem czegoś ze znaczącej jednostki — takiej jak słowo, zdanie lub fraza — na coś innego — zwykle krótszą grupę symboli. Dla przykładu moglibyśmy stworzyć szyfr, w którym słowo jabłko jest zapisane jako 67. Ogólnie szyfry są sposobami oszczędzenia czasu, a kiedy wysyłamy wiadomości na cały świat, czas to pieniądz.
Księga szyfrów jest po prostu listą takich odwzorowań. Księgi szyfrów istnieją odkąd zaczęliśmy pisać. Po prostu zapamiętaj, że szyfr wymaga księgi szyfrów.
Ok, więc o co chodzi z tymi szyframi?
Najważniejsze jest to, że szyfry nie zawierają znaczenia. Zamiast tego są mechanicznymi operacjami znanymi jako algorytmy, które wykonywane są na pojedynczych literach lub małych zbiorów liter. Dla przykładu w Szyfrze Cezara widzieliśmy jak każda litera z alfabetu została odwzorowana na inną literę. Na przykład, A→D, B→E, i C→F, jeśli korzystamy z przesunięcia o trzy. Taki rodzaj szyfru nazywa się szyfrem przesuwającym.
Sprawdź jak to działa wykorzystująć interaktywne narzędzie poniżej:
W tym przypadku nie potrzebujemy księgi szyfrów. Zamiast tego podążamy za zbiorem instrukcji — zwanych algorytmem — zapisując każdą literę za pomocą innej, przesuniętej o określoną liczbę miejsc w alfabecie. Algorytm wymaga wspólnej informacji nazywanej kluczem. W powyższym przykładzie, gdzie A→D, klucz równa się cztery. Ten wspólny klucz jest konieczny do zaszyfrowania dwóch stron wiadomości HELLO = KHOOR i odszyfrowania KHOOR=HELLO.
Wracając do naszego pytania: Jaka jest różnica pomiędzy kodami a szyframi? Kody zwykle operują na semantycznym znaczeniu, podczas gdy szyfry operują na symbolach składni. Kod jest przechowywany jako odwzorowanie w księdze szyfrów, podczas gdy szyfr zamienia pojedyncze symbole zgodnie z algorytmem.
Powtórzmy teraz mechanizmy związane z Szyfrem Cezara w następnym ćwiczeniu.
Ładowanie