Struct: s3crypto.Envelope
Overview
Envelope encryption starts off by generating a random symmetric key using AES GCM. The SDK generates a random IV based off the encryption cipher chosen. The master key that was provided, whether by the user or KMS, will be used to encrypt the randomly generated symmetric key and base64 encode the iv. This will allow for decryption of that same data later.
Implemented Interfaces
s3crypto.Cipher, s3manager.ReadSeekerWriteTo, s3manager.WriterReadFrom
Structure Field Summary collapse
- CEKAlg string
-
CipherKey string
CipherKey is the randomly generated cipher key.
-
IV string
IV is the randomly generated IV base64 encoded.
-
MatDesc string
MaterialDesc is a description to distinguish from other envelopes.
- TagLen string
- UnencryptedContentLen string
-
UnencryptedMD5 string
Deprecated: This MD5 hash is no longer populated.
- WrapAlg string
Method Summary collapse
-
func (e *Envelope) UnmarshalJSON(value []byte) error
UnmarshalJSON unmarshalls the given JSON bytes into Envelope.
Structure Field Details
CEKAlg string
`json:"x-amz-cek-alg"`
CipherKey string
`json:"x-amz-key-v2"`
CipherKey is the randomly generated cipher key.
IV string
`json:"x-amz-iv"`
IV is the randomly generated IV base64 encoded.
MatDesc string
`json:"x-amz-matdesc"`
MaterialDesc is a description to distinguish from other envelopes.
TagLen string
`json:"x-amz-tag-len"`
UnencryptedContentLen string
`json:"x-amz-unencrypted-content-length"`
UnencryptedMD5 string
`json:"-"`
Deprecated: This MD5 hash is no longer populated
WrapAlg string
`json:"x-amz-wrap-alg"`
Method Details
func (e *Envelope) UnmarshalJSON(value []byte) error
UnmarshalJSON unmarshalls the given JSON bytes into Envelope
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
// File 'service/s3/s3crypto/envelope.go', line 48
|