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
Com'è il AWS Encryption SDK diverso dal client di crittografia Amazon S3?
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?
Posso crittografare i dati con più di una chiave di wrapping?
Quali tipi di dati posso crittografare con AWS Encryption SDK?
Come funziona AWS Encryption SDK crittografa e decrittografa i flussi input/output ()I/O?
Com'è il AWS Encryption SDK diverso dal AWS SDK?
Gli AWS SDK
Puoi utilizzare AWS gli SDK 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 di 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 testo normale, l'archiviazione della chiave dati crittografata e quindi la decrittografia della chiave dati e la decrittografia dei dati. The 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 con le chiavi di wrapping specificate e restituisce un messaggio crittografato, un oggetto dati portatile che include i dati crittografati e le chiavi di dati crittografati necessarie per decrittografarli. Quando è il momento di decrittografare, si trasmettono il messaggio crittografato e almeno una delle chiavi di avvolgimento (opzionale) e vengono restituiti i dati in chiaro. 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 e quelle del gestore delle chiavi o del modulo di sicurezza hardware locale. Puoi utilizzare AWS Encryption SDK anche se non hai un AWS account.
Com'è il AWS Encryption SDK diverso dal client di crittografia Amazon S3?
Il client di crittografia Amazon S3 negli AWS SDK fornisce crittografia e decrittografia per i dati archiviati in Amazon Simple Storage Service (Amazon S3). Questi client sono strettamente collegati ad Amazon S3 e sono destinati all'uso solo con i dati ivi archiviati.
AWS Encryption SDK Fornisce crittografia e decrittografia per i dati che puoi archiviare ovunque. Il client di crittografia Amazon S3 AWS Encryption SDK e Amazon S3 non sono compatibili perché producono testi cifrati con formati di dati diversi.
Quali algoritmi crittografici sono supportati da AWS Encryption SDK e qual è l'impostazione predefinita?
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 di dati che crittografano i dati.
Per AES-GCM, la suite di algoritmi predefinita include una chiave a 256 bit, derivazione della chiave (HKDF), firme digitali e key commit. AES-GCM Firme digitali Impegno chiave AWS Encryption SDK supporta anche chiavi di crittografia e algoritmi di crittografia a 192 e 128 bit senza firme digitali e impegno di chiavi.
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 della chiave di HMAC-based estrazione ed espansione (HKDF) per derivare la chiave di AES-GCM crittografia e aggiunge anche una firma ECDSA (Elliptic Curve Digital Signature Algorithm).
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?
AWS Encryption SDK Utilizza un metodo deterministico per costruire un valore IV diverso per ogni frame. Questa procedura garantisce che gli IV non vengano mai ripetuti all'interno di un messaggio. (Prima della versione 1.3.0 di SDK di crittografia AWS per Java e the SDK di crittografia AWS per Python, generavano AWS Encryption SDK casualmente un valore IV univoco per ogni frame.)
L'IV è 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 provider di chiavi master AWS Encryption SDK utilizzati utilizzano l'operazione AWS KMS GenerateDataKey API per generare ciascuna chiave di dati e crittografarla con la relativa chiave di wrapping. Per crittografare le copie della chiave di dati con chiavi KMS aggiuntive, utilizzano l'operazione Encrypt. AWS KMS https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html Per decrittografare le chiavi di dati, utilizzano l'operazione Decrypt. AWS KMS https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html Per i dettagli, vedere il AWS KMS
portachiavi
Altri portachiavi generano la chiave di dati, la crittografano e la decrittografano utilizzando i metodi consigliati per ciascun linguaggio di programmazione. Per informazioni dettagliate, consulta le specifiche del portachiavi o del fornitore della chiave master nella sezione https://github.com/awslabs/aws-encryption-sdk-specification/tree/master/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.
Come funziona AWS Encryption SDK archivia le chiavi di dati crittografate con i relativi dati crittografati?
Le operazioni di crittografia 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 contenente la firma. Per ulteriori informazioni, consulta AWS Encryption SDK riferimento al formato del messaggio.
A quanto ammontano le spese generali AWS Encryption SDK il formato del messaggio viene aggiunto ai miei dati crittografati?
L'ammontare delle spese generali aggiunte 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 ordinarie o master key
-
Le dimensioni del frame (quando vengono utilizzati i dati framed)
Quando si utilizza la AWS Encryption SDK configurazione predefinita (una AWS KMS key come chiave di accesso (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. AWS Encryption SDK linguaggi di programmazione Tuttavia, tutti i linguaggi supportati consentono di definire gestori di materiali crittografici (CMM) personalizzati, fornitori di chiavi master, 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 una regione diversa o non è disponibile per la decrittografia.
Per crittografare i dati con più chiavi di wrapping, crea un portachiavi o un provider 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 normale. La chiave dati è unica e matematicamente non è correlata alla chiave di wrapping. L'operazione restituisce la chiave di dati in testo normale e una copia della chiave di dati crittografata dalla chiave di wrapping. Quindi il metodo di crittografia crittografa la chiave di dati con le altre chiavi di wrapping. 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 normale per decrittografare i dati.
Quali tipi di dati posso crittografare con AWS Encryption SDK?
La maggior parte delle implementazioni del linguaggio di programmazione di è in AWS Encryption SDK grado di crittografare byte (array di byte), I/O stream (flussi di byte) e stringhe non elaborati. Il for I/O .NET non supporta gli stream. AWS Encryption SDK Forniamo il codice di esempio per ciascuno dei linguaggi di programmazione supportati.
Come funziona AWS Encryption SDK crittografa e decrittografa i flussi input/output ()I/O?
AWS Encryption SDK Crea un flusso di crittografia o decrittografia che racchiude 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 i flussi per ciascuno dei linguaggi di programmazione supportati che supportano lo streaming. AWS Encryption SDK linguaggi di programmazione
Il AWS Encryption SDK for .NET non supporta gli stream. I/O