crypttoken.h File Reference

#include <gwenhywfar/keyspec.h>
#include <gwenhywfar/crypt.h>
#include <gwenhywfar/buffer.h>
#include <gwenhywfar/db.h>
#include <gwenhywfar/xml.h>
#include <gwenhywfar/plugin.h>
#include <gwenhywfar/crypttoken_user.h>
#include <gwenhywfar/crypttoken_signinfo.h>
#include <gwenhywfar/crypttoken_cryptinfo.h>
#include <gwenhywfar/crypttoken_keyinfo.h>
#include <gwenhywfar/crypttoken_context.h>
#include <gwenhywfar/crypttoken_plugin.h>

Go to the source code of this file.

CryptToken

typedef int(*) GWEN_CRYPTTOKEN_AUTHSIGN_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
typedef int(*) GWEN_CRYPTTOKEN_AUTHVERIFY_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, const char *sigptr, unsigned int siglen)
typedef int(*) GWEN_CRYPTTOKEN_CHANGEPIN_FN (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_PINTYPE pt)
typedef int(*) GWEN_CRYPTTOKEN_CLOSE_FN (GWEN_CRYPTTOKEN *ct)
typedef int(*) GWEN_CRYPTTOKEN_CREATE_FN (GWEN_CRYPTTOKEN *ct)
typedef int(*) GWEN_CRYPTTOKEN_DECRYPT_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
typedef int(*) GWEN_CRYPTTOKEN_ENCRYPT_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
typedef int(*) GWEN_CRYPTTOKEN_FILLCONTEXTLIST_FN (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CONTEXT_LIST *l)
typedef int(*) GWEN_CRYPTTOKEN_FILLCRYPTINFOLIST_FN (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CRYPTINFO_LIST *l)
typedef int(*) GWEN_CRYPTTOKEN_FILLKEYINFOLIST_FN (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_KEYINFO_LIST *l)
typedef int(*) GWEN_CRYPTTOKEN_FILLSIGNINFOLIST_FN (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_SIGNINFO_LIST *l)
typedef int(*) GWEN_CRYPTTOKEN_FILLUSERLIST_FN (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_USER_LIST *l)
typedef int(*) GWEN_CRYPTTOKEN_GENERATEKEY_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_KEYINFO *ki, GWEN_CRYPTKEY **key)
typedef int(*) GWEN_CRYPTTOKEN_GETSIGNSEQ_FN (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_TYPE_UINT32 *signSeq)
typedef int(*) GWEN_CRYPTTOKEN_GETTOKENIDDATA_FN (GWEN_CRYPTTOKEN *ct, GWEN_BUFFER *buf)
typedef int(*) GWEN_CRYPTTOKEN_MODIFYUSER_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_USER *u)
typedef int(*) GWEN_CRYPTTOKEN_OPEN_FN (GWEN_CRYPTTOKEN *ct, int manage)
typedef int(*) GWEN_CRYPTTOKEN_READKEY_FN (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_CRYPTKEY **key)
typedef int(*) GWEN_CRYPTTOKEN_READKEYSPEC_FN (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_KEYSPEC **ks)
typedef int(*) GWEN_CRYPTTOKEN_SIGN_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
typedef int(*) GWEN_CRYPTTOKEN_VERIFY_FN (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, const char *sigptr, unsigned int siglen)
typedef int(*) GWEN_CRYPTTOKEN_WRITEKEY_FN (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, const GWEN_CRYPTKEY *key)
typedef int(*) GWEN_CRYPTTOKEN_WRITEKEYSPEC_FN (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, const GWEN_KEYSPEC *ks)
GWENHYWFAR_API int GWEN_CryptToken_AddContext (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx)
GWENHYWFAR_API void GWEN_CryptToken_AddFlags (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 fl)
GWENHYWFAR_API void GWEN_CryptToken_AddModes (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 fl)
GWENHYWFAR_API int GWEN_CryptToken_AuthSign (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
GWENHYWFAR_API int GWEN_CryptToken_AuthVerify (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, const char *sigptr, unsigned int siglen)
GWENHYWFAR_API int GWEN_CryptToken_ChangePin (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_PINTYPE pt)
GWENHYWFAR_API int GWEN_CryptToken_Close (GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API int GWEN_CryptToken_Create (GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API int GWEN_CryptToken_Decrypt (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
GWENHYWFAR_API int GWEN_CryptToken_Encrypt (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
GWENHYWFAR_API int GWEN_CryptToken_FillContextList (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CONTEXT_LIST *l)
GWENHYWFAR_API int GWEN_CryptToken_FillCryptInfoList (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CRYPTINFO_LIST *l)
GWENHYWFAR_API int GWEN_CryptToken_FillKeyInfoList (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_KEYINFO_LIST *l)
GWENHYWFAR_API int GWEN_CryptToken_FillSignInfoList (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_SIGNINFO_LIST *l)
GWENHYWFAR_API int GWEN_CryptToken_FillUserList (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_USER_LIST *ul)
GWENHYWFAR_API GWEN_CRYPTTOKEN_CONTEXTGWEN_CryptToken_FindContextInList (const GWEN_CRYPTTOKEN_CONTEXT_LIST *cl, GWEN_TYPE_UINT32 id)
GWENHYWFAR_API void GWEN_CryptToken_free (GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API GWEN_CRYPTTOKENGWEN_CryptToken_fromXml (GWEN_PLUGIN_MANAGER *pm, GWEN_CRYPTTOKEN_DEVICE devType, GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_CryptToken_GenerateKey (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_KEYINFO *ki, GWEN_CRYPTKEY **key)
GWENHYWFAR_API GWEN_CRYPTTOKEN_CLOSE_FN GWEN_CryptToken_GetCloseFn (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API const GWEN_CRYPTTOKEN_CONTEXTGWEN_CryptToken_GetContextById (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 id)
GWENHYWFAR_API GWEN_CRYPTTOKEN_CREATE_FN GWEN_CryptToken_GetCreateFn (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API const GWEN_CRYPTTOKEN_CRYPTINFOGWEN_CryptToken_GetCryptInfoByAlgos (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CRYPTALGO cryptAlgo, GWEN_CRYPTTOKEN_PADDALGO paddAlgo)
GWENHYWFAR_API const GWEN_CRYPTTOKEN_CRYPTINFOGWEN_CryptToken_GetCryptInfoById (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 id)
GWENHYWFAR_API GWEN_PLUGIN_MANAGERGWEN_CryptToken_GetCryptManager (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API const char * GWEN_CryptToken_GetDescriptiveName (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API GWEN_CRYPTTOKEN_DEVICE GWEN_CryptToken_GetDeviceType (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API GWEN_TYPE_UINT32 GWEN_CryptToken_GetFlags (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API const GWEN_CRYPTTOKEN_KEYINFOGWEN_CryptToken_GetKeyInfoById (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid)
GWENHYWFAR_API int GWEN_CryptToken_GetMatchingContexts (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *pattern, GWEN_CRYPTTOKEN_CONTEXT_LIST *cl)
GWENHYWFAR_API GWEN_TYPE_UINT32 GWEN_CryptToken_GetModes (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API GWEN_CRYPTTOKEN_OPEN_FN GWEN_CryptToken_GetOpenFn (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API const GWEN_CRYPTTOKEN_SIGNINFOGWEN_CryptToken_GetSignInfoByAlgos (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_HASHALGO hashAlgo, GWEN_CRYPTTOKEN_PADDALGO paddAlgo)
GWENHYWFAR_API const GWEN_CRYPTTOKEN_SIGNINFOGWEN_CryptToken_GetSignInfoById (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 id)
GWENHYWFAR_API int GWEN_CryptToken_GetSignSeq (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_TYPE_UINT32 *signSeq)
GWENHYWFAR_API int GWEN_CryptToken_GetTokenIdData (GWEN_CRYPTTOKEN *ct, GWEN_BUFFER *buf)
GWENHYWFAR_API const char * GWEN_CryptToken_GetTokenName (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API const char * GWEN_CryptToken_GetTokenSubType (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API const char * GWEN_CryptToken_GetTokenType (const GWEN_CRYPTTOKEN *ct)
GWENHYWFAR_API int GWEN_CryptToken_Hash (GWEN_CRYPTTOKEN_HASHALGO algo, const char *src, unsigned int slen, GWEN_BUFFER *dstBuf)
GWENHYWFAR_API int GWEN_CryptToken_ModifyUser (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_USER *u)
GWENHYWFAR_API GWEN_CRYPTTOKENGWEN_CryptToken_new (GWEN_PLUGIN_MANAGER *pm, GWEN_CRYPTTOKEN_DEVICE devType, const char *typeName, const char *subTypeName, const char *name)
GWENHYWFAR_API int GWEN_CryptToken_Open (GWEN_CRYPTTOKEN *ct, int manage)
GWENHYWFAR_API int GWEN_CryptToken_Padd (GWEN_CRYPTTOKEN_PADDALGO algo, unsigned int chunkSize, GWEN_BUFFER *buf)
GWENHYWFAR_API int GWEN_CryptToken_ReadKey (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_CRYPTKEY **key)
GWENHYWFAR_API int GWEN_CryptToken_ReadKeySpec (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_KEYSPEC **ks)
GWENHYWFAR_API int GWEN_CryptToken_ReadXml (GWEN_CRYPTTOKEN *ct, GWEN_XMLNODE *n)
GWENHYWFAR_API void GWEN_CryptToken_SetAuthSignFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_AUTHSIGN_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetAuthVerifyFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_AUTHVERIFY_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetChangePinFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CHANGEPIN_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetCloseFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CLOSE_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetCreateFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CREATE_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetDecryptFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_DECRYPT_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetDescriptiveName (GWEN_CRYPTTOKEN *ct, const char *s)
GWENHYWFAR_API void GWEN_CryptToken_SetEncryptFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_ENCRYPT_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetFillContextListFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_FILLCONTEXTLIST_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetFillCryptInfoListFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_FILLCRYPTINFOLIST_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetFillKeyInfoListFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_FILLKEYINFOLIST_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetFillSignInfoListFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_FILLSIGNINFOLIST_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetFillUserListFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_FILLUSERLIST_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetFlags (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 fl)
GWENHYWFAR_API void GWEN_CryptToken_SetGenerateKeyFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_GENERATEKEY_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetGetSignSeqFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_GETSIGNSEQ_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetGetTokenIdDataFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_GETTOKENIDDATA_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetModes (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 fl)
GWENHYWFAR_API void GWEN_CryptToken_SetModifyUserFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_MODIFYUSER_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetOpenFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_OPEN_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetReadKeyFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_READKEY_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetReadKeySpecFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_READKEYSPEC_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetSignFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_SIGN_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetTokenName (GWEN_CRYPTTOKEN *ct, const char *s)
GWENHYWFAR_API void GWEN_CryptToken_SetVerifyFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_VERIFY_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetWriteKeyFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_WRITEKEY_FN fn)
GWENHYWFAR_API void GWEN_CryptToken_SetWriteKeySpecFn (GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_WRITEKEYSPEC_FN fn)
GWENHYWFAR_API int GWEN_CryptToken_Sign (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)
GWENHYWFAR_API void GWEN_CryptToken_SubFlags (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 fl)
GWENHYWFAR_API void GWEN_CryptToken_SubModes (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 fl)
GWENHYWFAR_API int GWEN_CryptToken_Unpadd (GWEN_CRYPTTOKEN_PADDALGO algo, GWEN_BUFFER *buf)
GWENHYWFAR_API int GWEN_CryptToken_Verify (GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, const char *sigptr, unsigned int siglen)
GWENHYWFAR_API int GWEN_CryptToken_WriteKey (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, const GWEN_CRYPTKEY *key)
GWENHYWFAR_API int GWEN_CryptToken_WriteKeySpec (GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, const GWEN_KEYSPEC *ks)

Defines

#define GWEN_CRYPTMANAGER_NAME   "crypttoken"
#define GWEN_CRYPTTOKEN_FLAGS_DISABLE_SMALLER_SIGNATURE   0x00000004
#define GWEN_CRYPTTOKEN_FLAGS_FORCE_PIN_ENTRY   0x00000008
#define GWEN_CRYPTTOKEN_FLAGS_MANAGES_SIGNSEQ   0x00000001
#define GWEN_CRYPTTOKEN_FLAGS_PREDEF_CONTEXT_ONLY   0x00000002
#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_ALLOW_DEFAULT   0x00000010
#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_CONFIRM   0x00000001
#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_NUMERIC   0x00000002
#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_RETRY   0x00000008
#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_SHOW   0x00000004
#define GWEN_CRYPTTOKEN_MODES_FORCE_PIN_ENTRY   0x00000001
#define GWEN_CRYPTTOKEN_KEYSTATUS_ACTIVE   2
#define GWEN_CRYPTTOKEN_KEYSTATUS_FREE   0
#define GWEN_CRYPTTOKEN_KEYSTATUS_NEW   1
#define GWEN_CRYPTTOKEN_KEYSTATUS_UNKNOWN   99

Typedefs

typedef GWEN_CRYPTTOKEN GWEN_CRYPTTOKEN

Enumerations

enum  GWEN_CRYPTTOKEN_CRYPTALGO {
  GWEN_CryptToken_CryptAlgo_Unknown = -1, GWEN_CryptToken_CryptAlgo_None = 0, GWEN_CryptToken_CryptAlgo_Any, GWEN_CryptToken_CryptAlgo_RSA,
  GWEN_CryptToken_CryptAlgo_DSA, GWEN_CryptToken_CryptAlgo_DES, GWEN_CryptToken_CryptAlgo_DES_3K
}
enum  GWEN_CRYPTTOKEN_DEVICE {
  GWEN_CryptToken_Device_Unknown = -1, GWEN_CryptToken_Device_None = 0, GWEN_CryptToken_Device_File, GWEN_CryptToken_Device_Card,
  GWEN_CryptToken_Device_Any = 999
}
enum  GWEN_CRYPTTOKEN_HASHALGO {
  GWEN_CryptToken_HashAlgo_Unknown = -1, GWEN_CryptToken_HashAlgo_None = 0, GWEN_CryptToken_HashAlgo_Any, GWEN_CryptToken_HashAlgo_SHA1,
  GWEN_CryptToken_HashAlgo_RMD160, GWEN_CryptToken_HashAlgo_MD5
}
enum  GWEN_CRYPTTOKEN_PADDALGO {
  GWEN_CryptToken_PaddAlgo_Unknown = -1, GWEN_CryptToken_PaddAlgo_None = 0, GWEN_CryptToken_PaddAlgo_Any, GWEN_CryptToken_PaddAlgo_ISO9796_1,
  GWEN_CryptToken_PaddAlgo_ISO9796_1A4, GWEN_CryptToken_PaddAlgo_ISO9796_2, GWEN_CryptToken_PaddAlgo_PKCS1_1, GWEN_CryptToken_PaddAlgo_PKCS1_2,
  GWEN_CryptToken_PaddAlgo_LeftZero, GWEN_CryptToken_PaddAlgo_RightZero, GWEN_CryptToken_PaddAlgo_ANSIX9_23
}
enum  GWEN_CRYPTTOKEN_PINENCODING {
  GWEN_CryptToken_PinEncoding_Unknown = -1, GWEN_CryptToken_PinEncoding_None = 0, GWEN_CryptToken_PinEncoding_Bin, GWEN_CryptToken_PinEncoding_BCD,
  GWEN_CryptToken_PinEncoding_ASCII, GWEN_CryptToken_PinEncoding_FPIN2
}
enum  GWEN_CRYPTTOKEN_PINTYPE { GWEN_CryptToken_PinType_Unknown = -1, GWEN_CryptToken_PinType_None = 0, GWEN_CryptToken_PinType_Access, GWEN_CryptToken_PinType_Manage }

Functions

GWENHYWFAR_API GWEN_CRYPTTOKEN_CRYPTALGO GWEN_CryptToken_CryptAlgo_fromString (const char *s)
GWENHYWFAR_API const char * GWEN_CryptToken_CryptAlgo_toString (GWEN_CRYPTTOKEN_CRYPTALGO a)
GWENHYWFAR_API GWEN_CRYPTTOKEN_DEVICE GWEN_CryptToken_Device_fromString (const char *s)
GWENHYWFAR_API const char * GWEN_CryptToken_Device_toString (GWEN_CRYPTTOKEN_DEVICE d)
GWENHYWFAR_API GWENHYWFAR_API
GWEN_TYPE_UINT32 
GWEN_CryptToken_Flag_fromString (const char *s)
GWENHYWFAR_API GWEN_TYPE_UINT32 GWEN_CryptToken_Flags_fromDb (GWEN_DB_NODE *db, const char *n)
GWENHYWFAR_API void GWEN_CryptToken_Flags_toDb (GWEN_DB_NODE *db, const char *n, GWEN_TYPE_UINT32 flags)
GWENHYWFAR_API GWEN_CRYPTTOKEN_HASHALGO GWEN_CryptToken_HashAlgo_fromString (const char *s)
GWENHYWFAR_API const char * GWEN_CryptToken_HashAlgo_toString (GWEN_CRYPTTOKEN_HASHALGO a)
GWENHYWFAR_API GWEN_CRYPTTOKEN_PADDALGO GWEN_CryptToken_PaddAlgo_fromString (const char *s)
GWENHYWFAR_API const char * GWEN_CryptToken_PaddAlgo_toString (GWEN_CRYPTTOKEN_PADDALGO a)
GWENHYWFAR_API GWEN_CRYPTTOKEN_PINENCODING GWEN_CryptToken_PinEncoding_fromString (const char *s)
GWENHYWFAR_API const char * GWEN_CryptToken_PinEncoding_toString (GWEN_CRYPTTOKEN_PINENCODING pe)
GWENHYWFAR_API GWEN_CRYPTTOKEN_PINTYPE GWEN_CryptToken_PinType_fromString (const char *s)
GWENHYWFAR_API const char * GWEN_CryptToken_PinType_toString (GWEN_CRYPTTOKEN_PINTYPE pt)
 GWEN_LIST_FUNCTION_LIB_DEFS (GWEN_CRYPTTOKEN, GWEN_CryptToken, GWENHYWFAR_API) GWEN_INHERIT_FUNCTION_LIB_DEFS(GWEN_CRYPTTOKEN
CryptToken Helper Functions
GWENHYWFAR_API int GWEN_CryptToken_TransformPin (GWEN_CRYPTTOKEN_PINENCODING peSrc, GWEN_CRYPTTOKEN_PINENCODING peDst, unsigned char *buffer, unsigned int bufLength, unsigned int *pinLength)


Define Documentation

#define GWEN_CRYPTMANAGER_NAME   "crypttoken"

Definition at line 30 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_FLAGS_DISABLE_SMALLER_SIGNATURE   0x00000004

Definition at line 36 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_FLAGS_FORCE_PIN_ENTRY   0x00000008

Deprecated:

Definition at line 38 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_FLAGS_MANAGES_SIGNSEQ   0x00000001

Definition at line 33 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_FLAGS_PREDEF_CONTEXT_ONLY   0x00000002

Definition at line 34 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_ALLOW_DEFAULT   0x00000010

Definition at line 45 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_CONFIRM   0x00000001

Definition at line 41 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_NUMERIC   0x00000002

Definition at line 42 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_RETRY   0x00000008

Definition at line 44 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_GETPIN_FLAGS_SHOW   0x00000004

Definition at line 43 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_KEYSTATUS_ACTIVE   2

Definition at line 57 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_KEYSTATUS_FREE   0

This is a list of status values used by GWEN_CRYPTTOKEN in key specs.

Definition at line 55 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_KEYSTATUS_NEW   1

Definition at line 56 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_KEYSTATUS_UNKNOWN   99

Definition at line 58 of file crypttoken.h.

#define GWEN_CRYPTTOKEN_MODES_FORCE_PIN_ENTRY   0x00000001

this is used when checking for the pin status

Definition at line 49 of file crypttoken.h.


Typedef Documentation

typedef struct GWEN_CRYPTTOKEN GWEN_CRYPTTOKEN

Definition at line 62 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_AUTHSIGN_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)

Definition at line 256 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_AUTHVERIFY_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, const char *sigptr, unsigned int siglen)

Definition at line 262 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_CHANGEPIN_FN(GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_PINTYPE pt)

Definition at line 232 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_CLOSE_FN(GWEN_CRYPTTOKEN *ct)

Definition at line 230 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_CREATE_FN(GWEN_CRYPTTOKEN *ct)

Definition at line 229 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_DECRYPT_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)

Definition at line 251 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_ENCRYPT_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)

Definition at line 246 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_FILLCONTEXTLIST_FN(GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CONTEXT_LIST *l)

Definition at line 291 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_FILLCRYPTINFOLIST_FN(GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_CRYPTINFO_LIST *l)

Definition at line 298 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_FILLKEYINFOLIST_FN(GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_KEYINFO_LIST *l)

Definition at line 302 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_FILLSIGNINFOLIST_FN(GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_SIGNINFO_LIST *l)

Definition at line 294 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_FILLUSERLIST_FN(GWEN_CRYPTTOKEN *ct, GWEN_CRYPTTOKEN_USER_LIST *l)

Definition at line 306 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_GENERATEKEY_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_KEYINFO *ki, GWEN_CRYPTKEY **key)

Definition at line 282 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_GETSIGNSEQ_FN(GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_TYPE_UINT32 *signSeq)

Definition at line 286 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_GETTOKENIDDATA_FN(GWEN_CRYPTTOKEN *ct, GWEN_BUFFER *buf)

Definition at line 313 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_MODIFYUSER_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_USER *u)

Definition at line 310 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_OPEN_FN(GWEN_CRYPTTOKEN *ct, int manage)

Definition at line 227 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_READKEY_FN(GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_CRYPTKEY **key)

Definition at line 269 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_READKEYSPEC_FN(GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, GWEN_KEYSPEC **ks)

Definition at line 275 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_SIGN_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, GWEN_BUFFER *dst)

Definition at line 235 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_VERIFY_FN(GWEN_CRYPTTOKEN *ct, const GWEN_CRYPTTOKEN_CONTEXT *ctx, const char *ptr, unsigned int len, const char *sigptr, unsigned int siglen)

Definition at line 240 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_WRITEKEY_FN(GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, const GWEN_CRYPTKEY *key)

Definition at line 272 of file crypttoken.h.

typedef int(*) GWEN_CRYPTTOKEN_WRITEKEYSPEC_FN(GWEN_CRYPTTOKEN *ct, GWEN_TYPE_UINT32 kid, const GWEN_KEYSPEC *ks)

Definition at line 278 of file crypttoken.h.


Enumeration Type Documentation

enum GWEN_CRYPTTOKEN_CRYPTALGO

Enumerator:
GWEN_CryptToken_CryptAlgo_Unknown 
GWEN_CryptToken_CryptAlgo_None 
GWEN_CryptToken_CryptAlgo_Any 
GWEN_CryptToken_CryptAlgo_RSA  RSA
GWEN_CryptToken_CryptAlgo_DSA  DSA
GWEN_CryptToken_CryptAlgo_DES 
GWEN_CryptToken_CryptAlgo_DES_3K  triple-key DES

Definition at line 132 of file crypttoken.h.

enum GWEN_CRYPTTOKEN_DEVICE

Enumerator:
GWEN_CryptToken_Device_Unknown 
GWEN_CryptToken_Device_None 
GWEN_CryptToken_Device_File 
GWEN_CryptToken_Device_Card 
GWEN_CryptToken_Device_Any 

Definition at line 154 of file crypttoken.h.

enum GWEN_CRYPTTOKEN_HASHALGO

Enumerator:
GWEN_CryptToken_HashAlgo_Unknown 
GWEN_CryptToken_HashAlgo_None 
GWEN_CryptToken_HashAlgo_Any 
GWEN_CryptToken_HashAlgo_SHA1  SHA-1
GWEN_CryptToken_HashAlgo_RMD160  Ripemd 160
GWEN_CryptToken_HashAlgo_MD5  MD-5

Definition at line 84 of file crypttoken.h.

enum GWEN_CRYPTTOKEN_PADDALGO

Enumerator:
GWEN_CryptToken_PaddAlgo_Unknown 
GWEN_CryptToken_PaddAlgo_None 
GWEN_CryptToken_PaddAlgo_Any 
GWEN_CryptToken_PaddAlgo_ISO9796_1  ISO 9796/1 without appendix 4
GWEN_CryptToken_PaddAlgo_ISO9796_1A4  ISO 9796/1 with appendix 4
GWEN_CryptToken_PaddAlgo_ISO9796_2  ISO 9796/2 with random (SigG v1.0)
GWEN_CryptToken_PaddAlgo_PKCS1_1  PKCS#1 block type 01
GWEN_CryptToken_PaddAlgo_PKCS1_2  PKCS#1 block type 02
GWEN_CryptToken_PaddAlgo_LeftZero  fill left with zeroes
GWEN_CryptToken_PaddAlgo_RightZero  fill right with zeroes
GWEN_CryptToken_PaddAlgo_ANSIX9_23  ANSI X9.23

Definition at line 103 of file crypttoken.h.

enum GWEN_CRYPTTOKEN_PINENCODING

Enumerator:
GWEN_CryptToken_PinEncoding_Unknown 
GWEN_CryptToken_PinEncoding_None 
GWEN_CryptToken_PinEncoding_Bin 
GWEN_CryptToken_PinEncoding_BCD 
GWEN_CryptToken_PinEncoding_ASCII 
GWEN_CryptToken_PinEncoding_FPIN2 

Definition at line 185 of file crypttoken.h.

enum GWEN_CRYPTTOKEN_PINTYPE

Enumerator:
GWEN_CryptToken_PinType_Unknown 
GWEN_CryptToken_PinType_None 
GWEN_CryptToken_PinType_Access 
GWEN_CryptToken_PinType_Manage 

Definition at line 170 of file crypttoken.h.


Function Documentation

GWENHYWFAR_API int GWEN_CryptToken_AddContext ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT ctx 
)

GWENHYWFAR_API void GWEN_CryptToken_AddFlags ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  fl 
)

GWENHYWFAR_API void GWEN_CryptToken_AddModes ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  fl 
)

GWENHYWFAR_API int GWEN_CryptToken_AuthSign ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT ctx,
const char *  ptr,
unsigned int  len,
GWEN_BUFFER dst 
)

GWENHYWFAR_API int GWEN_CryptToken_AuthVerify ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT ctx,
const char *  ptr,
unsigned int  len,
const char *  sigptr,
unsigned int  siglen 
)

GWENHYWFAR_API int GWEN_CryptToken_ChangePin ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_PINTYPE  pt 
)

GWENHYWFAR_API int GWEN_CryptToken_Close ( GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API int GWEN_CryptToken_Create ( GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API GWEN_CRYPTTOKEN_CRYPTALGO GWEN_CryptToken_CryptAlgo_fromString ( const char *  s  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_CryptAlgo_toString ( GWEN_CRYPTTOKEN_CRYPTALGO  a  ) 

GWENHYWFAR_API int GWEN_CryptToken_Decrypt ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT ctx,
const char *  ptr,
unsigned int  len,
GWEN_BUFFER dst 
)

GWENHYWFAR_API GWEN_CRYPTTOKEN_DEVICE GWEN_CryptToken_Device_fromString ( const char *  s  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_Device_toString ( GWEN_CRYPTTOKEN_DEVICE  d  ) 

GWENHYWFAR_API int GWEN_CryptToken_Encrypt ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT ctx,
const char *  ptr,
unsigned int  len,
GWEN_BUFFER dst 
)

GWENHYWFAR_API int GWEN_CryptToken_FillContextList ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_CONTEXT_LIST l 
)

GWENHYWFAR_API int GWEN_CryptToken_FillCryptInfoList ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_CRYPTINFO_LIST l 
)

GWENHYWFAR_API int GWEN_CryptToken_FillKeyInfoList ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_KEYINFO_LIST l 
)

GWENHYWFAR_API int GWEN_CryptToken_FillSignInfoList ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_SIGNINFO_LIST l 
)

GWENHYWFAR_API int GWEN_CryptToken_FillUserList ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_USER_LIST ul 
)

GWENHYWFAR_API GWEN_CRYPTTOKEN_CONTEXT* GWEN_CryptToken_FindContextInList ( const GWEN_CRYPTTOKEN_CONTEXT_LIST cl,
GWEN_TYPE_UINT32  id 
)

GWENHYWFAR_API GWENHYWFAR_API GWEN_TYPE_UINT32 GWEN_CryptToken_Flag_fromString ( const char *  s  ) 

GWENHYWFAR_API GWEN_TYPE_UINT32 GWEN_CryptToken_Flags_fromDb ( GWEN_DB_NODE db,
const char *  n 
)

GWENHYWFAR_API void GWEN_CryptToken_Flags_toDb ( GWEN_DB_NODE db,
const char *  n,
GWEN_TYPE_UINT32  flags 
)

GWENHYWFAR_API void GWEN_CryptToken_free ( GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API GWEN_CRYPTTOKEN* GWEN_CryptToken_fromXml ( GWEN_PLUGIN_MANAGER pm,
GWEN_CRYPTTOKEN_DEVICE  devType,
GWEN_XMLNODE n 
)

GWENHYWFAR_API int GWEN_CryptToken_GenerateKey ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_KEYINFO ki,
GWEN_CRYPTKEY **  key 
)

GWENHYWFAR_API GWEN_CRYPTTOKEN_CLOSE_FN GWEN_CryptToken_GetCloseFn ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API const GWEN_CRYPTTOKEN_CONTEXT* GWEN_CryptToken_GetContextById ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  id 
)

