Cómo funciona el cliente de cifrado de DynamoDB - AWS Cifrado de bases SDK

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.

Cómo funciona el cliente de cifrado de DynamoDB

nota

Nuestra biblioteca de cifrado del cliente pasó a llamarse SDK de cifrado de bases de datos de AWS. En el siguiente tema, se presenta información sobre las versiones 1.x—2.x del cliente de cifrado de DynamoDB para Java y versiones 1.x—3.x del cliente de cifrado de DynamoDB para Python. Para obtener más información, consulte el SDK de cifrado de bases de datos de AWS para la compatibilidad de la versión de DynamoDB.

El cliente de cifrado de DynamoDB está diseñado específicamente para proteger los datos que almacena en DynamoDB. Las bibliotecas incluyen implementaciones seguras que puede ampliar o utilizar sin hacer ningún cambio. La mayoría de los elementos se representan mediante elementos abstractos para que pueda crear y utilizar componentes personalizados compatibles.

Cifrado y firma de elementos de tabla

La esencia del cliente de cifrado de DynamoDB es un encriptador de elementos que cifra, firma, verifica y descifra los elementos de la tabla. Recibe información acerca de los elementos de tabla e instrucciones acerca de qué elementos hay que cifrar y firmar. Obtiene los materiales de cifrado, y las instrucciones sobre su uso, de un proveedor de materiales criptográficos que usted selecciona y configura.

En el siguiente diagrama, se muestra una vista general de este proceso.

Cifrado y firma de elementos en el cliente de cifrado de DynamoDB

Para cifrar y firmar un elemento de la tabla, el cliente de cifrado de DynamoDB necesita:

  • Información acerca de la tabla. Obtiene información acerca de la tabla de un contexto de cifrado de DynamoDB que usted suministra. Algunos elementos auxiliares obtienen la información necesaria de DynamoDB y crean automáticamente el contexto de cifrado de DynamoDB para usted.

    nota

    El contexto de cifrado de DynamoDB en el cliente de cifrado de DynamoDB no está relacionado con el contexto de cifrado en AWS Key Management Service (AWS KMS) y el AWS Encryption SDK.

  • Los atributos que hay que cifrar y firmar. Obtiene esta información de las acciones de atributo que usted suministra.

  • Materiales de cifrado, incluidas las claves de cifrado y firma. Los obtiene de un proveedor de materiales criptográficos (CMP) que usted selecciona y configura.

  • Instrucciones para cifrar y firmar el elemento. El CMP añade instrucciones de uso de los materiales de cifrado, incluidos los algoritmos de cifrado y firma, a la descripción de material real.

El encriptador de elementos utiliza todos estos elementos para cifrar y firmar el elemento. El encriptador de elementos también añade dos atributos al elemento: un atributo de descripción de material que contiene las instrucciones de cifrado y firma (la descripción de material real) y un atributo que contiene la firma. Puede interactuar directamente con el encriptador de elementos, o puede utilizar características auxiliares que interactúan con el encriptador de elementos para implementar un comportamiento predeterminado seguro.

El resultado es un elemento de DynamoDB que contiene datos cifrados y firmados.

Verificación y descifrado de elementos de tabla

Estos componentes también funcionan juntos para verificar y descifrar el elemento, como se muestra en el siguiente diagrama.

Verificación y descifrado de elementos en el cliente de cifrado de DynamoDB

Para verificar y descifrar un elemento, el cliente de cifrado de DynamoDB necesita los mismos componentes, componentes con la misma configuración o componentes diseñados especialmente para descifrar los elementos, de la siguiente manera:

  • Información acerca de la tabla del contexto de cifrado de DynamoDB.

  • Qué atributos verificar y descifrar. Los obtiene de las acciones de atributo.

  • Materiales de descifrado, incluidas las claves de verificación y descifrado, del proveedor de materiales criptográficos (CMP) que usted selecciona y configura.

    El elemento cifrado no incluye ningún registro del CMP que se utilizó para cifrarlo. Debe proporcionar el mismo CMP, un CMP con la misma configuración o un CMP que esté diseñado para descifrar elementos.

  • Información acerca de cómo el elemento se cifró y firmó, incluidos los algoritmos de cifrado y firma. El cliente los obtiene del atributo de descripción de material del elemento.

El encriptador de elementos utiliza todos estos elementos para verificar y descifrar el elemento. También elimina los atributos de descripción de material y firma. El resultado es un elemento de DynamoDB como texto no cifrado.