我需要使用带有hsm的sha256的ECDSA,我使用带有http://www.pkcs11interop.net/包装器的c#。 Github代码有CKM_ECDSA_SHA256,但不是3.3.0版本,即使该版本是截至1月24日的最新版本,并且enum的添加时间要早得多。
为什么我无法访问枚举?我可以在签名之前使用CKM_ECDSA和哈希,但是这会破坏使用hsm的速度。
答案 0 :(得分:1)
CKM_ECDSA_SHA256枚举成员于2017年3月1日作为larger patch的一部分添加,增加了对PKCS#11 v2.40的支持。它不存在于Pkcs11Interop v3.3.0中,但它出现在GitHub上的master branch中,它尚未作为Pkcs11Interop v4.0.0发布。
同时你可以使用重载方法接受ulong而不是CKM并在你的代码中定义缺少的常量:
const ulong CKM_ECDSA_SHA256 = 0x00001044;