AWS S3:是 SSE-S3 信封加密吗?
Posted
技术标签:
【中文标题】AWS S3:是 SSE-S3 信封加密吗?【英文标题】:AWS S3: is SSE-S3 envelope encryption? 【发布时间】:2021-06-16 12:30:43 【问题描述】:这是使用 S3 托管密钥 (SSE-S3) 进行服务器端加密的加密流程
(此图来自Oreilly)
-
客户端选择自己的对象上传到 S3,并在此过程中指明 SSE-S3 的加密机制。
然后S3 控制该对象并使用S3 生成的明文数据密钥对其进行加密。结果是对象的加密版本,然后存储在您选择的 S3 存储桶中。
然后使用 S3 主密钥对用于加密对象的明文数据密钥进行加密,从而生成密钥的加密版本。这个现在加密的密钥也存储在 S3 上,并且与加密的数据对象有关联。最后,明文数据密钥在 S3 中从内存中删除。
如您所见,SSE-S3 使用唯一的数据密钥来加密对象,而不是主密钥。
我经常听说 SSE-KMS 是信封加密,我的问题是:
SSE-S3 是否也封装加密?
参考
-
Stack Overflow: Does AWS KMS use envelope encryption?
AWS KMS Envelope Encryption
【问题讨论】:
【参考方案1】:AWS Encryption-At-Rest(服务器端加密)使用Envelope Encryption,无论使用什么密钥。不仅适用于 S3,适用于 AWS 的每项服务。 Here 是一个不错的博客。
唯一的区别是谁管理数据密钥和加密密钥。
SSE-S3 两个密钥均由 AWS 管理 SSE-KMS 我们管理 CMK,AWS 管理数据密钥。让我们能够更好地控制轮换、访问等。 SSE-C 我们同时管理加密密钥和数据密钥(我们可以选择不使用数据密钥但使用相同的密钥),我们提供数据密钥和算法,AWS 为我们加密,我们需要跟踪哪个键用于哪个对象。【讨论】:
以上是关于AWS S3:是 SSE-S3 信封加密吗?的主要内容,如果未能解决你的问题,请参考以下文章
开始准备AWS Developer认证考试--服务器端加密保护数据S3
Amazon S3 存储桶加密 - KMS 与 AES 256
如何使用 Active Storage Rails 上传到具有 AES256 加密(服务器端加密)的 AWS S3 存储桶?