关于对称 CMK 和非对称 CMK - AWS Key Management Service
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

关于对称 CMK 和非对称 CMK

在 AWS KMS 中,可以创建对称 CMK 和非对称 CMK。

对称客户主密钥

在 KMS 中创建客户主密钥 (CMK) 时,默认情况下将获得对称 CMK。

在 AWS KMS 中,对称 CMK 表示 256 位加密密钥,它永远不会让 AWS KMS 处于未加密状态。要使用对称 CMK,必须调用 AWS KMS。对称密钥用在对称加密中,加密和解密采用的是相同的密钥。

除非任务明确要求使用非对称加密,否则对称 CMK(永远不会让 AWS KMS 处于未加密状态)是个不错的选择。有关对称 CMK 的加密配置或密钥规范 的信息,请参阅 SYMMETRIC_DEFAULT 密钥规范。要获取有关创建对称 CMK 的帮助,请参阅创建对称 CMK

与 AWS KMS 集成的 AWS 服务使用对称 CMK 加密您的数据。这些服务不支持使用非对称 CMK 进行加密。 要获取确定 CMK 是对称还是非对称的帮助,请参阅识别对称 CMK 和非对称 CMK

在 AWS KMS 中,可以使用对称 CMK 加密、解密和重新加密数据,生成数据密钥和数据密钥对,并生成随机字节字符串。您可以将自己的密钥材料导入对称 CMK 中,并在自定义密钥存储中创建对称 CMK。有关可以对对称 CMK 和非对称 CMK 执行的操作的比较表格,请参阅比较对称 CMK 与非对称 CMK

非对称客户主密钥

注意

除 中国(北京) 和 中国 (宁夏) 外,AWS KMS 支持的所有 AWS 区域中都支持非对称 CMK 和非对称数据密钥对。

您可以在 AWS KMS 中创建非对称 CMK。非对称 CMK 表示数学上相关的公有密钥和私有密钥对。公有密钥可以交给任何人,即使他们不可靠,但私有密钥必须保密。

在非对称 CMK 中,私有密钥是在 AWS KMS 中创建的,它永远不会让 AWS KMS 处于未加密状态。要使用私有密钥,必须调用 AWS KMS。您可以通过调用 AWS KMS API 操作在 AWS KMS 内使用公有密钥。或者,可以下载公有密钥并在 AWS KMS 外部使用该密钥。

如果使用案例需要无法调用 AWS KMS 的用户在 AWS 外部进行加密,那么非对称 CMK 是个不错的选择。但是,如果要创建 CMK 来加密在 AWS 服务中存储或管理的数据,请使用对称 CMK。与 AWS KMS 集成的 AWS 服务使用对称 CMK 加密您的数据。这些服务不支持使用非对称 CMK 进行加密。

AWS KMS 支持两种类型的非对称 CMK。

  • RSA CMK:具有 RSA 密钥对的 CMK,用于加密和解密或签名和验证(但不能同时用于二者)。KMS 支持多种密钥长度,以满足不同安全要求。

  • 椭圆曲线 (ECC) CMK:具有椭圆曲线密钥对的 CMK,用于签名和验证。KMS 支持多种常用曲线。

有关 AWS KMS 支持用于 RSA CMK 的加密和签名算法的技术详细信息,请参阅 RSA 密钥规范。有关 AWS KMS 支持用于 ECC CMK 的签名算法的技术详细信息,请参阅椭圆曲线密钥规范

有关可以对对称 CMK 和非对称 CMK 执行的操作的比较表格,请参阅比较对称 CMK 与非对称 CMK。要获取确定 CMK 是对称还是非对称的帮助,请参阅识别对称 CMK 和非对称 CMK