2

我已将密钥上传到 AWS Key Management Service。使用它,我可以加密事物,然后使用该服务对其进行解密。

但是,我希望可以放心,我可以使用我放入 KMS 的密钥(以证明它是我的密钥)解密密文 blob,并用于备份目的(如果 KMS 失败)。

我找不到 KMS 使用的加密格式和方法。

任何人都可以提供示例(openssl / python 等)。

4

1 回答 1

0

我发现的关于 KMS 密文 blob 的唯一信息是在这个文档中。从第 23 页的底部开始,它说:

每当在 CMK 下对元素进行加密时,生成的对象就是客户密文。密文将包含两部分:未加密的标头(或明文)部分,受认证的加密方案保护,作为附加的认证数据,以及加密的部分。明文部分将包括 HSA 支持密钥标识符 (HBKID)。

我找不到更多格式细节,甚至找不到:

  • 密文 blob 的哪一部分是加密部分?
  • 使用了什么初始化向量(IV)?
  • 是否使用了密钥派生函数 (KDF)?

但是,如果您想在 KMS 发生故障时进行备份,则在使用信封加密时,只需备份数据密钥就足够了。最后,这是解密数据所需的唯一密钥。当然,存储此类密钥备份必须像存储导入的密钥材料一样谨慎。

于 2016-12-21T13:46:09.100 回答