Я пытаюсь интегрировать Safenet HSM с нашим приложением.Я пишу программу на C. Я имею в виду стандартный документ PKCS11 v2.20 cryptoki от RSA labs.Мне нужно сгенерировать 256-битный ключ AES.При определении шаблона для генерации ключа я не уверен, какое значение нужно передать для CKA_VALUE.При создании ключа DES3 я не предоставил этот атрибут, и мне удалось сгенерировать ключ.
Я искал примеры программ для CKA_LABEL, но не смог найти каких-либо убедительных примеров в C. Я нашел паруJava-программы, в которых они использовали CKA_VALUE_LEN вместо CKA_VALUE.Я не уверен, что это сработает.
Это фрагмент, приведенный в документе.Большинство сайтов приводят только этот фрагмент в качестве примера.Ничего не указано для значения массива.
CK_OBJECT_CLASS class = CKO_SECRET_KEY;
CK_KEY_TYPE keyType = CKK_AES;
CK_UTF8CHAR label[] = “An AES secret key object”;
CK_BYTE value[] = {...};
CK_BBOOL true = CK_TRUE;
CK_ATTRIBUTE template[] = {
{CKA_CLASS, &class, sizeof(class)},
{CKA_KEY_TYPE, &keyType, sizeof(keyType)},
{CKA_TOKEN, &true, sizeof(true)},
{CKA_LABEL, label, sizeof(label)-1},
{CKA_ENCRYPT, &true, sizeof(true)},
{CKA_VALUE, value, sizeof(value)}
};