[][src]Module pkcs11::types

This module is basically a full conversion of the pkcs11t.h C header file.

Structs

CK_AES_CBC_ENCRYPT_DATA_PARAMS
CK_AES_CCM_PARAMS
CK_AES_CTR_PARAMS
CK_AES_GCM_PARAMS
CK_ARIA_CBC_ENCRYPT_DATA_PARAMS
CK_ATTRIBUTE
CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS
CK_CAMELLIA_CTR_PARAMS
CK_CCM_PARAMS
CK_CMS_SIG_PARAMS
CK_C_INITIALIZE_ARGS
CK_DATE
CK_DES_CBC_ENCRYPT_DATA_PARAMS
CK_DSA_PARAMETER_GEN_PARAM
CK_ECDH1_DERIVE_PARAMS
CK_ECDH2_DERIVE_PARAMS
CK_ECDH_AES_KEY_WRAP_PARAMS
CK_ECMQV_DERIVE_PARAMS
CK_FUNCTION_LIST
CK_GCM_PARAMS
CK_GOSTR3410_DERIVE_PARAMS
CK_GOSTR3410_KEY_WRAP_PARAMS
CK_INFO
CK_KEA_DERIVE_PARAMS
CK_KEY_DERIVATION_STRING_DATA
CK_KEY_WRAP_SET_OAEP_PARAMS
CK_KIP_PARAMS
CK_MECHANISM
CK_MECHANISM_INFO
CK_OTP_PARAM
CK_OTP_PARAMS
CK_OTP_SIGNATURE_INFO
CK_PBE_PARAMS
CK_PKCS5_PBKD2_PARAMS
CK_PKCS5_PBKD2_PARAMS2
CK_RC2_CBC_PARAMS
CK_RC2_MAC_GENERAL_PARAMS
CK_RC5_PARAMS
CK_RC5_CBC_PARAMS
CK_RC5_MAC_GENERAL_PARAMS
CK_RSA_AES_KEY_WRAP_PARAMS
CK_RSA_PKCS_OAEP_PARAMS
CK_RSA_PKCS_PSS_PARAMS
CK_SEED_CBC_ENCRYPT_DATA_PARAMS
CK_SESSION_INFO
CK_SKIPJACK_PRIVATE_WRAP_PARAMS
CK_SKIPJACK_RELAYX_PARAMS
CK_SLOT_INFO
CK_SSL3_RANDOM_DATA
CK_SSL3_MASTER_KEY_DERIVE_PARAMS
CK_SSL3_KEY_MAT_OUT
CK_SSL3_KEY_MAT_PARAMS
CK_TLS12_MASTER_KEY_DERIVE_PARAMS
CK_TLS12_KEY_MAT_PARAMS
CK_TLS_KDF_PARAMS
CK_TLS_MAC_PARAMS
CK_TLS_PRF_PARAMS
CK_TOKEN_INFO
CK_VERSION
CK_WTLS_KEY_MAT_OUT
CK_WTLS_KEY_MAT_PARAMS
CK_WTLS_MASTER_KEY_DERIVE_PARAMS
CK_WTLS_PRF_PARAMS
CK_WTLS_RANDOM_DATA
CK_X9_42_MQV_DERIVE_PARAMS
CK_X9_42_DH1_DERIVE_PARAMS
CK_X9_42_DH2_DERIVE_PARAMS

Enums

CK_VOID

Constants

CKA_AC_ISSUER
CKA_ALLOWED_MECHANISMS
CKA_ALWAYS_AUTHENTICATE
CKA_ALWAYS_SENSITIVE
CKA_APPLICATION
CKA_ATTR_TYPES
CKA_AUTH_PIN_FLAGS
CKA_BASE
CKA_BITS_PER_PIXEL
CKA_CERTIFICATE_CATEGORY
CKA_CERTIFICATE_TYPE
CKA_CHAR_COLUMNS
CKA_CHAR_ROWS
CKA_CHAR_SETS
CKA_CHECK_VALUE
CKA_CLASS

The following attribute types are defined:

