Encryption is optional and may be performed by the
S3 service as objects are written to storage.
Encryption is part of the storage architecture and is always
performed below the S3 service as files are written to the
underlying filesystem.
Object contents are encrypted, while filenames, metadata,
IAM data, and internal service data may require separate
protection.
Object contents, filenames, file-based metadata, IAM data,
and internal service data are all encrypted within the same
underlying filesystem.
Encryption and key management depend on the capabilities and
configuration of the S3 service.
Encryption and key management operate independently of the
S3 service through gocryptfs.
Objects may be split into fragments or stored in
implementation-specific formats, without preserving
the original files and directory structure.
Within the encrypted filesystem, objects are stored as
regular POSIX files, preserving their original directory
structure.
Importing existing data typically requires S3-compatible
tools or scripts to upload files and recreate their
directory structure.
Existing data can be copied directly into the mounted
encrypted filesystem, preserving the directory structure
without S3-specific import tools.
If the S3 service fails, access to encrypted objects may
be lost until the service is restored or an alternative
recovery method is available.
In an emergency, the encrypted filesystem can be mounted
directly with gocryptfs, allowing access to stored files
without the S3 gateway.