ŠIFROVANIE - PRÍKLAD
Konkrétny a praktický príklad šifrovania.


Je to pravdaže vymyslený "modelový" príklad. Sme s kamarátmi a manželkami na letnej dovolenke v Kováčovej. S kamarátom Janom som sa dohodol, že na jeseň pôjdeme spolu na rybačku. Keď zaistí miesto, podrobnosti mi pošle písomne, aby sme to zase nedomotali ako minule po telefóne.
Nechceme, aby to vedeli naše manželky, a keďže vieme, že heslá do našej elektronickej pošty majú dávno cez rameno odkukané, chceme si zprávy poslať ele poštou zašifrované.
Keďže nejde o život, len o tri dni tichej domácnosti, riziko prezradenia obsahu zprávy zase nie je až také významné, takže za cenu istého zníženia odolnosti voči rozlúšteniu, pre šifrovanie substitúciou zvolíme kľúč kratší než je zpráva (predbehneme a prezradíme, že kľúč má 189 znakov, zpráva 656 znakov, takže kľúč sa vyše trikrát zopakuje) a prešifrovanie transpozíciou vynecháme celkom.
Keby sme boli ľahtikári (lenže nie sme), mohli by sme ako kľúč použiť napríklad: "podmespoluurobimesisnehuliaka", ale to je nebezpečný kľúč: jednak je krátky, a okrem toho obsahuje slová, a to všetko by manželkám mohlo uľahčiť lúštenie. Použijeme o čosi bezpečnejší kľúč, ktorý si vytvoríme dohodnutým spôsobom (popis je nižšie v bode 2) zo základu, ktorý vyberieme z knihy, a ten prešifrujeme kratším reťazcom znakov. Takto vytvorený kľúč použijeme na zašifrovanie aj odšifrovanie našej zprávy.
V rušnom bazéne plavárne, kde je riziko odpočutia manželkami dosť malé, a riziko skrytého nosenia odpočúvacieho prístroja je tiež zmenšené plavkami a vodou, sme si dohodli toto:

1.) Použijeme šifrovací program, ktorého internetovú adresu si pošleme samostatnou ele poštou (www.verne1900.sweb.cz/SifraBeaufort1.html). Ten istý program použijeme obidvaja (odosielateľ zprávy aj príjemca zprávy) - najprv na vytvorenie rovnakého kľúča dohodnutým spôsobom, potom ho odosielateľ zprávy použije na zašifrovanie svojej odosielanej zprávy, následne ho príjemca použije na odšifrovanie došlej zprávy.
Internetovú stránku šifrovacieho programu si stiahneme na flash drive, na ktorom ju prenesieme a uložíme na harddisk v druhom staršom počítači, ktorý nemá pripojenie na internet. Tam si stránku so šifrovacím proramom ovoríme "off line" v internetovom prehliadači a tam ďalej pracujeme.

2.) Ako základ kľúča šifry berieme knihu, ktorú som kamarátovi daroval k posledným narodeninám (ja ju mám tiež, to isté vydanie: Ivan Krasko: Lyrické dielo, r. 1956), začíname od desiatej strany (lebo prvé strany nebývajú zaplnené textom), pre každú budúcu ďalšiu zprávu použijeme ďalšiu párnu stranu (vyjmúc tie, ktoré nie sú aspoň spolovice plné, napríklad na koncoch kapitol). Na použitú stranu založíme záložku, aby sme nabudúce vedeli, kde sme minule skončili.
Takto dohodnutých kníh máme niekoľko, máme ich v knižnici vhodne oddelené, striedame ich, používame ich dookola v abecednom poradí podľa priezviska autora, naposledy použitú knihu uložíme navrch alebo ako prvú v poradí, aby sme nabudúce vedeli, kde sme minule skončili.
Z príslušnej strany knihy vypisujeme (priamo do príslušnej rubriky programu) za sebou prvé písmená z každého riadku, začínajúc prvým riadkom, pričom prípadné dĺžne a mäkkčene z písmen vynechávame a všetky písmená zapisujeme ako malé (je to 30 písmen):
pvlmvsbnsnzhrssvvvcjpacazvnsmb
a hneď za tým zopakujeme (pomocou klávec Ctrl+C, následne Ctrl+V) to isté za sebou ešte 6krát naviac, pričom každé zopakovanie má o jeden znak na konci menej, než predošlé zopakovanie:
pvlmvsbnsnzhrssvvvcjpacazvnsmbpvlmvsbnsnzhrssvvvcjpacazvnsmpvlmvsbnsnzhrssvvvcjpacazvnspvlmvsbnsnzhrssvvvcjpacazvnpvlmvsbnsnzhrssvvvcjpacazvpvlmvsbnsnzhrssvvvcjpacazpvlmvsbnsnzhrssvvvcjpaca