CKA_COEFFICIENT
CKA_COLOR
CKA_COPYABLE
CKA_DECRYPT
CKA_DEFAULT_CMS_ATTRIBUTES
CKA_DERIVE
CKA_DERIVE_TEMPLATE
CKA_DESTROYABLE
CKA_ECDSA_PARAMS
CKA_EC_PARAMS
CKA_EC_POINT
CKA_ENCODING_METHODS
CKA_ENCRYPT
CKA_END_DATE
CKA_EXPONENT_1
CKA_EXPONENT_2
CKA_EXTRACTABLE
CKA_GOST28147_PARAMS
CKA_GOSTR3410_PARAMS
CKA_GOSTR3411_PARAMS
CKA_HASH_OF_ISSUER_PUBLIC_KEY
CKA_HASH_OF_SUBJECT_PUBLIC_KEY
CKA_HAS_RESET
CKA_HW_FEATURE_TYPE
CKA_ID
CKA_ISSUER
CKA_JAVA_MIDP_SECURITY_DOMAIN
CKA_KEY_GEN_MECHANISM
CKA_KEY_TYPE
CKA_LABEL
CKA_LOCAL
CKA_MECHANISM_TYPE
CKA_MIME_TYPES
CKA_MODIFIABLE
CKA_MODULUS
CKA_MODULUS_BITS
CKA_NAME_HASH_ALGORITHM
CKA_NEVER_EXTRACTABLE
CKA_OBJECT_ID
CKA_OTP_CHALLENGE_REQUIREMENT
CKA_OTP_COUNTER
CKA_OTP_COUNTER_REQUIREMENT
CKA_OTP_FORMAT
CKA_OTP_LENGTH
CKA_OTP_PIN_REQUIREMENT
CKA_OTP_SERVICE_IDENTIFIER
CKA_OTP_SERVICE_LOGO
CKA_OTP_SERVICE_LOGO_TYPE
CKA_OTP_TIME
CKA_OTP_TIME_INTERVAL
CKA_OTP_TIME_REQUIREMENT
CKA_OTP_USER_FRIENDLY_MODE
CKA_OTP_USER_IDENTIFIER
CKA_OWNER
CKA_PIXEL_X
CKA_PIXEL_Y
CKA_PRIME
CKA_PRIME_1
CKA_PRIME_2
CKA_PRIME_BITS
CKA_PRIVATE
CKA_PRIVATE_EXPONENT
CKA_PUBLIC_EXPONENT
CKA_PUBLIC_KEY_INFO
CKA_REQUIRED_CMS_ATTRIBUTES
CKA_RESET_ON_INIT
CKA_RESOLUTION
CKA_SECONDARY_AUTH
CKA_SENSITIVE
CKA_SERIAL_NUMBER
CKA_SIGN
CKA_SIGN_RECOVER
CKA_START_DATE
CKA_SUBJECT
CKA_SUBPRIME
CKA_SUBPRIME_BITS
CKA_SUB_PRIME_BITS
CKA_SUPPORTED_CMS_ATTRIBUTES
CKA_TOKEN
CKA_TRUSTED
CKA_UNWRAP
CKA_UNWRAP_TEMPLATE
CKA_URL
CKA_VALUE
CKA_VALUE_BITS
CKA_VALUE_LEN
CKA_VENDOR_DEFINED
CKA_VERIFY
CKA_VERIFY_RECOVER
CKA_WRAP
CKA_WRAP_TEMPLATE
CKA_WRAP_WITH_TRUSTED
CKC_VENDOR_DEFINED
CKC_WTLS
CKC_X_509

The following certificate types are defined:

CKC_X_509_ATTR_CERT
CKD_CPDIVERSIFY_KDF
CKD_NULL
CKD_SHA1_KDF
CKD_SHA1_KDF_CONCATENATE
CKD_SHA224_KDF
CKD_SHA256_KDF
CKD_SHA384_KDF
CKD_SHA512_KDF
CKD_SHA1_KDF_ASN1
CKF_ARRAY_ATTRIBUTE

The CKF_ARRAY_ATTRIBUTE flag identifies an attribute which consists of an array of values.

CKF_CLOCK_ON_TOKEN

CKF_CLOCK_ON_TOKEN. If it is set, that means that the token has some sort of clock. The time on that clock is returned in the token info structure

CKF_DECRYPT
CKF_DERIVE
CKF_DIGEST
CKF_DONT_BLOCK

CKF_DONT_BLOCK is for the function C_WaitForSlotEvent

CKF_DUAL_CRYPTO_OPERATIONS

CKF_DUAL_CRYPTO_OPERATIONS. If it is true, that means that a single session with the token can perform dual simultaneous cryptographic operations (digest and encrypt; decrypt and digest; sign and encrypt; and decrypt and sign)

CKF_EC_COMPRESS
CKF_EC_ECPARAMETERS
CKF_EC_F_2M
CKF_EC_F_P

Describe a token's EC capabilities not available in mechanism information.

CKF_EC_NAMEDCURVE
CKF_EC_UNCOMPRESS
CKF_ENCRYPT

Specify whether or not a mechanism can be used for a particular task

CKF_ERROR_STATE
CKF_EXCLUDE_CHALLENGE
CKF_EXCLUDE_COUNTER
CKF_EXCLUDE_PIN
CKF_EXCLUDE_TIME
CKF_EXTENSION
CKF_GENERATE
CKF_GENERATE_KEY_PAIR
CKF_HW

The flags are defined as follows:

CKF_HW_SLOT

hardware slot

CKF_LIBRARY_CANT_CREATE_OS_THREADS
CKF_LOGIN_REQUIRED

user must login

CKF_NEXT_OTP
CKF_OS_LOCKING_OK
CKF_PROTECTED_AUTHENTICATION_PATH

CKF_PROTECTED_AUTHENTICATION_PATH. If it is set, that means that there is some way for the user to login without sending a PIN through the Cryptoki library itself

CKF_REMOVABLE_DEVICE

removable devices

CKF_RESTORE_KEY_NOT_NEEDED

CKF_RESTORE_KEY_NOT_NEEDED. If it is set, that means that every time the state of cryptographic operations of a session is successfully saved, all keys needed to continue those operations are stored in the state

CKF_RNG

has random # generator

CKF_RW_SESSION

session is r/w

CKF_SECONDARY_AUTHENTICATION

CKF_SECONDARY_AUTHENTICATION. If it is true, the token supports secondary authentication for private key objects.

CKF_SERIAL_SESSION

no parallel

CKF_SIGN
CKF_SIGN_RECOVER
CKF_SO_PIN_COUNT_LOW

CKF_SO_PIN_COUNT_LOW. If it is true, an incorrect SO login PIN has been entered at least once since the last successful authentication.

CKF_SO_PIN_FINAL_TRY

CKF_SO_PIN_FINAL_TRY. If it is true, supplying an incorrect SO PIN will it to become locked.

CKF_SO_PIN_LOCKED

CKF_SO_PIN_LOCKED. If it is true, the SO PIN has been locked. SO login to the token is not possible.

CKF_SO_PIN_TO_BE_CHANGED

CKF_SO_PIN_TO_BE_CHANGED. If it is true, the SO PIN value is the default value set by token initialization or manufacturing, or the PIN has been expired by the card.

