Cryptoki: a cryptographic Token Interface



Download 360.55 Kb.
Page64/196
Date22.12.2023
Size360.55 Kb.
#63026
1   ...   60   61   62   63   64   65   66   67   ...   196
v201-95
pkcs11-base-v2.40-cos01
Attribute

Data type

Meaning

CKA_VALUE1,4,6,7

Byte array

Key value (always 8 bytes long)

DES keys must always have their parity bits properly set as described in FIPS PUB 46-2. Attempting to create or unwrap a DES key with incorrect parity will return an error.


The following is a sample template for creating a DES secret key object:
CK_OBJECT_CLASS class = CKO_SECRET_KEY;
CK_KEY_TYPE keyType = CKK_DES;
CK_CHAR label[] = “A DES secret key object”;
CK_BYTE value[8] = {...};
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)},
{CKA_ENCRYPT, &true, sizeof(true)},
{CKA_VALUE, value, sizeof(value)}
};


9.8.6. DES2 secret key objects


DES2 secret key objects (object class CKO_SECRET_KEY, key type CKK_DES2) hold double-length DES keys. The following table defines the DES2 secret key object attributes, in addition to the common attributes listed in Table 14, Table 19, and Table 32:
Table 38, DES2 Secret Key Object Attributes

Attribute

Data type

Meaning

CKA_VALUE1,4,6,7

Byte array

Key value (always 16 bytes long)

DES2 keys must always have their parity bits properly set as described in FIPS PUB 46-2 (i.e., each of the DES keys comprising a DES2 key must have its parity bits properly set). Attempting to create or unwrap a DES2 key with incorrect parity will return an error.


The following is a sample template for creating a double-length DES secret key object:
CK_OBJECT_CLASS class = CKO_SECRET_KEY;
CK_KEY_TYPE keyType = CKK_DES2;
CK_CHAR label[] = “A DES2 secret key object”;
CK_BYTE value[16] = {...};
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)},
{CKA_ENCRYPT, &true, sizeof(true)},
{CKA_VALUE, value, sizeof(value)}
};

Download 360.55 Kb.

Share with your friends:
1   ...   60   61   62   63   64   65   66   67   ...   196




The database is protected by copyright ©ininet.org 2024
send message

    Main page