V predchádzajúcej časti sme sledovali, ako sa sudca Jarriquez, postava z Verneovho románu Osemsto míľ po Amazone, pokúšal vylúštiť kryptogram zašifrovaný pomocou Gronsfeldovej šifry. Podarilo sa mu to len náhodou. Šťastena mu zoslala posledné slovo šifrovaného textu. Bolo to slovo Ortega—meno autora dokumentu a skutočného páchateľa vraždy. Doslova v hodine dvanástej sa Jarriquezovi podarilo pomocou tohto slovo získať kľúč a zabrániť justičnému omylu—poprave nevinného Dacostu. Dnes uvidíme, že pri použití správnych metód je možné kryptogram vylúštiť pomerne jednoducho.
Kryptogram
Našou dnešnou úlohou je rozlúštiť tento kryptogram:
P H Y J S L Y D D Q F D Z X G A S G Z Z Q Q E H X G K F N D R X U J U G I O C Y T D X V K S B X H H U Y P O H D V Y R Y M H U H P U Y D K J O X P H E T O Z S B E T N P M V F F O V P D P A J X H Y Y N O J Y G G A Y M E Q Y N F U Q L N M V L Y F G S U Z M Q I Z T L B Q G Y U G S Q E U B V N R C R E D G R U Z B L R M X Y U H Q H P Z D R R G C R O H E P Q X U F I V V R P L P H O N T H V D D Q F H Q S N T Z H H H N F E P M Q K Y U U E X K T O G Z G K Y U U M F V I J D Q D P Z J Q S Y K R P L X H X Q R Y M V K L O H H H O T O Z V D K S P P S U V J H D
Metódy kryptoanalýzy
Ukážeme si dve metódy, ktorými možno kryptogram rozlúštiť:
- Known-plaintext attack (útok podľa známeho slova/textu). Túto metódu môžeme použiť vtedy, ak vieme alebo predpokladáme, že kryptogram obsahuje nejaké konkrétne slovo. Jarriquez zvažoval použitie tejto metódy, pretože predpokladal, že posledný odsek obsahuje slovo Dacosta. Keďže však metódu nevedel správne použiť, napokon ju zavrhol. Pri správnom použití táto metóda vedie k rýchlemu a jednoduchému rozlúšteniu šifry.
- Ciphertext only attack (útok len na základe šifrovaného textu). Gronsfeldovu šifru môžeme rozlúštiť aj vtedy, ak vôbec nepoznáme obsah správy. Metódu publikoval po prvý krát Friedrich Kasiski v roku 1863, zhruba 20 rokov pred vydaním Verneovho románu. Verne však metódu očividne nepoznal, ako to vyplýva z dialógov v románe a z jeho korešpondencie.
Mechanizmus Gronsfeldovej šifry
Pripomeňme si, ako funguje Gronsfeldova šifra, ktorú môžeme nazvať aj šifrou podľa opakovaného číselného kľúča.
V celom texte budeme používať rovnako ako Verne abecedu pozostávajúcu z 25 písmen (bez dvojitého W).
V prvej časti série o šifrovaní sme si ukázali fungovanie Cézarovej posuvnej šifry. Jej podstata je tá, že text správy napíšeme pomocou tajnej (šifrovacej) abecedy, ktorá vznikne posunutím normálnej abecedy o x pozícií, kde číslo x predstavuje kľúč. Napríklad ak x=3, každé písmeno správy posunieme o 3 pozície. Teda namiesto A napíšeme D, namiesto B napíšeme E, atď.
Pri Gronsfeldovej šifre striedame viac Cézarových šifrovacích abecied v závislosti od zvoleného kľúča (Preto sa Gronsfeldova šifra radí medzi polyalfabetické, čiže viacabecedné šifrovacie systémy.)
Kľúč tvorí séria čísel—napr. 253. Tento konkrétny kľúč znamená, že budeme striedať tri Cézarove šifrovacie abecedy: prvú s posunom o 2 pozície (oproti normálnej abecede), druhú s posunom o 5 pozícií a tretiu s posunom o 3 pozície.
Striedanie šifrovacích abecied funguje takto: Prvé písmeno správy šifrujeme pomocou prvej abecedy, druhé písmeno pomocou druhej abecedy a tretie písmeno pomocou tretej abecedy. Čísla kľúča sa opakujú, takže štvrté písmeno šifrujeme opäť pomocou prvej abecedy, piate písmeno pomocou druhej abecedy, atď. až kým nezašifrujeme celú správu.
Mechanizmus Gronsfeldovej šifry – kľúč 253
Šifrovacie abecedy | Posun oproti normálnej abecede | Namiesto písmena … napíšeme písmeno … | Abecedu použijeme na … |
Prvá abeceda | 2 | A -> C B -> D C -> E, atď. |
1., 4., 7., 10., … písmeno správy |
Druhá abeceda | 5 | A -> F B -> G C -> H, atď. |
2., 5., 8., 11., … písmeno správy |
Tretia abeceda | 3 | A -> D B -> E C -> F, atď. |
3., 6., 9., 12., … písmeno správy |
V praxi pri ručnom šifrovaní na papieri je najlepšie použiť štvorčekový papier (do každého štvorčeka píšeme jedno písmeno). Do prvého riadku napíšeme text šifrovanej správy. Do druhého riadku, pod text správy, rozpíšeme čísla kľúča (do každého štvorčeka napíšeme jedno číslo). Keďže číselný kľúč je spravidla kratší ako správa, čísla kľúča cyklicky opakujeme. Do tretieho riadku budeme písať šifrovaný text.
Príklad šifrovania je nižšie:
Správa | D | A | C | O | S | T | A | J | E | N | E | V | I | N | N | Y |
Kľúč | 2 | 5 | 3 | 2 | 5 | 3 | 2 | 5 | 3 | 2 | 5 | 3 | 2 | 5 | 3 | 2 |
Krypto | F | F | F | Q | Y | X | C | O | H | P | J | Z | K | S | Q | A |
Číslo kľúča môžeme vnímať ako predpis, ktorý nám hovorí, akým písmenom máme nahradiť písmeno správy. Napríklad písmeno D (4. písmeno abecedy) máme posunúť v abecede o 2 pozície, takže dostaneme písmeno F (6. písmeno abecedy).
Vigènerova šifra
Gronsfeldova šifra je variantom staršej Vigenèrovej šifry. Jej mechanizmus opísal ako prvý Giovan Battista Bellaso v roku 1553; autorstvo však bolo neskôr pripísané Blaisovi de Vigenèrovi. Pôvodná Vigenèrova šifra takisto používa viacero Cézarových posuvných šifier, ale veľkosť posunutia je daná kľúčovým slovom (nie číslami kľúča). Napríklad ak je kľúčové slovo DÚHA, znamená to, že striedame štyri Cézarove šifrovacie abecedy s nasledovnými posunmi:
Mechanizmus Vigènerovej šifry, kľúč DUHA:
Šifrovacie abecedy | Posun oproti normálnej abecede | Namiesto písmena … napíšeme písmeno … | Abecedu použijeme na … |
Prvá abeceda | A -> D (posun +3) |
A -> D B -> E C -> F, atď. |
1., 5., 9., 13., … písmeno správy |
Druhá abeceda | A -> U (posun +20) |
A -> U B -> V C -> X, atď. |
2., 6, 10., 14., … písmeno správy |
Tretia abeceda | A -> H (posun +7) |
A -> H B -> I C -> J, atď. |
3., 7., 11., 15., … písmeno správy |
Štvrtá abeceda | A -> A (posun 0) |
A -> A B -> B C -> C, atď. |
4., 8., 12., 16., … písmeno správy |
Výhodou Vigènerovej šifry je viac alternatív posunutia—máme toľko možných posunutí, koľko písmen má použitá abeceda (25, resp. 26, ak používame aj W). Gronsfeldova šifra používa len čísla 0 až 9, a teda máme len 10 rozličných šifrovacích abecied. Nevýhodou Vigènerovej šifry je, že do kľúčového slova (pokiaľ ho netvorí náhodný zhluk písmen) sa premietajú vlastnosti jazyka, ako napríklad frekvencia jednotlivých písmen, čo uľahčuje kryptoanalýzu.
PRVÁ METÓDA—ÚTOK PODĽA ZNÁMEHO TEXTU
Po pripomenutí mechanizmu šifry teraz môžeme pristúpiť k samotnému rozlúšteniu kryptogramu. Kryptogram rozlúštime pomocou dvoch rôznych metód—začneme s útokom podľa známeho textu.
Predpoklady
Náš postup bude vychádzať z dvoch predpokladov, o ktorých správnosti bol presvedčený aj sudca Jarriquez.
- Na vytvorenie kryptogramu bola použitá Gronsfeldova šifra.
- Kryptogram niekde obsahuje zašifrované slovo DACOSTA (meno nespravodlivo odsúdeného).
Samozrejme, ani jeden z týchto predpokladov nemusí byť správny. Nemáme žiadnu záruku, že bola použitá práve Gronsfeldova šifra. Analýza kryptogramu indikuje nejakú formu polyalfabetickej substitúcie (bližšie sme o tom hovorili v predošlom článku). Mohla však byť použitá Vigènerova šifra či dokonca kombinácia substitúcie a transpozície. Určitú legitimitu nášmu postupu dáva informácia z Wikipédie, že Gronsfeld bola populárnejší ako Vigènere. Podobne, pred rozlúštením kryptogramu si spravidla nemôžeme byť istý, že obsahuje určité slovo.
Tak či onak, ak sa predpoklady ukážu ako nesprávne, stále môžeme vyskúšať iné prístupy.
Kroky postupu
Metóda pozostáva z troch krokov:
- Nájdenie vhodných pozícií. Nájdeme všetky pozície v kryptograme, kde sa môže nachádzať slovo DACOSTA zašifrované pomocou Gronsfeldovej šifry.
- Extrakcia čísel kľúča. Do každej z týchto pozícii dosadíme slovo DACOSTA a extrahujeme príslušné čísla kľúča.
- Otestovanie čísel kľúča. Otestujeme získané čísla kľúča na zvyšnom texte a zistíme, či dávajú čitateľný text.
Prvý krok—Nájdenie vhodných pozícií
Pri hľadaní pozícií, ktoré môžu obsahovať šifrované slovo DACOSTA, nám veľmi pomôže náš predpoklad o použití Gronsfeldovej šifry. Pomocou neho nájdeme vhodné pozície veľmi rýchlo. Z mechanizmu šifry vieme, že písmeno čitateľného textu môže byť nahradené v kryptograme len písmenom, ktoré stojí za ním v abecede o 0 až 9 pozícií (Gronsfeldova šifra pracuje len s číslami 0 až 9). Napríklad písmeno D môžu v kryptograme reprezentovať len písmená D (posun 0) až M (posun 9); všetky ostatné písmená sú vylúčené.
Prípustné substitúcie pre písmená tvoriace slovo DACOSTA uvádza nasledujúca tabuľka:
Písmeno … | Môže byť v kryptograme reprezentované len písmenami … |
D | D až M |
A | A až J |
C | C až L |
O | O až Y |
S | S až C |
T | T až D |
Pri hľadaní vhodných pozícií budeme postupovať takto. Šifrovaný text vypíšeme na štvorčekový papier do prvého riadku. Pod týmto riadkom vynecháme niekoľko riadkov, kde si budeme zapisovať výsledky prieskumu každej pozície (prvých 9 pozícii v kryptograme som očísloval).
Začneme s prvou pozíciou (PHYJSLY). Písmeno P nemôže reprezentovať písmeno D. Zapíšeme x a pozíciu ďalej neskúmame, pretože sa na nej nemôže nachádzať slovo DACOSTA.
Prejdeme na druhú pozíciu (HYJSLYD). Písmeno H môže reprezentovať písmeno D (zapíšeme D), ale písmeno Y nemôže reprezentovať písmeno A (zapíšeme x). Skúmanie pozície teda môžeme zastaviť, pretože ani druhá pozícia nemôže obsahovať slovo DACOSTA.
Takto prejdeme všetky pozície kryptogramu. Na vylúčenie pozície nám väčšinou stačí preskúmať jedno-dve; zriedkavo tri písmená (napr. skúmanie pozície č. 8 DDQFDZX zastavíme po preskúmaní troch písmen).
Druhý krok—Extrakcia čísel kľúča
Po prejdení celého kryptogramu zistíme, že existuje len jedno miesto, kde sa môže nachádzať slovo DACOSTA zašifrované pomocou Gronsfeldovej šifry. Ide o kombináciu písmen EDGRUZB. Na štvorčekovom papieri to bude vyzerať takto:
Ako extrahujeme zodpovedajúce čísla kľúča? Je to jednoduché; stačí zistiť, o koľko pozícii v abecede musíme posunúť jednotlivé písmená slova DACOSTA, aby sme dostali šifrovaný text EDGRUZB. Teda konkrétne: O koľko pozícií musíme posunúť D, aby sme dostali E? O jednu. O koľko pozícií musíme posunúť A, aby sme dostali D? O tri. Atď. Výsledok tohto postupu je tento:
Ak EDGRUZB znamená DACOSTA potom čísla kľúča sú: 1343251
Získali sme sekvenciu siedmich čísel 1343251. Vidíme, že jednotka sa vyskytuje na prvom aj siedmom mieste získanej sekvencie. Tento výsledok pripúšťa dve interpretácie.
- Buď má hľadaný kľúč šesť čísel a jednotka na siedmom mieste je začiatkom nového cyklu (134325-134325-134325, atď.).
- Alebo hľadaný kľúč má 8 alebo viac čísel a opakovanie jednotky na prvom a siedmom mieste je len náhoda (to by platilo napríklad, ak by kľúč pozostával z čísel 1343251083-1343251083-1343251083, atď.). Obidve alternatívy sú možné—takže musíme čísla kľúča otestovať. Ako prvú otestujeme jednoduchšiu alternatívu, že kľúč je tvorený opakovaním čísel 134325.
Tretí krok—Otestovanie čísel kľúča
Pre otestovanie rozšírime získanú číselnú sekvenciu do okolitého textu a pozrieme sa, či dostaneme čitateľný text. Ukážka je nižšie:
Krypto N R C R E D G R U Z B L R M X Y U H Q H P Z D R R G C R O H E P Q X U Kľúč 4 3 2 5 1 3 4 3 2 5 1 3 4 3 2 5 1 3 4 3 2 5 1 3 4 3 2 5 1 3 4 3 2 5 1 Správa j o a m d a c o s t a i n j u s t e m e n t c o n d a m n e a m o r t
Test je úspešný; čísla kľúča produkujú čitateľný text vo francúzštine. Z predchádzajúcej časti vieme, že kľúčom by malo byť číslo 432513. My sme získali sekvenciu 134325—a to preto, že prvé písmeno slova DACOSTA bolo šifrované piatym číslom kľúča. Keďže sa však čísla kľúča opakujú podľa presného vzorca, nemáme žiadne ťažkosti rozšíriť získanú sekvenciu na zvyšný text, či už smerom dopredu alebo dozadu. Sudca Jarriquez sa teda rozhodne mýlil, keď tvrdil, že metóda funguje len vtedy, ak prvé písmeno hľadaného slova je šifrované pomocou prvého čísla kľúča.
Celý vylúštený kryptogram nájdete na konci predchádzajúceho článku.
DRUHÁ METÓDA—ÚTOK LEN PODĽA ŠIFROVANÉHO TEXTU
Šifru môžeme rozlúštiť aj vtedy keď máme k dispozícii len šifrovaný text. Ide teda o všeobecnú metódu prelomenia Gronsfeldovej a Vigènerovej šifry, ktorú môžeme použiť aj vtedy, keď nemáme najmenšie potuchy, čo je obsahom kryptogramu.
Prvý krát túto metódu publikoval Friedrich Kasiski v roku 1863. Román Osemsto míľ po Amazone bol vydaný v roku 1881, teda takmer o 20 rokov neskôr. Verne však zjavne nepoznal Kasiskeho metódu. Ako vyplýva z Verneho korešpondencie a dialógov v románe, Verne bol úprimne presvedčený, že šifra je bez kľúča nerozlúštiteľná. Zato Jarriquezovu neznalosť môžeme formálne ospravedlniť. Dej románu je zasadený do roku 1852—v tom čase ešte Kasiskeho metóda nebola známa.
Postup kryptoanalýzy
Postup pri rozlúštení šifry pozostáva z týchto korkov:
- Určenie dĺžky kľúča. Určíme dĺžku kľúča (počet čísel, ktoré tvoria kľúč). Tým je vlastne daný počet použitých šifrovacích abecied, keďže, ako vieme, každé číslo reprezentuje jednu šifrovaciu abecedu a vyjadruje, o koľko je posunutá oproti normálnej abecede.
- Rozpis kryptogramu podľa šifrovacích abecied a frekvenčná analýza. Šifrovaný text rozpíšeme do stĺpcov podľa jednotlivých šifrovacích abecied a to tak, aby každý stĺpec obsahoval len písmená, ktoré sú šifrované podľa tej istej abecedy. Počet stĺpcov sa tak bude rovnať počtu použitých šifrovacích abecied. Potom pre každý stĺpec zvlášť zostavíme frekvenčnú analýzu (spočítame koľkokrát sa ktoré písmeno v stĺpci nachádza).
- Napasovanie šifrovacej abecedy na normál. Pre každú šifrovaciu abecedu zostáva určiť, o koľko je posunutá oproti normálnej abecede. Zistíme to tak, že postupne skúšame rôzne posunutia normálnej abecedy dovtedy, kým sa frekvenčná charakteristika posunutej normálnej abecedy nebude zhodovať s frekvenčnou charakteristikou šifrovacej abecedy. Tento postup uplatníme pre všetky šifrovacie abecedy. Zistená veľkosť posunu potom predstavuje čísla kľúča.
Opis postupu môže vyzerať zložito, ale samotný postup, keď ho ukážeme na konkrétnom príklade, je v skutočnosti ľahký.
Prvý krok—Určenie dĺžky kľúča
Existuje viacero metód, ako určiť dĺžku kľúča. Tu určíme dĺžku kľúča na základe opakovaných sekvencií vyskytujúcich sa v kryptograme. Postupujeme takto:
Po prvé, vyhľadáme v kryptograme opakované sekvencie; začneme od najdlhších. Opakovania by sme mohli hľadať aj ručne, ale prácu si ušetríme pomocou online frekvenčného analyzátora na stránke www.dcode.fr/frequency-analysis.
V kryptograme nemáme žiadne opakované sekvencie o 5 písmenách (pentagramy). Máme však dva opakované tetragramy (KYUU, DDQF) a štyri opakované trigramy (RPL, HHH, RYM a TOZ). To pre našu analýzu bohato stačí, takže opakované bigramy už hľadať nebudeme. Nižšie som v kryptograme vyznačil nájdené opakované sekvencie:
Po druhé, pre každú sekvenciu zistíme vzdialenosť medzi opakovaniami (počítame ju ako vzdialenosť medzi prvými písmenami týchto opakovaní).
Po tretie, pre každú sekvenciu určíme faktory vzdialenosti—to jest celočíselné delitele. Faktory vyjadrujú prípustné dĺžky kľúčov.
Po štvrté, nájdeme faktor, ktorý je spoločný pre všetky sekvencie—tento faktor vyjadruje nami hľadanú dĺžku kľúča.
Výsledok tohto postupu zobrazuje nasledujúca tabuľka:
Sekvencia |
Prvý výskyt začína na pozícii č. … |
Druhý výskyt začína na pozícii č. … |
Vzdialenosť medzi pozíciami |
Faktory vzdialenosti |
KYUU | 213 | 225 | 12 | 2 3 4 6 12 |
DDQF | 8 | 194 | 186 | 2 3 6 31 62 93 186 |
RPL | 184 | 244 | 60 | 2 3 4 5 6 10 12 15 20 30 60 |
HHH | 204 | 258 | 54 | 2 3 6 9 18 27 54 |
RYM | 59 | 251 | 192 | 2 3 4 6 8 12 16 24 32 48 64 96 192 |
TOZ | 76 | 262 | 186 | 2 3 6 31 62 93 186 |
Z tabuľky vidíme, že len faktory 2, 3 a 6 sú vyskytujú pri všetkých opakovaných sekvenciách. Z toho vychádza ako najpravdepodobnejší faktor 6. Faktory 2 a 3 môžeme vylúčiť ako málo pravdepodobné. Dôvody sú tieto:
- Kľúč o dĺžke 2 alebo 3 je príliš krátky a preto nie je pravdepodobné, že by ho autor kryptogramu použil.
- Navyše, to, že sa faktory 2 a 3 objavujú vždy v sprievode s faktorom 6, je silnou indikáciou, že dĺžka kľúča je 6. Totiž každé číslo, ktoré je deliteľné 6-kou, je vždy deliteľné aj 2-kou a 3-kou. Ak je skutočná dĺžka kľúča 6, potom sa pri všetkých opakovaniach musí vyskytnúť faktor 6, ktorý bude vždy sprevádzaný aj faktormi 2 a 3. Ale pokiaľ by skutočná dĺžka kľúča bola napr. 2, očakávali by sme, že faktory 6 a 3 sa objavia len pri niektorých sekvenciách. Totiž nie každé číslo deliteľné 2-kou, je deliteľné aj 3-kou a 6-kou.
Prečo metóda funguje?
Tu sa žiada vysvetliť, prečo vyššie opísaný postup vedie k získaniu dĺžky kľúča. Každý jazyk obsahuje typické, často sa opakujúce slová alebo sekvencie písmen (spomeňme si napríklad na anglické THE). Čím je text dlhší, tým pravdepodobnejšie sa v ňom opakovane vyskytnú určité typické zhluky písmen. Ak je text dostatočne dlhý, potom sa môže stať, že niektoré opakované sekvencie čitateľného textu budú šifrované pomocou tých istých čísel kľúča—a teda aj v kryptograme vytvoria opakované sekvencie, ktoré potom môžeme nájsť.
Zo vzdialenosti medzi týmito opakovanými sekvenciami sa dajú vyvodiť možné dĺžky kľúča. Napríklad, ak je vzdialenosť medzi opakovaniami 12, potom kľúč musí mať dĺžku 2, 3, 6 alebo 12. Pretože len ak je vzdialenosť násobkom dĺžky kľúča, bude platiť, že to isté písmeno čitateľného textu je šifrované tým istým číslom kľúča (to jest tou istou šifrovacou abecedou).
Vysvetlenie môže znieť abstraktne; ukážeme si to preto radšej na príklade. Nižšie je časť kryptogramu, ktorá obsahuje opakovanie sekvencie KYUU. Vzdialenosť medzi opakovaniami je 12.
M Q K Y U U E X K T O G Z G K Y U U M F V I J D Q D P Z J Q
Možné dĺžky kľúča sú 2, 3, 6 a 12. Vyskúšame, či pri týchto dĺžkach skutočne budú tie isté písmená šifrované tými istými šifrovacími abecedami.
Kľúč s dĺžkou 12 (KYUU je šifrované abecedami č. 3 až 6):
Abeceda č. 1 2 3 4 5 6 7 8 9 10 11 12 M Q K Y U U E X K T O G Z G K Y U U M F V I J D
Kľúč s dĺžkou 6 (KYUU je šifrované abecedami č. 3 až 6):
Abeceda č. 1 2 3 4 5 6 M Q K Y U U E X K T O G Z G K Y U U M F V I J D
Podobne to funguje aj s kľúčmi o dĺžke 2 a 3. Naproti tomu, ak vyskúšame napríklad kľúč s dĺžkou 5, podmienka splnená nebude. Vidíme, že prvé KYUU je šifrované inými abecedami ako druhé.
Abeceda č. 1 2 3 4 5 M Q K Y U U E X K T O G Z G K Y U U M F
Takže zo vzdialenosti medzi opakovaniami ľahko zistíme všetky možné dĺžky kľúčov, ktoré fungujú pre danú opakovanú sekvenciu. Ak máme takýchto opakovaných sekvencií viac, potom dĺžka kľúča je vyjadrená spoločným faktorom—pretože len tento funguje pre každú z opakovaných sekvencií.
Druhý krok—Rozpis kryptogramu podľa šifrovacích abecied a frekvenčná analýza
V predošlom kroku sme ustálili, že kľúč pozostáva zo 6 čísel—to znamená 6 posuvných šifrovacích abecied, ktoré sa cyklicky striedajú.
Teraz rozpíšeme kryptogram do toľkých stĺpcov, koľko šifrovacích abecied bolo použitých—teda tak, aby každý stĺpec obsahoval len písmená, ktoré sú šifrované rovnakou abecedou (pre každú šifrovaciu abecedu máme jeden stĺpec). Nižšie je začiatok nášho kryptogramu rozpísaný do 6 stĺpcov.
Po rozpísaní kryptogramu zostavíme frekvenčné charakteristiky pre každý stĺpec zvlášť (teda spočítame koľko krát sa v každom stĺpci vyskytuje ktoré písmeno). Výsledky sú v nasledujúcej tabuľke. Posledný stĺpec predstavuje frekvenčnú charakteristiku priemerného francúzskeho textu.
Tretí krok—Napasovanie šifrovacích abecied na normál
Zostáva už len určiť o koľko je každá zo šifrovacích abecied posunutá oproti normálnej abecede. Z mechanizmu šifry vieme, že posun je v rozmedzí 0 až 9. Veľkosť posunu budeme zisťovať pre každú šifrovaciu abecedu zvlášť.
Použijeme postup, ktorý sa volá “napasovanie šifrovacej abecedy na normál”. Postup je tento: Normálnu abecedu posúvame vždy o jednu pozíciu až dovtedy, kým sa jej frekvenčná charakteristika nebude približne zhodovať s frekvenčnou charakteristikou šifrovacej abecedy. Zhoda nemusí byť perfektná, pretože frekvencia písmen v kryptograme sa môže odlišovať od priemeru—hľadáme najlepšiu možnú zhodu.
Ukážka postupu pre prvú šifrovaciu abecedu je nižšie:
Začneme s normálnou abecedou bez posunutia. Vidíme, že charakteristika sa nezhoduje so šifrovacou abecedou č. 1 (vrcholy a údolia sú na iných miestach). Preto posunieme normálnu abecedu o 1 pozíciu; ani tu sa charakteristiky nezhodujú. Posunieme normálnu abecedu o 2 pozície, atď.
Dobrú zhodu charakteristík dostaneme pri posunutí normálnej abecedy o 4 pozície. Všimnite si tieto pekné zhody:
- Písmeno E (v kryptograme 3x) znamená v skutočnosti A (očakávaná hodnota 4x)
- Písmeno M (v kryptograme 6x) znamená v skutočnosti I (očakávaná hodnota 4x)
- Písmená PQRS (v kryptograme 3 až 4x) znamenajú v skutočnosti LMNO (očakávaná hodnota pre LNO 3 až 4x )
- Písmená VXYZ (v kryptograme 2 až 4x) znamenajú v skutočnosti RSTU (očakávaná hodnota 3 až 4x).
Jedine dvojička I (v kryptograme 2x) – E (očakávaná hodnota 9x) nám nevyšla celkom ideálne. To sa stáva, pretože početnosť písmen v šifrovanej správe sa môže líšiť od priemerných hodnôt použitého jazyka. Inak je však zhoda veľmi pekná. Na základe porovnania frekvenčných charakteristík môžeme uzavrieť, že šifrovacia abeceda 1 vznikla posunutím normálnej abecedy o 4. Prvé číslo kľúča je teda 4.
Nižšie máme všetky šifrovacie abecedy napasované na posunutú normálnu abecedu:
Zodpovedajúce čísla kľúča sú 432513. Dosadením čísel kľúča je možné kryptogram hravo prečítať.
ZÁVER
Rozlúštiť kryptogram z románu Osemsto míľ po Amazone je pomerne jednoduché, ak človek pozná postup. Musíme bohužiaľ povedať, že sudca Jarriquez (resp. jeho stvoriteľ Verne) si pri jeho lúštení nepočínali najlepšie.
Už pri identifikovaní druhu použitej šifry sa dopustili niekoľkých nepresností.
Najväčšiu chybu však spravili pri aplikácii metódy známeho slova. V dialógu, ktorý sme citovali v predchádzajúcom článku, Jarriquez správne ukázal Manoelovi, že ak poznáme niektoré slovo ukryté v šifrovanom texte, môžeme získať kľúč—a to tak, že od hodnoty falošného písmena odčítame hodnotu pravého. Manoel (nádejný zať odsúdeného) je nadšený.
„To je fantastické, pane!“, vykríkol Manoel. „Ak je to tak, potom meno Dacosta je určite v poslednom odseku. A ak zoberieme postupne každé písmeno týchto riadkov ako prvé zo siedmich, z ktorých sa skladá jeho meno, potom by sme predsa mali zistiť … [čísla kľúča]“
„Bohužiaľ, to je nemožné,“ prerušil ho sudca, „ibaže by bola splnená jedna podmienka.“
„A ktorá to je?“
„Že prvá číslica kľúča by šifrovala práve prvé písmeno slova Dacosta. A ako iste uznáte, to nie je veľmi pravdepodobné.“
Jarriquez sa tu priblížil k rozlúšteniu kryptogramu doslova na dosah ruky. Stačilo postupovať presne tak, ako hovorí Manoel—teda zobrať každé písmeno kryptogramu ako možné prvé písmeno slova DACOSTA, extrahovať čísla kľúča a skontrolovať, či sú tieto hodnoty prípustné (teda v rozmedzí 0 až 9, ako predpokladá Gronsfeldova šifra). V náhlom zatemnení mozgu je táto metóda zavrhnutá.
Pokiaľ ide o Kasiskeho metódu (všeobecné riešenie), Verne ju teoreticky mohol poznať. Ak však posuzdujeme situáciu z pohľadu postavy sudcu Jarriqueza (a berieme do úvahy, že dej sa odohráva v čase, kedy Kasiskeho metóda ešte nebola známa), nemôžeme mu zazlievať, že na všeobecne riešenie neprišiel sám. Nemožno racionálne očakávať, že Jarriquez by za tri dni bol schopný vynájsť metódu na rozlúštenie šifry, ktorá odolávala útokom tristo rokov.
Dnes, keď na vyhľadanie potrebných informácií stačí niekoľko klikov na internete, je veľmi jednoduché kritizovať Verna. Verne bol pri príprave svojich románov veľmi dôsledný. V tomto prípade sa však zrejme nechal uniesť všeobecne panujúcim presvedčením, že šifra je stále nerozlúštiteľná (le chiffre indéchiffrable) a nekonzultoval veci s odborníkmi. Môžeme predpokladať, že keby mal takú jednoduchú možnosť overiť si fakty ako my, určite by sa chybám vyhol. Môže náš len tešiť, že dnes žijeme v dobe, v ktorej je poznanie dostupné všetkým, ktorý majú záujem sa niečo dozvedieť.