Symetrické šifry | Pro šifrování i dešifrování se používá stejný klíč (tajný klíč, symetrický klíč). Tajný
klíč je znám pouze odesílateli a příjemci . To vyžaduje tajný kanál (secure
channel) pro distribuci klíče.
Základní typy symetrických šifer:
● blokové šifry - rozdělení otevřeného textu na bloky
● proudové šifry - průběžné šifrování |
Proudová šifra (stream cipher) | Mám nějaký generátor proudu bitů. Do vstupu je na začátku klíč. Ten generátor generuje skoro
nekonečný proud bitů. Ten proud bitů se pomocí operace XOR spojí s otevřeným textem a
vznikne šifrový text. Příjemce (pokud použije stejný generátor a stejný klíč) vygeneruje stejný
proud bitů, vezme šifrový text a získá otevřený text.
•v principu generátor pseudonáhodných čísel na základě klíče
•pokud útočník získá otevřený text a odpovídající šifrový text, tak lehce získá proud bitů (keystream) , proto klíč se nesmí opakovat,
•proud bitů z generátoru se po určité době opakuje , proto, před opakováním se musí změnit klíč
==Výhody proudových šifer
● jednodušší na implementaci v SW i v HW
● nemusí se čekat na naplnění bloku
● na univerzálních procesorech (Intel apod.) rychlejší |
Bloková šifra | = otevřený text se rozdělí do bloků a každý z nich se šifruje samostatně ( ALE ne
nezávisle).
● Zašifrování a odšifrování jsou odlišné operace
=Používá se tzv. Substitučně permutační síť
* blok se rozdělí do menších částí (8-16 bitů),
* v rámci každého menšího bloku se provede substituce (záměna znaků - např.
písmeno A nahradim písmenem F) na základě klíče,
* poté se bity rozhází mezi skupinami - malými částmi (permutace/transpozice),
* toto se vícekrát zopakuje (rundy) |
Módy blokových šifer | = ECB - Electronic Codebook mode encryption
• každý blok se šifruje a dešifruje nezávisle,
• nepoužívat - není to kryptograficky bezpečné
•je možnost útoku opakováním (použití stejné šifry pro dvě zprávy),
= Inicializační vektor
•aby se zabránilo útokům opakování v ECB módu byl navržen inicializační vektor. Když se šifrují dvě stejné zprávy se stejným klíčem, tak začátky zašifrovaných zpráv budou
odlišné
= Padding
= CBC - Cipher block chaining mode
= CTR - Counter mode encryption
•z blokové šifry vytvoří proudovou šifru, |
operace XOR | 0+0=0
0+1=1
1+0=1
1+1=0 |
Vernamova šifra | Vernamova šifra nebo také jednorázová tabulková šifra je jednoduchý šifrovací postup patentovaný v roce 1917 Gilbertem Vernamem. Spočívá v posunu každého
znaku zprávy o náhodně zvolený počet míst v abecedě. To se prakticky rovná náhradě zcela
náhodným písmenem a na tomto faktu je založen důkaz, že Vernamova šifra je v principu
nerozluštitelná. |
Hašovací funkce | Mám vstupní řetězec. Hašovací funkce jej převede na řetězec pevné délky. Hašovací funkce je
jednosměrná; převádí libovolný vstupní řetězec na otisk pevné délky.
Užití v kryptografii: ověřování hesla, ověření identity zpráv a souborů, generování a ověření
podpisů |
Integrita zprávy | Porovnávají se otisky (hashe) dokumentů.
Alice a Bob mají nějaké sdílené tajemství (společný klíč či heslo). Když se spočte hash, hash se počítá také z toho sdíleného tajemství - vytváří se otisk či MAC (kód pro ověření zprávy, kód pro ochranu integrity). Pokud sdílené tajemství nemá někdo další, tak je to odolné vůči útokům MitM.
Dalšími řešeními v rámci symetrického šifrování jsou digitální podpis či
AEAD. |
Přenos zašifrované zprávy | ● Jak poznat, že cestou nedošlo k chybě (část se nepřepsala)?
● Jak poznat, že se nepromíchaly bloky?
● Jak poznat, že se přenesla cela?
● Jak poznat, že část nebyla zaměněna?
● Jak poznat, že ji poslala oprávněná osoba?
Tyhle otázky řeší MAC - Message Authentication Code (kód pro ověření zprávy, kód pro
ochranu integrity). |
AEAD | (Authenticated encryption with associated data)
● současně se šifruje a počítá se MAC
● bezpečnější než kombinace šifra+MAC
● v rámci TLS 1.3 mohou být pouze AEAD šifry.
Autentizované šifrování je v kryptografii označení takového postupu, při kterém je obsah
zároveň šifrován a zároveň autentizován. Daný postup tedy uživateli zaručuje důvěrnost zprávy,
integritu zprávy i autentizaci zprávy. |