AWS三种SSE(SSE-S3/SSE-KMS/SSE-C)是否均采用信封加密?
AWS三种服务器端加密(SSE-S3、SSE-KMS、SSE-C)与信封加密的关系
结论:这三种加密方式均采用信封加密模式,都使用两个层级的密钥,具体细节如下:
- SSE-S3:AWS自动生成并管理数据密钥(DEK),用该DEK加密对象数据,再用AWS管理的S3主密钥加密DEK,加密后的DEK会和对象一同存储。访问对象时,S3先解密DEK,再用DEK解密原始数据。
- SSE-KMS:遵循信封加密逻辑。由KMS服务生成数据密钥(DEK),用DEK加密对象数据,再用你指定的KMS客户主密钥(CMK)加密DEK,加密后的DEK随对象存储。访问时,KMS先解密DEK,再用DEK解密数据,CMK可以是AWS托管或自定义创建的。
- SSE-C:由你自行提供加密密钥(CEK),S3会用该CEK生成数据密钥(DEK),用DEK加密对象数据,再用你提供的CEK加密DEK,加密后的DEK和对象一起存储。注意S3不会留存你的原始CEK,每次访问对象时需要重新提供CEK,S3用它解密DEK后再解密数据。
三种方式的核心逻辑一致:用数据密钥加密实际业务数据,再用另一层密钥加密这个数据密钥,加密后的数据密钥随对象存储,完全契合信封加密的定义。
内容的提问来源于stack exchange,提问作者Daniel S.
相关产品推荐
相关产品推荐

