Potřeba šifrovat korespondenci vznikla ve starověkém světě a objevily se jednoduché substituční šifry. Šifrované zprávy určovaly osud mnoha bitev a ovlivnily běh dějin. Postupem času lidé vynalezli stále pokročilejší metody šifrování.
Kód a šifra jsou mimochodem různé pojmy. První znamená nahrazení každého slova ve zprávě kódovým slovem. Druhým je šifrování každého symbolu informace pomocí specifického algoritmu.
Poté, co matematika začala kódovat informace a byla vyvinuta teorie kryptografie, vědci objevili mnoho užitečných vlastností této aplikované vědy. Například dekódovací algoritmy pomohly rozluštit mrtvé jazyky, jako je starověká egyptština nebo latina.
Steganografie
Steganografie je starší než kódování a šifrování. Toto umění existuje již velmi dlouho. Doslova to znamená „skryté psaní“nebo „šifrové psaní“. Přestože steganografie zcela nesplňuje definice kódu nebo šifry, jejím cílem je skrývat informace před cizími lidmi.oko.
Steganografie je nejjednodušší šifra. Typickým příkladem jsou spolknuté poznámky pokryté voskem nebo vzkaz na oholené hlavě, který se skrývá pod odrostlými vlasy. Nejjasnějším příkladem steganografie je metoda popsaná v mnoha anglických (nejen) detektivních knihách, kdy se zprávy přenášejí prostřednictvím novin, kde jsou písmena nenápadně označena.
Hlavní nevýhodou steganografie je, že si jí všimne pozorný cizinec. Proto, aby se zabránilo snadnému čtení tajné zprávy, používají se ve spojení se steganografií metody šifrování a kódování.
ROT1 a Caesarova šifra
Název této šifry je ROTate 1 letter forward a zná ji mnoho školáků. Je to jednoduchá substituční šifra. Jeho podstata spočívá v tom, že každé písmeno je zašifrováno posunem abecedně o 1 písmeno dopředu. A -> B, B -> C, …, Z -> A. Například zašifrujeme frázi "naše Nastya hlasitě pláče" a dostaneme "obecný Obtua dspnlp rmbsheu".
Šifru ROT1 lze zobecnit na libovolný počet offsetů, pak se nazývá ROTN, kde N je číslo, o které se má posunout šifrování písmen. V této podobě je šifra známá již od starověku a nazývá se „Caesarova šifra“.
Caesarova šifra je velmi jednoduchá a rychlá, ale jedná se o jednoduchou šifru s jednou permutací, a proto je snadné ji prolomit. S takovou nevýhodou se hodí jen pro dětinské žerty.
Transpoziční nebo permutační šifry
Tyto typy jednoduchých permutačních šifer jsou vážnější a aktivně se používaly teprve nedávno. Během americké občanské války a první světové války sloužil k odesílání zpráv. Jeho algoritmus spočívá v přeskupování písmen na místech - napište zprávu v opačném pořadí nebo přeskupte písmena ve dvojicích. Zašifrujme například frázi "Morseova abeceda je také šifra" -> "akubza ezrom - ježek rfish".
S dobrým algoritmem, který určoval libovolné permutace pro každý znak nebo jejich skupinu, se šifra stala odolnou vůči jednoduchému prolomení. Ale! Pouze včas. Vzhledem k tomu, že šifru lze snadno prolomit jednoduchou hrubou silou nebo porovnáváním slovníku, dnes její dešifrování zvládne každý chytrý telefon. Proto se s příchodem počítačů i tato šifra přesunula do kategorie dětské.
Morseova abeceda
ABC je prostředek výměny informací a jeho hlavním úkolem je usnadnit a srozumitelnější zprávy pro přenos. I když je to v rozporu s tím, k čemu je šifrování určeno. Přesto to funguje jako ty nejjednodušší šifry. V systému Morse má každé písmeno, číslo a interpunkční znaménko svůj vlastní kód, složený ze skupiny pomlček a teček. Při odesílání zprávy pomocí telegrafu představují pomlčky a tečky dlouhé a krátké signály.
Telegraf a Morseova abeceda… Morse byl ten, kdo jako první patentoval „svůj“vynález v roce 1840, ačkoli podobná zařízení byla vynalezena v Rusku a Anglii před ním. Ale koho to teď zajímá… Telegraf a abecedaMorseova abeceda měla velmi velký dopad na svět a umožnila téměř okamžitý přenos zpráv na kontinentální vzdálenosti.
Monoalfabetická substituce
Výše popsané ROTN a Morseova abeceda jsou příklady monoalfabetických náhradních písem. Předpona „mono“znamená, že během šifrování je každé písmeno původní zprávy nahrazeno jiným písmenem nebo kódem z jediné šifrovací abecedy.
Rozluštění jednoduchých substitučních šifer není obtížné, a to je jejich hlavní nevýhoda. Jsou řešeny jednoduchým výčtem nebo frekvenční analýzou. Například je známo, že nejpoužívanějšími písmeny ruského jazyka jsou „o“, „a“, „i“. Dá se tedy předpokládat, že v šifrovém textu se nejčastěji vyskytující písmena znamenají buď „o“, nebo „a“, nebo „a“. Na základě těchto úvah lze zprávu dešifrovat i bez vyhledávání na počítači.
Je známo, že Marie I., královna Skotů v letech 1561 až 1567, používala velmi složitou monoalfabetickou substituční šifru s několika kombinacemi. Přesto její nepřátelé dokázali rozluštit zprávy a informace stačily k odsouzení královny k smrti.
Gronsfeldova šifra nebo polyalfabetická substituce
Jednoduché šifry jsou kryptografií prohlášeny za zbytečné. Proto bylo mnoho z nich vylepšeno. Gronsfeldova šifra je modifikací Caesarovy šifry. Tato metoda je mnohem odolnější vůči hackingu a spočívá v tom, že každý znak zakódované informace je zašifrován pomocí jedné z různých abeced, které se cyklicky opakují. Dá se říci, že se jedná o vícerozměrnou aplikacinejjednodušší substituční šifra. Ve skutečnosti je Gronsfeldova šifra velmi podobná Vigenèrově šifře, o které se pojednává níže.
Šifrovací algoritmus ADFGX
Toto je nejslavnější šifra z první světové války, kterou používali Němci. Šifra dostala své jméno, protože šifrovací algoritmus vedl všechny šifry ke střídání těchto písmen. Výběr samotných písmen byl určen jejich pohodlností při přenosu po telegrafních linkách. Každé písmeno v šifře je reprezentováno dvěma. Podívejme se na zajímavější verzi čtverce ADFGX, která obsahuje čísla a nazývá se ADFGVX.
A | D | F | G | V | X | |
A | J | Q | A | 5 | H | D |
D | 2 | E | R | V | 9 | Z |
F | 8 | Y | I | N | K | V |
G | U | P | B | F | 6 | O |
V | 4 | G | X | S | 3 | T |
X | W | L | Q | 7 | C | 0 |
Algoritmus kvadratury ADFGX je následující:
- Vyberte náhodných n písmen pro sloupce a řádky.
- Sestavení matice N x N.
- Zadejte abecedu, čísla, znaky náhodně rozmístěné po buňkách do matice.
Udělejme podobný čtverec pro ruský jazyk. Vytvořme například čtverec ABCD:
A | B | B | G | D | |
A | E/E | N | b/b | A | I/Y |
B | W | V/F | G/R | З | D |
B | Sh/Sh | B | L | X | I |
G | R | M | O | Yu | P |
D | F | T | T | S | U |
Tato matice vypadá divně, protože řada buněk obsahuje dvě písmena. To je přijatelné, význam sdělení se neztrácí. Dá se snadno obnovit. Zašifrujte frázi „Kompaktní šifra“pomocí této tabulky:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | |
Fráze | K | O | M | P | A | K | T | N | S | Y | Ш | & | F | R |
Šifra | bw | gv | gb | kde | ag | bw | db | ab | dg | peklo | wa | peklo | bb | ha |
Konečná zašifrovaná zpráva tedy vypadá takto: "bvgvgbgdagbvdbabdgvdvaadbbga". Němci samozřejmě provedli podobnou linii prostřednictvím několika dalších šifer. A nakonec to dopadlo velmi stabilněprolomit šifrovanou zprávu.
Vigenèrova šifra
Tato šifra je řádově odolnější vůči prolomení než monoalfabetické, i když jde o jednoduchou šifru nahrazující text. Kvůli robustnímu algoritmu se však dlouho považovalo za nemožné hacknout. První zmínky o něm pocházejí z 16. století. Vigenère (francouzský diplomat) je mylně považován za jeho vynálezce. Abyste lépe porozuměli tomu, co je v sázce, zvažte Vigenèrovu tabulku (Vigenèrův čtverec, tabula recta) pro ruský jazyk.
Začněme kódovat frázi „Kasperovich se směje“. Ale aby bylo šifrování úspěšné, je potřeba klíčové slovo – ať je to „heslo“. Nyní začněme šifrovat. Za tímto účelem napíšeme klíč tolikrát, aby počet písmen z něj odpovídal počtu písmen v zašifrované frázi, opakováním klíče nebo vyříznutím:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | |
Fráze: | K | A | С | P | E | R | O | B | & | W | С | M | E | E | T | С | I |
Klíč | P | A | R | O | L | b | P | A | R | O | L | b | P | A | R | O | L |
Nyní pomocí Vigenèrovy tabulky, stejně jako v souřadnicové rovině, hledáme buňku, která je průsečíkem dvojic písmen, a dostáváme: K + P=b, A + A=B, C + P=C atd.
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | |
Šifra: | b | B | B | Yu | С | N | Yu | G | Sch | F | E | Y | X | F | G | A | L |
Dostáváme, že "Kasperovič se směje"="bvusnyugschzh eykhzhgal".
Rozluštit Vigenèrovu šifru je tak obtížné, protože frekvenční analýza potřebuje znát délku klíčového slova, aby fungovala. Takže hack je náhodně hodit délku klíčového slova a pokusit se rozlousknout tajnou zprávu.
Je třeba také zmínit, že kromě zcela náhodného klíče lze použít úplně jinou Vigenèrovu tabulku. V tomto případě se Vigenèrův čtverec skládá z řádků psané ruské abecedy s posunem o jednu. Což nás odkazuje na šifru ROT1. A stejně jako v Caesarově šifře může být offset cokoliv. Pořadí písmen navíc nemusí být abecední. V tomto případě může být klíčem samotná tabulka, aniž byste věděli, že nebude možné zprávu přečíst, dokonce ani když budete znát klíč.
Kódy
Skutečné kódy se skládají ze shod pro každý z nichslova samostatného kódu. Pro práci s nimi jsou potřeba tzv. kódové knihy. Ve skutečnosti se jedná o stejný slovník, který obsahuje pouze překlady slov do kódů. Typickým a zjednodušeným příkladem kódů je ASCII tabulka - mezinárodní šifra jednoduchých znaků.
Hlavní výhodou kódů je, že je velmi obtížné je dešifrovat. Frekvenční analýza téměř nefunguje, když jsou hacknuti. Slabinou kódů jsou ve skutečnosti samotné knihy. Za prvé, jejich příprava je složitý a nákladný proces. Za druhé, pro nepřátele se promění v požadovaný objekt a zachycení byť jen části knihy vás donutí úplně změnit všechny kódy.
Ve 20. století mnoho států používalo k přenosu tajných dat kódy, které po určité době změnily kódovou knihu. A také aktivně hledali knihy sousedů a odpůrců.
Enigma
Každý ví, že Enigma byla hlavním šifrovacím strojem nacistů během druhé světové války. Struktura Enigmy zahrnuje kombinaci elektrických a mechanických obvodů. Jak šifra dopadne, závisí na počáteční konfiguraci Enigmy. Enigma zároveň během provozu automaticky mění svou konfiguraci a šifruje jednu zprávu několika způsoby po celé její délce.
Na rozdíl od nejjednodušších šifer poskytovala „Enigma“biliony možných kombinací, díky nimž bylo prolomení zašifrovaných informací téměř nemožné. Nacisté zase měli na každý den připravenou určitou kombinaci, kterou mělipoužívané v konkrétní den k odesílání zpráv. Proto, i když Enigma padla do rukou nepřítele, neudělala nic pro dešifrování zpráv, aniž by každý den zadala správnou konfiguraci.
Hack "Enigma" byl aktivně zkoušen během celé Hitlerovy vojenské kampaně. V Anglii k tomu bylo v roce 1936 postaveno jedno z prvních výpočetních zařízení (Turingův stroj), které se stalo prototypem počítačů budoucnosti. Jeho úkolem bylo simulovat provoz několika desítek Enigm současně a nechat jimi procházet zachycené nacistické zprávy. Ale i Turingův stroj dokázal zprávu rozlousknout jen občas.
Šifrování veřejným klíčem
Nejoblíbenější z šifrovacích algoritmů, který se používá všude v technice a počítačových systémech. Jeho podstata spočívá zpravidla v přítomnosti dvou klíčů, z nichž jeden je předáván veřejně a druhý je tajný (soukromý). Veřejný klíč se používá k zašifrování zprávy a soukromý klíč se používá k jejímu dešifrování.
Veřejný klíč je nejčastěji velmi velké číslo, které má pouze dva dělitele, nepočítaje jednoho a samotného čísla. Společně tyto dva dělitele tvoří tajný klíč.
Uvažujme jednoduchý příklad. Veřejný klíč nechť je 905. Jeho děliteli jsou čísla 1, 5, 181 a 905. Pak bude tajný klíč např. číslo 5181. Říkáte příliš snadné? Co když v roliveřejné číslo bude číslo s 60 číslicemi? Matematicky obtížné vypočítat dělitele velkého čísla.
Pro názornější příklad si představte, že vybíráte peníze z bankomatu. Při čtení karty se osobní údaje zašifrují určitým veřejným klíčem a na straně banky se informace dešifruje tajným klíčem. A tento veřejný klíč lze pro každou operaci změnit. A neexistují žádné způsoby, jak rychle najít klíčové dělitele při jeho zachycení.
Trvanlivost písma
Kryptografická síla šifrovacího algoritmu spočívá ve schopnosti odolat hackerům. Tento parametr je nejdůležitější pro jakékoli šifrování. Je zřejmé, že jednoduchá substituční šifra, kterou lze dešifrovat jakýmkoli elektronickým zařízením, je jednou z nejvíce nestabilních.
Dnes neexistují jednotné standardy, podle kterých by bylo možné posoudit sílu šifry. To je pracný a dlouhý proces. Existuje však řada komisí, které v této oblasti vytvořily standardy. Například minimální požadavky na Advanced Encryption Standard nebo AES šifrovací algoritmus vyvinutý NIST USA.
Pro informaci: Vernamova šifra je uznávána jako šifra s největší odolností vůči prolomení. Jeho výhodou je zároveň to, že se podle jeho algoritmu jedná o nejjednodušší šifru.