Proč šifrovat data v klidu a při přenosu
Šifrování dat v klidu (data at rest) a při přenosu (data in transit) je základním stavebním prvkem cloudové bezpečnosti. Zmírňuje dopady úniků, zvyšuje odolnost vůči interním i externím hrozbám a pomáhá plnit regulatorní požadavky. V cloudu, kde je infrastruktura sdílená a dynamická, navíc slouží jako technický prostředek k oddělení povinností (separation of duties) mezi poskytovatelem a zákazníkem.
Základní pojmy a principy kryptografie
- Symetrická kryptografie: stejný klíč pro šifrování i dešifrování (AES). Vysoký výkon, citlivost na správu klíčů.
- Asymetrická kryptografie: pár klíčů (veřejný/soukromý) pro výměnu klíčů a digitální podpisy (RSA, ECDSA, Ed25519).
- AEAD režimy: kombinují šifrování a autentizaci (AES-GCM, ChaCha20-Poly1305); chrání proti změnám dat.
- PFS (Perfect Forward Secrecy): zajišťuje, že kompromitace dlouhodobého klíče neodhalí historickou komunikaci (ECDHE).
- Crypto-agility: schopnost rychle měnit algoritmy a parametry při nových zranitelnostech nebo požadavcích.
Modely hrozeb v cloudu a dopady na šifrování
- Exfiltrace dat: prolomení účtu, chybné politiky IAM, zneužití API; mitigace silným šifrováním a KMS politikami.
- Malicious insider: privilegovaný administrátor u poskytovatele; mitigace HSM, customer-managed keys, mTLS a key access justifications.
- Útoky na síť: MITM, downgrade na slabé šifry; mitigace TLS 1.2+/1.3, striktní cifer-suites, PFS.
- Ztráta médií / snapshotů: odcizený disk, dump zálohy; mitigace TDE, FDE, kryptografická skartace (crypto-erasure).
Šifrování dat při přenosu: TLS, QUIC a síťové vrstvy
- TLS 1.2/1.3: standard pro HTTP(S), SMTP, LDAP, atd. Preferovat TLS 1.3, PFS (ECDHE), AEAD (AES-GCM/ChaCha20-Poly1305), HSTS a OCSP stapling.
- mTLS: vzájemná autentizace klient–server pomocí certifikátů; klíčové pro stroj-stroj provoz, service mesh (Istio/Linkerd).
- QUIC/TLS 1.3: šifrování na UDP, rychlejší handshaky, lepší odolnost proti ztrátám paketů; používá moderní AEAD.
- IPsec / WireGuard: síťové tunely pro VPC-to-VPC a on-prem propojení; chrání i nešifrované aplikační protokoly.
- Mail a messaging: SMTPS/STARTTLS, MTA-STS, DANE, S/MIME nebo OpenPGP pro end-to-end scénáře.
Šifrování dat v klidu: vrstvy a přístupy
- Full-Disk Encryption (FDE): šifrování celého média (např. LUKS); jednoduché, ale bez kontextové kontroly přístupu k souborům.
- File-/Volume-level: EFS, EBS, persistent volumes; běžná volba pro VM a kontejnery.
- Application-level: data jsou šifrována už v aplikaci (CSE – client-side encryption); poskytuje end-to-end, ale složitější klíčový management.
- TDE pro databáze: Transparent Data Encryption v DB (PostgreSQL rozšíření, MySQL, MS SQL, Oracle); často spolu s key rotation a key hierarchy.
- Objektová úložiště: server-side encryption (SSE), envelope šifrování, politiky bucketů a default encryption.
Správa klíčů: KMS, HSM a hierarchie klíčů
- KMS: spravuje klíče, rotace, audit, IAM politiky a API pro kryptografické operace; typicky oddělení KEK/CMK a DEK.
- HSM: hardwareová ochrana klíčů a generování entropie; zajišťuje, že key material neopouští bezpečný obvod.
- Hierarchie klíčů: Master key (KEK/CMK) šifruje datové klíče (DEK); DEK šifruje payload (envelope encryption).
- BYOK/HYOK: přines si vlastní klíč / drž si vlastní klíč; vyšší kontrola, ale složitější provoz a odpovědnost.
- Rotace klíčů: pravidelná (časová) a event-driven; re-encrypt nebo key versioning s postupnou migrací.
- Politiky přístupu: least privilege, grant-on-use, schvalování žádostí o dešifrování, just-in-time oprávnění.
Obálkové (envelope) šifrování a datové klíče
Envelope šifrování zvyšuje škálovatelnost: aplikace generuje jednorázový DEK (např. AES-256-GCM) pro konkrétní objekt, DEK zašifruje CMK v KMS a uloží spolu s ciphertextem. Při čtení aplikace požádá KMS o dešifrování DEK a data rozšifruje lokálně. Auditní logy z KMS poskytují dohled nad přístupy k datům.
Šifrování v objektových úložištích
- SSE-Provider: správa klíčů poskytovatelem; nejjednodušší, vhodná baseline.
- SSE-KMS (CMEK/CMK): klíče řízené zákazníkem v KMS; jemnozrnná kontrola, audit, rotace a key access justification.
- SSE-C / CSEK: zákazník poskytuje vlastní klíč per objekt; maximální kontrola, vyšší operační náročnost.
- Client-Side Encryption (CSE): šifrování na klientovi s klíči mimo cloud; end-to-end a minimální důvěra v poskytovatele.
Databáze, aplikační vrstvy a selektivní šifrování
- TDE: chrání uložená data a zálohy; nechrání data v paměti a nad databází.
- Field-level encryption: šifrování citlivých sloupců (PII, tajemství); vyžaduje careful indexaci a práci s dotazy (deterministic vs. randomized).
- FPE a tokenizace: format-preserving encryption a náhrada hodnot tokeny; vhodné pro platební a legacy systémy.
- Secrets management: trezory tajemství (DB hesla, API klíče); dynamická pověření, krátká životnost, mTLS k trezoru.
Konfigurace TLS: praktické zásady
- Vynutit TLS 1.2+ (preferovat 1.3), zakázat zastaralé šifry (RC4, 3DES) a protokoly (SSLv3, TLS 1.0/1.1).
- Používat AEAD (AES-GCM, ChaCha20-Poly1305) a křivky X25519/P-256 pro ECDHE.
- Automatizovat vydávání a rotaci certifikátů (ACME), zapnout HSTS, ALPN (HTTP/2/3), SNI a OCSP stapling.
- Pro interní služby zavést mTLS a service mesh s politikami identity (SPIFFE/SPIRE).
Konfidenční výpočty a šifrování v paměti
Confidential Computing (TEE – Trusted Execution Environment) chrání data v běhu pomocí hardwarových enkláv (např. AMD SEV-SNP, Intel TDX). Aplikace běží v izolovaném prostředí, klíče i data zůstávají neviditelné pro hypervizor i administrátory. Integrace s atestací umožní vydat klíče pouze důvěryhodnému runtime.
Logování, audit a detekce anomálií
- KMS/Audit logy: každé použití klíče musí být logováno, včetně důvodu a identity volajícího.
- SIEM/SOAR integrace: korelace anomálních dešifrování, geolokačních odchylek a atypických objemů.
- DLP a klasifikace dat: automatické politiky šifrování pro nově vzniklá data podle sensitivity labelů.
Výkon, latence a provozní aspekty
- Offload: využití AES-NI/ARMv8 Crypto Extensions, specializovaných NIC a terminátorů TLS.
- Cache DEK a Tink/KMS klienti: minimalizace volání na KMS, key-handle reuse v mezích bezpečnosti.
- Back-pressure a škálování: plán pro špičky provozu KMS, rate-limits a circuit breakers.
Post-kvantová připravenost a kryptografická agilita
- PQ protokoly: testování hybridních TLS handshaků (ECDHE + post-kvantový KEM) a sledování standardizace.
- Abstrakce kryptografických primitiv: používat knihovny umožňující snadný přechod algoritmů bez refaktoringu aplikace.
- Inventarizace kryptografie: katalog šifer a klíčů, doby životnosti a plán migrace (algoritmy, klíčové délky, certifikáty).
Bezpečnostní životní cyklus klíčů a scénáře rotace
- Generování: v HSM/KMS s kvalitní entropií, oddělené role pro key custodians.
- Distribuce: pouze přes zabezpečené kanály, ideálně key-less aplikace s voláním KMS API.
- Užívání a monitorování: princip minimálních oprávnění, schvalování citlivých operací, detekce anomálií.
- Rotace: pravidelný versioning, re-encrypt na pozadí, testy kompatibility a rollback plán.
- Revokace a skartace: crypto-erasure (zničení klíče činí data nečitelné), ověřená likvidace záloh a snapshotů.
Tabulka: volba šifrování podle use-case
| Use-case | Doporučené šifrování | Správa klíčů | Poznámky |
|---|---|---|---|
| HTTP API mezi mikroslužbami | TLS 1.3 + mTLS, AEAD | PKI, automatická rotace certifikátů | Service mesh, PFS povinně |
| Objektové úložiště | SSE-KMS / CSE | KMS s CMEK, rotace CMK | Audit KMS volání, default encryption |
| Relační DB | TDE + column-level AEAD | DB klíče v KMS/HSM | Oddělit klíče pro TDE a aplikační data |
| Zálohy a snapshoty | FDE/TDE + DEK per soubor | Rotace při exportu off-site | Crypto-erasure jako součást DR |
| Propojení VPC–on-prem | IPsec / WireGuard | Automatizace výměny klíčů | Redundance tunelů, IKEv2 |
| Citlivé PII pole | Field-level AEAD / FPE | DEK per tenant/record | Deterministic režim pro vyhledávání |
Procesní a compliance aspekty
- Klasifikace dat: mapuje povinnosti šifrování a retenční politiky.
- IAM a SoD: oddělení správy klíčů od provozu systémů, break-glass proces s auditní stopou.
- Testy a validace: penetrační testy, kryptografické review, FIPS 140-3 validace modulů, kontrola implementačních chyb (nonce reuse).
- BCM/DR: zahrnout klíče do plánů obnovy, bezpečná escrow strategie a cross-region dostupnost KMS/HSM.
Nejčastější chyby a jak se jim vyhnout
- Špatná správa nonce/IV: opakované IV v AEAD vede ke ztrátě bezpečnosti; používat knihovny, které nonce řídí automaticky.
- Uložení klíčů v kódu nebo proměnných prostředí: místo toho použít trezor tajemství a KMS.
- Nešifrované interní provozy: předpokládané „důvěryhodné“ sítě neexistují; zavést mTLS.
- Nerotované klíče a certifikáty: zavést automatizaci a metriky expirací.
- Chybná konfigurace S3/GCS/Azure Storage: povolit default SSE, blokovat public ACL, aplikovat OPA/Policies-as-Code.
Referenční implementační postup (high-level)
- Inventarizace dat, klasifikace a mapování toků (data flow diagrams).
- Návrh kryptografických zón: in-transit (TLS/mTLS), at rest (SSE/TDE/FDE), application-level (AEAD).
- Zřízení KMS/HSM, klíčové hierarchie, politik a auditních logů.
- Integrace s CI/CD: ověřování certifikátů, skeny konfigurací, testy kryptografických parametrů.
- Provozní běh: rotace, monitoring, anomálie, DR cvičení a crypto-erasure testy.
Závěr
Efektivní šifrování v cloudu vyžaduje kombinaci správně zvolených algoritmů, robustního řízení klíčů a disciplinované provozní praxe. Základem je defense-in-depth přístup: šifrovat data v každé fázi jejich životního cyklu, minimálně důvěřovat infrastruktuře, automatizovat rotaci a audit a udržovat kryptografickou agilitu pro budoucnost (včetně post-kvantových hrozeb). Takové nasazení poskytuje nejen technickou ochranu, ale i průkaznou důvěryhodnost vůči zákazníkům, auditorům a regulatorům.