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

📄 pkcs11types.h

📁 IBM的Linux上的PKCS#11实现
💻 H
📖 第 1 页 / 共 5 页
字号:
#define CKF_DONT_BLOCK     1/* CK_KEA_DERIVE_PARAMS provides the parameters to the * CKM_KEA_DERIVE mechanism *//* CK_KEA_DERIVE_PARAMS is new for v2.0 */typedef struct CK_KEA_DERIVE_PARAMS {  CK_BBOOL      isSender;  CK_ULONG      ulRandomLen;  CK_BYTE_PTR   pRandomA;  CK_BYTE_PTR   pRandomB;  CK_ULONG      ulPublicDataLen;  CK_BYTE_PTR   pPublicData;} CK_KEA_DERIVE_PARAMS;typedef CK_KEA_DERIVE_PARAMS CK_PTR CK_KEA_DERIVE_PARAMS_PTR;/* 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 */typedef CK_ULONG          CK_RC2_PARAMS;typedef CK_RC2_PARAMS CK_PTR CK_RC2_PARAMS_PTR;/* CK_RC2_CBC_PARAMS provides the parameters to the CKM_RC2_CBC * mechanism */typedef struct CK_RC2_CBC_PARAMS {  /* ulEffectiveBits was changed from CK_USHORT to CK_ULONG for   * v2.0 */  CK_ULONG      ulEffectiveBits;  /* effective bits (1-1024) */  CK_BYTE       iv[8];            /* IV for CBC mode */} CK_RC2_CBC_PARAMS;typedef CK_RC2_CBC_PARAMS CK_PTR CK_RC2_CBC_PARAMS_PTR;/* CK_RC2_MAC_GENERAL_PARAMS provides the parameters for the * CKM_RC2_MAC_GENERAL mechanism *//* CK_RC2_MAC_GENERAL_PARAMS is new for v2.0 */typedef struct CK_RC2_MAC_GENERAL_PARAMS {  CK_ULONG      ulEffectiveBits;  /* effective bits (1-1024) */  CK_ULONG      ulMacLength;      /* Length of MAC in bytes */} CK_RC2_MAC_GENERAL_PARAMS;typedef CK_RC2_MAC_GENERAL_PARAMS CK_PTR \  CK_RC2_MAC_GENERAL_PARAMS_PTR;/* CK_RC5_PARAMS provides the parameters to the CKM_RC5_ECB and * CKM_RC5_MAC mechanisms *//* CK_RC5_PARAMS is new for v2.0 */typedef struct CK_RC5_PARAMS {  CK_ULONG      ulWordsize;  /* wordsize in bits */  CK_ULONG      ulRounds;    /* number of rounds */} CK_RC5_PARAMS;typedef CK_RC5_PARAMS CK_PTR CK_RC5_PARAMS_PTR;/* CK_RC5_CBC_PARAMS provides the parameters to the CKM_RC5_CBC * mechanism *//* CK_RC5_CBC_PARAMS is new for v2.0 */typedef struct CK_RC5_CBC_PARAMS {  CK_ULONG      ulWordsize;  /* wordsize in bits */  CK_ULONG      ulRounds;    /* number of rounds */  CK_BYTE_PTR   pIv;         /* pointer to IV */  CK_ULONG      ulIvLen;     /* length of IV in bytes */} CK_RC5_CBC_PARAMS;typedef CK_RC5_CBC_PARAMS CK_PTR CK_RC5_CBC_PARAMS_PTR;/* CK_RC5_MAC_GENERAL_PARAMS provides the parameters for the * CKM_RC5_MAC_GENERAL mechanism *//* CK_RC5_MAC_GENERAL_PARAMS is new for v2.0 */typedef struct CK_RC5_MAC_GENERAL_PARAMS {  CK_ULONG      ulWordsize;   /* wordsize in bits */  CK_ULONG      ulRounds;     /* number of rounds */  CK_ULONG      ulMacLength;  /* Length of MAC in bytes */} CK_RC5_MAC_GENERAL_PARAMS;typedef CK_RC5_MAC_GENERAL_PARAMS CK_PTR \  CK_RC5_MAC_GENERAL_PARAMS_PTR;/* 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 is new for v2.0 */typedef CK_ULONG          CK_MAC_GENERAL_PARAMS;typedef CK_MAC_GENERAL_PARAMS CK_PTR CK_MAC_GENERAL_PARAMS_PTR;/* CK_SKIPJACK_PRIVATE_WRAP_PARAMS provides the parameters to the * CKM_SKIPJACK_PRIVATE_WRAP mechanism *//* CK_SKIPJACK_PRIVATE_WRAP_PARAMS is new for v2.0 */typedef struct CK_SKIPJACK_PRIVATE_WRAP_PARAMS {  CK_ULONG      ulPasswordLen;  CK_BYTE_PTR   pPassword;  CK_ULONG      ulPublicDataLen;  CK_BYTE_PTR   pPublicData;  CK_ULONG      ulPAndGLen;  CK_ULONG      ulQLen;  CK_ULONG      ulRandomLen;  CK_BYTE_PTR   pRandomA;  CK_BYTE_PTR   pPrimeP;  CK_BYTE_PTR   pBaseG;  CK_BYTE_PTR   pSubprimeQ;} CK_SKIPJACK_PRIVATE_WRAP_PARAMS;typedef CK_SKIPJACK_PRIVATE_WRAP_PARAMS CK_PTR \  CK_SKIPJACK_PRIVATE_WRAP_PTR;/* CK_SKIPJACK_RELAYX_PARAMS provides the parameters to the * CKM_SKIPJACK_RELAYX mechanism *//* CK_SKIPJACK_RELAYX_PARAMS is new for v2.0 */typedef struct CK_SKIPJACK_RELAYX_PARAMS {  CK_ULONG      ulOldWrappedXLen;  CK_BYTE_PTR   pOldWrappedX;  CK_ULONG      ulOldPasswordLen;  CK_BYTE_PTR   pOldPassword;  CK_ULONG      ulOldPublicDataLen;  CK_BYTE_PTR   pOldPublicData;  CK_ULONG      ulOldRandomLen;  CK_BYTE_PTR   pOldRandomA;  CK_ULONG      ulNewPasswordLen;  CK_BYTE_PTR   pNewPassword;  CK_ULONG      ulNewPublicDataLen;  CK_BYTE_PTR   pNewPublicData;  CK_ULONG      ulNewRandomLen;  CK_BYTE_PTR   pNewRandomA;} CK_SKIPJACK_RELAYX_PARAMS;typedef CK_SKIPJACK_RELAYX_PARAMS CK_PTR \  CK_SKIPJACK_RELAYX_PARAMS_PTR;typedef struct CK_PBE_PARAMS {  CK_CHAR_PTR  pInitVector;  CK_CHAR_PTR  pPassword;  CK_ULONG     ulPasswordLen;  CK_CHAR_PTR  pSalt;  CK_ULONG     ulSaltLen;  CK_ULONG     ulIteration;} CK_PBE_PARAMS;typedef CK_PBE_PARAMS CK_PTR CK_PBE_PARAMS_PTR;/* CK_KEY_WRAP_SET_OAEP_PARAMS provides the parameters to the * CKM_KEY_WRAP_SET_OAEP mechanism *//* CK_KEY_WRAP_SET_OAEP_PARAMS is new for v2.0 */typedef struct CK_KEY_WRAP_SET_OAEP_PARAMS {  CK_BYTE       bBC;     /* block contents byte */  CK_BYTE_PTR   pX;      /* extra data */  CK_ULONG      ulXLen;  /* length of extra data in bytes */} CK_KEY_WRAP_SET_OAEP_PARAMS;typedef CK_KEY_WRAP_SET_OAEP_PARAMS CK_PTR \  CK_KEY_WRAP_SET_OAEP_PARAMS_PTR;typedef struct CK_SSL3_RANDOM_DATA {  CK_BYTE_PTR  pClientRandom;  CK_ULONG     ulClientRandomLen;  CK_BYTE_PTR  pServerRandom;  CK_ULONG     ulServerRandomLen;} CK_SSL3_RANDOM_DATA;typedef struct CK_SSL3_MASTER_KEY_DERIVE_PARAMS {  CK_SSL3_RANDOM_DATA RandomInfo;  CK_VERSION_PTR pVersion;} CK_SSL3_MASTER_KEY_DERIVE_PARAMS;typedef struct CK_SSL3_MASTER_KEY_DERIVE_PARAMS CK_PTR \  CK_SSL3_MASTER_KEY_DERIVE_PARAMS_PTR;typedef struct CK_SSL3_KEY_MAT_OUT {  CK_OBJECT_HANDLE hClientMacSecret;  CK_OBJECT_HANDLE hServerMacSecret;  CK_OBJECT_HANDLE hClientKey;  CK_OBJECT_HANDLE hServerKey;  CK_BYTE_PTR      pIVClient;  CK_BYTE_PTR      pIVServer;} CK_SSL3_KEY_MAT_OUT;typedef CK_SSL3_KEY_MAT_OUT CK_PTR CK_SSL3_KEY_MAT_OUT_PTR;typedef struct CK_SSL3_KEY_MAT_PARAMS {  CK_ULONG                ulMacSizeInBits;  CK_ULONG                ulKeySizeInBits;  CK_ULONG                ulIVSizeInBits;  CK_BBOOL                bIsExport;  CK_SSL3_RANDOM_DATA     RandomInfo;  CK_SSL3_KEY_MAT_OUT_PTR pReturnedKeyMaterial;} CK_SSL3_KEY_MAT_PARAMS;typedef CK_SSL3_KEY_MAT_PARAMS CK_PTR CK_SSL3_KEY_MAT_PARAMS_PTR;typedef struct CK_KEY_DERIVATION_STRING_DATA {  CK_BYTE_PTR pData;  CK_ULONG    ulLen;} CK_KEY_DERIVATION_STRING_DATA;typedef CK_KEY_DERIVATION_STRING_DATA CK_PTR \  CK_KEY_DERIVATION_STRING_DATA_PTR;/* 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 is new for v2.0 */typedef CK_ULONG CK_EXTRACT_PARAMS;typedef CK_EXTRACT_PARAMS CK_PTR CK_EXTRACT_PARAMS_PTR;/* 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;#ifdef _MSC_VER	#define CK_ENTRY  __declspec( dllexport )#elif (AIX || LINUX)	#define CK_ENTRY   #else	#define CK_ENTRY  _cdecl _Export#endiftypedef CK_RV CK_ENTRY	(CK_PTR CK_C_Initialize)						(CK_VOID_PTR pReserved);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_Finalize)						(CK_VOID_PTR pReserved);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_Terminate)						(void);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetInfo)						(CK_INFO_PTR pInfo);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetFunctionList)						(CK_FUNCTION_LIST_PTR_PTR ppFunctionList);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetSlotList)						(CK_BBOOL tokenPresent, CK_SLOT_ID_PTR pSlotList,						 CK_ULONG_PTR pusCount);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetSlotInfo)						(CK_SLOT_ID slotID, CK_SLOT_INFO_PTR pInfo);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetTokenInfo)						(CK_SLOT_ID slotID, CK_TOKEN_INFO_PTR pInfo);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetMechanismList)						(CK_SLOT_ID slotID, CK_MECHANISM_TYPE_PTR pMechanismList,						 CK_ULONG_PTR pusCount);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetMechanismInfo)						(CK_SLOT_ID slotID, CK_MECHANISM_TYPE type,						 CK_MECHANISM_INFO_PTR pInfo);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_InitToken)						(CK_SLOT_ID slotID, CK_CHAR_PTR pPin, CK_ULONG usPinLen,						 CK_CHAR_PTR pLabel);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_InitPIN)						(CK_SESSION_HANDLE hSession, CK_CHAR_PTR pPin,						 CK_ULONG usPinLen);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_SetPIN)						(CK_SESSION_HANDLE hSession, CK_CHAR_PTR pOldPin,						 CK_ULONG usOldLen, CK_CHAR_PTR pNewPin,						 CK_ULONG usNewLen);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_OpenSession)						(CK_SLOT_ID slotID, CK_FLAGS flags,						 CK_VOID_PTR pApplication,						 CK_RV  (*Notify) (CK_SESSION_HANDLE hSession,						 CK_NOTIFICATION event, CK_VOID_PTR pApplication),						 CK_SESSION_HANDLE_PTR phSession);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_CloseSession)						(CK_SESSION_HANDLE hSession);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_CloseAllSessions)						(CK_SLOT_ID slotID);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetSessionInfo)						(CK_SESSION_HANDLE hSession, CK_SESSION_INFO_PTR pInfo);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_GetOperationState)						(CK_SESSION_HANDLE hSession, CK_BYTE_PTR pOperationState,						 CK_ULONG_PTR pulOperationStateLen);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_SetOperationState)						(CK_SESSION_HANDLE hSession, CK_BYTE_PTR pOperationState,						 CK_ULONG ulOperationStateLen,						 CK_OBJECT_HANDLE hEncryptionKey,						 CK_OBJECT_HANDLE hAuthenticationKey);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_Login)(CK_SESSION_HANDLE hSession,						 CK_USER_TYPE userType, CK_CHAR_PTR pPin,						 CK_ULONG usPinLen);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_Logout)(CK_SESSION_HANDLE hSession);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_CreateObject)						(CK_SESSION_HANDLE hSession, CK_ATTRIBUTE_PTR pTemplate,						 CK_ULONG usCount, CK_OBJECT_HANDLE_PTR phObject);typedef CK_RV CK_ENTRY	(CK_PTR  CK_C_CopyObject)						(CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject,						 CK_ATTRIBUTE_PTR pTemplate, CK_ULONG usCount,						 CK_OBJECT_HANDLE_PTR phNewObject);typedef CK_RV CK_ENTRY (CK_PTR  CK_C_DestroyObject)                       (CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject);typedef CK_RV CK_ENTRY(CK_PTR  CK_C_GetObjectSize)                       (CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject,                        CK_ULONG_PTR pusSize);typedef CK_RV CK_ENTRY(CK_PTR  CK_C_GetAttributeValue)                       (CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject,                        CK_ATTRIBUTE_PTR pTemplate, CK_ULONG usCount);typedef CK_RV CK_ENTRY(CK_PTR  CK_C_SetAttributeValue)                       (CK_SESSION_HANDLE hSession, CK_OBJECT_HANDLE hObject,                        CK_ATTRIBUTE_PTR pTemplate, CK_ULONG usCount);typedef CK_RV CK_ENTRY (CK_PTR  CK_C_FindObjectsInit)                       (CK_SESSION_HANDLE hSession, CK_ATTRIBUTE_PTR pTemplate,                        CK_ULONG usCount);typedef CK_RV CK_ENTRY (CK_PTR  CK_C_FindObjects)                       (CK_SESSION_HANDLE hSession,                        CK_OBJECT_HANDLE_PTR phOb

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -