Obsah
Kryptografie
Kryptografie (z řeckého kryptós – „skrytý“ a gráphein – „psát“) je vědecká disciplína zabývající se zabezpečením informací prostřednictvím jejich utajení, ověřením integrity, autentizací původu zpráv a zajištěním důvěrnosti při přenosu nebo ukládání dat. Je základním pilířem kybernetické bezpečnosti a moderních informačních technologií.
Historie kryptografie
Kryptografie má kořeny v hluboké historii lidské komunikace. Již ve starověku se používaly různé šifrovací techniky k utajení válečných, politických či osobních zpráv.
- Starověk: Nejstarší známé metody zahrnují například Skytalé (Sparta, 5. století př. n. l.) – mechanické zařízení využívající pásku navinutou na dřevěný válec – nebo Caesarovu šifru, která posunuje písmena abecedy o pevně daný počet míst (např. o 3).
- Středověk a renesance: Rozvoj kryptoanalýzy (loupež šifer) vedl k vytváření sofistikovanějších šifer, jako je například Vigenèrova šifra (16. století), která používala klíčové slovo pro proměnný posun.
- Druhá světová válka: Kryptoanalýza hrála klíčovou roli – například dešifrování německého šifrovacího stroje Enigma v Bletchley Parku díky práci Alana Turninga a jeho týmu.
- Moderní éra: Od 70. let 20. století se kryptografie přesunula ze světa vojenské tajnosti do veřejné sféry. Vznik standardů jako DES (Data Encryption Standard, 1977) a později AES (Advanced Encryption Standard, 2001) položil základy moderní kryptografie.
Základní pojmy
- Šifrování (Encryption) – proces převodu otevřeného textu (plaintext) na šifrovaný text (ciphertext) pomocí algoritmu a klíče.
- Dešifrování (Decryption) – opačný proces: převod ciphertextu zpět na plaintext.
- Kryptografický algoritmus – matematický postup určující, jak probíhá šifrování a dešifrování.
- Klíč – tajná informace (číslo, řetězec, soubor), která řídí šifrovací/dešifrovací proces.
- Kryptoanalýza – věda o lomení šifer bez znalosti klíče.
- Kryptosystém – kompletní sada pravidel, algoritmů a protokolů pro zabezpečenou komunikaci.
Typy kryptografie
Symetrická kryptografie
U symetrické kryptografie se pro šifrování i dešifrování používá stejný klíč. Je rychlá a efektivní, ale vyžaduje bezpečný způsob sdílení klíče mezi komunikujícími stranami.
Příklady algoritmů:
- DES (Data Encryption Standard) – dnes považován za nebezpečný kvůli krátké délce klíče (56 bitů).
- 3DES – zpevněná verze DES používající tři průchody šifrováním.
- AES (Advanced Encryption Standard) – moderní standard, podporuje délky klíčů 128, 192 a 256 bitů. Široce používán v praxi (např. v TLS, diskovém šifrování).
- ChaCha20 – moderní streamovací šifra často používaná v mobilních prostředích a webových protokolech.
Asymetrická kryptografie
Asymetrická kryptografie (tzv. veřejná kryptografie) využívá dvojici klíčů: veřejný klíč (public key) a soukromý klíč (private key). Co je zašifrováno veřejným klíčem, lze dešifrovat pouze soukromým klíčem, a naopak.
Výhody:
- Žádná potřeba sdílení tajného klíče před komunikací.
- Možnost digitálního podpisu a ověření identity.
Nevýhody:
- Výpočetně náročnější než symetrické metody.
- Není vhodná pro šifrování velkých objemů dat.
Příklady algoritmů:
- RSA (Rivest–Shamir–Adleman) – založen na obtížnosti faktorizace velkých čísel.
- ECC (Elliptic Curve Cryptography) – využívá vlastnosti eliptických křivek; poskytuje stejnou bezpečnost při mnohem kratších klíčích než RSA.
- DSA (Digital Signature Algorithm) – zaměřen specificky na digitální podpisy.
Hašovací funkce
Kryptografická hašovací funkce převádí libovolně dlouhý vstup na pevně dlouhý řetězec znaků (tzv. hash nebo otisk). Je to jednosměrná funkce – z hashu nelze rekonstruovat původní vstup.
Vlastnosti bezpečné hašovací funkce:
- Deterministická: stejný vstup vždy dá stejný výstup.
- Odolnost vůči kolizím: velmi těžké najít dva různé vstupy se stejným hashem.
- Odolnost vůči preimage útokům: nelze najít vstup odpovídající danému hashi.
Příklady funkcí:
- MD5 – dnes považován za nebezpečný kvůli nalezeným kolizím.
- SHA-1 – oslaben, již nedoporučován pro bezpečnostní účely.
- SHA-2 (např. SHA-256, SHA-512) – současný standard používaný v TLS, digitálních certifikátech, blockchainu atd.
- SHA-3 – nový standard založený na jiném principu (sponge construction).
Aplikace kryptografie
Kryptografie je nedílnou součástí dnešní digitální společnosti. Mezi hlavní aplikace patří:
- Zabezpečená komunikace – protokoly jako TLS/SSL (používané v HTTPS) kombinují symetrickou a asymetrickou kryptografii pro zabezpečení webového provozu.
- Digitální podpisy – umožňují ověřit autenticitu a integritu dokumentu (např. ve finančních transakcích, softwarových aktualizacích).
- Šifrování disků – technologie jako BitLocker (Windows), FileVault (macOS) nebo LUKS (Linux) chrání data před fyzickým přístupem.
- Blockchain a kryptoměny – využívají kryptografii pro ověření transakcí, generování adres a zajištění integrity řetězce bloků.
- Autentizační protokoly – např. OAuth, Kerberos, nebo dvoufaktorová autentizace (2FA) často využívají kryptografické principy.
Post-kvantová kryptografie
S rozvojem kvantových počítačů hrozí, že některé dnešní kryptografické algoritmy (zejména RSA a ECC) mohou být prolomeny pomocí Shorova algoritmu. Proto se intenzivně vyvíjí tzv. post-kvantová kryptografie (Post-Quantum Cryptography, PQC), která by měla být odolná i vůči útokům kvantových systémů.
NIST (National Institute of Standards and Technology) aktuálně vybírá standardy pro post-kvantové algoritmy, mezi které patří například:
- CRYSTALS-Kyber (pro šifrování)
- CRYSTALS-Dilithium (pro digitální podpisy)
Bezpečnostní doporučení
- Nikdy nepoužívej zastaralé algoritmy (MD5, SHA-1, DES).
- Vždy používej dostatečně dlouhé klíče (např. RSA ≥ 3072 bitů, AES ≥ 128 bitů).
- Využívej ověřené kryptografické knihovny (např. OpenSSL, libsodium, Bouncy Castle) – neprogramuj vlastní šifry.
- Pravidelně aktualizuj systémy a certifikáty.
- Uchovávej soukromé klíče v bezpečném prostředí (HSM – Hardware Security Module).
Související pojmy
Reference
- Menezes, A. J., van Oorschot, P. C., & Vanstone, S. A. (1996). Handbook of Applied Cryptography. CRC Press.
- Schneier, B. (1996). Applied Cryptography: Protocols, Algorithms, and Source Code in C. Wiley.
- NIST. (2023). Post-Quantum Cryptography Standardization. https://csrc.nist.gov/projects/post-quantum-cryptography
- Stallings, W. (2021). Cryptography and Network Security: Principles and Practice. Pearson.