3.) Tento základ kľúča šifry v uvedenom programe vpisujeme do rubriky "1-Text", a do rubriky "2-Kľúč" zapíšeme prvé písmená prvých dvanástich slov hymny Slovenskej republiky, pričom prípadné dĺžne a mäkkčene z písmen vynechávame a všetky písmená zapisujeme ako malé:
ntsbhdbzibns

4.) Ťukneme na tlačidlo "Šifruj!"

5.) To, čo sa objavilo v rubrike "Výsledok", je náš kľúč (má 189 znakov):
yyhpmlamqoolwbagmizqtblsoyfjvcmexpsamgaoiwkhqgsxlkdbfdcevjbdsiggpcohvcgbvbxgmbskizntsgammspeqaaaaulkplgenzednrscmqmexpsamgaoiwkhqgsxlkdbfdcetgcgsbropqcsrjvxsyqssdzzjmshbyaauloabkvasyxzyobxi
pre túto našu konkrétnu jedinú zprávu (nabudúce bude kľúč iný, pozrieť bod 2 vyššie). Ťukneme myšou do rubriky "Kľúč", potom stlačením kláves Ctrl+A sa celý obsah (=náš kľúč) označí ako blok, vyberieme ho klávesami Ctrl+X

6.) Myšou ťukneme do rubriky "2-Kľúč" a vymažeme všetko, čo tam je; potom tam klávesami Ctrl+V vložíme náš kľúč:
yyhpmlamqoolwbagmizqtblsoyfjvcmexpsamgaoiwkhqgsxlkdbfdcevjbdsiggpcohvcgbvbxgmbskizntsgammspeqaaaaulkplgenzednrscmqmexpsamgaoiwkhqgsxlkdbfdcetgcgsbropqcsrjvxsyqssdzzjmshbyaauloabkvasyxzyobxi

7.) Do rubriky "1-Text" napíšeme alebo vložíme (pomocou kláves Ctrl+V) to, čo chceme zašifrovať, alebo odšifrovať
Vkladáme tam náš otvorený text, ktorý obsahuje len písmená medzinárodnej abecedy: čísla sú slovom vypísané, medzi slovami je písmeno"x" namiesto medzery:
janoxtakxsomxdohodolxtuxrybackuxpridxvecerxdesiatehoxseptembraxdoxzelenejxlehotyxnaxhlavnejxulicixvxdomexcisloxsedem xuxpanaxjuraxjanosikaxmamexzaistenexubytovaniexnaxmojexmenoxdoxtrinastehoxseptembraxohlasxsaxdomacemuxviexzexpridesxjaxpridemxazxdruhyxdenxrano xpovolenkyxsuxvybavenexprinesiemxichxhlavnexsixnezabudnixzobratxvelaxcervikovxvxmiestnomxpotokuxsuxpstruhyxjedloxnetreba xvxdedinexjexdobrexzasobovanyxobchodxverziaxprexmanzelkyxidemexnaxtrojdnovuxkonferenciuxoxnovychxmetodachxzapustkovehoxkovania xbudexnedalekoxvxbreznexpresnexvxnasomxterminexzbornikxuzxmajuxvytlacenyxvopredxdonesiemxhoxabyxsmexvedelixoxcomxbolaxrecxuzxsaxtesimxnaxrybackuxjozo
8.) Ťukneme na tlačidlo "Šifruj!"

