Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Conjuntos de algoritmos compatibles en el cifrado de AWS bases de datos SDK
Nuestra biblioteca de cifrado del lado del cliente pasó a llamarse AWS Database Encryption. SDK En esta guía para desarrolladores, se sigue proporcionando información sobre el cliente de cifrado de DynamoDB. |
Un conjunto de algoritmos es un conjunto de algoritmos criptográficos y sus valores relacionados. Los sistemas criptográficos utilizan la implementación del algoritmo para generar el texto cifrado.
El cifrado AWS de bases de datos SDK utiliza un conjunto de algoritmos para cifrar y firmar los campos de la base de datos. Todos los conjuntos de algoritmos compatibles utilizan el algoritmo Advanced Encryption Standard (AES) con Galois/Counter Mode (GCM), conocido como AES -GCM, para cifrar los datos sin procesar. El cifrado de AWS bases de datos SDK admite claves de cifrado de 256 bits. La longitud de la etiqueta de autenticación es siempre de 16 bytes.
Algoritmo | Algoritmo de cifrado | Longitud de la clave de datos (en bits) | Algoritmo de derivación de clave | Algoritmo de firma simétrica | Algoritmo de firma asimétrica. | Compromiso clave |
---|---|---|---|---|---|---|
Predeterminado | AES-GCM | 256 | HKDFcon SHA -512 | HMAC- -384 SHA | ECDSAcon P-384 y -384 SHA | HKDFcon -512 SHA |
AES- GCM sin firmas ECDSA digitales | AES-GCM | 256 | HKDFcon SHA -512 | HMAC- -384 SHA | Ninguna | HKDFcon -512 SHA |
- Algoritmo de cifrado
-
El nombre y el modo del algoritmo de cifrado que se utilizó. Los conjuntos de algoritmos del cifrado de AWS bases de datos SDK utilizan el algoritmo Advanced Encryption Standard (AES) con Galois/Counter Mode (). GCM
- Longitud de la clave de datos
-
La longitud de la clave de datos en bits. El cifrado de la AWS base de datos SDK admite claves de datos de 256 bits. La clave de datos se utiliza como entrada para una función de derivación de extract-and-expand claves HMAC basada (). HKDF La salida de HKDF se utiliza como clave de cifrado de datos en el algoritmo de cifrado.
- Algoritmo de derivación de clave
-
La función de derivación de extract-and-expand claves HMAC basada (HKDF) utilizada para derivar la clave de cifrado de datos. El cifrado AWS de la base de datos SDK utiliza lo HKDF definido en RFC5869
. -
La función hash utilizada es -512 SHA
-
Para el paso de extracción:
-
No se utiliza sal. Según elRFC, la sal se establece en una cadena de ceros.
-
El material de codificación de entrada es la clave de datos del llavero.
-
-
Para el paso de expansión:
-
La clave pseudoaleatoria de entrada es el resultado del paso de extracción.
-
La etiqueta clave son los bytes UTF codificados en -8 de la
DERIVEKEY
cadena en orden de bytes endiano grande. -
La información de entrada es una concatenación del ID de algoritmo seguido de la etiqueta de clave (en ese orden).
-
La longitud del material de salida para las claves es la Longitud de la clave de datos. Este resultado se utiliza como clave de cifrado de datos en el algoritmo de cifrado.
-
-
- Algoritmo de firma simétrica
-
El algoritmo del código de autenticación de mensajes basado en hash (HMAC) se utiliza para generar una firma simétrica. Todos los conjuntos de algoritmos compatibles incluyen HMAC la verificación.
El cifrado AWS de la base de datos SDK serializa la descripción del material y todos los campos marcados con
ENCRYPT_AND_SIGN
SIGN_ONLY
, oSIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT
. A continuación, utiliza un algoritmo HMAC de función hash criptográfica (SHA-384) para firmar la canonicalización.La HMAC firma simétrica se almacena en un campo nuevo (
aws_dbe_foot
) que el cifrado de la AWS base de datos añade al registro. SDK - Algoritmo de firma asimétrica.
-
El algoritmo de firma utilizado para generar una firma digital asimétrica.
El cifrado AWS de la base de datos SDK serializa la descripción del material y todos los campos marcados con
ENCRYPT_AND_SIGN
o.SIGN_ONLY
SIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT
A continuación, utiliza el algoritmo de firma digital de curva elíptica (ECDSA) con las siguientes especificaciones para firmar la canonicalización:-
La curva elíptica utilizada es la P-384, tal como se define en el Estándar de firma digital
() (186-4). DSS FIPS PUB -
La función hash utilizada es -384. SHA
La ECDSA firma asimétrica se almacena junto con la HMAC firma simétrica en el campo.
aws_dbe_foot
ECDSALas firmas digitales se incluyen de forma predeterminada, pero no son obligatorias.
-
- Compromiso clave
-
La función de derivación de extract-and-expand claves HMAC basada (HKDF) utilizada para derivar la clave de confirmación.
-
La función hash utilizada es -512 SHA
-
Para el paso de extracción:
-
No se utiliza sal. Según elRFC, la sal se establece en una cadena de ceros.
-
El material de codificación de entrada es la clave de datos del llavero.
-
-
Para el paso de expansión:
-
La clave pseudoaleatoria de entrada es el resultado del paso de extracción.
-
La información de entrada son los bytes UTF codificados en -8 de la
COMMITKEY
cadena en orden de bytes endiano grande. -
La longitud del material de codificación de salida es de 256 bits. Esta salida se utiliza como clave de confirmación.
-
La clave de confirmación calcula la confirmación del registro, un hash distinto de 256 bits basado en el código de autenticación de mensajes (HMAC) basado en un hash, sobre la descripción del material. Para obtener una explicación técnica sobre cómo añadir un compromiso clave a un conjunto de algoritmos, consulte Key Committing AEADs in Cryptology Archive
. ePrint -
Conjunto de algoritmos predeterminado
De forma predeterminada, el cifrado de AWS bases de datos SDK utiliza un conjunto de algoritmos con AES -GCM, una función de derivación de extract-and-expand claves HMAC basada en (HKDF), HMAC verificación, firmas ECDSA digitales, confirmación de claves y una clave de cifrado de 256 bits.
El conjunto de algoritmos predeterminado incluye la HMAC verificación (firmas simétricas) y las firmas ECDSAdigitales (firmas asimétricas). Estas firmas se almacenan en un campo nuevo (aws_dbe_foot
) que el cifrado de la AWS base de datos SDK agrega al registro. ECDSAlas firmas digitales son especialmente útiles cuando la política de autorización permite a un grupo de usuarios cifrar los datos y a otro grupo diferente descifrarlos.
El conjunto de algoritmos predeterminado también deriva de un compromiso clave: un HMAC hash que vincula la clave de datos al registro. El valor de compromiso clave se HMAC calcula a partir de la descripción del material y la clave de confirmación. A continuación, el valor de compromiso clave se almacena en la descripción del material. El compromiso clave garantiza que cada texto cifrado se descifre en un solo texto no cifrado. Para ello, validan la clave de datos utilizada como entrada en el algoritmo de cifrado. Al cifrar, el conjunto de algoritmos obtiene un compromiso clave. HMAC Antes de descifrar, validan que la clave de datos genere el mismo compromiso de clave. HMAC En caso contrario, el comando de descifrado genera un error.
AES- GCM sin firmas ECDSA digitales
Aunque es probable que el conjunto de algoritmos predeterminado sea adecuado para la mayoría de las aplicaciones, puede elegir un conjunto de algoritmos alternativo. Por ejemplo, algunos modelos de confianza quedarían satisfechos con un conjunto de algoritmos sin firmas ECDSA digitales. Utilice este conjunto solo cuando los usuarios que cifran datos y los usuarios que los descifran sean de la misma confianza.
Todos los conjuntos de SDK algoritmos AWS de cifrado de bases de datos incluyen la HMAC verificación (firmas simétricas). La única diferencia es que el AES conjunto de GCM algoritmos sin firma ECDSA digital carece de la firma asimétrica, lo que proporciona una capa adicional de autenticidad y no repudio.
Por ejemplo, si tiene varias claves de empaquetado en su conjunto de claves wrappingKeyA
wrappingKeyB
, y descifra un registro con wrappingKeyA
ellaswrappingKeyC
, la firma HMAC simétrica verifica que el registro lo cifró un usuario con acceso a. wrappingKeyA
Si usó el conjunto de algoritmos predeterminado, HMACs proporcionan la misma verificación ywrappingKeyA
, además, utilizan la firma ECDSA digital para garantizar que el registro lo haya cifrado un usuario con permisos de cifrado para ello. wrappingKeyA
Para seleccionar el AES conjunto de GCM algoritmos sin firmas digitales, incluya el siguiente fragmento en la configuración de cifrado.