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à.
Domande frequenti
Domande frequenti
Qual è la AWS Encryption SDK differenza rispetto al client di crittografia Amazon S3?
Quali algoritmi crittografici sono supportati da e qual è AWS Encryption SDK quello predefinito?
In che modo viene generato il vettore di inizializzazione (IV) e dove viene memorizzato?
Come viene generata, crittografata e decrittografata ciascuna chiave di dati?
Come posso tenere traccia dei dati delle chiavi utilizzati per crittografare i miei dati?
Quanto sovraccarico aggiunge il formato dei AWS Encryption SDK messaggi ai miei dati crittografati?
Posso crittografare i dati con più di una chiave di wrapping?
Quali tipi di dati posso crittografare con? AWS Encryption SDK
In che modo AWS Encryption SDK crittografano e decrittografano input/output (I/O) i flussi?
In che modo è AWS Encryption SDK diverso dal AWS SDKs?
AWS SDKs
È possibile utilizzarlo AWS SDKs per interagire AWS KMS, inclusa la crittografia e la decrittografia di piccole quantità di dati (fino a 4.096 byte con una chiave di crittografia simmetrica) e la generazione di chiavi dati per la crittografia lato client. Tuttavia, quando si genera una chiave dati, è necessario gestire l'intero processo di crittografia e decrittografia, inclusa la crittografia dei dati con la chiave dati esterna AWS KMS, l'eliminazione sicura della chiave dati in chiaro, l'archiviazione della chiave dati crittografata, quindi la decrittografia della chiave dati e la decrittografia dei dati. Gestisce questo processo per te. AWS Encryption SDK
AWS Encryption SDK Fornisce una libreria che crittografa e decrittografa i dati utilizzando gli standard e le migliori pratiche del settore. Genera la chiave dati, la crittografa utilizzando le chiavi di wrapping specificate e restituisce un messaggio crittografato, un oggetto dati portatile che include i dati crittografati e le chiavi di dati crittografate necessarie per decrittografarli. Quando è il momento di decifrare, inserisci il messaggio crittografato e almeno una delle chiavi di wrapping (opzionale), quindi restituisci i dati in testo non crittografato. AWS Encryption SDK
È possibile utilizzare AWS KMS keys come chiavi di avvolgimento in AWS Encryption SDK, ma non è obbligatorio. È possibile utilizzare le chiavi di crittografia generate dall'utente e quelle del gestore delle chiavi o del modulo di sicurezza hardware locale. È possibile utilizzare il AWS Encryption SDK anche se non si dispone di un AWS account.
Qual è la AWS Encryption SDK differenza rispetto al client di crittografia Amazon S3?
Il client di crittografia Amazon S3 in the AWS SDKs fornisce la crittografia e la decrittografia dei dati archiviati in Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3). Questi client sono strettamente associati ad Amazon S3 e sono destinati all'uso solo con i dati ivi archiviati.
AWS Encryption SDK Fornisce la crittografia e la decrittografia dei dati che è possibile archiviare ovunque. Il client di crittografia Amazon S3 AWS Encryption SDK e il client di crittografia non sono compatibili perché producono testi cifrati con formati di dati diversi.
Quali algoritmi crittografici sono supportati da e qual è AWS Encryption SDK quello predefinito?
AWS Encryption SDK Utilizza l'algoritmo simmetrico Advanced Encryption Standard (AES) in Galois/Counter Mode (GCM), noto come AES-GCM, per crittografare i dati. Consente di scegliere tra diversi algoritmi simmetrici e asimmetrici per crittografare le chiavi dati che crittografano i dati.
Per AES-GCM, la suite di algoritmi predefinita è AES-GCM con chiave a 256 bit, derivazione delle chiavi (HKDF), firme digitali e impegno chiave. AWS Encryption SDK supporta anche chiavi di crittografia e algoritmi di crittografia a 192 e 128 bit senza firme digitali e impegno chiave.
In tutti i casi, la lunghezza del vettore di inizializzazione (IV) è pari a 12 byte; la lunghezza del tag di autenticazione è pari a 16 byte. Per impostazione predefinita, l'SDK utilizza la chiave dati come input per la funzione di derivazione delle chiavi (HKDF) basata su HMAC per derivare la extract-and-expand chiave di crittografia AES-GCM e aggiunge anche una firma Elliptic Curve Digital Signature Algorithm (ECDSA).
Per ulteriori informazioni sulla scelta degli algoritmi da utilizzare, consulta Suite di algoritmi supportate.
Per dettagli relativi all'implementazione degli algoritmi supportati, consulta Riferimenti agli algoritmi.
In che modo viene generato il vettore di inizializzazione (IV) e dove viene memorizzato?
Utilizza AWS Encryption SDK un metodo deterministico per costruire un valore IV diverso per ogni frame. Questa procedura garantisce che non si IVs ripetano mai all'interno di un messaggio. (Prima della versione 1.3.0 di SDK di crittografia AWS per Java and the SDK di crittografia AWS per Python, generavano AWS Encryption SDK casualmente un valore IV univoco per ogni frame.)
L'IV viene memorizzato nel messaggio crittografato che restituisce. AWS Encryption SDK Per ulteriori informazioni, consulta AWS Encryption SDK riferimento al formato del messaggio.
Come viene generata, crittografata e decrittografata ciascuna chiave di dati?
Il metodo dipende dal portachiavi o dal fornitore di chiavi master utilizzato.
I AWS KMS portachiavi e i fornitori di chiavi master AWS Encryption SDK utilizzati utilizzano l'operazione AWS KMS GenerateDataKeyAPI per generare ogni chiave di dati e crittografarla utilizzando la relativa chiave di avvolgimento. Per crittografare le copie della chiave dati con chiavi KMS aggiuntive, utilizzano l'operazione Encrypt. AWS KMS Per decrittografare le chiavi dati, utilizzano l'operazione Decrypt. AWS KMS Per i dettagli, vedere il AWS KMS
portachiavi
Altri portachiavi generano la chiave dati, la crittografano e la decrittografano utilizzando i migliori metodi per ogni linguaggio di programmazione. Per i dettagli, consulta le specifiche del portachiavi o del fornitore di chiavi principali nella sezione Framework
Come posso tenere traccia dei dati delle chiavi utilizzati per crittografare i miei dati?
Lo AWS Encryption SDK fa per te. Quando crittografi i dati, il kit SDK crittografa la chiave dei dati e archivia la chiave crittografata con i dati crittografati nel messaggio crittografato che restituisce. Quando esegui la decrittazione dei dati, il AWS Encryption SDK estrae la chiave di dati crittografata dal messaggio crittografato, la decritta, quindi la utilizza per decrittare i dati.
In che modo AWS Encryption SDK memorizzano le chiavi di dati crittografate con i relativi dati crittografati?
Le operazioni di crittografia eseguite AWS Encryption SDK restituiscono un messaggio crittografato, un'unica struttura di dati che contiene i dati crittografati e le relative chiavi di dati crittografate. Il formato del messaggio è costituito da almeno due parti: un'intestazione e un corpo. L'intestazione del messaggio contiene le chiavi di dati crittografati e le informazioni su come è formato il corpo del messaggio. Il corpo del messaggio contiene i dati crittografati. Se la suite di algoritmi include una firma digitale, il formato del messaggio include un piè di pagina che contiene la firma. Per ulteriori informazioni, consulta AWS Encryption SDK riferimento al formato del messaggio.
Quanto sovraccarico aggiunge il formato dei AWS Encryption SDK messaggi ai miei dati crittografati?
L'ammontare del sovraccarico aggiunto da AWS Encryption SDK dipende da diversi fattori, tra cui:
-
La dimensione dei dati di testo non crittografato
-
Quale degli algoritmi supportati viene utilizzato
-
Se vengono forniti dati autenticati aggiuntivi (AAD) e la lunghezza di tale AAD
-
Il numero e il tipo di chiavi di avvolgimento o chiavi master
-
Le dimensioni del frame (quando vengono utilizzati i dati framed)
Quando si utilizza la AWS Encryption SDK con la sua configurazione predefinita (una AWS KMS key come chiave di wrapping (o chiave master), nessun AAD, dati senza frame e un algoritmo di crittografia con firma), il sovraccarico è di circa 600 byte. In generale, puoi ragionevolmente presumere che il AWS Encryption SDK aggiunga un sovraccarico di 1 KB al massimo, senza includere gli AAD forniti. Per ulteriori informazioni, consulta AWS Encryption SDK riferimento al formato del messaggio.
È possibile usare il proprio provider di chiavi master?
Sì. I dettagli di implementazione variano a seconda dei linguaggi di programmazione supportati utilizzati. Tuttavia, tutti i linguaggi supportati consentono di definire gestori di materiali crittografici personalizzati (MCMMs), fornitori di chiavi principali, portachiavi, chiavi master e chiavi di wrapping.
Posso crittografare i dati con più di una chiave di wrapping?
Sì. È possibile crittografare la chiave dati con chiavi di wrapping aggiuntive (o chiavi master) per aggiungere ridondanza quando la chiave si trova in un'altra regione o non è disponibile per la decrittografia.
Per crittografare i dati con più chiavi di wrapping, crea un portachiavi o un fornitore di chiavi master con più chiavi di wrapping. Quando utilizzi i keyring puoi creare un singolo keyring con più chiavi di wrapping o un keyring multiplo.
Quando crittografi i dati con più chiavi di wrapping, AWS Encryption SDK utilizza una chiave di wrapping per generare una chiave di dati in testo semplice. La chiave dati è unica e matematicamente non correlata alla chiave di avvolgimento. L'operazione restituisce la chiave dati in testo semplice e una copia della chiave dati crittografata dalla chiave di wrapping. Quindi, il metodo di crittografia crittografa la chiave dati con le altre chiavi di avvolgimento. Il messaggio crittografato risultante include i dati crittografati e una chiave di dati crittografata per ogni chiave di wrapping.
Il messaggio crittografato può essere decrittografato utilizzando una qualsiasi delle chiavi di wrapping utilizzate nell'operazione di crittografia. AWS Encryption SDK Utilizza una chiave di wrapping per decrittografare una chiave di dati crittografata. Quindi, utilizza la chiave dati in testo semplice per decrittografare i dati.
Quali tipi di dati posso crittografare con? AWS Encryption SDK
La maggior parte delle implementazioni del linguaggio di programmazione AWS Encryption SDK può crittografare byte non elaborati (array di byte), I/O flussi (flussi di byte) e stringhe. Il I/O for.NET non supporta gli stream. AWS Encryption SDK Forniamo il codice di esempio per ciascuno dei linguaggi di programmazione supportati.
In che modo AWS Encryption SDK crittografano e decrittografano input/output (I/O) i flussi?
AWS Encryption SDK Crea un flusso di crittografia o decrittografia che avvolge un flusso sottostante. I/O Il flusso di crittografia e decrittografia esegue un'operazione di crittografia su una chiamata di lettura o di scrittura. Ad esempio, può leggere dati di testo non crittografati nel flusso sottostante e crittografarlo prima di restituire il risultato. In alternativa, può leggere testo cifrato da un flusso sottostante e decifrarlo prima di restituire il risultato. Forniamo un codice di esempio per crittografare e decrittografare gli stream per ciascuno dei linguaggi di programmazione supportati che supportano lo streaming.
The AWS Encryption SDK for .NET non supporta gli stream. I/O