...
Атрибуты объекта CKO_PUBLIC_KEY, тип CKK_ECDSA
Атрибут | Тип данных | Значение |
Атрибуты открытого ключа ECDSA (ECDSA Public Key Attributes) | ||
CKA_ECDSA_PARAMS1,2,3 | Byte array | Значение ECParameters из стандарта X9.62 в DER-кодировке |
CKA_EC_POINT1,3,4 | Byte array | Значение ECPoint из стандарта X9.62 в DER-кодировке |
1 должен быть определен при создании объекта с помощью функции C_CreateObject.
...
4 должен остаться незаданным при генерации объекта с помощью функций C_GenerateKey или C_GenerateKeyPair
Больше информации по ключам ECDSA можно найти в PKCS#11.
Шаблон создания открытого ключа ECDSA
...
Больше информации по ключам ECDSA можно найти в PKCS #1PKCS#11.
Code Block | ||
---|---|---|
| ||
CK_OBJECT_CLASS class = CKO_PRIVATE_KEY; CK_KEY_TYPE keyType = CKK_ECDSA; CK_UTF8CHAR label[] = "An ECDSA private key object"; CK_BYTE subject[] = {... }; CK_BYTE id[] = { 123 }; CK_BYTE ecdsaParams[] = {... }; CK_BYTE value[] = {... }; CK_BBOOL true = 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_SUBJECT, subject, sizeof(subject)} , {CKA_ID, id, sizeof(id)} , {CKA_SENSITIVE, &true, sizeof(true)} , {CKA_DERIVE, &true, sizeof(true)} , {CKA_ECDSA_PARAMS, ecdsaParams, sizeof(ecdsaParams)} , {CKA_VALUE, value, sizeof(value)} }; |
...