S3 6 Flashcards
Encryption: theory
What are the two types of keys used in S3 object encryption?
Data Encryption Keys (DEKs) and Key Encryption Keys or master keys
Encryption: theory
What is a DEK?
Per-object key created by a Key Encryption Key
Encryption: theory
Informal name for a Key Encryption Key, noting its use?
“Wrapping key”
Encryption: theory
What’s the informal name for using a two-stage key set up for encryption?
“Envelope encryption”
Encryption: SSE
How do you encrypt a bucket?
Technically can’t. Objects are encrypted, not buckets.
Encryption: SSE
What are three types of server-side encryption?
SSE-S3, SSE-C, SSE-KMS
Encryption: SSE
What is bucket default encryption?
Set on whole bucket. If PutObject isn’t explicit, this is the type of encryption used.
Encryption: SSE
How do you force a certain level of encryption across a whole bucket?
Can’t, but can set conditions on s3:PutObject in Policies
Encryption: SSE-S3
How does SSE-S3 work?
S3 creates and manages the keys, not visible to users at all.
Encryption: SSE-S3
Specific sequence for SSE-S3 PutObject?
S3 creates symkey, encrypts obj. S3 master key encrypts object-specific key, stores with object, tosses original key.
Encryption: SSE-S3
Specific sequence for SSE-S3 GetObject?
Get encrypted object key, unencrypt with S3 master key, use object key to unencrypt object.
Encryption: SSE-S3
What type of key + cipher does SSE-S3 use?
AES-256 symmetric, block-cipher key
Encryption: SSE-KMS
How does SSE-KMS work?
Similar to SSE-S3 sequence, but KMS holds onto the root key
Encryption: SSE-KMS
What specifically does KMS send back when S3 asks for an object key during PutObject?
New unencrypted object key + encrypted version of same key
Encryption: SSE-KMS
What does S3 do with the un- and encrypted keys sent from KMS for PutObject?
Encrypt obj with unencrypted key, toss it, store encrypted obj and encrypted key.