如何使用C_SetAttributeValue更改令牌标签

问题描述 投票:0回答:1

是否可以使用C_SetAttributeValue更改令牌标签?我使用以下功能尝试使用哪种模板来更改令牌名称,但出现了错误iaik.pkcs.pkcs11.wrapper.PKCS11Exception:CKR_TEMPLATE_INCOMPLETE

 token = getToken();
            CK_ATTRIBUTE[] attrs = new CK_ATTRIBUTE[2];
         attrs[0] = new CK_ATTRIBUTE();
                            attrs[0].type = PKCS11Constants.CKA_LABEL;
                    attrs[0].pValue = label.toCharArray();
                            attrs[1] = new CK_ATTRIBUTE();
                    attrs[1].type = PKCS11Constants.CKA_ID;
                    attrs[1].pValue = label.toCharArray(); 

                            token.getSlot().getModule().getPKCS11Module().C_SetAttributeValue(session.getSessionHandle(), token.getSlot().getSlotID(), attrs, true);
token pkcs#11 setattribute
1个回答
0
投票

您好!StackOverflow!

看看C_SetAttributeValue定义:

CK_DEFINE_FUNCTION(CK_RV, C_SetAttributeValue)(
    CK_SESSION_HANDLE hSession,
    CK_OBJECT_HANDLE hObject,
    CK_ATTRIBUTE_PTR pTemplate,
    CK_ULONG ulCount
);

第二个参数是对象ID,而不是插槽ID。

请参阅您图书馆的制造商文档,以获取允许设置令牌标签的PKCS#11扩展名。

© www.soinside.com 2019 - 2024. All rights reserved.