Princip šifrování
Z MiS
				
				
				(Rozdíly mezi verzemi)
				
																
				
				
								
				|  (→Související stránky:  Přidán odkaz na Certifikační autorita.) |  (→Zajímavost — historické šifry:  Přidány příklady historických šifer.) | ||
| Řádka 89: | Řádka 89: | ||
| == Zajímavost — historické šifry == | == Zajímavost — historické šifry == | ||
| * Césarova šifra (přelom letopočtu): [https://www.algoritmy.net/article/34/Caesarova-sifra Algoritmy.net → Caesarova šifra] | * Césarova šifra (přelom letopočtu): [https://www.algoritmy.net/article/34/Caesarova-sifra 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. | ||
| + | <div class="Priklad">Příklad: <code>A h o j K a r l e</code> + klíč <code>2</code> → <code>C j q l M c t n g</code></div> | ||
| * Vigenèrova šifra (1556): [https://www.algoritmy.net/article/53/Vigenerova-sifra Algoritmy.net → Vigenèrova šifra] | * Vigenèrova šifra (1556): [https://www.algoritmy.net/article/53/Vigenerova-sifra Algoritmy.net → Vigenèrova šifra] | ||
| * Šifra Playfair (1854): [http://www.shaman.cz/sifrovani/sifra-playfair.htm Shaman.cz → Šifra Playfair] | * Šifra Playfair (1854): [http://www.shaman.cz/sifrovani/sifra-playfair.htm Shaman.cz → Šifra Playfair] | ||
| * Vernamova šifra (1917): [https://cs.wikipedia.org/wiki/Vernamova_%C5%A1ifra Wikipedia.org → Vernamova šifra] | * Vernamova šifra (1917): [https://cs.wikipedia.org/wiki/Vernamova_%C5%A1ifra Wikipedia.org → Vernamova šifra] | ||
| − | **  | + | ** Vlastně podobný princip jako Césarova šifra, ale každé písmeno zprávy posunu o jiný počet znaků. | 
| − | ** Důkaz neprolomitelnosti Shannon 1949. | + | ** 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.  | ||
| + | <div class="Priklad">Příklad: <code>A h o j K a r l e</code> + klíč <code>2 3 1 4 3 2 5 4 1</code> → <code>C k p n M c w p f</code></div> | ||
| * Enigma (1918) | * Enigma (1918) | ||
| ** Originální verze prolomena už ve 30. letech 20. století. | ** Originální verze prolomena už ve 30. letech 20. století. | ||
| Řádka 99: | Řádka 107: | ||
| ** K prolomení byly používány výpočetní stroje (předchůdci počítačů), na jejich vývoji se podílel Alan Turing. | ** 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 | ||
| <div class="Ukol"> | <div class="Ukol"> | ||
| ; Vyzkoušejte si šifru Playfair: | ; Vyzkoušejte si šifru Playfair: | ||
Verze z 7. 6. 2018, 09:46
| 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ě.)




