SoftHSM returns invalid value for `CKA_ALLOWED_MECHANISMS` when there is no limitation
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 48/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- cpp
- 领域
- cryptography, security
调研方向
Start by reading the C_GetAttributeValue handling for CKA_ALLOWED_MECHANISMS and the PKCS#11 v3.2 description linked in the issue. Compare how SoftHSM represents an absent attribute with the zero-length result shown here, and consider the reported application workarounds for context. Done means the returned length follows the chosen PKCS#11 interpretation and the behavior is covered by a regression test.
由索引模型根据 Issue 内容生成。
描述
When listing attributes of object that was created without any allowed algorithms, it should not return empty list (uninitialized pointer + 0 length) as it does now:
76: C_GetAttributeValue
P:2127568; T:0x140248153966528 2025-11-19 17:57:57.573
[in] hSession = 0x1
[in] hObject = 0x2
[in] pTemplate[1]:
CKA_ALLOWED_MECHANISMS 0000000000000001 / 0
[out] pTemplate[1]:
CKA_ALLOWED_MECHANISMS 0000000000000001 / 0
Returned: 0 CKR_OK
We had to implement a workaround for this in pkcs11-provider before:
and we are hitting the same issue in rust-cryptoki now parallaxsecond/rust-cryptoki#323 so it would be great to get this fixed.
While this is under-specified in the PKCS#11 standard, returning zero-length is unexpected by most of the application. From my reading of the C_GetAttributeValue description, I think the best would be to set the length to the CK_UNAVAILABLE_INFORMATION to signalize the attribute is valid, but not present on the given object.
https://docs.oasis-open.org/pkcs11/pkcs11-spec/v3.2/pkcs11-spec-v3.2.html#_Toc195693161
- 主要语言
- C++
- 星标
- 1.1k
- 派生
- 434
- 平均合并
- 12 天 14 小时
- 30 天内合并 PR
- 2
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
softhsm/SoftHSMv2 的其他 Issue
-
C_DigestKey digests a sensitive EC private key's CKA_VALUE: no check that the object is a secret key未关闭
难度 2/5 1-3 小时 新手友好度 78/100
-
难度 2/5 1-3 小时 新手友好度 78/100
-
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 4/5 3-5 天 新手友好度 54/100
-
难度 4/5 3-5 天 新手友好度 56/100
查看 softhsm/SoftHSMv2 的全部 Issue
相似的 Issue
-
area/ysql kind/bug priority/medium status/awaiting-triage
难度 2/5 1-3 小时 新手友好度 78/100
yugabyte/yugabyte-db#37523 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 62/100
Cockatrice/Cockatrice#7896 ·
维护者通常 1 天内回复
-
mlir
难度 2/5 1-3 小时 新手友好度 72/100
llvm/llvm-project#241070 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 68/100
ros-navigation/navigation2#6771 ·
维护者通常 1 天内回复
-
backlog documentation
难度 1/5 1 小时以内 新手友好度 96/100
EchoTools/nevr-runtime#2354 ·
维护者通常 1 天内回复