密钥管理服务

时间:2017-12-20 11:18:38

标签: aws-kms

亚马逊密钥管理服务背后使用了哪些算法或加密方法?

我搜索了它,但发现只有配置相关信息而不是集成信息。

2 个答案:

答案 0 :(得分:3)

我在这个答案前面说过,如果你真的感兴趣,那么KMS Cryptographic Details document真的很好而且很详细,我建议你阅读它。

有两种类型的KMS密钥,即客户主密钥(CMK)和数据密钥(DK)。客户主密钥永远不会离开AWS基础架构,它们是通过API call生成的。需要注意的是:它们可以由AWS客户(也称为您)通过thisthis API调用提供。数据密钥通过API call生成。该API返回" plain"和密钥的加密版本。此加密使用CMK完成。

根据developer guide,KMS仅使用对称加密。

因此,要回答您的问题(KMS使用的算法),请查看此图表(摘自here): KMS Envelope Encryption

图像底部的加密算法是用于加密DK的算法。从上面链接的加密详细信息文档:

  

AWS KMS使用可配置的加密算法,以便系统使用   可以快速从一种算法或模式迁移到另一种算法或模式。该   已选择初始默认的加密算法集   联邦信息处理标准(FIPS认可的算法)   他们的安全属性和性能。

还有:

  

HSA中使用的所有对称密钥加密命令都使用   伽罗瓦计数器模式(GCM)中的高级加密标准(AES)   使用256位密钥。类似的解密调用使用反向   功能

生成DK后,使用您想要的算法和标准自行执行加密和解密(这是上图中顶部的加密算法)。但是今天你能生成的唯一类型的DK是AES,你只能选择是想要128位还是256位(docs)。

为了完整起见,在导入主密钥时,通常wrap your key material使用RSA(2048位)。

答案 1 :(得分:0)

AWS KMS在Galois / Counter Mode(GCM)中使用高级加密标准(AES)算法,称为 AES-GCM ,它使用此算法 256位密钥(从KMS document复制)。