CKF_TOKEN_INITIALIZED

CKF_TOKEN_INITIALIZED. If it is true, the token has been initialized using C_InitializeToken or an equivalent mechanism outside the scope of PKCS #11. Calling C_InitializeToken when this flag is set will cause the token to be reinitialized.

CKF_TOKEN_PRESENT

a token is there

CKF_UNWRAP
CKF_USER_FRIENDLY_OTP
CKF_USER_PIN_COUNT_LOW

CKF_USER_PIN_COUNT_LOW. If it is true, an incorrect user login PIN has been entered at least once since the last successful authentication.

CKF_USER_PIN_FINAL_TRY

CKF_USER_PIN_FINAL_TRY. If it is true, supplying an incorrect user PIN will it to become locked.

CKF_USER_PIN_INITIALIZED

normal user's PIN is set

CKF_USER_PIN_LOCKED

CKF_USER_PIN_LOCKED. If it is true, the user PIN has been locked. User login to the token is not possible.

CKF_USER_PIN_TO_BE_CHANGED

CKF_USER_PIN_TO_BE_CHANGED. If it is true, the user PIN value is the default value set by token initialization or manufacturing, or the PIN has been expired by the card.

CKF_VERIFY
CKF_VERIFY_RECOVER
CKF_WRAP
CKF_WRITE_PROTECTED

token is write-protected

CKG_MGF1_SHA1

The following MGFs are defined

CKG_MGF1_SHA224
CKG_MGF1_SHA256
CKG_MGF1_SHA384
CKG_MGF1_SHA512
CKH_CLOCK
CKH_MONOTONIC_COUNTER

The following hardware feature types are defined

CKH_USER_INTERFACE
CKH_VENDOR_DEFINED
CKK_ACTI
CKK_AES
CKK_ARIA
CKK_BATON
CKK_BLOWFISH
CKK_CAMELLIA
CKK_CAST
CKK_CAST3
CKK_CAST5
CKK_CAST128
CKK_CDMF
CKK_DES
CKK_DES2
CKK_DES3
CKK_DH
CKK_DSA
CKK_EC
CKK_ECDSA
CKK_GENERIC_SECRET
CKK_GOST28147
CKK_GOSTR3410
CKK_GOSTR3411
CKK_HOTP
CKK_IDEA
CKK_JUNIPER
CKK_KEA
CKK_MD5_HMAC
CKK_RC2
CKK_RC4
CKK_RC5
CKK_RIPEMD128_HMAC
CKK_RIPEMD160_HMAC
CKK_RSA

the following key types are defined:

CKK_SECURID
CKK_SEED
CKK_SHA224_HMAC
CKK_SHA256_HMAC
CKK_SHA384_HMAC
CKK_SHA512_HMAC
CKK_SHA_1_HMAC
CKK_SKIPJACK
CKK_TWOFISH
CKK_VENDOR_DEFINED
CKK_X9_42_DH
CKM_ACTI
CKM_ACTI_KEY_GEN
CKM_AES_CBC
CKM_AES_CBC_ENCRYPT_DATA
CKM_AES_CBC_PAD
CKM_AES_CCM
CKM_AES_CFB1
CKM_AES_CFB8
CKM_AES_CFB64
CKM_AES_CFB128
CKM_AES_CMAC
CKM_AES_CMAC_GENERAL
CKM_AES_CTR
CKM_AES_CTS
CKM_AES_ECB
CKM_AES_ECB_ENCRYPT_DATA
CKM_AES_GCM
CKM_AES_GMAC
CKM_AES_KEY_GEN
CKM_AES_KEY_WRAP

WAS: 0x00001090

CKM_AES_KEY_WRAP_PAD

WAS: 0x00001091

CKM_AES_MAC
CKM_AES_MAC_GENERAL
CKM_AES_OFB
CKM_AES_XCBC_MAC
CKM_AES_XCBC_MAC_96
CKM_ARIA_CBC
CKM_ARIA_CBC_ENCRYPT_DATA
CKM_ARIA_CBC_PAD
CKM_ARIA_ECB
CKM_ARIA_ECB_ENCRYPT_DATA
CKM_ARIA_KEY_GEN
CKM_ARIA_MAC
CKM_ARIA_MAC_GENERAL
CKM_BATON_CBC128
CKM_BATON_COUNTER
CKM_BATON_ECB96
CKM_BATON_ECB128
CKM_BATON_KEY_GEN
CKM_BATON_SHUFFLE
CKM_BATON_WRAP
CKM_BLOWFISH_CBC
CKM_BLOWFISH_CBC_PAD
CKM_BLOWFISH_KEY_GEN
CKM_CAMELLIA_CBC
CKM_CAMELLIA_CBC_ENCRYPT_DATA
CKM_CAMELLIA_CBC_PAD
CKM_CAMELLIA_CTR
CKM_CAMELLIA_ECB
CKM_CAMELLIA_ECB_ENCRYPT_DATA
CKM_CAMELLIA_KEY_GEN
CKM_CAMELLIA_MAC
CKM_CAMELLIA_MAC_GENERAL
CKM_CAST3_KEY_GEN
CKM_CAST3_ECB
CKM_CAST3_CBC
CKM_CAST3_MAC
CKM_CAST3_MAC_GENERAL
CKM_CAST3_CBC_PAD
CKM_CAST5_KEY_GEN

Note that CAST128 and CAST5 are the same algorithm

