Problem:
My organisation currently uses S3 Encryption Client for client-side encryption of our S3 objects.
We need to support multiple blob storages (such as GCS) with client-side encryption.
S3 Encryption Client is only compatible with S3. We're looking to have a solution that will be multi-storage.
Solution:
One option we are evaluating is relying on S3 Encryption Client internals such as CipherSubscriber/CipherProvider (a couple more) and building a thin agnostic wrapper around it such that we can continue to use it for all our existing S3 objects.
However being internal API we are hesistant. Would it be possible to promote some of the internal API to public?
We have also considered AWS Encryption SDK, but it isn't interoperable with the payloads due to its framed format. We'd also appreciate any other suggestions! Re-encryption to a new format would also be very expensive.
Problem:
My organisation currently uses S3 Encryption Client for client-side encryption of our S3 objects.
We need to support multiple blob storages (such as GCS) with client-side encryption.
S3 Encryption Client is only compatible with S3. We're looking to have a solution that will be multi-storage.
Solution:
One option we are evaluating is relying on S3 Encryption Client internals such as CipherSubscriber/CipherProvider (a couple more) and building a thin agnostic wrapper around it such that we can continue to use it for all our existing S3 objects.
However being internal API we are hesistant. Would it be possible to promote some of the internal API to public?
We have also considered AWS Encryption SDK, but it isn't interoperable with the payloads due to its framed format. We'd also appreciate any other suggestions! Re-encryption to a new format would also be very expensive.