SSE-S3
Use S3’s existing encryption key for AES-256
SSE-C
Upload your own AES-256 encryption key which S3 uses when it writes objects
SSE-KMS
Use a key generated and managed by AWS KMS
Client Side
Encrypt objects using your own local encryption process before uploading to S3