Stewdent.eu
▾

Symetrické šifrovanie

Zisti, ako funguje symetrické šifrovanie, čo je šifrovací kľúč a prečo sa AES považuje za bezpečný štandard.

Posledná aktualizácia: 20. januára 2026

★★★☆☆ Stupeň 3computingDátaencryptionsymmetricAEScryptographykey4 min čítania

Nahlásiť chybu

Caesarova šifra je historicky zaujímavá, ale pre skutočnú ochranu dát dnes nepostačuje. Moderné symetrické šifrovanie používa matematicky zložité algoritmy a kľúče dlhé stovky bitov — prelomenie by trvalo dlhšie, ako je vek vesmíru.

Čo je symetrické šifrovanie?

Pri symetrickom šifrovaní sa na zašifrovanie aj dešifrovanie používa ten istý kľúč. Obe strany komunikácie musia tento kľúč poznať vopred.

Otvorený text  →  [Šifrovanie + kľúč]  →  Šifrovaný text
Šifrovaný text →  [Dešifrovanie + kľúč]  →  Otvorený text
Poznámka

Slovo „symetrické" pochádza z toho, že rovnaký kľúč sa používa na oboch stranách — šifrovanie aj dešifrovanie sú symetrickými operáciami s rovnakým kľúčom.

Šifrovací kľúč

Kľúč je tajná informácia, ktorú musia poznať obe strany, ale nikto iný. Bezpečnosť symetrického šifrovania závisí od:

  1. Dĺžky kľúča — dlhší kľúč = bezpečnejšie šifrovanie
  2. Náhodnosti kľúča — kľúč musí byť skutočne náhodný
  3. Utajenia kľúča — ak kľúč unikne, šifrovanie je prelomené
Dĺžka kľúčaPočet možnostíBezpečnosť
8 bitov256Veľmi slabé (zlomok sekundy)
56 bitov~72 biliónovPrelomiteľné (DES — zastarané)
128 bitov~3,4 × 10³⁸Bezpečné (AES-128)
256 bitov~1,2 × 10⁷⁷Mimoriadne bezpečné (AES-256)

AES — Advanced Encryption Standard

AES (Advanced Encryption Standard) je dnes najpoužívanejší symetrický šifrovací algoritmus. Bol štandardizovaný americkým NIST v roku 2001 a nahradil zastaraný DES.

Vlastnosti AES:

  • Kľúče dlhé 128, 192 alebo 256 bitov
  • Šifruje dáta po blokoch 128 bitov
  • Vykonáva 10–14 kôl matematických transformácií
  • Používajú ho banky, armády, vládne inštitúcie aj bežné aplikácie
# Ukážka AES šifrovania (knižnica pycryptodome)
from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
import base64

# Vygenerovanie náhodného 256-bitového kľúča
kluc = get_random_bytes(32)  # 32 bajtov = 256 bitov

# Šifrovanie
sifra = AES.new(kluc, AES.MODE_EAX)
zasifrovane, tag = sifra.encrypt_and_digest(b"Tajná správa!")

print(f"Kľúč (hex): {kluc.hex()}")
print(f"Zašifrované (hex): {zasifrovane.hex()}")

# Dešifrovanie
sifra2 = AES.new(kluc, AES.MODE_EAX, sifra.nonce)
otvoreny_text = sifra2.decrypt(zasifrovane)
print(f"Dešifrované: {otvoreny_text.decode()}")
Tip

AES-256 je tak bezpečný, že ani všetky počítače na svete by ho nedokázali prelomiť hrubou silou. Preto sa šifrovania zvyčajne útočí na iné časti systému — na slabé heslá, chyby v implementácii alebo sociálne inžinierstvo.

Problém výmeny kľúča

Hlavnou slabinou symetrického šifrovania je bezpečná výmena kľúča:

  • Alice chce poslať Bobovi zašifrovanú správu.
  • Najskôr mu musí poslať kľúč.
  • Ale ako mu pošle kľúč bezpečne, ak ešte nemajú šifrovaný kanál?

Toto sa nazýva problém výmeny kľúča a riešia ho asymetrické šifrovacie protokoly (napr. RSA alebo Diffie-Hellman), ktoré sa v praxi používajú spolu so symetrickým šifrovaním.

Kde sa symetrické šifrovanie používa?

  • Šifrovanie disku: BitLocker (Windows), FileVault (macOS) používajú AES
  • VPN siete: Šifrujú všetku komunikáciu medzi zariadením a serverom
  • HTTPS: Po výmene kľúčov sa komunikácia šifruje symetricky (AES)
  • ZIP s heslom: Používa AES-256
Upozornenie

Nikdy nevymýšľaj vlastný šifrovací algoritmus — takmer určite bude mať bezpečnostné slabiny. Vždy používaj overené štandardy ako AES. Odborníci strávili desaťročia testovaním a zdokonaľovaním týchto algoritmov.

Cvičné príklady

Prečo je AES-256 bezpečnejší ako šifra s 56-bitovým kľúčom? Koľkokrát viac možností má kľúč AES-128 oproti 56-bitovému kľúču?

Zobraziť odpoveď
AES-128 má 2¹²⁸ možností, 56-bitový kľúč má 2⁵⁶ možností. Rozdiel: 2¹²⁸ ÷ 2⁵⁶ = 2⁷² ≈ 4,7 × 10²¹ — to je 4,7 trilión-krát viac možností, takže hrubá sila je nepraktická.

Aký je problém výmeny kľúča pri symetrickom šifrovaní a prečo ho nemožno vyriešiť jednoducho poslaním kľúča e-mailom?

Zobraziť odpoveď
Problém výmeny kľúča spočíva v tom, že kľúč musíš odoslať bezpečne, ale na bezpečné odoslanie by si potreboval kľúč. Zaslanie kľúča e-mailom je nebezpečné, pretože e-mail je nešifrovaný a útočník ho môže zachytiť. Riešením je asymetrické šifrovanie (verejný/súkromný kľúč).