aws / aws/amazon-s3-encryption-client-python

Request for python version of AesKeyRing

Open
#193 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2
Forks
4
PR merge metrics
No merged PRs in 30d

Description

## Problem

- Our producer is java based which uses [AesKeyRIng](https://github.com/aws/amazon-s3-encryption-client-java/blob/main/src/main/java/software/amazon/encryption/s3/materials/AesKeyring.java) with `S3EncryptionClient` to encrypt data.
- But our consumer side requiring to decrypt data is in Python. However, Python does not contain `AesKeyRing` equivalent.

We use AesKeyRing to generate DataKeys with our own WrappingKey generator , which is NOT KMS. This is a hard requirement for us and `AesKeyRing` unblocked us in java. However, we are blocked in python as its not available.

I wanted to raise this request to the team to implement a python version of `AesKeyRing` , so that we can be unblocked.

Contributor guide

Open the contributing guide

Research direction

Start by reading the linked Java AesKeyring.java implementation and the S3EncryptionClient usage, then trace the Python package's existing encryption and keyring entry points. Done means a Python AesKeyRing equivalent can generate data keys with a caller-provided, non-KMS wrapping-key generator and decrypt data produced by the Java client.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, java, python
Domain
cloud, cryptography, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.