?? pkcs11t.h
字號:
#define CKM_SSL3_MD5_MAC 0x00000380#define CKM_SSL3_SHA1_MAC 0x00000381#define CKM_MD5_KEY_DERIVATION 0x00000390#define CKM_MD2_KEY_DERIVATION 0x00000391#define CKM_SHA1_KEY_DERIVATION 0x00000392#define CKM_PBE_MD2_DES_CBC 0x000003A0#define CKM_PBE_MD5_DES_CBC 0x000003A1#define CKM_PBE_MD5_CAST_CBC 0x000003A2#define CKM_PBE_MD5_CAST3_CBC 0x000003A3#define CKM_PBE_MD5_CAST5_CBC 0x000003A4#define CKM_PBE_MD5_CAST128_CBC 0x000003A4#define CKM_PBE_SHA1_CAST5_CBC 0x000003A5#define CKM_PBE_SHA1_CAST128_CBC 0x000003A5#define CKM_PBE_SHA1_RC4_128 0x000003A6#define CKM_PBE_SHA1_RC4_40 0x000003A7#define CKM_PBE_SHA1_DES3_EDE_CBC 0x000003A8#define CKM_PBE_SHA1_DES2_EDE_CBC 0x000003A9#define CKM_PBE_SHA1_RC2_128_CBC 0x000003AA#define CKM_PBE_SHA1_RC2_40_CBC 0x000003AB/* CKM_PKCS5_PBKD2 is new for v2.10 */#define CKM_PKCS5_PBKD2 0x000003B0#define CKM_PBA_SHA1_WITH_SHA1_HMAC 0x000003C0#define CKM_KEY_WRAP_LYNKS 0x00000400#define CKM_KEY_WRAP_SET_OAEP 0x00000401/* Fortezza mechanisms */#define CKM_SKIPJACK_KEY_GEN 0x00001000#define CKM_SKIPJACK_ECB64 0x00001001#define CKM_SKIPJACK_CBC64 0x00001002#define CKM_SKIPJACK_OFB64 0x00001003#define CKM_SKIPJACK_CFB64 0x00001004#define CKM_SKIPJACK_CFB32 0x00001005#define CKM_SKIPJACK_CFB16 0x00001006#define CKM_SKIPJACK_CFB8 0x00001007#define CKM_SKIPJACK_WRAP 0x00001008#define CKM_SKIPJACK_PRIVATE_WRAP 0x00001009#define CKM_SKIPJACK_RELAYX 0x0000100a#define CKM_KEA_KEY_PAIR_GEN 0x00001010#define CKM_KEA_KEY_DERIVE 0x00001011#define CKM_FORTEZZA_TIMESTAMP 0x00001020#define CKM_BATON_KEY_GEN 0x00001030#define CKM_BATON_ECB128 0x00001031#define CKM_BATON_ECB96 0x00001032#define CKM_BATON_CBC128 0x00001033#define CKM_BATON_COUNTER 0x00001034#define CKM_BATON_SHUFFLE 0x00001035#define CKM_BATON_WRAP 0x00001036/* CKM_ECDSA_KEY_PAIR_GEN is deprecated in v2.11, * CKM_EC_KEY_PAIR_GEN is preferred */#define CKM_ECDSA_KEY_PAIR_GEN 0x00001040#define CKM_EC_KEY_PAIR_GEN 0x00001040#define CKM_ECDSA 0x00001041#define CKM_ECDSA_SHA1 0x00001042/* CKM_ECDH1_DERIVE, CKM_ECDH1_COFACTOR_DERIVE, and CKM_ECMQV_DERIVE * are new for v2.11 */#define CKM_ECDH1_DERIVE 0x00001050#define CKM_ECDH1_COFACTOR_DERIVE 0x00001051#define CKM_ECMQV_DERIVE 0x00001052#define CKM_JUNIPER_KEY_GEN 0x00001060#define CKM_JUNIPER_ECB128 0x00001061#define CKM_JUNIPER_CBC128 0x00001062#define CKM_JUNIPER_COUNTER 0x00001063#define CKM_JUNIPER_SHUFFLE 0x00001064#define CKM_JUNIPER_WRAP 0x00001065#define CKM_FASTHASH 0x00001070/* CKM_AES_KEY_GEN, CKM_AES_ECB, CKM_AES_CBC, CKM_AES_MAC, * CKM_AES_MAC_GENERAL, CKM_AES_CBC_PAD, CKM_DSA_PARAMETER_GEN, * CKM_DH_PKCS_PARAMETER_GEN, and CKM_X9_42_DH_PARAMETER_GEN are * new for v2.11 */#define CKM_AES_KEY_GEN 0x00001080#define CKM_AES_ECB 0x00001081#define CKM_AES_CBC 0x00001082#define CKM_AES_MAC 0x00001083#define CKM_AES_MAC_GENERAL 0x00001084#define CKM_AES_CBC_PAD 0x00001085#define CKM_DSA_PARAMETER_GEN 0x00002000#define CKM_DH_PKCS_PARAMETER_GEN 0x00002001#define CKM_X9_42_DH_PARAMETER_GEN 0x00002002#define CKM_VENDOR_DEFINED 0x80000000typedef CK_MECHANISM_TYPE CK_PTR CK_MECHANISM_TYPE_PTR;/* CK_MECHANISM is a structure that specifies a particular * mechanism */typedef struct CK_MECHANISM { CK_MECHANISM_TYPE mechanism; CK_VOID_PTR pParameter; /* ulParameterLen was changed from CK_USHORT to CK_ULONG for * v2.0 */ CK_ULONG ulParameterLen; /* in bytes */} CK_MECHANISM;typedef CK_MECHANISM CK_PTR CK_MECHANISM_PTR;/* CK_MECHANISM_INFO provides information about a particular * mechanism */typedef struct CK_MECHANISM_INFO { CK_ULONG ulMinKeySize; CK_ULONG ulMaxKeySize; CK_FLAGS flags;} CK_MECHANISM_INFO;/* The flags are defined as follows: * Bit Flag Mask Meaning */#define CKF_HW 0x00000001 /* performed by HW *//* The flags CKF_ENCRYPT, CKF_DECRYPT, CKF_DIGEST, CKF_SIGN, * CKG_SIGN_RECOVER, CKF_VERIFY, CKF_VERIFY_RECOVER, * CKF_GENERATE, CKF_GENERATE_KEY_PAIR, CKF_WRAP, CKF_UNWRAP, * and CKF_DERIVE are new for v2.0. They specify whether or not * a mechanism can be used for a particular task */#define CKF_ENCRYPT 0x00000100#define CKF_DECRYPT 0x00000200#define CKF_DIGEST 0x00000400#define CKF_SIGN 0x00000800#define CKF_SIGN_RECOVER 0x00001000#define CKF_VERIFY 0x00002000#define CKF_VERIFY_RECOVER 0x00004000#define CKF_GENERATE 0x00008000#define CKF_GENERATE_KEY_PAIR 0x00010000#define CKF_WRAP 0x00020000#define CKF_UNWRAP 0x00040000#define CKF_DERIVE 0x00080000/* CKF_EC_F_P, CKF_EC_F_2M, CKF_EC_ECPARAMETERS, CKF_EC_NAMEDCURVE, * CKF_EC_UNCOMPRESS, and CKF_EC_COMPRESS are new for v2.11. They * describe a token's EC capabilities not available in mechanism * information. */#define CKF_EC_F_P 0x00100000#define CKF_EC_F_2M 0x00200000#define CKF_EC_ECPARAMETERS 0x00400000#define CKF_EC_NAMEDCURVE 0x00800000#define CKF_EC_UNCOMPRESS 0x01000000#define CKF_EC_COMPRESS 0x02000000#define CKF_EXTENSION 0x80000000 /* FALSE for 2.01 */typedef CK_MECHANISM_INFO CK_PTR CK_MECHANISM_INFO_PTR;/* CK_RV is a value that identifies the return value of a * Cryptoki function *//* CK_RV was changed from CK_USHORT to CK_ULONG for v2.0 */typedef CK_ULONG CK_RV;#define CKR_OK 0x00000000#define CKR_CANCEL 0x00000001#define CKR_HOST_MEMORY 0x00000002#define CKR_SLOT_ID_INVALID 0x00000003/* CKR_FLAGS_INVALID was removed for v2.0 *//* CKR_GENERAL_ERROR and CKR_FUNCTION_FAILED are new for v2.0 */#define CKR_GENERAL_ERROR 0x00000005#define CKR_FUNCTION_FAILED 0x00000006/* CKR_ARGUMENTS_BAD, CKR_NO_EVENT, CKR_NEED_TO_CREATE_THREADS, * and CKR_CANT_LOCK are new for v2.01 */#define CKR_ARGUMENTS_BAD 0x00000007#define CKR_NO_EVENT 0x00000008#define CKR_NEED_TO_CREATE_THREADS 0x00000009#define CKR_CANT_LOCK 0x0000000A#define CKR_ATTRIBUTE_READ_ONLY 0x00000010#define CKR_ATTRIBUTE_SENSITIVE 0x00000011#define CKR_ATTRIBUTE_TYPE_INVALID 0x00000012#define CKR_ATTRIBUTE_VALUE_INVALID 0x00000013#define CKR_DATA_INVALID 0x00000020#define CKR_DATA_LEN_RANGE 0x00000021#define CKR_DEVICE_ERROR 0x00000030#define CKR_DEVICE_MEMORY 0x00000031#define CKR_DEVICE_REMOVED 0x00000032#define CKR_ENCRYPTED_DATA_INVALID 0x00000040#define CKR_ENCRYPTED_DATA_LEN_RANGE 0x00000041#define CKR_FUNCTION_CANCELED 0x00000050#define CKR_FUNCTION_NOT_PARALLEL 0x00000051/* CKR_FUNCTION_NOT_SUPPORTED is new for v2.0 */#define CKR_FUNCTION_NOT_SUPPORTED 0x00000054#define CKR_KEY_HANDLE_INVALID 0x00000060/* CKR_KEY_SENSITIVE was removed for v2.0 */#define CKR_KEY_SIZE_RANGE 0x00000062#define CKR_KEY_TYPE_INCONSISTENT 0x00000063/* CKR_KEY_NOT_NEEDED, CKR_KEY_CHANGED, CKR_KEY_NEEDED, * CKR_KEY_INDIGESTIBLE, CKR_KEY_FUNCTION_NOT_PERMITTED, * CKR_KEY_NOT_WRAPPABLE, and CKR_KEY_UNEXTRACTABLE are new for * v2.0 */#define CKR_KEY_NOT_NEEDED 0x00000064#define CKR_KEY_CHANGED 0x00000065#define CKR_KEY_NEEDED 0x00000066#define CKR_KEY_INDIGESTIBLE 0x00000067#define CKR_KEY_FUNCTION_NOT_PERMITTED 0x00000068#define CKR_KEY_NOT_WRAPPABLE 0x00000069#define CKR_KEY_UNEXTRACTABLE 0x0000006A#define CKR_MECHANISM_INVALID 0x00000070#define CKR_MECHANISM_PARAM_INVALID 0x00000071/* CKR_OBJECT_CLASS_INCONSISTENT and CKR_OBJECT_CLASS_INVALID * were removed for v2.0 */#define CKR_OBJECT_HANDLE_INVALID 0x00000082#define CKR_OPERATION_ACTIVE 0x00000090#define CKR_OPERATION_NOT_INITIALIZED 0x00000091#define CKR_PIN_INCORRECT 0x000000A0#define CKR_PIN_INVALID 0x000000A1#define CKR_PIN_LEN_RANGE 0x000000A2/* CKR_PIN_EXPIRED and CKR_PIN_LOCKED are new for v2.0 */#define CKR_PIN_EXPIRED 0x000000A3#define CKR_PIN_LOCKED 0x000000A4#define CKR_SESSION_CLOSED 0x000000B0#define CKR_SESSION_COUNT 0x000000B1#define CKR_SESSION_HANDLE_INVALID 0x000000B3#define CKR_SESSION_PARALLEL_NOT_SUPPORTED 0x000000B4#define CKR_SESSION_READ_ONLY 0x000000B5#define CKR_SESSION_EXISTS 0x000000B6/* CKR_SESSION_READ_ONLY_EXISTS and * CKR_SESSION_READ_WRITE_SO_EXISTS are new for v2.0 */#define CKR_SESSION_READ_ONLY_EXISTS 0x000000B7#define CKR_SESSION_READ_WRITE_SO_EXISTS 0x000000B8#define CKR_SIGNATURE_INVALID 0x000000C0#define CKR_SIGNATURE_LEN_RANGE 0x000000C1#define CKR_TEMPLATE_INCOMPLETE 0x000000D0#define CKR_TEMPLATE_INCONSISTENT 0x000000D1#define CKR_TOKEN_NOT_PRESENT 0x000000E0#define CKR_TOKEN_NOT_RECOGNIZED 0x000000E1#define CKR_TOKEN_WRITE_PROTECTED 0x000000E2#define CKR_UNWRAPPING_KEY_HANDLE_INVALID 0x000000F0#define CKR_UNWRAPPING_KEY_SIZE_RANGE 0x000000F1#define CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT 0x000000F2#define CKR_USER_ALREADY_LOGGED_IN 0x00000100#define CKR_USER_NOT_LOGGED_IN 0x00000101#define CKR_USER_PIN_NOT_INITIALIZED 0x00000102#define CKR_USER_TYPE_INVALID 0x00000103/* CKR_USER_ANOTHER_ALREADY_LOGGED_IN and CKR_USER_TOO_MANY_TYPES * are new to v2.01 */#define CKR_USER_ANOTHER_ALREADY_LOGGED_IN 0x00000104#define CKR_USER_TOO_MANY_TYPES 0x00000105#define CKR_WRAPPED_KEY_INVALID 0x00000110#define CKR_WRAPPED_KEY_LEN_RANGE 0x00000112#define CKR_WRAPPING_KEY_HANDLE_INVALID 0x00000113#define CKR_WRAPPING_KEY_SIZE_RANGE 0x00000114#define CKR_WRAPPING_KEY_TYPE_INCONSISTENT 0x00000115#define CKR_RANDOM_SEED_NOT_SUPPORTED 0x00000120/* These are new to v2.0 */#define CKR_RANDOM_NO_RNG 0x00000121/* These are new to v2.11 */#define CKR_DOMAIN_PARAMS_INVALID 0x00000130/* These are new to v2.0 */#define CKR_BUFFER_TOO_SMALL 0x00000150#define CKR_SAVED_STATE_INVALID 0x00000160#define CKR_INFORMATION_SENSITIVE 0x00000170#define CKR_STATE_UNSAVEABLE 0x00000180/* These are new to v2.01 */#define CKR_CRYPTOKI_NOT_INITIALIZED 0x00000190#define CKR_CRYPTOKI_ALREADY_INITIALIZED 0x00000191#define CKR_MUTEX_BAD 0x000001A0#define CKR_MUTEX_NOT_LOCKED 0x000001A1#define CKR_VENDOR_DEFINED 0x80000000/* CK_NOTIFY is an application callback that processes events */typedef CK_CALLBACK_FUNCTION(CK_RV, CK_NOTIFY)( CK_SESSION_HANDLE hSession, /* the session's handle */ CK_NOTIFICATION event, CK_VOID_PTR pApplication /* passed to C_OpenSession */);/* CK_FUNCTION_LIST is a structure holding a Cryptoki spec * version and pointers of appropriate types to all the * Cryptoki functions *//* CK_FUNCTION_LIST is new for v2.0 */typedef struct CK_FUNCTION_LIST CK_FUNCTION_LIST;typedef CK_FUNCTION_LIST CK_PTR CK_FUNCTION_LIST_PTR;typedef CK_FUNCTION_LIST_PTR CK_PTR CK_FUNCTION_LIST_PTR_PTR;/* CK_CREATEMUTEX is an application callback for creating a * mutex object */typedef CK_CALLBACK_FUNCTION(CK_RV, CK_CREATEMUTEX)( CK_VOID_PTR_PTR ppMutex /* location to receive ptr to mutex */);/* CK_DESTROYMUTEX is an application callback for destroying a * mutex object */typedef CK_CALLBACK_FUNCTION(CK_RV, CK_DESTROYMUTEX)( CK_VOID_PTR pMutex /* pointer to mutex */);/* CK_LOCKMUTEX is an application callback for locking a mutex */typedef CK_CALLBACK_FUNCTION(CK_RV, CK_LOCKMUTEX)( CK_VOID_PTR pMutex /* pointer to mutex */);/* CK_UNLOCKMUTEX is an application callback for unlocking a * mutex */typedef CK_CALLBACK_FUNCTION(CK_RV, CK_UNLOCKMUTEX)( CK_VOID_PTR pMutex /* pointer to mutex */);/* CK_C_INITIALIZE_ARGS provides the optional arguments to * C_Initialize */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -