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 kamenem bezpečnosti v cloudu. Snižuje dopady případných úniků, zvyšuje odolnost vůči interním i externím hrozbám a pomáhá plnit regulatorní požadavky. V prostředí cloudu, kde je infrastruktura sdílená a dynamická, navíc plní roli technického nástroje k oddělení povinností (separation of duties) mezi poskytovatelem a zákazníkem.
Základní pojmy a principy kryptografie
- Symetrická kryptografie: používá stejný klíč pro šifrování i dešifrování (např. AES). Vysoce efektivní, ale vyžaduje pečlivou správu klíčů.
- Asymetrická kryptografie: využívá pár klíčů (veřejný/soukromý) pro bezpečnou výměnu klíčů a digitální podpisy (RSA, ECDSA, Ed25519).
- AEAD režimy: kombinují zabezpečení šifrování a autentizace (např. AES-GCM, ChaCha20-Poly1305); zabraňují neoprávněným změnám dat.
- PFS (Perfect Forward Secrecy): zajišťuje, že kompromitace dlouhodobého klíče neumožní zpětné odhalení komunikace (např. ECDHE).
- Crypto-agility: schopnost rychle měnit kryptografické algoritmy a parametry v případě nových zranitelností či změněných požadavků.
Modely hrozeb v cloudu a dopady na šifrování
- Exfiltrace dat: napadení účtu, nesprávné IAM politiky, zneužití API; mitigace prostřednictvím silného šifrování a politik KMS.
- Malicious insider: privilegovaný administrátor u poskytovatele; mitigace pomocí HSM, customer-managed keys, mTLS a potvrzení přístupu k klíčům (key access justifications).
- Útoky na síť: MITM, downgrade na slabé šifry; mitigace TLS 1.2+/1.3, striktní výběr cipher-suites a využití PFS.
- Ztráta médií / snapshotů: odcizený disk, zálohový dump; mitigace Transparentní datovou šifrou (TDE), FDE a kryptografickou skartací (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. Doporučuje se preferovat TLS 1.3 s PFS (ECDHE), AEAD režimy (AES-GCM/ChaCha20-Poly1305), HSTS a OCSP stapling.
- mTLS: vzájemná autentizace klient–server na základě certifikátů; klíčová technologie pro stroj-stroj komunikaci a service mesh (Istio, Linkerd).
- QUIC/TLS 1.3: šifrování nad UDP protokolem, nabízí rychlejší handshaky a lepší odolnost proti ztrátě paketů; využívá moderní AEAD algoritmy.
- IPsec / WireGuard: síťové tunely pro propojení VPC-to-VPC a on-premises sítí; zajišťují ochranu i pro nešifrované aplikační protokoly.
- Pošta a messaging: SMTPS/STARTTLS, MTA-STS, DANE, S/MIME nebo OpenPGP pro end-to-end šifrování.
Šifrování dat v klidu: vrstvy a přístupy
- Full-Disk Encryption (FDE): šifrování celého média (např. LUKS); jednoduché řešení, ale bez granulární kontroly přístupu k souborům.
- Šifrování na úrovni souborů/oddílů: systémy jako EFS, EBS, persistent volumes; běžně používané u VM a kontejnerů.
- Šifrování na aplikační úrovni: data jsou šifrována přímo v aplikaci (CSE – client-side encryption); zajišťuje end-to-end ochranu, ale správa klíčů je komplikovanější.
- TDE pro databáze: Transparent Data Encryption v databázích (PostgreSQL rozšíření, MySQL, MS SQL, Oracle); často doprovázena rotací klíčů a hierarchií klíčů.
- Objektová úložiště: šifrování na straně serveru (SSE), envelope šifrování, politiky bucketů a implicitní šifrování (default encryption).
Správa klíčů: KMS, HSM a hierarchie klíčů
- KMS: správa klíčů, jejich rotace, audit, IAM politiky a API pro kryptografické operace; obvykle používá oddělení klíčů ke krytí klíčů (KEK/CMK) a datových šifrovacích klíčů (DEK).
- HSM: hardwarová ochrana klíčů a generování entropie; zajišťuje, že kryptografický materiál neopouští bezpečný obvod.
- Hierarchie klíčů: Master key (KEK/CMK) šifruje datové klíče (DEK), které šifrují vlastní data (envelope encryption).
- BYOK/HYOK: přines si vlastní klíč / drž si vlastní klíč; umožňuje větší kontrolu, ale přináší složitější provozní odpovědnost.
- Rotace klíčů: pravidelná (časová) a na základě událostí; zahrnuje re-encrypt nebo správu verzí klíčů s postupnou migrací.
- Politiky přístupu: princip minimálních oprávnění (least privilege), přidělování oprávnění při využití (grant-on-use), schvalování žádostí o dešifrování a oprávnění typu just-in-time.
Obálkové (envelope) šifrování a datové klíče
Envelope šifrování zvyšuje škálovatelnost: aplikace generuje jednorázový datový klíč (DEK, např. AES-256-GCM) pro konkrétní objekt, DEK je zašifrován hlavním klíčem (CMK) spravovaným v KMS a uložen spolu se zašifrovanými daty. Při čtení aplikace požádá KMS o dešifrování DEK a následně rozšifruje data lokálně. Auditní logy z KMS poskytují přehled o přístupech k datům.
Šifrování v objektových úložištích
- SSE-Provider: správa klíčů je v rukou poskytovatele; nejjednodušší a vhodná základní volba.
- SSE-KMS (CMEK/CMK): klíče jsou řízeny zákazníkem v KMS; umožňuje jemnozrnnou kontrolu, audit, rotaci a potvrzení přístupu (key access justification).
- SSE-C / CSEK: zákazník poskytuje vlastní klíč pro každý objekt; maximální kontrola, ale vyšší operační náročnost.
- Client-Side Encryption (CSE): šifrování probíhá na straně klienta s klíči mimo cloudové prostředí; zajišťuje end-to-end ochranu s minimální důvěrou v poskytovatele.
Databáze, aplikační vrstvy a selektivní šifrování
- TDE: chrání uložená data i zálohy; nezajišťuje ochranu dat v operační paměti ani nad databází.
- Šifrování na úrovni polí: šifrování citlivých sloupců (např. PII, tajemství); vyžaduje pečlivou indexaci a práci s dotazy (deterministické vs. randomizované šifrování).
- FPE a tokenizace: format-preserving encryption a náhrada hodnot za tokeny; vhodné pro platební a starší systémy.
- Správa tajemství: trezory pro uchování hesel databází, API klíčů; zahrnuje dynamická pověření, krátkou životnost a mTLS přístup k trezoru.
Konfigurace TLS: praktické zásady
- Vynutit použití TLS 1.2 a vyšších verzí, preferovat TLS 1.3, zakázat zastaralé šifry (RC4, 3DES) a protokoly (SSLv3, TLS 1.0/1.1).
- Používat AEAD režimy (AES-GCM, ChaCha20-Poly1305) a křivky X25519/P-256 pro ECDHE.
- Automatizovat vydávání a rotaci certifikátů (např. pomocí ACME), aktivovat HSTS, ALPN (HTTP/2/3), SNI a OCSP stapling.
- Pro interní služby zavést vzájemnou autentizaci (mTLS) a service mesh s politikami identit (SPIFFE/SPIRE).
Konfidenční výpočty a šifrování v paměti
Confidential Computing (TEE – Trusted Execution Environment) chrání data během zpracování pomocí hardwarových enkláv (např. AMD SEV-SNP, Intel TDX). Aplikace běží v izolovaném prostředí, přičemž klíče i data jsou neviditelné hypervizoru i administrátorům. Integrace s atestací umožní vydat klíče pouze důvěryhodnému runtime prostředí.
Logování, audit a detekce anomálií
- KMS/auditní logy: každé použití klíče musí být logováno včetně důvodu a identity volajícího.
- Integrace SIEM/SOAR: korelace anomálních dešifrování, geolokačních odchylek a neobvyklých objemů dat.
- DLP a klasifikace dat: automatizované šifrovací politiky pro nově vzniklá data na základě citlivostních štítků.
Výkon, latence a provozní aspekty
- Offload: využití instrukčních sad AES-NI/ARMv8 Crypto Extensions, specializovaných síťových karet a TLS terminátorů.
- Cache DEK a klienti Tink/KMS: minimalizace volání na KMS, opětovné používání identifikátorů klíčů (key-handle) v rámci bezpečnostních limitů.
- Řízení zátěže a škálování: plánování špiček provozu KMS, limity rychlosti (rate-limits) a pojistky (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 těchto technologií.
- Abstrakce kryptografických primitiv: používání knihoven umožňujících snadný přechod mezi algoritmy bez nutnosti refaktoringu aplikace.
- Inventarizace kryptografie: katalogizace používaných šifer a klíčů, sledování životnosti a plán migrace (algoritmy, délky klíčů, certifikáty).
Bezpečnostní životní cyklus klíčů a scénáře rotace
- Generování: v HSM/KMS s kvalitní entropií, s jasným rozdělením rolí správců klíčů (key custodians).
- Distribuce: pouze zabezpečenými kanály, ideálně pomocí key-less aplikací s voláním KMS API.
- Užívání a monitorování: princip minimálních oprávnění, schvalování citlivých operací a detekce anomálií.
- Rotace: pravidelné verzování klíčů, re-encrypt na pozadí, testy kompatibility a plán návratu k předchozím verzím.
- Revokace a skartace: kryptografická skartace (crypto-erasure) – zničení klíče činí data nedostupná, včetně ověřené likvidace záloh a snapshotů.
Tabulka: volba šifrování podle použitého scénáře
| 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í, defaultní šifrování |
| Relační databáze | TDE + AEAD na úrovni sloupců | 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 klíčů při exportu mimo zařízení | Kryptografická skartace jako součást obnovy po havárii |
| Propojení VPC–on-prem | IPsec / WireGuard | Automatizace výměny klíčů | Redundance tunelů, IKEv2 |
| Citlivé PII pole | AEAD na úrovni polí / FPE | DEK per tenant/record | Deterministický režim pro vyhledávání |
Procesní a compliance aspekty
- Klasifikace dat: určuje povinnost šifrování a zásady retence dat.
- IAM a SoD: oddělení správy klíčů od provozu systémů, zavedení break-glass procesů s auditní stopou.
- Testy a validace: penetrační testy,