我想知道如何使用go模块miekg / pkcs11为ECDSA模板传递正确的参数值:到目前为止,我得到了: privateKeyTemplate := []*pkcs11.Attribute{
pkcs11.NewAttribute(pkcs11.CKA_TOKEN, tokenPersistent),
pkcs11.NewAttribute(pkcs11.CKA_ECDSA_PARAMS, []byte{{/*how to use secp256k1?*/}),
pkcs11.NewAttribute(pkcs11.CKA_SIGN, true),
pkcs11.NewAttribute(pkcs11.CKA_LABEL, label),
pkcs11.NewAttribute(pkcs11.CKA_SENSITIVE, true),
pkcs11.NewAttribute(pkcs11.CKA_EXTRACTABLE, true),
}有人可以帮我吗?谢谢编辑:Alexander提供的字节数组是正确的,但请注意,我原来的问题也具有误导性。不应将ECDSA_PARAMS放在私钥模板中,而应仅放在公钥模板上。
1 回答

12345678_0001
TA贡献1802条经验 获得超5个赞
在 OpenSC 项目中检查此行 (3189):
FILL_ATTR(privkey_templ[n_privkey_attr], CKA_EC_PARAMS, gost.param_oid.value, gost.param_oid.len);
和这个(3199):
FILL_ATTR(privkey_templ[n_privkey_attr], CKA_GOSTR3410_PARAMS, gost.param_oid.value, gost.param_oid.len);
根据我对GOST密钥的经验,我建议这里必须是一个编码的OID。在你的情况下,它可能看起来像这样:
[]byte{ 06, 04, 01, 02, 03, 04 }
- 1 回答
- 0 关注
- 138 浏览
添加回答
举报
0/150
提交
取消