微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 CKA_SENSITIVE false 和 CKA_PRIVATE 作为 true 的对称密钥创建

如何解决使用 CKA_SENSITIVE false 和 CKA_PRIVATE 作为 true 的对称密钥创建

我正在使用云 HSM 服务,但在尝试创建具有以下属性的 AES 256 密钥时看到 CKA_ATTRIBUTE_INVALID 错误

CKA_TOKEN=0
CKA_SENSITIVE=0
CKA_PRIVATE=1
CKA_ENCRYPT=1
CKA_DECRYPT=1
CKA_SIGN=1
CKA_VERIFY=1
CKA_WRAP=1
CKA_UNWRAP=1
CKA_DERIVE=1
CKA_EXTRACTABLE=1
CKA_MODIFIABLE=0

因此出现错误: 状态:C_DeriveKey 返回错误。 (CKR_ATTRIBUTE_VALUE_INVALID)

我发现我是否将 CKA_SENSITIVECKA_PRIVATE 都作为 1 传递并创建了密钥。

我的问题是如何知道哪些是有效的属性组合?
有人可以指出我的文档吗? 我在标准 PKCS#11 规范指南中没有找到太多细节。

我将不胜感激!

干杯。

解决方法

据我所知,以下属性有错误的值:

CKA_SIGN=1
CKA_VERIFY=1

对称密钥不能用于签名。

这个值还有一些问题:

CKA_TOKEN=0

表示key是session对象,

CKA_SENSITIVE=0

表示密钥值是“可见的” - 它不安全。

根据我的经验:
尝试从模板中一一删除属性,您可以找出其中哪些是错误的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。