CKM_CAST5_ECB
CKM_CAST5_CBC
CKM_CAST5_MAC
CKM_CAST5_MAC_GENERAL
CKM_CAST5_CBC_PAD
CKM_CAST128_KEY_GEN
CKM_CAST128_ECB
CKM_CAST128_CBC
CKM_CAST128_MAC
CKM_CAST128_MAC_GENERAL
CKM_CAST128_CBC_PAD
CKM_CAST_CBC
CKM_CAST_CBC_PAD
CKM_CAST_ECB
CKM_CAST_KEY_GEN
CKM_CAST_MAC
CKM_CAST_MAC_GENERAL
CKM_CDMF_CBC
CKM_CDMF_CBC_PAD
CKM_CDMF_ECB
CKM_CDMF_KEY_GEN
CKM_CDMF_MAC
CKM_CDMF_MAC_GENERAL
CKM_CMS_SIG
CKM_CONCATENATE_BASE_AND_DATA
CKM_CONCATENATE_BASE_AND_KEY
CKM_CONCATENATE_DATA_AND_BASE
CKM_DES2_KEY_GEN
CKM_DES3_KEY_GEN
CKM_DES3_ECB
CKM_DES3_CBC
CKM_DES3_MAC
CKM_DES3_MAC_GENERAL
CKM_DES3_CBC_PAD
CKM_DES3_CMAC_GENERAL
CKM_DES3_CMAC
CKM_DES3_ECB_ENCRYPT_DATA
CKM_DES3_CBC_ENCRYPT_DATA
CKM_DES_CBC
CKM_DES_CBC_ENCRYPT_DATA
CKM_DES_CBC_PAD
CKM_DES_CFB8
CKM_DES_CFB64
CKM_DES_ECB
CKM_DES_ECB_ENCRYPT_DATA
CKM_DES_KEY_GEN
CKM_DES_MAC
CKM_DES_MAC_GENERAL
CKM_DES_OFB8
CKM_DES_OFB64
CKM_DH_PKCS_DERIVE
CKM_DH_PKCS_KEY_PAIR_GEN
CKM_DH_PKCS_PARAMETER_GEN
CKM_DSA
CKM_DSA_KEY_PAIR_GEN
CKM_DSA_PARAMETER_GEN
CKM_DSA_PROBABLISTIC_PARAMETER_GEN
CKM_DSA_SHA1
CKM_DSA_SHA224
CKM_DSA_SHA256
CKM_DSA_SHA384
CKM_DSA_SHA512
CKM_DSA_SHAWE_TAYLOR_PARAMETER_GEN
CKM_ECDH1_DERIVE
CKM_ECDH1_COFACTOR_DERIVE
CKM_ECDH_AES_KEY_WRAP
CKM_ECDSA
CKM_ECDSA_KEY_PAIR_GEN
CKM_ECDSA_SHA1
CKM_ECDSA_SHA224
CKM_ECDSA_SHA256
CKM_ECDSA_SHA384
CKM_ECDSA_SHA512
CKM_ECMQV_DERIVE
CKM_EC_KEY_PAIR_GEN
CKM_EXTRACT_KEY_FROM_KEY
CKM_FASTHASH
CKM_FORTEZZA_TIMESTAMP
CKM_GENERIC_SECRET_KEY_GEN
CKM_GOST28147_KEY_GEN
CKM_GOST28147_ECB
CKM_GOST28147
CKM_GOST28147_MAC
CKM_GOST28147_KEY_WRAP
CKM_GOSTR3410_KEY_PAIR_GEN
CKM_GOSTR3410
CKM_GOSTR3410_KEY_WRAP
CKM_GOSTR3410_DERIVE
CKM_GOSTR3411
CKM_GOSTR3411_HMAC
CKM_GOSTR3410_WITH_GOSTR3411
CKM_HOTP
CKM_HOTP_KEY_GEN
CKM_IDEA_CBC
CKM_IDEA_CBC_PAD
CKM_IDEA_ECB
CKM_IDEA_KEY_GEN
CKM_IDEA_MAC
CKM_IDEA_MAC_GENERAL
CKM_JUNIPER_CBC128
CKM_JUNIPER_COUNTER
CKM_JUNIPER_ECB128
CKM_JUNIPER_KEY_GEN
CKM_JUNIPER_SHUFFLE
CKM_JUNIPER_WRAP
CKM_KEA_DERIVE
CKM_KEA_KEY_DERIVE
CKM_KEA_KEY_PAIR_GEN
CKM_KEY_WRAP_LYNKS
CKM_KEY_WRAP_SET_OAEP
CKM_KIP_DERIVE
CKM_KIP_MAC
CKM_KIP_WRAP
CKM_MD2_RSA_PKCS
CKM_MD2
CKM_MD2_HMAC
CKM_MD2_HMAC_GENERAL
CKM_MD2_KEY_DERIVATION
CKM_MD5_RSA_PKCS
CKM_MD5
CKM_MD5_HMAC
CKM_MD5_HMAC_GENERAL
CKM_MD5_KEY_DERIVATION
CKM_PBA_SHA1_WITH_SHA1_HMAC
CKM_PBE_MD2_DES_CBC
CKM_PBE_MD5_DES_CBC
CKM_PBE_MD5_CAST_CBC
CKM_PBE_MD5_CAST3_CBC
CKM_PBE_MD5_CAST5_CBC
CKM_PBE_MD5_CAST128_CBC
CKM_PBE_SHA1_CAST5_CBC
CKM_PBE_SHA1_CAST128_CBC
CKM_PBE_SHA1_DES2_EDE_CBC
CKM_PBE_SHA1_DES3_EDE_CBC
CKM_PBE_SHA1_RC2_40_CBC
CKM_PBE_SHA1_RC2_128_CBC
CKM_PBE_SHA1_RC4_40
CKM_PBE_SHA1_RC4_128
CKM_PKCS5_PBKD2
CKM_RC2_KEY_GEN
CKM_RC2_ECB
CKM_RC2_CBC
CKM_RC2_MAC
CKM_RC2_MAC_GENERAL
CKM_RC2_CBC_PAD
CKM_RC4_KEY_GEN
CKM_RC4
CKM_RC5_KEY_GEN
CKM_RC5_ECB
CKM_RC5_CBC
CKM_RC5_MAC
CKM_RC5_MAC_GENERAL
CKM_RC5_CBC_PAD
CKM_RIPEMD128_RSA_PKCS
CKM_RIPEMD128
CKM_RIPEMD128_HMAC
CKM_RIPEMD128_HMAC_GENERAL
CKM_RIPEMD160_RSA_PKCS
CKM_RIPEMD160
CKM_RIPEMD160_HMAC
CKM_RIPEMD160_HMAC_GENERAL
CKM_RSA_9796
CKM_RSA_AES_KEY_WRAP
CKM_RSA_PKCS
CKM_RSA_PKCS_KEY_PAIR_GEN

