aws / aws/aws-encryption-sdk-java

duplicate requests on CMM cache miss

Ouverte
#2,176 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Java
Étoiles
240
Forks
125
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

### Problem:

While profiling an application we noticed duplicate request for encryption keys and decryption keys, typically after an DEK has just expired

### Solution:

The cause of this was on a miss used by expiration of an encryption DEK or a decryption DEK. In our case both were related to TTL
for a simple example - imaging 10 threads encrypting data, using the same keys. The key expires, and 10 threads, make 10 request to the MasterKey for 10 new encryption DEKs, which causes a little more latency, and cost (if the underlying KMS charges)

I think that the library can easily de-duplicate these requests (maybe as an option). We have done this in our application

Happy to contribute/colaborate on this but will need some steer from the maintainers

### Out of scope:

Is there anything the solution will intentionally NOT address?

[//]: # (NOTE: If you believe this might be a security issue, please email aws-security@amazon.com instead of creating a GitHub issue. For more details, see the AWS Vulnerability Reporting Guide: https://aws.amazon.com/security/vulnerability-reporting/ )

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par retracer le chemin de cache miss de CMM autour de l’expiration de DEK lors du chiffrement et du déchiffrement, notamment la manière dont les requêtes atteignent le MasterKey. Reproduisez le cas signalé avec des threads concurrents et des TTL expirés ; le travail sera considéré comme terminé lorsque des misses concurrents équivalents seront dédupliqués sans modifier le comportement de récupération des clés, avec des indications des maintainers sur la conception de l’API ou de l’option.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
cryptography, security
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.