⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pkcs11t.h

📁 windows操作系统下CSP的实现源代码,此代码实现加密解密及签名认证功能
💻 H
📖 第 1 页 / 共 4 页
字号:
#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 + -