the following mechanism types are defined:

CKM_RSA_PKCS_OAEP
CKM_RSA_PKCS_OAEP_TPM_1_1
CKM_RSA_PKCS_PSS
CKM_RSA_PKCS_TPM_1_1
CKM_RSA_X9_31_KEY_PAIR_GEN
CKM_RSA_X9_31
CKM_RSA_X_509
CKM_SECURID
CKM_SECURID_KEY_GEN
CKM_SEED_CBC
CKM_SEED_CBC_ENCRYPT_DATA
CKM_SEED_CBC_PAD
CKM_SEED_ECB
CKM_SEED_ECB_ENCRYPT_DATA
CKM_SEED_KEY_GEN
CKM_SEED_MAC
CKM_SEED_MAC_GENERAL
CKM_SHA1_RSA_PKCS
CKM_SHA1_RSA_PKCS_PSS
CKM_SHA1_KEY_DERIVATION
CKM_SHA224_RSA_PKCS
CKM_SHA224_RSA_PKCS_PSS
CKM_SHA224
CKM_SHA224_HMAC
CKM_SHA224_HMAC_GENERAL
CKM_SHA224_KEY_DERIVATION
CKM_SHA256_RSA_PKCS
CKM_SHA256_RSA_PKCS_PSS
CKM_SHA256
CKM_SHA256_HMAC
CKM_SHA256_HMAC_GENERAL
CKM_SHA256_KEY_DERIVATION
CKM_SHA384_RSA_PKCS
CKM_SHA384_RSA_PKCS_PSS
CKM_SHA384
CKM_SHA384_HMAC
CKM_SHA384_HMAC_GENERAL
CKM_SHA384_KEY_DERIVATION
CKM_SHA512_RSA_PKCS
CKM_SHA512_RSA_PKCS_PSS
CKM_SHA512_T
CKM_SHA512_T_HMAC
CKM_SHA512_T_HMAC_GENERAL
CKM_SHA512_T_KEY_DERIVATION
CKM_SHA512
CKM_SHA512_HMAC
CKM_SHA512_HMAC_GENERAL
CKM_SHA512_KEY_DERIVATION
CKM_SHA1_RSA_X9_31
CKM_SHA512_224
CKM_SHA512_224_HMAC
CKM_SHA512_224_HMAC_GENERAL
CKM_SHA512_224_KEY_DERIVATION
CKM_SHA512_256
CKM_SHA512_256_HMAC
CKM_SHA512_256_HMAC_GENERAL
CKM_SHA512_256_KEY_DERIVATION
CKM_SHA_1
CKM_SHA_1_HMAC
CKM_SHA_1_HMAC_GENERAL
CKM_SKIPJACK_CBC64
CKM_SKIPJACK_CFB8
CKM_SKIPJACK_CFB16
CKM_SKIPJACK_CFB32
CKM_SKIPJACK_CFB64
CKM_SKIPJACK_ECB64
CKM_SKIPJACK_KEY_GEN
CKM_SKIPJACK_OFB64
CKM_SKIPJACK_PRIVATE_WRAP
CKM_SKIPJACK_RELAYX
CKM_SKIPJACK_WRAP
CKM_SSL3_PRE_MASTER_KEY_GEN
CKM_SSL3_MASTER_KEY_DERIVE
CKM_SSL3_KEY_AND_MAC_DERIVE
CKM_SSL3_MASTER_KEY_DERIVE_DH
CKM_SSL3_MD5_MAC
CKM_SSL3_SHA1_MAC
CKM_TLS10_MAC_SERVER
CKM_TLS10_MAC_CLIENT
CKM_TLS12_MAC
CKM_TLS12_KDF
CKM_TLS12_MASTER_KEY_DERIVE
CKM_TLS12_KEY_AND_MAC_DERIVE
CKM_TLS12_MASTER_KEY_DERIVE_DH
CKM_TLS12_KEY_SAFE_DERIVE
CKM_TLS_KDF
CKM_TLS_KEY_AND_MAC_DERIVE
CKM_TLS_MAC
CKM_TLS_MASTER_KEY_DERIVE
CKM_TLS_MASTER_KEY_DERIVE_DH
CKM_TLS_PRE_MASTER_KEY_GEN
CKM_TLS_PRF
CKM_TWOFISH_CBC
CKM_TWOFISH_CBC_PAD
CKM_TWOFISH_KEY_GEN
CKM_VENDOR_DEFINED
CKM_WTLS_CLIENT_KEY_AND_MAC_DERIVE
CKM_WTLS_MASTER_KEY_DERIVE
CKM_WTLS_MASTER_KEY_DERIVE_DH_ECC
CKM_WTLS_PRE_MASTER_KEY_GEN
CKM_WTLS_PRF
CKM_WTLS_SERVER_KEY_AND_MAC_DERIVE
CKM_X9_42_DH_KEY_PAIR_GEN
CKM_X9_42_DH_DERIVE
CKM_X9_42_DH_HYBRID_DERIVE
CKM_X9_42_MQV_DERIVE
CKM_X9_42_DH_PARAMETER_GEN
CKM_XOR_BASE_AND_DATA
CKN_OTP_CHANGED
CKN_SURRENDER
CKO_CERTIFICATE
CKO_DATA

