Princip šifrování
Z MiS
Nepleťte kódování s šifrováním!!!
Viz také: Kódování-šifrování-hashování
Obsah |
Rozdělení šifrovacích metod
- Symetrické šifrovací metody
- Odesilatel i příjemce mají společný šifrovací klíč.
- Společným šifrovacím klíčem lze zprávu zašifrovat i dešifrovat.
- Asymetrické šifrovací metody
- Účastník je identifikován dvojicí klíčů
- soukromý klíč: zná pouze vlastník
- veřejný klíč: smí znát kdokoli
- Postupným použitím soukromého i veřejného klíče dostaneme původní zprávu.
- Zpráva zašifrovaná veřejným klíčem lze dešifrovat pouze soukromým klíčem a naopak.
Šifrování symetrickou šifrovací metodou
- Odesilatel i příjemce mají společný šifrovací klíč, kterým lze správu zašifrovat i rozšifrovat.
- Při komunikaci na dálku vzniká problém s předáním šifrovacího klíče (pokud se odesilatel a příjemce nemohou sejít osobně předem)!
- Klíč by měl být dostatečně dlouhý a náhodný.
- Klíč by měl být použit pouze jednou!
Šifrování asymetrickou šifrovací metodou
- Každý účastník komunikace má pár veřejný + soukromý klíč.
- Odesilatel si nechává svůj soukromý klíč, ten nikomu nesděluje.
- Veřejný klíč může znát kdokoli, případné přečtení při předávání veřejnou sítí tedy není rizikem.
Běžné využití
- Asymetrické šifrovací metody jsou obvykle využívány pro bezpečné předání symetrického šifrovacího klíče nebo otisku zprávy.
- Šifrování většího objemu dat se obvykle následně provádí symetrickými šifrovacími metodami.
- SSL
- Vrstva pro šifrovanou komunikaci (implementace části prezentační vrstvy).
- Předchůdce protokol TLS
- Typicky se používá pro šifrovaný přenos dat protokolu HTTP (https://...).
- Viz také: Secure Sockets Layer
Porovnání vlastností
Asymetrické šifrovací metody:
- Dokáží zajistit nepopiratelnost odeslání zprávy.
- Autor zprávy nemůže popřít její odeslání.
- Ulehčují problém s bezpečným předáním klíče potenciálně nebezpečnou sítí.
- Nevadí odposlechnutí klíče třetí osobou, je jen třeba zabránit podvržení falešného klíče.
- Jedna kombinace veřejného a soukromého klíče stačí pro komunikaci s libovolným počtem partnerů.
- Každý účastník zodpovídá za svůj soukromý klíč, není zde sdílená zodpovědnost za vyzrazení klíče.
Symetrické šifrovací metody:
- Jsou výpočetně méně náročné.
Příklady šifrovacích algoritmů
Symetrické šifrovací algoritmy
- DES
- Data Encryption Standard
- Délka klíče 56 bitů, dnes již nedostatečné vzhledem k výkonu dnešních počítačů!
- AES
- Advanced Encryption Standard, nebo také Rijndael [rendál]
- Autoři: Joad Daemen, Vincent Rijmen
- V roce 2001 přijat americkým Národním institutem pro standardizaci a technologie (NIST) jako standard pro šifrování vládních dokumentů (odtud AES).
- Délka klíče: 128, 192, nebo 256 bitů (u původního algoritmu Rijndael lze libovolně prodloužit)
- Bloková šifra (CBC - Cipher Block Chaining)
- další blok se XOR-uje předchozím a pak až šifruje
- generujeme náhodný 0. blok, kterým jen XOR-ujeme první.
- Serpent
- Autoři: Ross Anderson, Eli Biham a Lars Knudsen
- Náročnější na implementaci než Rijndael pro malé bloky (32 kol)
- Není patentována, je public domain.
- Druhá metoda ve finále volby AES spolu s vítěznou Rijndael.
- Zdroje: Wikipedia.org: Serpent (cipher)
- Twofish
Asymetrické šifrovací algoritmy
- RSA
- Autoři: Rivest, Shamir, Adleman
- Je základem protokolu SSL.
- Matematický princip: Malá Fermatova věta (násobení velkých prvočísel)
Zajímavost — historické šifry
- Césarova šifra (přelom letopočtu): Algoritmy.net → Caesarova šifra
- Každé písmenko zprávy posunete o zadaný počet písmen v abecedě.
- Klíčem je zde počet písmen, o které posunujeme.
Příklad:
A h o j K a r l e
+ klíč 2
→ C j q l M c t n g
- Vigenèrova šifra (1556): Algoritmy.net → Vigenèrova šifra
- Šifra Playfair (1854): Shaman.cz → Šifra Playfair
- Vernamova šifra (1917): Wikipedia.org → Vernamova šifra
- Vlastně podobný princip jako Césarova šifra, ale každé písmeno zprávy posunu o jiný počet znaků.
- Klíčem je informace, které písmeno posunout o kolik znaků.
- Reálně bychom brali datový soubor se zprávou a ke každému byte zprávy přičítali odpovídající byte z náhodně vygenerovaného klíče.
- Je neprolomitelná, pokud dodržíme pravidla: 1) klíč stejně dlouhý jako zpráva a 2) klíč je dokonale náhodný.
- Důkaz neprolomitelnosti podal Shannon v roce 1949.
- Problém je ale s předáním klíče.
Příklad:
A h o j K a r l e
+ klíč 2 3 1 4 3 2 5 4 1
→ C k p n M c w p f
- Enigma (1918)
- Originální verze prolomena už ve 30. letech 20. století.
- Prolomení pokročilejší verze šifry pomohlo vítězství ve 2. světové válce.
- K prolomení byly používány výpočetní stroje (předchůdci počítačů), na jejich vývoji se podílel Alan Turing.
- Úkol
- Vyzkoušejte si šifru Playfair
Chcete-li vyzkoušejte si šifrování šifrou Playfair. Zkuste zakódovat text:
Šifruji jako blesk!
Pomocí klíče:
Informatika
Řešení — výsledný šifrovaný text by měl znít:
Looíl Rf, vnmg. Kmú gqbý.
(Interpunkce, diakritika a velikost písmen jsou přidány náhodně.)