首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HSM AES密钥提取

HSM AES密钥提取
EN

Stack Overflow用户
提问于 2017-07-08 05:10:04
回答 1查看 456关注 0票数 1

我有一个泰利斯AES,我已经在其中创建了一个(CKA_SENSATIVE,false) nShield密钥,我想提取它,但我根本不知道如何在java中做到这一点。我的Key创建如下所示:

代码语言:javascript
复制
CK_ATTRIBUTE[] aesKeyObject = new CK_ATTRIBUTE[14];

    try
    {
        aesKeyObject[0] = new CK_ATTRIBUTE(CKA_CLASS, CKO_SECRET_KEY);
        aesKeyObject[1] = new CK_ATTRIBUTE(CKA_KEY_TYPE, CKK_AES);
        aesKeyObject[2] = new CK_ATTRIBUTE(CKA_VALUE_LEN, 32);
        aesKeyObject[3] = new CK_ATTRIBUTE(CKA_TOKEN, true);
        aesKeyObject[4] = new CK_ATTRIBUTE(CKA_LABEL, "TestAES".getBytes());
        aesKeyObject[5] = new CK_ATTRIBUTE(CKA_PRIVATE, true);
        aesKeyObject[6] = new CK_ATTRIBUTE(CKA_EXTRACTABLE, true);
        aesKeyObject[7] = new CK_ATTRIBUTE(CKA_WRAP, true);
        aesKeyObject[8] = new CK_ATTRIBUTE(CKA_UNWRAP, true);
        aesKeyObject[9] = new CK_ATTRIBUTE(CKA_ENCRYPT, true);
        aesKeyObject[10] = new CK_ATTRIBUTE(CKA_DECRYPT, true);
        aesKeyObject[11] = new CK_ATTRIBUTE(CKA_TRUSTED, true);
        aesKeyObject[12] = new CK_ATTRIBUTE(CKA_ID, 1550);
        aesKeyObject[13] = new CK_ATTRIBUTE(CKA_SENSITIVE, false);

        CK_MECHANISM mech = new CK_MECHANISM(CKM_AES_KEY_GEN);

        long newAESKeyHandle = p11.C_GenerateKey(hSession, mech, aesKeyObject);     
    }catch(Exception e)
    {
    }
EN

回答 1

Stack Overflow用户

发布于 2017-07-08 05:39:55

需要通过C_GetAttributeValue函数读取生成的key对象的CKA_VALUE属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44979671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档