The following classes of objects are defined:

CKO_DOMAIN_PARAMETERS
CKO_HW_FEATURE
CKO_MECHANISM
CKO_OTP_KEY
CKO_PRIVATE_KEY
CKO_PUBLIC_KEY
CKO_SECRET_KEY
CKO_VENDOR_DEFINED
CKP_PKCS5_PBKD2_HMAC_GOSTR3411
CKP_PKCS5_PBKD2_HMAC_SHA1
CKP_PKCS5_PBKD2_HMAC_SHA224
CKP_PKCS5_PBKD2_HMAC_SHA256
CKP_PKCS5_PBKD2_HMAC_SHA384
CKP_PKCS5_PBKD2_HMAC_SHA512
CKP_PKCS5_PBKD2_HMAC_SHA512_224
CKP_PKCS5_PBKD2_HMAC_SHA512_256
CKR_ACTION_PROHIBITED
CKR_ARGUMENTS_BAD
CKR_ATTRIBUTE_READ_ONLY
CKR_ATTRIBUTE_SENSITIVE
CKR_ATTRIBUTE_TYPE_INVALID
CKR_ATTRIBUTE_VALUE_INVALID
CKR_BUFFER_TOO_SMALL
CKR_CANCEL
CKR_CANT_LOCK
CKR_CRYPTOKI_ALREADY_INITIALIZED
CKR_CRYPTOKI_NOT_INITIALIZED
CKR_CURVE_NOT_SUPPORTED
CKR_DATA_INVALID
CKR_DATA_LEN_RANGE
CKR_DEVICE_ERROR
CKR_DEVICE_MEMORY
CKR_DEVICE_REMOVED
CKR_DOMAIN_PARAMS_INVALID
CKR_ENCRYPTED_DATA_INVALID
CKR_ENCRYPTED_DATA_LEN_RANGE
CKR_EXCEEDED_MAX_ITERATIONS
CKR_FIPS_SELF_TEST_FAILED
CKR_FUNCTION_CANCELED
CKR_FUNCTION_FAILED
CKR_FUNCTION_NOT_PARALLEL
CKR_FUNCTION_NOT_SUPPORTED
CKR_FUNCTION_REJECTED
CKR_GENERAL_ERROR
CKR_HOST_MEMORY
CKR_INFORMATION_SENSITIVE
CKR_KEY_CHANGED
CKR_KEY_FUNCTION_NOT_PERMITTED
CKR_KEY_HANDLE_INVALID
CKR_KEY_INDIGESTIBLE
CKR_KEY_NEEDED
CKR_KEY_NOT_NEEDED
CKR_KEY_NOT_WRAPPABLE
CKR_KEY_SIZE_RANGE
CKR_KEY_TYPE_INCONSISTENT
CKR_KEY_UNEXTRACTABLE
CKR_LIBRARY_LOAD_FAILED
CKR_MECHANISM_INVALID
CKR_MECHANISM_PARAM_INVALID
CKR_MUTEX_BAD
CKR_MUTEX_NOT_LOCKED
CKR_NEED_TO_CREATE_THREADS
CKR_NEW_PIN_MODE
CKR_NEXT_OTP
CKR_NO_EVENT
CKR_OBJECT_HANDLE_INVALID
CKR_OK
CKR_OPERATION_ACTIVE
CKR_OPERATION_NOT_INITIALIZED
CKR_PIN_EXPIRED
CKR_PIN_INCORRECT
CKR_PIN_INVALID
CKR_PIN_LEN_RANGE
CKR_PIN_LOCKED
CKR_PIN_TOO_WEAK
CKR_PUBLIC_KEY_INVALID
CKR_RANDOM_NO_RNG
CKR_RANDOM_SEED_NOT_SUPPORTED
CKR_SAVED_STATE_INVALID
CKR_SESSION_CLOSED
CKR_SESSION_COUNT
CKR_SESSION_EXISTS
CKR_SESSION_HANDLE_INVALID
CKR_SESSION_PARALLEL_NOT_SUPPORTED
CKR_SESSION_READ_ONLY
CKR_SESSION_READ_ONLY_EXISTS
CKR_SESSION_READ_WRITE_SO_EXISTS
CKR_SIGNATURE_INVALID
CKR_SIGNATURE_LEN_RANGE
CKR_SLOT_ID_INVALID
CKR_STATE_UNSAVEABLE
CKR_TEMPLATE_INCOMPLETE
CKR_TEMPLATE_INCONSISTENT
CKR_TOKEN_NOT_PRESENT
CKR_TOKEN_NOT_RECOGNIZED
CKR_TOKEN_WRITE_PROTECTED
CKR_UNWRAPPING_KEY_HANDLE_INVALID
CKR_UNWRAPPING_KEY_SIZE_RANGE
CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT
CKR_USER_ALREADY_LOGGED_IN
CKR_USER_ANOTHER_ALREADY_LOGGED_IN
CKR_USER_NOT_LOGGED_IN
CKR_USER_PIN_NOT_INITIALIZED
CKR_USER_TOO_MANY_TYPES
CKR_USER_TYPE_INVALID
CKR_VENDOR_DEFINED
CKR_WRAPPED_KEY_INVALID
CKR_WRAPPED_KEY_LEN_RANGE
CKR_WRAPPING_KEY_HANDLE_INVALID
CKR_WRAPPING_KEY_SIZE_RANGE
CKR_WRAPPING_KEY_TYPE_INCONSISTENT
CKS_RO_PUBLIC_SESSION
CKS_RO_USER_FUNCTIONS
CKS_RW_PUBLIC_SESSION
CKS_RW_SO_FUNCTIONS
CKS_RW_USER_FUNCTIONS
CKU_CONTEXT_SPECIFIC

