KMS加密与S3 SSE的区别

Difference between KMS encryption and S3 SSE

如果我使用 KMS 加密文件并将该文件推送到 S3 存储桶与使用 SSE KMS 加密将文件放入 S3 存储桶有什么区别吗?

第一:KMS Encrypt操作只会接受4K的数据,所以不是通用的解决方案。

使用S3服务器端加密,S3后端会生成一个密钥,使用该密钥加密数据,使用KMS加密密钥,然后存储加密数据and 加密密钥。当您读取数据时,它执行相反的操作:使用 KMS 解密密钥,然后使用解密的密钥解密数据。

您可以自己实现同样的事情,将加密的密钥存储在 S3 对象的元数据中。但是,这意味着您自己编写代码来进行对象加密,除非您熟悉加密,否则您可能会犯错误。

客户端加密有一些有限的用例,但在这些情况下,您将使用 不是 由 KMS 提供的加密密钥。