gwenhywfar 5.14.1
cryptmgr.h
Go to the documentation of this file.
1/***************************************************************************
2 begin : Mon Dec 01 2008
3 copyright : (C) 2008 by Martin Preuss
4 email : martin@libchipcard.de
5
6 ***************************************************************************
7 * Please see toplevel file COPYING for license details *
8 ***************************************************************************/
9
10
11#ifndef GWEN_CRYPTMGR_CRYPTMGR_H
12#define GWEN_CRYPTMGR_CRYPTMGR_H
13
14
15#include <gwenhywfar/buffer.h>
16
59
60#define GWEN_CRYPTMGR_TLV_SIGNEDOBJECT 0x21
61#define GWEN_CRYPTMGR_TLV_ENCRYPTEDOBJECT 0x22
62
63
65
66
77
78
88
89
90#ifdef __cplusplus
91extern "C" {
92#endif
93
94
97
103const char *GWEN_CryptMgr_GetLocalKeyName(const GWEN_CRYPTMGR *cm);
104
107
111
112
118const char *GWEN_CryptMgr_GetPeerKeyName(const GWEN_CRYPTMGR *cm);
119
122
126
127
134
137
140
144
145
150
155int GWEN_CryptMgr_Sign(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
156
161int GWEN_CryptMgr_Encrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
162
167int GWEN_CryptMgr_Verify(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
168
173int GWEN_CryptMgr_Decrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
175
176
183
189int GWEN_CryptMgr_Encode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
190
196int GWEN_CryptMgr_Decode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
198
199
200#ifdef __cplusplus
201}
202#endif
203 /* defgroup */
205
206
207#endif
208
209
GWENHYWFAR_API int GWEN_CryptMgr_GetSignatureProfile(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:182
GWENHYWFAR_API int GWEN_CryptMgr_Verify(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
Definition cryptmgr.c:482
GWENHYWFAR_API void GWEN_CryptMgr_SetSignatureProfile(GWEN_CRYPTMGR *cm, int i)
Definition cryptmgr.c:190
GWENHYWFAR_API int GWEN_CryptMgr_GetCryptProfile(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:166
GWENHYWFAR_API int GWEN_CryptMgr_GetPeerKeyVersion(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:150
GWENHYWFAR_API int GWEN_CryptMgr_GetPeerKeyNumber(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:134
struct GWEN_CRYPTMGR GWEN_CRYPTMGR
Definition cryptmgr.h:64
GWENHYWFAR_API void GWEN_CryptMgr_free(GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:49
GWENHYWFAR_API void GWEN_CryptMgr_SetCryptProfile(GWEN_CRYPTMGR *cm, int i)
Definition cryptmgr.c:174
GWENHYWFAR_API int GWEN_CryptMgr_Encrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
Definition cryptmgr.c:381
GWENHYWFAR_API int GWEN_CryptMgr_Sign(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
Definition cryptmgr.c:298
GWENHYWFAR_API int GWEN_CryptMgr_GetLocalKeyVersion(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:98
GWEN_CRYPT_PROFILE
Definition cryptmgr.h:67
@ GWEN_CryptProfile_1
Definition cryptmgr.h:75
@ GWEN_CryptProfile_None
Definition cryptmgr.h:68
GWENHYWFAR_API int GWEN_CryptMgr_GetLocalKeyNumber(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:82
GWENHYWFAR_API int GWEN_CryptMgr_Decode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
Definition cryptmgr.c:826
GWENHYWFAR_API const char * GWEN_CryptMgr_GetLocalKeyName(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:62
GWENHYWFAR_API int GWEN_CryptMgr_Encode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
Definition cryptmgr.c:793
GWEN_SIGNATURE_PROFILE
Definition cryptmgr.h:79
@ GWEN_SignatureProfile_None
Definition cryptmgr.h:80
@ GWEN_SignatureProfile_1
Definition cryptmgr.h:86
GWENHYWFAR_API const char * GWEN_CryptMgr_GetPeerKeyName(const GWEN_CRYPTMGR *cm)
Definition cryptmgr.c:114
GWENHYWFAR_API int GWEN_CryptMgr_Decrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
Definition cryptmgr.c:637
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
Definition buffer.h:38
#define GWENHYWFAR_API