Context specific

CKU_SO

Security Officer

CKU_USER

Normal user

CKZ_DATA_SPECIFIED

The following encoding parameter sources are defined

CKZ_SALT_SPECIFIED

The following salt value sources are defined in PKCS #5 v2.0.

CK_CERTIFICATE_CATEGORY_AUTHORITY
CK_CERTIFICATE_CATEGORY_OTHER_ENTITY
CK_CERTIFICATE_CATEGORY_TOKEN_USER
CK_CERTIFICATE_CATEGORY_UNSPECIFIED
CK_EFFECTIVELY_INFINITE
CK_FALSE
CK_INVALID_HANDLE

The following value is always invalid if used as a session handle or object handle

CK_OTP_CHALLENGE
CK_OTP_COUNTER
CK_OTP_FLAGS
CK_OTP_FORMAT_ALPHANUMERIC
CK_OTP_FORMAT_BINARY
CK_OTP_FORMAT_DECIMAL

The following OTP-related defines relate to the CKA_OTP_FORMAT attribute

CK_OTP_FORMAT_HEXADECIMAL
CK_OTP_OUTPUT_FORMAT
CK_OTP_OUTPUT_LENGTH
CK_OTP_PARAM_IGNORED

The following OTP-related defines relate to the CKA_OTP_..._REQUIREMENT attributes

CK_OTP_PARAM_MANDATORY
CK_OTP_PARAM_OPTIONAL
CK_OTP_PIN
CK_OTP_TIME
CK_OTP_VALUE
CK_SECURITY_DOMAIN_MANUFACTURER
CK_SECURITY_DOMAIN_OPERATOR
CK_SECURITY_DOMAIN_THIRD_PARTY
CK_SECURITY_DOMAIN_UNSPECIFIED
CK_TRUE
CK_UNAVAILABLE_INFORMATION

Type Definitions

CK_AES_CBC_ENCRYPT_DATA_PARAMS_PTR
CK_AES_CCM_PARAMS_PTR
CK_AES_CTR_PARAMS_PTR
CK_AES_GCM_PARAMS_PTR
CK_ARIA_CBC_ENCRYPT_DATA_PARAMS_PTR
CK_ATTRIBUTE_PTR
CK_ATTRIBUTE_TYPE

CK_ATTRIBUTE_TYPE is a value that identifies an attribute type

CK_BBOOL

a BYTE-sized Boolean flag

CK_BYTE
CK_BYTE_PTR
CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS_PTR
CK_CAMELLIA_CTR_PARAMS_PTR
CK_CCM_PARAMS_PTR
CK_CERTIFICATE_CATEGORY
CK_CERTIFICATE_TYPE

CK_CERTIFICATE_TYPE is a value that identifies a certificate type

CK_CHAR

an unsigned 8-bit character

CK_CHAR_PTR
CK_CMS_SIG_PARAMS_PTR
CK_CREATEMUTEX

CK_CREATEMUTEX is an application callback for creating a mutex object

CK_C_INITIALIZE_ARGS_PTR
CK_DESTROYMUTEX

CK_DESTROYMUTEX is an application callback for destroying a mutex object

CK_DES_CBC_ENCRYPT_DATA_PARAMS_PTR
CK_DSA_PARAMETER_GEN_PARAM_PTR
CK_ECDH1_DERIVE_PARAMS_PTR
CK_ECDH2_DERIVE_PARAMS_PTR
CK_ECDH_AES_KEY_WRAP_PARAMS_PTR
CK_ECMQV_DERIVE_PARAMS_PTR
CK_EC_KDF_TYPE
CK_EXTRACT_PARAMS

The CK_EXTRACT_PARAMS is used for the CKM_EXTRACT_KEY_FROM_KEY mechanism. It specifies which bit of the base key should be used as the first bit of the derived key

CK_EXTRACT_PARAMS_PTR
CK_FLAGS

at least 32 bits; each bit is a Boolean flag

CK_FUNCTION_LIST_PTR
CK_FUNCTION_LIST_PTR_PTR
CK_GCM_PARAMS_PTR
CK_GOSTR3410_DERIVE_PARAMS_PTR
CK_GOSTR3410_KEY_WRAP_PARAMS_PTR
CK_HW_FEATURE_TYPE

CK_HW_FEATURE_TYPE is a value that identifies the hardware feature type of an object with CK_OBJECT_CLASS equal to CKO_HW_FEATURE.

CK_INFO_PTR
CK_JAVA_MIDP_SECURITY_DOMAIN
CK_KEA_DERIVE_PARAMS_PTR
CK_KEY_DERIVATION_STRING_DATA_PTR
CK_KEY_TYPE

CK_KEY_TYPE is a value that identifies a key type

CK_KEY_WRAP_SET_OAEP_PARAMS_PTR
CK_KIP_PARAMS_PTR
CK_LOCKMUTEX

CK_LOCKMUTEX is an application callback for locking a mutex

CK_LONG
CK_MAC_GENERAL_PARAMS