GWENHYWFAR_API GWEN_CRYPTTOKEN_CREATE_FN GWEN_CryptToken_GetCreateFn ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API const GWEN_CRYPTTOKEN_CRYPTINFO* GWEN_CryptToken_GetCryptInfoByAlgos ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_CRYPTALGO  cryptAlgo,
GWEN_CRYPTTOKEN_PADDALGO  paddAlgo 
)

GWENHYWFAR_API const GWEN_CRYPTTOKEN_CRYPTINFO* GWEN_CryptToken_GetCryptInfoById ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  id 
)

GWENHYWFAR_API GWEN_PLUGIN_MANAGER* GWEN_CryptToken_GetCryptManager ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_GetDescriptiveName ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API GWEN_CRYPTTOKEN_DEVICE GWEN_CryptToken_GetDeviceType ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API GWEN_TYPE_UINT32 GWEN_CryptToken_GetFlags ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API const GWEN_CRYPTTOKEN_KEYINFO* GWEN_CryptToken_GetKeyInfoById ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  kid 
)

GWENHYWFAR_API int GWEN_CryptToken_GetMatchingContexts ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT pattern,
GWEN_CRYPTTOKEN_CONTEXT_LIST cl 
)

This function compares all available contexts to the given one and stores copies of all matching contexts in the given list. For comparison all key infos can be used, as well as signInfo, cryptInfo and authInfo. Data omitted in the pattern context always matches.

