Genera coppie di chiavi di dati - AWS Key Management Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Genera coppie di chiavi di dati

Una chiave asimmetrica rappresenta una coppia di KMS chiavi di dati. Le coppie di chiavi di dati sono chiavi di dati asimmetriche costituite da una chiave pubblica e una chiave privata correlate matematicamente. Sono progettati per l'uso nella crittografia e decrittografia lato client, nella firma e nella verifica all'esterno o per stabilire un segreto condiviso AWS KMS tra due peer.

A differenza delle coppie di chiavi di dati SSL generate da strumenti come Open, AWS KMS protegge la chiave privata in ogni coppia di chiavi di dati con una chiave di crittografia KMS simmetrica specificata AWS KMS dall'utente. Tuttavia, AWS KMS non archivia, gestisce o tiene traccia delle coppie di chiavi di dati né esegue operazioni crittografiche con coppie di chiavi di dati. È necessario utilizzare e gestire le coppie di chiavi di dati al di fuori di AWS KMS.

Creare una coppia di chiave di dati

Per creare una coppia di chiavi di dati, chiama le GenerateDataKeyPairWithoutPlaintextoperazioni GenerateDataKeyPairo. Specificate la KMSchiave di crittografia simmetrica che desiderate utilizzare per crittografare la chiave privata.

GenerateDataKeyPair restituisce una chiave pubblica di testo normale, una chiave privata di testo normale e una chiave privata crittografata. Utilizza questa operazione quando è necessaria una chiave privata di testo normale immediatamente, ad esempio per generare una firma digitale.

GenerateDataKeyPairWithoutPlaintext restituisce una chiave pubblica di testo normale e una chiave privata crittografata, ma non una chiave privata di testo normale. Utilizza questa operazione quando non è necessaria una chiave privata di testo normale, ad esempio quando si esegue la crittografia con una chiave pubblica. Successivamente, quando è necessaria una chiave privata di testo normale per decriptare i dati, è possibile chiamare l'operazione Decrittografa.

L'immagine seguente mostra l'operazione GenerateDataKeyPair. L'operazione GenerateDataKeyPairWithoutPlaintext omette la chiave privata di testo normale.

Generare una coppia di chiavi di dati

Come funzionano le operazioni crittografiche con coppie di chiavi di dati

I seguenti argomenti spiegano quali operazioni crittografiche è possibile eseguire con le coppie di chiavi di dati generate da un'GenerateDataKeyPairWithoutPlaintextoperazione GenerateDataKeyPairor e come funzionano.

Crittografia dei dati con una coppia di chiavi di dati

Quando si esegue la crittografia con una coppia di chiavi di dati, si utilizza la chiave pubblica della coppia per crittografare i dati e la chiave privata della stessa coppia per decriptare i dati. In genere, usi le coppie di chiavi di dati quando molte parti devono crittografare i dati che solo la parte con la chiave privata può decriptare.

Le parti con la chiave pubblica utilizzano tale chiave per crittografare i dati, come mostrato nel diagramma seguente.

Crittografa i dati degli utenti con la chiave pubblica di una coppia di chiavi di dati esterna a AWS KMS

Decrittografia dei dati con una coppia di chiave di dati

Per decriptare i dati, utilizzare la chiave privata nella coppia di chiavi di dati. Affinché l'operazione abbia esito positivo, le chiavi pubbliche e private devono essere della stessa coppia di chiavi di dati ed è necessario utilizzare lo stesso algoritmo di crittografia.

Per decriptare la chiave privata crittografata, passarla all'operazione Decrittografa. Utilizza la chiave privata di testo normale per decriptare i dati. Quindi rimuovi la chiave privata di testo normale dalla memoria il prima possibile.

Il diagramma seguente mostra come utilizzare la chiave privata in una coppia di chiavi di dati per decriptare il testo cifrato.

Decrittografa i dati con la chiave privata in una coppia di chiavi di dati esternamente a AWS KMS.

Firmare messaggi con una coppia di chiavi di dati

Per generare una firma crittografica per un messaggio, utilizzare la chiave privata nella coppia di chiavi di dati. Chiunque abbia la chiave pubblica può utilizzarla per verificare che il messaggio sia stato firmato con la chiave privata e che non sia cambiato da quando è stato firmato.

Se crittografi la tua chiave privata, passa la chiave privata crittografata all'operazione Decrypt. AWS KMS utilizza la tua KMS chiave per decrittografare la chiave dati e quindi restituisce la chiave privata in testo non crittografato. Utilizza la chiave privata di testo normale per generare la firma. Quindi rimuovi la chiave privata di testo normale dalla memoria il prima possibile.

Per firmare un messaggio, crea un message digest utilizzando una funzione hash crittografica, ad esempio il comando in Open. dgstSSL Quindi, passa la tua chiave privata di testo normale all'algoritmo di firma. Il risultato è una firma che rappresenta i contenuti del messaggio. (Potrebbe essere possibile firmare messaggi più brevi senza prima creare un digest. La dimensione massima del messaggio varia in base allo strumento di firma utilizzato.)

Il diagramma seguente mostra come utilizzare la chiave privata in una coppia di chiavi di dati per firmare un messaggio.

Genera una firma crittografica con la chiave privata in una coppia di chiavi di AWS KMS dati esterna a.

Verificare una firma con una coppia di chiavi di dati

Chiunque abbia la chiave pubblica nella coppia di chiavi di dati può utilizzarla per verificare la firma generata con la chiave privata. La verifica conferma che un utente autorizzato ha firmato il messaggio con la chiave privata e l'algoritmo di firma specificati e che il messaggio non è cambiato da quando è stato firmato.

Per avere successo, la parte che verifica la firma deve generare lo stesso tipo di digest, utilizzare lo stesso algoritmo e utilizzare la chiave pubblica corrispondente alla chiave privata utilizzata per firmare il messaggio.

Nel diagramma seguente viene illustrato come utilizzare la chiave pubblica in una coppia di chiavi di dati per verificare una firma del messaggio.

Verifica una firma crittografica con la chiave pubblica in una coppia di chiavi di dati al di fuori di AWS KMS.

Ricava un segreto condiviso con coppie di chiavi di dati

L'accordo chiave consente a due peer, ciascuno dotato di una coppia di chiavi pubblica-privata a curva ellittica, di stabilire un segreto condiviso su un canale non sicuro. Per ricavare un segreto condiviso, i due peer devono scambiarsi le proprie chiavi pubbliche su un canale di comunicazione non sicuro (come Internet). Quindi, ciascuna parte utilizza la propria chiave privata e la chiave pubblica del proprio interlocutore per calcolare lo stesso segreto condiviso utilizzando un algoritmo di accordo chiave. È possibile utilizzare il valore segreto condiviso per derivare una chiave simmetrica in grado di crittografare e decrittografare i dati inviati tra i due peer o che può generare e verificare. HMACs

Nota

AWS KMS consiglia vivamente di verificare che la chiave pubblica ricevuta provenga dalla parte prevista prima di utilizzarla per ricavare un segreto condiviso.