9.) V rubrike "Výsledok" je zašifrovaný odkaz:
pyubpsactwazzymzyflfwirvxaejtsshiykxplwmefnemokxsgwnilypcfpcbijdbfpdkytxmemcfnzmlmnwlvarzoghwpsysxqnmxuaqxwlcdvkinisavvlmtarzcthtxskxsvrfgqehcfhstzvldyvxixeedqfkzcmjpgtsudoqyadywyhbqkzgvxqubgdatholzorxpqaopqztqnzsmutpyheaaqodxpsleenyqjdgdhzpiddhsshwuldccfxhiojmhgjvioimlhtwxizmrocatljsnqtclzjwlshwcrxpituwacobmfglvonicfbxsnixudfcpphyinwrutqknrckemtdeklpppanejihdrhcebrxhkamuvkthybmsjhxedkrcsexslrvtubtenkkjiepqwnlmjjfkrxchtrbtoydogzruxmtaowcjccroeoxyincmprexdvwpfesspesrcfcytxzgwxdelshencyktgyjtiedcsfovokkpmptoxzyfsyufjhjrknpcmfdafdkobvvfdhlxpzdkmsnqopzntisibdabcboobdjwblyidqrqimjcjlwcgxtkkmichfmdzsaoijfkfszztsvvxygarschefzgyjjopfvdduueibapoasiyfqkehm
Obsah rubriky je zašifrovaný text, ktorý vyberieme (klávesami: "Ctrl+A", potom "Ctrl+X) a ďalej použijeme na dopravu k adresátovi, napríklad ho vložíme (Ctrl+V) do prázdnej stránky v programe Open Office, alebo Libre Office, alebo Word, alebo Notepad, alebo iný aký používame, a príslušný súbor uložíme na flash drive. Počítač vypneme, flash drive vyberieme.

10. Flash drive strčíme do USB portu druhého počítača pripojeného na internet. Príslušný súbor priložíme k elektronickej pošte a odošleme Janovi. Jano si to tým istým postupom odšifruje - rozdiel bude len v tom, že v bode 7 nevloží otvorený text (veď ho nepozná), ale zašifrovaný text ktorý prijal v prílohe doručenej ele pošty.

Zopakujme v našom príklade použitý princíp tvorby kľúča zašifrovaním z kľúčového textu a kľúčovej vety (vy si dohodnite inak):
a) z kľúčového textu (z dohodnutej strany z dohodnutej knihy) vypíšeme určené písmená (v našom príklade sú to prvé písmená riadkov, zhora nadol, vynechávame mäkkčene aj dĺžne, prípadne tiež na riadku preskočíme iné znaky než písmená, ak by tam boli) a hneď za tým ich zopakujeme dohodnutým spôsobom (= ešte 6krát naviac, pričom každé zopakovanie má o jeden znak na konci menej, než predošlé zopakovanie),
b) toto vložíme do dohodnutého šifrovacieho programu do rubriky "text", potom
c) z dohodnutej kľúčovej vety vypíšeme dohodnutý počet (12) prvých písmen z jednotlivých slov, toto vložíme do dohodnutého šifrovacieho programu do rubriky "kľúč", potom
d) ťukneme na tlačidlo "Šifruj!"
e) v rubrike "Výsledok" je náš hotový kľúč, ktorý ďalej použijeme na zašifrovanie nášho otvoreného textu zprávy
Dbáme, aby písmená z kľúčového textu a písmená z kľúčovej vety nevytvorili žiaden možný základ pre prípadné "textové moiré", teda opakovania skupín písmen - preto dlhší reťazec (z kľúčového textu) je síce opakovaný, ale s istou nepravidelnosťou (opakovania sa postupne skracujú), tiež dĺžka kratšieho reťazca (písmená z kľúčovej vety - tu ich je 12) a jej celočíselné násobky (24, 36,...) sú odlišné od dĺžok opakovaných častí kľúčového textu (tu ich je 30 + 29 + 28 + 27 + 26 + 25 + 24). (Pravda, v poslednom opakovaní (24=24) to nie je dodržané - to je potenciálne zoslabené miesto šifry, aj keď v celkovom chaotickom usporiadaní písmen kľúča zaniká...)


Vyskúšajte si tento príklad.
Vyskúšajte si tiež, že tento príklad zašifrovania a odšifrovania funguje aj ručne.




Autor: Ing. Vojtech Brabenec, Trenčín, 15. marec 2016.

      <<  späť na vrch tejto strany

  <<<<  späť na hlavnú stranu

Nižšie je prípadná reklama poskytovateľa:

„Rozdávat rady je zbytečné. Moudrý si poradí sám a hlupák stejně neposlechne.“ Mark Twain