Ejemplo de almacenamiento en caché de claves de datos - AWS Encryption 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.

Ejemplo de almacenamiento en caché de claves de datos

En este ejemplo se utiliza el almacenamiento en caché de claves de datos con un caché local para acelerar una aplicación en la que los datos generados por varios dispositivos se cifren y almacenen en diferentes regiones.

En este caso, varios productores de datos generan datos, los cifran y escriben en una secuencia de Kinesis en cada región. Las funciones AWS Lambda (consumidores) descifran las transmisiones y escriben datos de texto sin formato en una tabla de DynamoDB en la Región. Los productores y los consumidores de datos utilizan el AWS Encryption SDK y un AWS KMSproveedor de claves maestras. Para reducir las llamadas a KMS, cada productor y consumidor tiene su propio caché local.

Encontrará el código fuente de estos ejemplos en Java y Python. La muestra también incluye una plantilla de AWS CloudFormation que define los recursos de las muestras.

Este diagrama muestra cómo los productores y consumidores de datos utilizan AWS KMS, Amazon Kinesis Data Streams y Amazon DynamoDB.

Resultados de la caché local

En la siguiente tabla se muestra que un caché local reduce las llamadas totales a KMS (por segundo y región) de este ejemplo al 1% de su valor original.

Solicitudes de productores
Solicitudes por segundo y cliente Clientes por región Promedio de solicitudes por segundo y región
Generar clave de datos (us-west-2) Cifrado de clave de datos (eu-central-1) Total (por región)
Sin caché 1 1 1 500 500
Caché local 1 rps/100 usos 1 rps/100 usos 1 rps/100 usos 500 5
Solicitudes de consumidores
Solicitudes por segundo y cliente Clientes por región Promedio de solicitudes por segundo y región
Descifrar clave de datos Productores Total
Sin caché 1 rps por productor 500 500 2 1 000
Caché local 1 rps por productor / 100 usos 500 5 2 10