Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Атрибуты объекта CKO_PUBLIC_KEY, тип CKK_ECDSA

Атрибут

Тип данных

Значение

Атрибуты открытого ключа ECDSA (ECDSA Public Key Attributes)
CKA_ECDSA_PARAMS1,2,3Byte array

Значение ECParameters из стандарта X9.62 в DER-кодировке 

CKA_EC_POINT1,3,4

Byte arrayЗначение ECPoint из стандарта X9.62  в DER-кодировке 

1 должен быть определен при создании объекта с помощью функции C_CreateObject.

...

должен остаться незаданным при генерации объекта с помощью функций C_GenerateKey или C_GenerateKeyPair

Больше информации по ключам ECDSA можно найти в PKCS#11.


Шаблон создания открытого ключа ECDSA

...

Больше информации по ключам ECDSA можно найти в PKCS #1PKCS#11.

Code Block
titleШаблон создания закрытого ключа ECDSA
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)}
};

...