格式化密钥以进行导入

本主题介绍了如何设置密钥格式,以便 Cloud KMS 可以将其作为新密钥版本导入。

正确的密钥材料格式因密钥材料是导入到对称密钥还是非对称密钥而异。如需详细了解对称密钥和非对称密钥之间的差异,请参阅密钥用途和算法

支持的密钥格式

  • 用于加密的对称密钥: 导入的对称密钥必须为 32 个字节的二进制数据,且“不得”经过编码。 如果您的密钥是十六进制编码或 base64 编码的密钥,则必须先对其进行解码,然后再尝试导入。
  • 用于签名的对称密钥(MAC 密钥):导入的 HMAC 签名密钥的长度必须等于使用的加密哈希函数的输出长度(例如,HMAC-SHA256 密钥的长度必须为 32 个字节),并且不得进行编码。如果您的密钥是十六进制编码或 base64 编码的密钥,则必须先对其进行解码,然后再尝试导入。
  • 用于加密或签名的非对称密钥:导入的非对称密钥必须采用 PKCS #8 格式,且必须经过 DER 编码。PCKS #8 格式在 RFC 5208 中定义。DER 编码定义在 International Telecommunications Union X.680 中。非对称密钥必须使用 Cloud KMS 支持的其中一个长度和算法组合

密钥一经创建,密钥的某些方面(例如密钥的长度)便无法更改。在这些情况下,密钥无法导入到 Cloud KMS 中。

检查对称密钥

使用 wc 命令检查对称密钥的长度。

wc -c /path/to/unwrapped-key
  • 您不能导入长度不是 32 的对称加密密钥。