nssckmdt.h

来自「支持SSL v2/v3, TLS, PKCS #5, PKCS #7, PKCS」· C头文件 代码 · 共 2,015 行 · 第 1/5 页

H
2,015
字号
struct NSSCKMDMechanismStr {  /*   * The Module may use this pointer for its own purposes.   */  void *etc;  /*   * This routine returns the minimum key size allowed for   * this mechanism.  This routine is optional; if unimplemented,   * zero will be assumed.  This routine may return zero on   * error; if the error is CKR_OK, zero will be accepted as   * a valid response.   */  CK_ULONG (PR_CALLBACK *GetMinKeySize)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    CK_RV *pError  );  /*   * This routine returns the maximum key size allowed for   * this mechanism.  This routine is optional; if unimplemented,   * zero will be assumed.  This routine may return zero on   * error; if the error is CKR_OK, zero will be accepted as   * a valid response.   */  CK_ULONG (PR_CALLBACK *GetMaxKeySize)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    CK_RV *pError  );  /*   * This routine is called to determine if the mechanism is   * implemented in hardware or software.  It returns CK_TRUE   * if it is done in hardware.   */  CK_BBOOL (PR_CALLBACK *GetInHardware)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    CK_RV *pError  );  /*   * The crypto routines themselves.  Most crypto operations may   * be performed in two ways, streaming and single-part.  The   * streaming operations involve the use of (typically) three   * calls-- an Init method to set up the operation, an Update   * method to feed data to the operation, and a Final method to   * obtain the final result.  Single-part operations involve   * one method, to perform the crypto operation all at once.   * The NSS Cryptoki Framework can implement the single-part   * operations in terms of the streaming operations on behalf   * of the Module.  There are a few variances.   *    * For simplicity, the routines are listed in summary here:   *   *  EncryptInit, EncryptUpdate, EncryptFinal; Encrypt   *  DecryptInit, DecryptUpdate, DecryptFinal; Decrypt   *  DigestInit, DigestUpdate, DigestKey, DigestFinal; Digest   *  SignInit, SignUpdate, SignFinal; Sign   *  SignRecoverInit; SignRecover   *  VerifyInit, VerifyUpdate, VerifyFinal; Verify   *  VerifyRecoverInit; VerifyRecover   *    * Also, there are some combined-operation calls:   *    *  DigestEncryptUpdate   *  DecryptDigestUpdate   *  SignEncryptUpdate   *  DecryptVerifyUpdate   *   * The key-management routines are   *   *  GenerateKey   *  GenerateKeyPair   *  WrapKey   *  UnwrapKey   *  DeriveKey   *   * All of these routines based directly on the Cryptoki API;    * see PKCS#11 for further information.   */  /*   */  CK_RV (PR_CALLBACK *EncryptInit)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKMDObject *mdKey,    NSSCKFWObject *fwKey  );  /*   */  CK_RV (PR_CALLBACK *EncryptUpdate)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *data,     NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *EncryptFinal)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *Encrypt)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKMDObject *mdKey,    NSSCKFWObject *fwKey,    NSSItem *data,     NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *DecryptInit)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKMDObject *mdKey,    NSSCKFWObject *fwKey  );  /*   */  CK_RV (PR_CALLBACK *DecryptUpdate)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *data,     NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *DecryptFinal)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *Decrypt)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKMDObject *mdKey,    NSSCKFWObject *fwKey,    NSSItem *data,     NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *DigestInit)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance  );  /*   */  CK_RV (PR_CALLBACK *DigestUpdate)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *data  );  /*   */  CK_RV (PR_CALLBACK *DigestKey)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKMDObject *mdKey,    NSSCKFWObject *fwKey  );  /*   */  CK_RV (PR_CALLBACK *DigestFinal)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *Digest)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *data,     NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *SignInit)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKMDObject *mdKey,    NSSCKFWObject *fwKey  );  /*   */  CK_RV (PR_CALLBACK *SignUpdate)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *data,    NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *SignFinal)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *Sign)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKMDObject *mdKey,    NSSCKFWObject *fwKey,    NSSItem *data,    NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *VerifyInit)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSCKFWObject *key  );  /*   */  CK_RV (PR_CALLBACK *VerifyUpdate)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *data  );  /*   */  CK_RV (PR_CALLBACK *VerifyFinish)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,    NSSItem *buffer  );  /*   */  CK_RV (PR_CALLBACK *Verify)(    NSSCKMDMechanism *mdMechanism,    NSSCKFWMechanism *fwMechanism,    NSSCKMDSession *mdSession,    NSSCKFWSession *fwSession,    NSSCKMDToken *mdToken,    NSSCKFWToken *fwToken,    NSSCKMDInstance *mdInstance,    NSSCKFWInstance *fwInstance,

⌨️ 快捷键说明

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