aws / aws/aws-encryption-sdk-java
duplicate requests on CMM cache miss
- 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