An optional parameter to set the Customer-Supplied Encryption key.
Application developers can generate their own encryption keys to protect the data in GCS. This is known as a Customer-Supplied Encryption key (CSEK). If the application provides a CSEK, GCS does not retain the key. The object data, the object CRC32 checksum, and its MD5 hash (if applicable) are all encrypted with this key, and the key is required to read any of these elements back.
Care must be taken to save and protect these keys, if lost, the data is not recoverable. Also, applications should avoid generating predictable keys, as this weakens the encryption.
This option is used in read (download), write (upload), copy, and compose operations. Note that copy and compose operations use the same key for the source and destination objects.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-01 UTC."],[[["The content provides a list of Google Cloud Storage C++ library versions, ranging from version 2.11.0 to the latest release candidate 2.37.0-rc, with links to each version's documentation for the `EncryptionKey` struct."],["Customer-Supplied Encryption Keys (CSEK) can be used by application developers to encrypt data in Google Cloud Storage (GCS), but GCS does not store these keys."],["CSEK encryption is applied to object data, its CRC32 checksum, and MD5 hash, and is required to read any of these elements back, making key preservation crucial for data recovery."],["The `EncryptionKey` class offers two methods, `FromBinaryKey` and `FromBase64Key`, to generate an encryption key parameter from either a binary key or a base64-encoded key, both of which must decode to 32 bytes."],["There is a `prefix()` static function included in the content that returns a constant character pointer."]]],[]]