Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

354
Views
¿Cómo puedo mejorar el rendimiento (tiempo de respuesta) del SDK de cifrado de AWS al descifrar?

Tengo un AWS Lambda que se utiliza para cifrar PII (información de identificación personal) mediante el SDK de cifrado de AWS antes de almacenarlo en DynamoDB.

Al recuperar los datos de DynamoDB usando un Lambda diferente para mostrar a los usuarios finales, el tiempo promedio para cada llamada a KMS es de 9,48 segundos. Esto se promedia en aproximadamente 2k solicitudes con solicitudes que van desde ~14,5 segundos a ~5,1 segundos. Las llamadas a KMS se realizan de forma asíncrona.

El tiempo total desde la primera llamada KMS hasta la última es de ~20 segundos

Hemos considerado usar el almacenamiento en caché de claves de datos y leímos esta publicación de blog de AWS sobre cuándo usarlo.

Es posible que la entrada de nuestros datos no sea lo suficientemente frecuente como para aprovechar al máximo el almacenamiento en caché, y estoy tratando de encontrar otras formas de mejorar el rendimiento.

Código de descifrado Sippet:

 async function decryptWithKeyring(keyring: KmsKeyringNode, ciphertext: string, context: {}) { const b: Buffer = Buffer.from(ciphertext, 'base64'); const { plaintext, messageHeader } = await decrypt(keyring, b); const { encryptionContext } = messageHeader; Object.entries(context).forEach(([key, value]) => { if (encryptionContext[key] !== value) { throw new Error('Encryption Context does not match expected values'); } }); return plaintext.toString(); }

Cifrar fragmento:

 async function encryptWithKeyring(keyring: KmsKeyringNode, value: any, context: any) { const { result } = await encrypt(keyring, value, { encryptionContext: context }); return result.toString('base64'); }

La conversión a base64 fue para facilitar el almacenamiento en DynamoDB.

XRay Trace Map Muestreo de datos de KMS Trace

over 4 years ago · Santiago Trujillo
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!