4 Encryption Methods

Method Who Manages Keys HTTPS Required
SSE-S3 AWS (fully) No
SSE-KMS AWS KMS (you control) No
SSE-C You (outside AWS) Yes, mandatory
Client-Side You (fully) No

1. SSE-S3 — S3 Managed Keys

How it works:

You --> upload file --> S3 encrypts it using its own managed key --> stores encrypted file
You --> download file --> S3 decrypts it automatically --> you get the file

Key never leaves AWS. You never see or touch it.

Use when: You just want basic encryption with no key management overhead.


2. SSE-KMS — KMS Managed Keys

How it works:

You --> upload file --> S3 asks KMS for a key --> KMS provides key
                   --> S3 encrypts file --> stores encrypted file

You --> download file --> S3 asks KMS to decrypt --> KMS decrypts
                     --> S3 returns file to you

Every encrypt/decrypt goes through KMS — that is why every action is auditable.