GWENHYWFAR_API GWEN_TYPE_UINT32 GWEN_CryptToken_GetModes ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API GWEN_CRYPTTOKEN_OPEN_FN GWEN_CryptToken_GetOpenFn ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API const GWEN_CRYPTTOKEN_SIGNINFO* GWEN_CryptToken_GetSignInfoByAlgos ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_HASHALGO  hashAlgo,
GWEN_CRYPTTOKEN_PADDALGO  paddAlgo 
)

GWENHYWFAR_API const GWEN_CRYPTTOKEN_SIGNINFO* GWEN_CryptToken_GetSignInfoById ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  id 
)

GWENHYWFAR_API int GWEN_CryptToken_GetSignSeq ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  kid,
GWEN_TYPE_UINT32 signSeq 
)

GWENHYWFAR_API int GWEN_CryptToken_GetTokenIdData ( GWEN_CRYPTTOKEN ct,
GWEN_BUFFER buf 
)

GWENHYWFAR_API const char* GWEN_CryptToken_GetTokenName ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_GetTokenSubType ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_GetTokenType ( const GWEN_CRYPTTOKEN ct  ) 

GWENHYWFAR_API int GWEN_CryptToken_Hash ( GWEN_CRYPTTOKEN_HASHALGO  algo,
const char *  src,
unsigned int  slen,
GWEN_BUFFER dstBuf 
)

GWENHYWFAR_API GWEN_CRYPTTOKEN_HASHALGO GWEN_CryptToken_HashAlgo_fromString ( const char *  s  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_HashAlgo_toString ( GWEN_CRYPTTOKEN_HASHALGO  a  ) 

GWENHYWFAR_API int GWEN_CryptToken_ModifyUser ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_USER u 
)

GWENHYWFAR_API GWEN_CRYPTTOKEN* GWEN_CryptToken_new ( GWEN_PLUGIN_MANAGER pm,
GWEN_CRYPTTOKEN_DEVICE  devType,
const char *  typeName,
const char *  subTypeName,
const char *  name 
)

GWENHYWFAR_API int GWEN_CryptToken_Open ( GWEN_CRYPTTOKEN ct,
int  manage 
)

GWENHYWFAR_API int GWEN_CryptToken_Padd ( GWEN_CRYPTTOKEN_PADDALGO  algo,
unsigned int  chunkSize,
GWEN_BUFFER buf 
)

GWENHYWFAR_API GWEN_CRYPTTOKEN_PADDALGO GWEN_CryptToken_PaddAlgo_fromString ( const char *  s  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_PaddAlgo_toString ( GWEN_CRYPTTOKEN_PADDALGO  a  ) 

GWENHYWFAR_API GWEN_CRYPTTOKEN_PINENCODING GWEN_CryptToken_PinEncoding_fromString ( const char *  s  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_PinEncoding_toString ( GWEN_CRYPTTOKEN_PINENCODING  pe  ) 

GWENHYWFAR_API GWEN_CRYPTTOKEN_PINTYPE GWEN_CryptToken_PinType_fromString ( const char *  s  ) 

GWENHYWFAR_API const char* GWEN_CryptToken_PinType_toString ( GWEN_CRYPTTOKEN_PINTYPE  pt  ) 

GWENHYWFAR_API int GWEN_CryptToken_ReadKey ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  kid,
GWEN_CRYPTKEY **  key 
)

GWENHYWFAR_API int GWEN_CryptToken_ReadKeySpec ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  kid,
GWEN_KEYSPEC **  ks 
)

GWENHYWFAR_API int GWEN_CryptToken_ReadXml ( GWEN_CRYPTTOKEN ct,
GWEN_XMLNODE n 
)

GWENHYWFAR_API void GWEN_CryptToken_SetAuthSignFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_AUTHSIGN_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetAuthVerifyFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_AUTHVERIFY_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetChangePinFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_CHANGEPIN_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetCloseFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_CLOSE_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetCreateFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_CREATE_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetDecryptFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_DECRYPT_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetDescriptiveName ( GWEN_CRYPTTOKEN ct,
const char *  s 
)

GWENHYWFAR_API void GWEN_CryptToken_SetEncryptFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_ENCRYPT_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetFillContextListFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_FILLCONTEXTLIST_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetFillCryptInfoListFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_FILLCRYPTINFOLIST_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetFillKeyInfoListFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_FILLKEYINFOLIST_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetFillSignInfoListFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_FILLSIGNINFOLIST_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetFillUserListFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_FILLUSERLIST_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetFlags ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  fl 
)

GWENHYWFAR_API void GWEN_CryptToken_SetGenerateKeyFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_GENERATEKEY_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetGetSignSeqFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_GETSIGNSEQ_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetGetTokenIdDataFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_GETTOKENIDDATA_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetModes ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  fl 
)

