Crittografia envelope e data key
Scopra come KMS protegge una data key che cifra i Suoi dati effettivi.
Crittografia envelope e data key è una lezione AWS Security Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento AWS Security Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso AWS Security Academy include 4 lezioni in totale.
Il problema dei dati di grandi dimensioni
KMS può crittografare direttamente solo payload di piccole dimensioni (circa 4 KB). I dati reali, i file, i volumi e i database sono molto più grandi.
La crittografia envelope risolve il problema: si crittografano i dati di grandi dimensioni con una data key, quindi si crittografa la data key con una chiave KMS. È così che AWS esegue la crittografia su larga scala.
Che cos'è una data key
Una data key è una normale chiave di crittografia (come AES-256) generata da KMS per crittografare i dati effettivi.
- A differenza delle chiavi KMS, il testo in chiaro della data key esce temporaneamente da KMS per poter essere utilizzato.
- KMS restituisce anche una copia crittografata della data key.
GenerateDataKey
Si chiama GenerateDataKey, specificando una chiave KMS. KMS restituisce:
- Una data key in testo in chiaro per crittografare immediatamente i dati.
- Una data key crittografata (wrappata dalla chiave KMS) da archiviare insieme al ciphertext.
Quindi si elimina dalla memoria la data key in testo in chiaro.
aws kms generate-data-key \
--key-id alias/my-app-key \
--key-spec AES_256Il modello envelope
Il flusso è il seguente:
- Crittografare i dati con la data key in testo in chiaro.
- Archiviare la data key crittografata accanto al ciphertext.
- Eliminare la data key in testo in chiaro.
La data key si trova "in un involucro" sigillato dalla chiave KMS, da cui deriva il nome.
Decrittografare con l'envelope
Per decrittografare, si inverte il processo:
- Inviare la data key crittografata a KMS tramite Decrypt.
- KMS restituisce la data key in testo in chiaro.
- Utilizzarla per decrittografare i dati, quindi eliminarla.
Solo KMS può aprire l'involucro della data key, quindi l'accesso alla chiave KMS controlla ogni aspetto.
Perché la crittografia envelope è utile
La crittografia envelope offre il meglio di entrambi gli approcci:
- Crittografia locale rapida dei dati di grandi dimensioni con la data key.
- Un forte controllo centralizzato, perché la data key è inutilizzabile senza la chiave KMS.
Inoltre si riduce il numero di chiamate KMS, poiché una singola data key può proteggere grandi quantità di dati.
Memorizzazione nella cache delle data key
Per i carichi di lavoro ad alto volume, AWS Encryption SDK può memorizzare nella cache le data key per riutilizzarle in numerose operazioni di crittografia.
Questo riduce i costi e la latenza delle richieste KMS, con limiti configurabili per evitare che una chiave memorizzata nella cache venga riutilizzata troppo a lungo o su un ambito troppo ampio, bilanciando prestazioni e sicurezza.
Come i servizi lo usano internamente
Quando abilita la crittografia su S3, EBS o RDS, AWS esegue automaticamente la crittografia envelope per Lei.
Il servizio richiede una data key dalla Sua chiave KMS, crittografa i dati e archivia la data key wrappata. Lei deve solo scegliere la chiave KMS; il funzionamento dell'envelope è automatico.
AWS Encryption SDK
AWS Encryption SDK è una libreria lato client che implementa correttamente la crittografia envelope nelle Sue applicazioni.
Gestisce la generazione della data key, il contesto di crittografia e l'archiviazione della chiave wrappata insieme al ciphertext, così non deve implementare personalmente la complessa logica crittografica soggetta a errori.
GenerateDataKeyWithoutPlaintext
Una variante, GenerateDataKeyWithoutPlaintext, restituisce solo la data key crittografata.
Viene utilizzata quando si desidera generare e archiviare una data key ora, per decrittografarla solo in seguito, al momento dell'utilizzo. In questo modo la chiave in testo in chiaro rimane fuori dalla memoria finché non è effettivamente necessaria, riducendo l'esposizione delle chiavi predisposte in anticipo.
Perché è importante per l'esame
La crittografia envelope spiega perché KMS è scalabile e come una singola chiave KMS possa proteggere terabyte di dati.
Si aspetti domande sul flusso di GenerateDataKey, su ciò che esce da KMS (la data key, temporaneamente) e sul motivo per cui il controllo della chiave KMS controlla tutti i dati derivati.
Verifica rapida
Verifichi il flusso dell'envelope.
Riepilogo
Ha imparato la crittografia envelope.
- GenerateDataKey restituisce una data key in testo in chiaro e una crittografata.
- Crittografare i dati localmente con la chiave in testo in chiaro, archiviare la chiave wrappata ed eliminare quella in testo in chiaro.
- Solo la chiave KMS può aprire l'involucro della data key, garantendo un controllo centralizzato su tutti i dati.
Domande Frequenti
La lezione «Crittografia envelope e data key» è gratuita?
Sì — il testo completo di «Crittografia envelope e data key» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso AWS Security Academy, passa a CoddyKit PRO. Il corso AWS Security Academy include 4 lezioni in totale.
Cosa imparerò in «Crittografia envelope e data key»?
Scopra come KMS protegge una data key che cifra i Suoi dati effettivi. Eserciti AWS Security Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare AWS Security Academy?
Non è richiesta alcuna esperienza precedente. AWS Security Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Crittografia envelope e data key»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione AWS Security Academy?
Sì. Ogni lezione AWS Security Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Cosa sono e cosa fanno le chiavi KMS
- Chiavi simmetriche, asimmetriche e multi-regione
- Policy delle chiavi, grant e condizioni
- Crittografia envelope e data key