4

Amazon Key Management Services 背后使用了哪些算法或加密方法?

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

4

2 回答 2

3

在回答这个问题之前,我会说,如果你真的很感兴趣,KMS Cryptographic Details 文档非常好且详细,我建议你阅读它。

KMS 密钥有两种类型,客户主密钥 (CMK) 和数据密钥 (DK)。客户主密钥永远不会离开 AWS 基础设施,它们是通过API 调用生成的。有一个警告:它们可以由 AWS 客户(也就是你)通过这个这个API 调用来提供。数据密钥是通过API 调用生成的。该 API 返回密钥的“普通”和加密版本。此加密是使用 CMK 完成的。

根据开发人员指南,KMS 仅使用对称加密。

因此,要回答您的问题(KMS 使用什么算法),请查看此图(取自此处): KMS 信封加密

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

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

并且:

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

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

为了完整起见,当您导入主密钥时,您通常使用 RSA(2048 位)包装您的密钥材料。

于 2018-01-05T00:00:03.760 回答
0

AWS KMS 在 Galois/Counter 模式 (GCM) 中使用高级加密标准(AES) 算法,称为AES-GCM,它使用该算法和256 位密钥(从 KMS文档复制)。

于 2017-12-27T22:19:59.930 回答