Jeszcze na początku XX wieku wielu szpiegów i zwiadowców korzystało z relatywnie prostych systemów szyfrowania wiadomości, żeby przesyłać informacje do swoich ludzi. Dobrze dobrane metody, choć nie przechytrzą współczesnych nam komputerów, nadal pozwalają uniknąć odczytania przez osoby postronne. Dzisiaj chciałbym pokazać Wam kilka z takich podstawowych systemów. Pobawmy się w szpiegów.
Liczby
Jedną z najprostszych metod jest nadanie każdej literze z alfabetu liczby i posługiwanie się później liczbami jak literami. Tutaj kluczem będzie właśnie rozpiska z literami i „ich” liczbami (w wersji najłatwiejszej a=1, z=24). Niestety ta metoda jest całkiem prosta do odczytania, zwłaszcza gdy tekst jest dłuższy. Wystarczy mieć na uwadze cechy szczególne języka polskiego i wyłapać przyimki, partykuły czy spójniki. Łatwo będzie też znaleźć litery „a”, „e” i „o”. Mając już kilka liter szybko rozszyfruje się całą resztę.
Można jednak utrudnić nieco zadanie osobom postronnym. Wystarczy wystylizować nasz kod na równania matematyczne. Na przykład można napisać do kogoś list w sprawie swoich wątpliwości co do zadania z matematyki, a w podanym równaniu ukryć tajną wiadomość. Sposób dodawania znaków matematycznych „+”, „-„, „x”, „/” czy „=” zależy tylko od naszej wyobraźni albo wcześniejszych ustaleń. Tak zrobiłem poniżej. Potrafisz to odczytać? Zadanie można bardziej skomplikować rozbudowując tabelę literoliczbową w taki sposób, żeby każda litera powtarzała się kilka razy i miała różne liczby do niej przypisane. W ten sposób będzie o wiele trudniej wyłapać choćby literę „a”, gdyż jej liczbą nie będzie tylko przykładowo „1”, ale też „18” i „46”, a literze „e” będą odpowiadały np. „6”, „34” i „83”. W tym wypadku większe znaczenie ma klucz, czyli ta tabela. Adresat raczej jej nie spamięta i będzie ją musiał posiadać u siebie.
<<Zobacz też: Duško Popov – playboy i podwójny agent – wzór dla Jamesa Bonda>>
Są też inne możliwości. Na przykład stosujemy klucz, który każdy ma, czyli własny telefon. Wykorzystujemy wówczas liczby przypisane do konkretnych liter na klawiaturze numerycznej. Sposobów na zastępowanie liter liczbami jest wiele. Stworzenie własnego klucza to tylko kwestia wyobraźni.
Liczby wersja Pro
Jest jednak sposób by posługiwać się liczbami przypisanymi do konkretnych liter i poważnie utrudnić odczytanie. Kluczem będzie wcześniej uzgodniony tekst. Może to być wiersz, a może to być fragment jakiejś książki. W pierwszym wypadku wystarczy nauczyć się wiersza na pamięć i klucz ma się zawsze przy sobie. W drugim należałoby też jakoś przekazać informację o tytule, autorze, roku wydania i numerze strony. Wówczas litery zaczyna się liczyć od pierwszej na górze strony albo od ustalonego miejsca.
Załóżmy, że chcę Ci przesłać wiadomość. Umawiamy się wcześniej, że korzystamy z „Kodeksu Honorowego” Władysława Boziewicza z 1927 roku. Kluczem będzie paragraf §27. Oto wiadomość wykorzystująca utrudnienie matematyczne:
W takim momencie sięgasz na półkę. Chwytasz Boziewicza i zaczynasz liczyć:
Interesującą opcją jest też dodawanie do otrzymanych za pomocą klucza liczb innych ustalonych liczb. Załóżmy, że mamy swój klucz w formie jakiejś tabelki. Ale dodatkowo ustaliliśmy, że mamy jeszcze dodatkowe słowo klucz. Niech to będzie „gentleman”. Najpierw przypisujemy literom z tego słowa odpowiedni liczby wg klucza z tabeli. Następnie szyfrujemy cały przekaz zgodnie z tabelą. Następnie komplikujemy szyfr dodając do otrzymanych liczb liczby ze słowa „gentleman” powielonego tyle razy by pokryć cały przekaz.
Przykład: „gentleman” to ciąg liczb „5 9 3 12 20 9 16 1 8”. Więc do kolejnych liczb z otrzymanego kodu będziemy dodawać kolejno te liczby. Do pierwszej dodamy 5, do drugiej 9, do trzeciej 3 itd. Żeby odszyfrować, będzie trzeba znać hasło i najpierw poodejmować, a dopiero potem użyć tabeli.
<<Zobacz też: Etykieta walki na szable, czyli potyczka dwóch szermierzy>>
Alfabetyczny mix
Kolejny rodzaj szyfrów polega na zamianie liter. Tutaj mechanizm jest podobny do tego z liczbami. Tworzymy tabelkę, z której wynika, jakie litery się wzajemnie zastępują. Jedna z tych metod szczególnie mi się podoba, bo jest łatwa do zapamiętania. Tworzymy klucz z sześciu sylab. Każda sylaba kończy się na inną samogłoskę od „a” do „y”, a zaczyna od innej (dowolnej) spółgłoski. Kolejność sylab jest dowolna. Najlepiej jak całość tworzy spójne słowo lub słowa, bo będzie to można bez problemu zapamiętać.
Szyfrując zastępujemy litery z klucza ich parami. Czyli jeśli dana litera występuje w kluczu, zastępujemy ją drugą literą z jej sylaby. Oto przykład, gdzie kluczem jest hasło „buty kolegami”:
System jest całkiem prosty i odczytanie tego nie powinno stanowić problemu:
Znaki graficzne
Szyfrować można też za pomocą ustalonych znaków. To działa trochę na bazie tworzenia nowego alfabetu, więc jest dość proste do rozszyfrowania. Przykładem będzie system zapisywania liter w „szachownicy”. Dla utrudnienia można zmienić kolejność liter.
Zatem i to nie powinno Wam sprawić problemu:
Systemy dźwiękowe i wizualne
Powyższe sposoby przydają się podczas pisania wiadomości. Jednak kiedy musimy komuś coś przekazać na odległość przydają się znaki, które można odczytać z daleka albo usłyszeć. Sygnałami dźwiękowymi posługiwano się od dawna choćby w Afryce, za pomocą tam-tamów. Do tego samego mogły służyć trąbki. Również znaki dymne będą tutaj przydatne.
Przy komunikacji za pomocą dymu kładziemy na ognisko wilgotne liście lub słomę i przykrywamy je wilgotnym kocem. Przyjęło się, że trzy długie słupy dymu oznaczają „Naprzód”, małe kłęby, jeden po drugim to „Zbiórka!”, długa, nieprzerwana smuga – „Stój!”, naprzemiennie długie i krótkie – „Niebezpieczeństwo!”. Żeby zrobić długi sygnał ognisko odkrywa się na sześć sekund, po czym zakrywa na osiem. Krótkie sygnały daje się odkrywając ognisko na dwie sekundy. Ogień, można też wykorzystać w nocy przesłaniając i odkrywając źródło światła.
<<Zobacz też: Wieczne pióra – krótka historia>>
Przydatny może też być alfabet Morse’a, może mniej do szyfrowania (choć i tak niewiele osób by go dziś odczytało), a bardziej do nadawania wiadomości kryzysowych, które mogłyby być odczytane przez odpowiednie służby. Ten kod pozwala na zapisanie go, przekazanie dźwiękiem (choćby za pomocą gwizdka) czy wizualnie (światłem, chorągiewkami itp.).
Tajne informacje Baden-Powella
Wszystkie powyższe metody (może poza metodą równań matematycznych) są łatwe do rozpoznania jako szyfry, co obniża bezpieczeństwo, bo przykuwa uwagę. Najlepsze są szyfry, które nie wyglądają jak szyfry, dzięki czemu nikt nie będzie próbował ich odczytać.
Takie właśnie metody stosował między innymi Robert Baden-Powell (założyciel skautingu) w swojej służbie wywiadowczej. Opisał je w książce My Adventures as a Spy. Podróżując jako kolekcjoner motyli i mając zdolności plastyczne, umieszczał na swoich ilustracjach kluczowe informacje o umocnieniach wroga.
<<Zobacz też: Robert Baden-Powell – Naczelny Skaut Świata>>
Na poniższym szkicu zamieścił kształt fortecy, a kropki na końcach skrzydeł mówią o wielkości i rodzaju broni.
Tutaj natomiast widać jak linię umocnień można zaznaczyć na szkicu drzewa:
To tylko niektóre przykłady, ale myślę, że dobrze wyjaśniają o co chodzi.
Znacie może jeszcze jakieś ciekawe sposoby szyfrowania?
Nie przegap żadnego wpisu! Zapisz się na newsletter.
Źr. Andrzej Małkowski, Skauting jako system wychowania młodzieży na podstawie dzieła Gienierała Baden-Powella, Lwów 1911.
Sir Robert Baden-Powell, My Adventures As A Spy, Londyn 1915.
Harcerskie szyfry 🙂
Liczbowy można utrudnić bez potrzeby uczenia się tekstu. Wystarczy ustalić jakiś krótki klucz cyfrowy. Mamy np. proste przypisanie liczb do liter: A B C D E… 1 2 3 4 5… Teraz ustalamy jakiś klucz, np. „2413”. Szyfrując dodajemy do każdej liczby kolejną cyfrę z klucza. Do pierwszej cyfry dodajemy 2, później 4, do kolejnej 1, do następnej 3, później znowu 2, i tak dalej. Przy odszyfrowywaniu analogicznie odejmuje się kolejne cyfry. Szyfr można dodatkowo skomplikować zaczynając numerowanie alfabetu nie od 1, ale od jakiejś innej liczby. Można też stosować wersję literową pisząc zamiast cyfr normalne litery, ale przesunięte o… Czytaj więcej »
To właśnie metoda z dodatkowym hasłem kluczem. Dane słowo przelicza się wedle klucza i ciąg liczb dodaje tak jak podałeś. Takie słowo może być prostsze do zapamiętania, a dodatkowo jego pierwsza litera może być tą literą alfabetu, od której zaczyna się liczenie.
Ale faktycznie niezłym pomysłem jest też użycie swojego kodu pocztowego albo nr telefonu.
Ktoś mnie kiedyś nauczył szyfru
GA DE RY PO LU KI
podobnie jak przytoczony BU TY KO LE GA MI
Tak, to też znam. Tylko postanowiłem wymyślić swój klucz, bo gaderypoluki są kiepskie do zapamiętania.
Myślę, że to jest system godny uwagi, zwłaszcza, że jest możliwość, aby był nie do złamania.
http://pl.wikipedia.org/wiki/Szyfr_Vigen%C3%A8re'a
Oczywiście. Prywatnie szyfrowane listy do Ukochanej a biznesowe w terminarzu (innym kluczem oczywiście). 🙂
Czy jest możliwość otrzymania tego artykułu w pdf?
Proponuję CTRL+P i drukuj do PDF 😉
Ewentualnie odpowiedni userscript jeśli potrzebuje Pan dostosować jakieś opcje.
najprościej szyfrem cezara i dalej działa
Używany w harcerstwie do dzisiaj. Szyfr potocznie zwany czekoladką.
Szyfr OTP (One Time Pad) jest szyfrem nie do złamania. Jest to szyfr w którym wiadomość jest szyfrowana jednorazowym kluczem, który już nigdy nie zostanie użyty. Oczywiście druga strona też musi użyć tego samego klucza do odszyfrowania wiadomości, tak więc musi istnieć sposób aby druga strona widziała gdzie znajduje się ów klucz do odszyfrowania konkretnej wiadomości. W informatyce to może być adres w pamięci komputera, a w realu np. numer strony i numer wiersza. Aha, w wiadomość jest szyfrowana kluczem o takiej samej długości. Klucz musi mieć charakterystykę (pseudo)losową. Klucz nigdy nie może być dwukrotnie wykorzystany. Niemcy o tym zapomnieli… Czytaj więcej »
Ciekawy post o wielu sposobach szyfrowania nawet nie słyszałam.
W szkole podstawowej stosowałam z koleżanką taki sposób: obie miałyśmy kalkę techniczną z tak samo zaznaczonymi kółkami, pisząc list należało pod czystą kartkę podłożyć kalkę techniczną (papier musiał być cienki aby przebijał oznakowanie na kalce)i w miejsca kółek wstawiać odpowiednio litery aby utworzyły „tajną” wiadomość, a osoba mająca drugą kalkę przykładała ją na list aby odczytać wiadomość.
To były fajne czasy.
Skąd wziął Pan reprint starego wydania kodeksu honorowego?
Stąd:
https://kielban.pl/2012/02/kodeks-honorowy-boziewicza-kolejne-wydanie/
Nowoczesny gentleman powinien umiec posługiwać się kluczami publicznymi i prywatnymi (gpg). Każdy powinien wiedzieć jak to działa. Do tego podstawowa wiedza o md5, dsa, base64 i ssh, też nie zaszkodzi. A jak będzie trzeba wysłać wiadomość nie do rozszyfrowania, to się przyda.
Jest jeszcze tak zwany alfabet więzienny czyli tabelka z alfabetem i współrzędne liczbowe dla litery. Wspomniane przez Pana sposoby BP zachaczają o całą dziedzinę jaką jest stegnografia. To w zasadzie piękny temat na osobny wpis począwszy od atramentow sympatycznych przez pomniejszanie wiadomości po formułowanie zdań tak żeby tekst jawny ukryć w pierwszych literach zdań czy wersów. Waeto też wspomnieć o systemach komunikacji gdzie na przykład celowy błąd czy dwa wykrzykniki albo użycie słowa klucza oznacza że wiadomość została wysłana pod przymusem albo że obawiamy się że mogła zostać ocenzurowana. Wystarczy na przykład napisać „Pozdrawiam cię z Moskwy” zamiast „Pozdrawiam Cię… Czytaj więcej »
Bawić się w ręczne szyfrowanie w epoce komputerów? Moim zdaniem strata czasu. Dlatego zakupiłem dość tani program szyfrujący. Nie podaję nazwy by nie reklamować. Kto chce ten łatwo znajdzie. Produkt polskiego matematyka. Szyfruje symetrycznym kluczem 512-bitowy. Przykładowy klucz do szyfrowania generowany losowo przez użytkownika programu: J7JfAVHZGPz0hvp4FgNW74mkrFzBeK4S3wfvB5HxtH4xj1ApkMyBcx35XPn7tPzVm4YDgpVM2nrVY4cmBfQJBcbJH „Klucz 512-bitowy oznacza, że atakujący musiałby przeszukać 1000000…000 możliwych kluczy (w tej liczbie są… 154 zera. Jest to miliard miliardów miliardów… miliardów – słowo „miliardów” trzeba wymienić 17 razy). Takiej liczby operacji najprawdopodobniej nigdy nie będzie w stanie wykonać nasza cywilizacja, nawet gdyby zbudowała superkomputer ze wszystkich atomów we wszechświecie. Bezpieczeństwo 512-bitowego klucza symetrycznego… Czytaj więcej »
John Nash, genialny amerykański matematyk łamał radzieckie szyfry, z którymi nie radziły sobie komputery. Tak naprawdę nie ma szyfru nie do złamania.
Komputerów, które są tak złożone, że już dawno tego nie ogarniasz i nie ma człowieka na ziemi który potrafiłby cały proces w pełni zrozumieć i odtworzyć, nie można im ufać, programy kompilowane bez jawnego kodu źródłowego – jaja sobie robisz? Na poziomie zarówno sprzętu jak i softu w erze każdego komputera podłączonego do sieci szpiegowanie czy niskopoziomowe przejęcie wpisywanego tekstu z klawiatury to pryszcz.
Jest tu może dobra dusza, która pomoże mi w rozkminieniu pewnej zaszyfrowanej wiadomości?
nie podam mojego pseudonimu .ale te szyfru były używane też w wojsku n p: w bitwie polsko-bolszewickiej
Kod The International Telegraph Alphabet ITA2 ( kod Baudota-Murraya) bardzo podobny ale tylko z wyglądu do alfabetu Braila czy alfabetu Morsea 🙂