I am storing my files on Amazon S3. My problem is that whenever a user asks for a file I want to generate an encryption key (user specific key) and encrypt the file and send it to him.

So basically I want to direct S3 server that I want this file with this key, it generates the url for me, I pass the url to the user and when the user hits this url he/she gets the file encrypted with my key.

I read about the encryption schemes on the S3 docs but couldn't find a way of doing this. All I got is that I can store file with encryption key and to retrieve it back I have to provide the encryption key to S3.

Is there a way of achieving this with S3?

  • I think you need an instance (or docker instance) to do this, which reads the file, encrypts it, etc.
    – SPRBRN
    Apr 12, 2016 at 7:42
  • @SPRBRN can you please point me how is it going to help me achieve user specific encryption
    – dnit13
    Apr 12, 2016 at 7:52
  • 1
    No I can't. You need a web application for that. It should be programmed or maybe you can find an app that can do that. This is just my understanding of S3, and AFAIK it's just a big fileserver, and programs run elsewhere.
    – SPRBRN
    Apr 12, 2016 at 7:56

1 Answer 1


No, there isn't.

S3's encryption services are for the data at rest inside, not outside, S3.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .