本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS KMS key 等级制度
您的密钥层次结构从顶级逻辑密钥开始,即 AWS KMS key。KMS 密钥表示顶级密钥材料的容器,在 AWS 服务命名空间中使用 Amazon Resource Name (ARN) 进行唯一定义。ARN 包含唯一生成的密钥标识符,即密钥 ID。KMS 密钥是根据用户通过 AWS KMS发起的请求创建的。收到后, AWS KMS 请求创建初始 HSM 支持密钥 (HBK),将其放入 KMS 密钥容器中。HBK 在域中的 HSM 上生成,并且设计为永远不会以明文形式从 HSM 导出。相反地,HBK 在 HSM 管理的域密钥下以加密形式导出。 HBKs这些导出的密钥令牌称为导出的密钥令牌 (EKTs)。
EKT 将导出到高持久性、低延迟的存储中。例如,假设您收到逻辑 KMS 密钥的 ARN。这表示您的密钥层次结构或加密上下文的顶部。您可以在自己的账户中创建多个 KMS 密钥,并像任何其他 AWS 命名资源一样对 KMS 密钥设置策略。
在特定 KMS 密钥的层次结构中,可以将 HBK 视为 KMS 密钥的一个版本。当您想要轮换 KMS 密钥时 AWS KMS,会创建一个新的 HBK,并将其与 KMS 密钥关联为 KMS 密钥的主动 HBK。较旧 HBKs 的数据会被保留,可用于解密和验证以前受保护的数据。但只有活动的加密密钥才能用于保护新信息。

您可以通过 AWS KMS 请求使用您的 KMS 密钥直接保护信息,或者请求受您的 KMS 密钥保护的其他由 HSM 生成的密钥。这些密钥称为客户数据密钥,或 CDKs。 CDKs 可以加密后返回为密文 (CT)、纯文本或两者兼而有之。所有使用 KMS 密钥加密的对象(客户提供的数据或 HSM 生成的密钥)只能通过调用在 HSM 上进行解密。 AWS KMS
返回的密文或解密后的有效载荷永远不会存储在其中。 AWS KMS该信息通过与 AWS KMS的 TLS 连接返回给您。这也适用于 AWS 服务部门代表您拨打的电话。
密钥层次结构和特定密钥属性如下表中所示。
键 | 描述 | 生命周期 |
---|---|---|
域密钥 |
仅在 HSM 内存中的 256 位 AES-GCM 密钥,用于包装 KMS 密钥(HSM 备用密钥)的版本。 |
每天轮换1 |
HSM 备用密钥 |
256 位对称密钥或者 RSA 或椭圆曲线私有密钥,用于保护客户数据和密钥,在域密钥下加密存储。。一个或多个 HSM 备用密钥组成 KMS 密钥(通过 keyId 表示)。 |
每年轮换2(可选配置) |
派生加密密钥 |
仅在 HSM 内存中的 256 位 AES-GCM 密钥,用于加密客户数据和密钥。从每个加密的 HBK 派生。 |
每次加密时使用一次,并在解密时重新生成 |
客户数据密钥 |
以明文和密文形式从 HSM 导出的、用户定义的对称或非对称密钥。 在 HSM 备用密钥下加密,然后通过 TLS 通道返回给授权用户。 |
轮换和使用由应用程序控制 |
1 AWS KMS 可能会不时地将域密钥轮换放宽到最多每周一次,以处理域管理和配置任务。
2 由您代您 AWS 托管式密钥 创建和管理 AWS KMS 的默认值每年自动轮换。