Šifrování dat v klidu a při přenosu v cloudu: zajištění důvěrnosti

Šifrování dat v klidu a při přenosu v cloudu: Zajištění důvěrnosti

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).
  • Režimy AEAD: 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).
  • Kryptografická agilita: 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; zmírnění rizik pomocí silného šifrování a politik KMS.
  • Škodlivý insider: privilegovaný administrátor u poskytovatele; zmírnění rizik pomocí HSM, klíčů spravovaných zákazníkem (customer-managed keys), mTLS a odůvodnění přístupu ke klíčům (key access justifications).
  • Útoky na síť: MITM, downgrade na slabé šifry; zmírnění rizik pomocí TLS 1.2+/1.3, přísně nastavených sad šifer a PFS.
  • Ztráta médií / snímků: odcizený disk, výpis zálohy; zmírnění rizik pomocí TDE, FDE a kryptografického vymazání (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. Upřednostňovat TLS 1.3, PFS (ECDHE), AEAD (AES-GCM/ChaCha20-Poly1305), HSTS a OCSP stapling.
  • mTLS: vzájemná autentizace klienta a serveru pomocí certifikátů; klíčové pro komunikaci mezi stroji a service mesh (Istio/Linkerd).
  • QUIC/TLS 1.3: šifrování přes UDP, rychlejší navazování spojení a vyšší odolnost vůči ztrátám paketů; používá moderní režimy AEAD.
  • IPsec / WireGuard: síťové tunely pro propojení VPC–VPC a místní infrastruktury; chrání i nešifrované aplikační protokoly.
  • E-mail a zasílání zpráv: SMTPS/STARTTLS, MTA-STS, DANE, S/MIME nebo OpenPGP pro scénáře šifrování typu end-to-end.

Š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.
  • Šifrování na úrovni souborů/svazků: EFS, EBS, trvalé svazky; běžná volba pro virtuální počítače a kontejnery.
  • Šifrování na úrovni aplikace: data se šifrují už v aplikaci (CSE – client-side encryption); zajišťuje šifrování typu end-to-end, ale správa klíčů je složitější.
  • TDE pro databáze: transparentní šifrování dat v databázi (rozšíření PostgreSQL, MySQL, MS SQL, Oracle); často v kombinaci s rotací klíčů (key rotation) a hierarchií klíčů (key hierarchy).
  • Objektová úložiště: šifrování na straně serveru (SSE), obálkové šifrování, zásady bucketů a výchozí šifrování (default encryption).

Správa klíčů: KMS, HSM a hierarchie klíčů

  • KMS: spravuje klíče, rotace, audit, zásady IAM a API pro kryptografické operace; obvykle odděluje KEK/CMK a DEK.
  • HSM: hardwarová ochrana klíčů a generování entropie; zajišťuje, že materiál klíče (key material) neopouští zabezpečený obvod.
  • Hierarchie klíčů: hlavní klíč (Master key, KEK/CMK) šifruje datové klíče (DEK); DEK šifruje datový obsah (envelope encryption).
  • BYOK/HYOK: přinést si vlastní klíč / ponechat si vlastní klíč; vyšší míra kontroly, ale složitější provoz a větší odpovědnost.
  • Rotace klíčů: pravidelná (časová) i spouštěná událostmi; opětovné šifrování nebo verzování klíčů (key versioning) s postupnou migrací.
  • Zásady přístupu: minimální oprávnění (least privilege), udělení oprávnění při použití (grant-on-use), schvalování žádostí o dešifrování, oprávnění udělovaná just-in-time.

Obálkové (envelope) šifrování a datové klíče

Obálkové šifrování zvyšuje škálovatelnost: aplikace vygeneruje jednorázový DEK (např. AES-256-GCM) pro konkrétní objekt, DEK zašifruje pomocí CMK v KMS a uloží jej společně se šifrovanými daty. Při čtení aplikace požádá KMS o dešifrování DEK a data rozšifruje lokálně. Auditní logy KMS umožňují sledovat přístupy k datům.

Šifrování v objektových úložištích

  • SSE-Provider: klíče spravuje poskytovatel; nejjednodušší a vhodné jako základní úroveň ochrany.
  • SSE-KMS (CMEK/CMK): klíče spravované zákazníkem v KMS; detailní kontrola, audit, rotace a odůvodnění přístupu ke klíčům (key access justification).
  • SSE-C / CSEK: zákazník dodává vlastní klíč pro každý objekt; maximální kontrola, vyšší provozní náročnost.
  • Šifrování na straně klienta (CSE): šifrování na klientovi pomocí klíčů uložených mimo cloud; šifrování typu end-to-end a minimální míra důvěry 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 ani data zpřístupněná nad databází.
  • Šifrování na úrovni polí: šifrování citlivých sloupců (PII, tajemství); vyžaduje pečlivé indexování a práci s dotazy (deterministické vs. náhodné).
  • FPE a tokenizace: šifrování zachovávající formát (format-preserving encryption) a nahrazení hodnot tokeny; vhodné pro platební a zastaralé systémy.
  • Správa tajemství: trezory tajemství (hesla k databázím, klíče API); dynamická pověření, krátká životnost, mTLS k trezoru.

Konfigurace TLS: praktické zásady

  • Vynutit TLS 1.2+ (upřednostňovat 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 se zásadami identity (SPIFFE/SPIRE).

Důvěrné výpočty a šifrování v paměti

Confidential Computing (TEE – Trusted Execution Environment) chrání data při zpracování 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žňuje vydávat klíče pouze důvěryhodnému běhovému prostředí.

Logování, audit a detekce anomálií

  • Logy KMS/auditu: každé použití klíče musí být zaznamenáno, včetně důvodu a identity volajícího.
  • Integrace SIEM/SOAR: korelace neobvyklých dešifrování, geografických odchylek a atypických objemů.
  • DLP a klasifikace dat: automatické zásady šifrování pro nově vzniklá data podle štítků citlivosti.

Výkon, latence a provozní aspekty

  • Hardwarová akcelerace: využití AES-NI/ARMv8 Crypto Extensions, specializovaných síťových karet a terminátorů TLS.
  • Ukládání DEK do mezipaměti a klienti Tink/KMS: minimalizace volání KMS, opětovné použití key-handle v bezpečných mezích.
  • Řízení zpětného tlaku a škálování: plán pro špičky provozu KMS, limity rychlosti (rate-limits) a jističe (circuit breakers).

Připravenost na postkvantovou kryptografii a kryptografická agilita

  • Postkvantové protokoly: testování hybridních navazování spojení TLS (ECDHE + postkvantový KEM) a sledování standardizace.
  • Abstrakce kryptografických primitiv: používat knihovny, které umožňují snadnou změnu algoritmů bez refaktoringu aplikace.
  • Inventarizace kryptografie: katalog šifer a klíčů, dob jejich životnosti a plán migrace (algoritmy, délky klíčů, certifikáty).

Bezpečnostní životní cyklus klíčů a scénáře rotace

  1. Generování: v HSM/KMS s kvalitní entropií, oddělené role pro správce klíčů (key custodians).
  2. Distribuce: pouze přes zabezpečené kanály, ideálně aplikacemi bez přímého přístupu ke klíčům (key-less), které volají API KMS.
  3. Používání a monitorování: princip minimálních oprávnění, schvalování citlivých operací, detekce anomálií.
  4. Rotace: pravidelné verzování (versioning), opětovné šifrování na pozadí, testy kompatibility a plán návratu.
  5. Odvolání a skartace: kryptografické vymazání (crypto-erasure) — zničení klíče učiní data nečitelnými; ověřená likvidace záloh a snímků.

Tabulka: volba šifrování podle případu použití

Případ použití 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 volání KMS, výchozí šifrování
Relační databáze TDE + AEAD na úrovni sloupců Klíče databáze v KMS/HSM Oddělit klíče pro TDE a aplikační data
Zálohy a snímky FDE/TDE + DEK pro každý soubor Rotace při exportu mimo lokalitu Kryptografické vymazání jako součást DR
Propojení VPC–místní infrastruktura IPsec / WireGuard Automatizace výměny klíčů Redundance tunelů, IKEv2
Citlivé pole PII AEAD / FPE na úrovni polí DEK pro každého tenanta/záznam Deterministický režim pro vyhledávání

Procesní a compliance aspekty

  • Klasifikace dat: určuje povinnosti v oblasti šifrování a zásady uchovávání.
  • IAM a SoD: oddělení správy klíčů od provozu systémů, proces nouzového přístupu (break-glass) s auditní stopou.
  • Testy a validace: penetrační testy, kryptografická revize, validace modulů podle FIPS 140-3, kontrola chyb implementace (opakované použití nonce).
  • BCM/DR: zahrnout klíče do plánů obnovy, bezpečná strategie úschovy a dostupnost KMS/HSM napříč regiony.

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é správu nonce automatizují.
  • Ukládání klíčů v kódu nebo proměnných prostředí: místo toho používat trezor tajemství a KMS.
  • Nešifrovaný interní provoz: předpokládané „důvěryhodné“ sítě neexistují; zavést mTLS.
  • Klíče a certifikáty bez rotace: zavést automatizaci a metriky expirace.
  • Chybná konfigurace S3/GCS/Azure Storage: povolit výchozí SSE, blokovat veřejné ACL (public ACL), používat OPA a zásady jako kód (Policies-as-Code).

Referenční implementační postup (na vysoké úrovni)

  1. Inventarizace dat, klasifikace a mapování toků (diagramy datových toků).
  2. Návrh kryptografických zón: při přenosu (TLS/mTLS), v klidu (SSE/TDE/FDE), na úrovni aplikace (AEAD).
  3. Zřízení KMS/HSM, hierarchie klíčů, zásad a auditních logů.
  4. Integrace s CI/CD: ověřování certifikátů, skenování konfigurací, testy kryptografických parametrů.
  5. Provoz: rotace, monitorování, anomálie, cvičení obnovy po havárii a testy kryptografického vymazání.

Závěr

Efektivní šifrování v cloudu vyžaduje kombinaci správně zvolených algoritmů, robustní správy klíčů a disciplinované provozní praxe. Základem je přístup defense-in-depth: šifrovat data v každé fázi jejich životního cyklu, co nejméně důvěřovat infrastruktuře, automatizovat rotaci a audit a udržovat kryptografickou agilitu pro budoucnost (včetně postkvantových hrozeb). Takové nasazení poskytuje nejen technickou ochranu, ale i prokazatelnou důvěryhodnost vůči zákazníkům, auditorům a regulátorům.