CK_MAC_GENERAL_PARAMS provides the parameters to most block ciphers' MAC_GENERAL mechanisms. Its value is the length of the MAC

CK_MAC_GENERAL_PARAMS_PTR
CK_MECHANISM_INFO_PTR
CK_MECHANISM_PTR
CK_MECHANISM_TYPE

CK_MECHANISM_TYPE is a value that identifies a mechanism type

CK_MECHANISM_TYPE_PTR
CK_NOTIFICATION

CK_NOTIFICATION enumerates the types of notifications that Cryptoki provides to an application

CK_NOTIFY

CK_NOTIFY is an application callback that processes events

CK_OBJECT_CLASS

CK_OBJECT_CLASS is a value that identifies the classes (or types) of objects that Cryptoki recognizes. It is defined as follows:

CK_OBJECT_CLASS_PTR
CK_OBJECT_HANDLE

CK_OBJECT_HANDLE is a token-specific identifier for an object

CK_OBJECT_HANDLE_PTR
CK_OTP_PARAMS_PTR
CK_OTP_PARAM_PTR
CK_OTP_PARAM_TYPE
CK_OTP_SIGNATURE_INFO_PTR
CK_PARAM_TYPE

backward compatibility

CK_PBE_PARAMS_PTR
CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE

CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE is used to indicate the Pseudo-Random Function (PRF) used to generate key bits using PKCS #5 PBKDF2.

CK_PKCS5_PBKD2_PSEUDO_RANDOM_FUNCTION_TYPE_PTR
CK_PKCS5_PBKD2_PARAMS_PTR
CK_PKCS5_PBKD2_PARAMS2_PTR
CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE

CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE is used to indicate the source of the salt value when deriving a key using PKCS #5 PBKDF2.

CK_PKCS5_PBKDF2_SALT_SOURCE_TYPE_PTR
CK_RC2_PARAMS

CK_RC2_PARAMS provides the parameters to the CKM_RC2_ECB and CKM_RC2_MAC mechanisms. An instance of CK_RC2_PARAMS just holds the effective keysize

CK_RC2_PARAMS_PTR
CK_RC2_CBC_PARAMS_PTR
CK_RC2_MAC_GENERAL_PARAMS_PTR
CK_RC5_PARAMS_PTR
CK_RC5_CBC_PARAMS_PTR
CK_RC5_MAC_GENERAL_PARAMS_PTR
CK_RSA_AES_KEY_WRAP_PARAMS_PTR
CK_RSA_PKCS_MGF_TYPE

CK_RSA_PKCS_MGF_TYPE is used to indicate the Message Generation Function (MGF) applied to a message block when formatting a message block for the PKCS #1 OAEP encryption scheme.

CK_RSA_PKCS_MGF_TYPE_PTR
CK_RSA_PKCS_OAEP_PARAMS_PTR
CK_RSA_PKCS_OAEP_SOURCE_TYPE

CK_RSA_PKCS_OAEP_SOURCE_TYPE is used to indicate the source of the encoding parameter when formatting a message block for the PKCS #1 OAEP encryption scheme.

CK_RSA_PKCS_OAEP_SOURCE_TYPE_PTR
CK_RSA_PKCS_PSS_PARAMS_PTR
CK_RV

CK_RV is a value that identifies the return value of a Cryptoki function

CK_SEED_CBC_ENCRYPT_DATA_PARAMS_PTR
CK_SESSION_HANDLE

CK_SESSION_HANDLE is a Cryptoki-assigned value that identifies a session

CK_SESSION_HANDLE_PTR
CK_SESSION_INFO_PTR
CK_SKIPJACK_PRIVATE_WRAP_PARAMS_PTR
CK_SKIPJACK_RELAYX_PARAMS_PTR
CK_SLOT_ID
CK_SLOT_ID_PTR
CK_SLOT_INFO_PTR
CK_SSL3_MASTER_KEY_DERIVE_PARAMS_PTR
CK_SSL3_KEY_MAT_OUT_PTR
CK_SSL3_KEY_MAT_PARAMS_PTR
CK_TLS12_MASTER_KEY_DERIVE_PARAMS_PTR
CK_TLS12_KEY_MAT_PARAMS_PTR
CK_TLS_KDF_PARAMS_PTR
CK_TLS_MAC_PARAMS_PTR
CK_TLS_PRF_PARAMS_PTR
CK_TOKEN_INFO_PTR
CK_ULONG
CK_ULONG_PTR
CK_UNLOCKMUTEX

CK_UNLOCKMUTEX is an application callback for unlocking a mutex

CK_USER_TYPE

CK_USER_TYPE enumerates the types of Cryptoki users

CK_UTF8CHAR

an 8-bit UTF-8 character

CK_UTF8CHAR_PTR
CK_VERSION_PTR
CK_VOID_PTR
CK_VOID_PTR_PTR

Pointer to a CK_VOID_PTR-- i.e., pointer to pointer to void

CK_WTLS_KEY_MAT_OUT_PTR
CK_WTLS_KEY_MAT_PARAMS_PTR
CK_WTLS_MASTER_KEY_DERIVE_PARAMS_PTR
CK_WTLS_PRF_PARAMS_PTR
CK_WTLS_RANDOM_DATA_PTR
CK_X9_42_DH_KDF_TYPE

Typedefs and defines for the CKM_X9_42_DH_KEY_PAIR_GEN and the CKM_X9_42_DH_PARAMETER_GEN mechanisms

CK_X9_42_DH_KDF_TYPE_PTR
CK_X9_42_MQV_DERIVE_PARAMS_PTR
CK_X9_42_DH1_DERIVE_PARAMS_PTR
CK_X9_42_DH2_DERIVE_PARAMS_PTR