GWENHYWFAR_API void GWEN_CryptToken_SetModifyUserFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_MODIFYUSER_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetOpenFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_OPEN_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetReadKeyFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_READKEY_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetReadKeySpecFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_READKEYSPEC_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetSignFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_SIGN_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetTokenName ( GWEN_CRYPTTOKEN ct,
const char *  s 
)

GWENHYWFAR_API void GWEN_CryptToken_SetVerifyFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_VERIFY_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetWriteKeyFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_WRITEKEY_FN  fn 
)

GWENHYWFAR_API void GWEN_CryptToken_SetWriteKeySpecFn ( GWEN_CRYPTTOKEN ct,
GWEN_CRYPTTOKEN_WRITEKEYSPEC_FN  fn 
)

GWENHYWFAR_API int GWEN_CryptToken_Sign ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT ctx,
const char *  ptr,
unsigned int  len,
GWEN_BUFFER dst 
)

GWENHYWFAR_API void GWEN_CryptToken_SubFlags ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  fl 
)

GWENHYWFAR_API void GWEN_CryptToken_SubModes ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  fl 
)

GWENHYWFAR_API int GWEN_CryptToken_TransformPin ( GWEN_CRYPTTOKEN_PINENCODING  peSrc,
GWEN_CRYPTTOKEN_PINENCODING  peDst,
unsigned char *  buffer,
unsigned int  bufLength,
unsigned int *  pinLength 
)

GWENHYWFAR_API int GWEN_CryptToken_Unpadd ( GWEN_CRYPTTOKEN_PADDALGO  algo,
GWEN_BUFFER buf 
)

GWENHYWFAR_API int GWEN_CryptToken_Verify ( GWEN_CRYPTTOKEN ct,
const GWEN_CRYPTTOKEN_CONTEXT ctx,
const char *  ptr,
unsigned int  len,
const char *  sigptr,
unsigned int  siglen 
)

GWENHYWFAR_API int GWEN_CryptToken_WriteKey ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  kid,
const GWEN_CRYPTKEY key 
)

GWENHYWFAR_API int GWEN_CryptToken_WriteKeySpec ( GWEN_CRYPTTOKEN ct,
GWEN_TYPE_UINT32  kid,
const GWEN_KEYSPEC ks 
)

GWEN_LIST_FUNCTION_LIB_DEFS ( GWEN_CRYPTTOKEN  ,
GWEN_CryptToken  ,
GWENHYWFAR_API   
)


Generated on Tue May 1 12:56:30 2007 for gwenhywfar by  doxygen 1.5.1