Security Specialty
Amazon S3 Encryption Options: SSE-S3 vs SSE-KMS vs DSSE-KMS vs SSE-C vs Client-Side
Every S3 bucket encrypts new objects at rest by default with SSE-S3, at no extra cost. Choose SSE-KMS or DSSE-KMS for more control over keys, SSE-C if you supply the keys (now disabled by default on new buckets), or client-side encryption if you encrypt before you upload.
S3 encryption options compared
| Option | Who manages the keys | What to remember |
|---|---|---|
| SSE-S3 | Amazon S3 managed keys | The default for every bucket. Each object is encrypted with a unique key, which is itself encrypted with a root key that S3 regularly rotates. Uses AES-256. |
| SSE-KMS | AWS KMS keys | Integration with AWS KMS gives more control: you can view separate keys, edit control policies and follow the keys in AWS CloudTrail. Use customer managed keys or AWS managed keys. |
| DSSE-KMS | AWS KMS keys plus an S3-managed key | Like SSE-KMS, but applies two independent layers of AES-256 encryption: first with a KMS data encryption key, then with a separate S3-managed key. |
| SSE-C | You provide the keys | Server-side encryption with customer-provided keys. New general purpose buckets have SSE-C disabled by default, and you must deliberately enable it. |
| Client-side | You | You encrypt the data and upload it already encrypted. You manage the encryption process, keys and tools. |
Source: docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html
Encryption is on by default
- Amazon S3 applies SSE-S3 as the base level of encryption for every bucket.
- Starting January 5, 2023, all new object uploads are automatically encrypted at no additional cost and with no impact on performance.
- The encryption status of the bucket default configuration and of new uploads is visible in CloudTrail logs, S3 Inventory, S3 Storage Lens, the S3 console and an additional S3 API response header.
The SSE-C change in 2026
AWS now applies a default bucket security setting that disables SSE-C for new general purpose buckets. In April 2026, S3 deployed an update so that all new general purpose buckets have SSE-C disabled for new write requests, and for existing buckets with no SSE-C encrypted objects, SSE-C was also disabled for new write requests. Applications that need SSE-C must deliberately enable it with the PutBucketEncryption operation.
Changing the default encryption
- To use a different type of server-side encryption, you can specify it in your PUT requests, or change the default encryption configuration of the destination bucket.
- As a bucket default you can choose SSE-KMS or DSSE-KMS.
- Changing the default to SSE-KMS does not change the encryption type of objects already in the bucket.
Data in transit
You can protect data in transit to S3 with SSL/TLS, including hybrid post-quantum key exchange, or with client-side encryption. For the key-management side, see AWS KMS: key policies, rotation and deletion and Domain 5: Data Protection.
Frequently asked questions
Is Amazon S3 encrypted by default?
Yes. Since January 5, 2023, all new object uploads are encrypted with SSE-S3 by default at no additional cost.
What cipher does SSE-S3 use?
256-bit Advanced Encryption Standard (AES-256).
Does switching the bucket default to SSE-KMS re-encrypt existing objects?
No. The encryption type of existing objects is not changed.
Is SSE-C still available?
Yes, but SSE-C is disabled by default for new general purpose buckets. Applications that need it must deliberately enable it.
Sources
AWS updates its programs and documentation. Check the linked official pages for the latest details before you decide or pay.
Practice for your AWS exam
Free practice tests with instant explanations and spaced repetition. No sign-up.
Keep reading
- Security Specialty
KMS vs CloudHSM: Differences and When to Use Each
AWS KMS or AWS CloudHSM? Compare control, tenancy, FIPS validation and key management to choose the right option for the exam and for real workloads.
2 min read - Security Specialty
Secrets Manager vs Parameter Store: Which to Use?
Secrets Manager or Systems Manager Parameter Store? Compare purpose, rotation and encryption, plus AWS's own recommendation for storing secrets.
2 min read - Security Specialty
AWS Security Specialty Study Plan: A 4-Week Roadmap
A week-by-week SCS-C03 study plan built from the domain weights: what to read, what to practice and how to finish with a timed test.
3 min read