Hlavní obsah
Informatika – Počítače a internet
Kurz: Informatika – Počítače a internet > Kapitola 3
Lekce 6: Šifrování datSymetrické techniky šifrování
Symetrické šifrování je jakákoliv technika, u které je stejný klíč používán jak pro šifrování, tak pro dešifrování dat. Caesarova šifra je jednou z nejjednodušších symetrických technik šifrování, ale taky samozřejmě jednou z nejsnadněji prolomitelných.
Od té doby kryptografové vynalezli mnohem více symetrických technik šifrování, včetně těch, které se dnes používají k šifrování dat, třeba hesel.
Vigenèrova šifra
Francouzští kryptografové vynalezli Vigenèrovu šifru kolem roku 1550. Tato šifra byla považována za velmi silnou, a spisovatel Lewis Caroll ji v roce 1868 označil jako „neprolomitelnou“. Opravdu je daleko silnější než Caesarova šifra, ale jak nakonec uvidíme, prolomit se dá taky.
Šifrování
Vigenèrova šifra používá jako klíč posunutí celé slovo, na rozdíl od jednoduchého posunu o určitý počet míst, jako tomu je u Caesarovy šifry.
Pro zašifrování slova
VERSAILLES
chceme použít jako klíč posunutí slovo CHEESE
(česky sýr).Nejprve musíme opakovat klíč posunutí do té doby, než pokryje všechna písmena ve slově, které chceme zašifrovat:
Původně | V | E | R | S | A | I | L | L | E | S |
---|---|---|---|---|---|---|---|---|---|---|
Klíč posunutí | C | H | E | E | S | E | C | H | E | E |
Nyní nahradíme všechna písmena původního slova podle Vigenèreho tabulky:
Pro první písmeno „V“ zvolíme řádek, který začíná „V“. A protože odpovídající písmeno ve slově klíče posunutí je „C“, v rámci řádku se posuneme do sloupce písmene „C“. Písmeno v průsečíku řádku „V“ a sloupce „C“ je písmeno „X“. Proto zašifrujeme písmeno „V“ jako „X“.
Původně | V | E | R | S | A | I | L | L | E | S |
---|---|---|---|---|---|---|---|---|---|---|
Klíč posunutí | C | H | E | E | S | E | C | H | E | E |
Zašifrováno | X | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Písmeno v průsečíku řádku „E“ a sloupce „H“ je písmeno „L“, takže „E“ zašifrujeme jako „L“.
Původně | V | E | R | S | A | I | L | L | E | S |
---|---|---|---|---|---|---|---|---|---|---|
Klíč posunutí | C | H | E | E | S | E | C | H | E | E |
Zašifrováno | X | L | ? | ? | ? | ? | ? | ? | ? | ? |
Pokud budeme pokračovat, získáme zašifrovaný text „XLVWSMNSIW“.
Původně | V | E | R | S | A | I | L | L | E | S |
---|---|---|---|---|---|---|---|---|---|---|
Klíč posunutí | C | H | E | E | S | E | C | H | E | E |
Zašifrováno | X | L | V | W | S | M | N | S | I | W |
Dešifrování
Dejme tomu, že jsme od našeho spojence obdrželi šifrovanou zprávu „NVYZJI“, a víme, že je to Vigenèreho šifra s klíčem posunutí „CHEESE“.
Takže si srovnáme pod sebe písmena šifry s písmeny klíče:
Šifra | N | V | Y | Z | J | I |
---|---|---|---|---|---|---|
Klíč posunutí | C | H | E | E | S | E |
Nyní můžeme podle tabulky provést obrácenou substituci:
Začneme s řádkem pro písmeno slova klíče posunutí „C“. V tomto řádku vyhledáme písmeno šifry „N“. Jakmile toto „N“ najdeme, zjistíme písmeno tohoto sloupce, tedy písmeno „L“. Dešifrováním „N“ jsme proto získali „L“.
Šifra | N | V | Y | Z | J | I |
---|---|---|---|---|---|---|
Klíč posunutí | C | H | E | E | S | E |
Původně | L | ? | ? | ? | ? | ? |
Pro další písmeno najdeme řádek „H“, v tomto řádku najdeme písmeno „V“ a přečteme písmeno tohoto sloupce, tedy písmeno „O“.
Šifra | N | V | Y | Z | J | I |
---|---|---|---|---|---|---|
Klíč posunutí | C | H | E | E | S | E |
Původně | L | O | ? | ? | ? | ? |
Pokud to tak uděláme pro každé písmeno klíče posunutí a šifry, dostaneme dešifrované slovo „LOUVRE“.
Prolomení šifry
Vigenèreho šifra je typ polyalfabetické (mnohoabecední) šifry, která je vůči prolomení mnohem odolnější než Caesarova šifra, protože používá jako klíč posunutí celé slovo.
Pokud by nepřítel netušil, jaké je klíčové slovo a chtěl by šifru prolomit útokem hrubou silou, musel by vyzkoušet všechna možná klíčová slova, a možná i ta vymyšlená. Běžnému člověkovi by to zabralo celý život. Je to mnohem víc práce, než by bylo třeba pro prolomení hrubou silou Caesarovy šifry, u té stačí ověřit pouze 26 posunutí.
A co frekvenční analýza? Obsahují zprávy šifrované Vigenèreho šifrou nějaký určitý vzorec v distribuci a četnosti písmen?
Zkus si to! Zašifruj zprávu uvedenou níže a hned uvidíš frekvenční analýzu původní i zašifrované zprávy.
Všimni si, že frekvenční analýza původní zprávy je přesně taková, jakou jsme pro anglický text čekali: „E“ je nejčastější písmeno, ale je zde obrovský rozdíl v četnosti písmen.
Frekvenční analýza zašifrované zprávy ukazuje víceméně stejné četnosti pro každé písmeno. Nemůžeme tak jasně určit písmeno „E“, protože písmeno „E“ je zašifrováno do různých písmen v rámci zprávy.
V 19. století lidé konečně našli různé způsoby, jak použít frekvenční analýzu k prolomení šifry. Například v dlouhé anglické zprávě může být krátké slovo jako je člen „THE“ přeloženo do stejných tří šifrovaných písmen vícekrát (ne pokaždé), což může odhalit délku slova klíče posunutí.
S pomocí výkonných počítačů lze Vigenèreho šifru dešifrovat velice snadno, protože tyto počítače mohou velice rychle otestovat miliony slov a objevit tak nějaké vzorce ve frekvenční analýze.
Moderní šifry
V dnešní době počítačů musí být šifry odolné k prolomení ne člověkem, ale právě počítačem, který může provádět biliony kalkulací za sekundu.
Kryptografové naštěstí vynalezli šifrovací techniky, které jsou v digitálním světě bezpečné a každoročně je zlepšují.
Jedním z nejběžnějších standardů šifrování je AES-128, bloková šifra schválená federální vládou USA a často používaná pro bezpečný přenos souborů.
Co ji činí tak bezpečnou?
Jedním z důvodů je to, že každý klíč je vždy 128 bitů dlouhý. To znamená, že je 2, start superscript, 128, end superscript možných klíčů. To je asi tolik:
Páni! Jenže je toho víc: AES šifra vyžaduje použití postupně 10 matematických operací pro každý bit klíče. Proto toto číslo nahoře ještě vynásobte 10, a právě tolik kalkulací by musel počítač udělat k prolomení šifry.
Nejrychlejší počítač zvládne asi 145, dot, 10, start superscript, 15, end superscript výpočtů za sekundu. To je asi tolik:
A proto by vyzkoušení každého možného 128-bitového klíče nejrychlejšímu počítači zabralo asi 500 bilionů let.
A co frekvenční analýza? Ta nebude fungovat. AES šifra neodhalí žádné informace o původním textu, a to právě díky vícestupňovým matematickým operacím s bity.
AES šifra, stejně jako další moderní šifry, možná nebude bezpečná navždy. Výzkumníci v oblasti bezpečnosti věnují spoustu času prolomení šifry, přičemž výsledky pak prezentují na různých konferencích a blogu.
Kryptografický výzkum se provádí veřejně s nadějí, že veřejnost objeví bezpečnostní trhliny dříve než je odhalí nějaký hacker se zlými úmysly.
🙋🏽🙋🏻♀️🙋🏿♂️Máš k tomuto tématu nějaké dotazy? Rádi ti je zodpovíme — zeptej se v sekci pro dotazy níže!
Chceš se zapojit do diskuze?
Zatím žádné příspěvky.