15 #define DISABLE_DEBUGLOG
18 #include "cryptkey_p.h"
19 #include <gwenhywfar/misc.h>
20 #include <gwenhywfar/debug.h>
35 gcry_control(GCRYCTL_DISABLE_SECMEM, 0);
36 if (!gcry_check_version (NEED_LIBGCRYPT_VERSION)) {
37 const char *gcrypt_version = gcry_check_version(0);
39 "Gwen needs GCrypt >= %s, but is running with GCrypt %s",
40 NEED_LIBGCRYPT_VERSION, gcrypt_version);
45 gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0);
46 gcry_control (GCRYCTL_ENABLE_QUICK_RANDOM, 0);
69 k->cryptAlgoId=cryptAlgoId;
87 cryptAlgoId=GWEN_Crypt_CryptAlgoId_Unknown;
89 if (cryptAlgoId==GWEN_Crypt_CryptAlgoId_Unknown) {
121 "keySize", k->keySize);
123 "keyNumber", k->keyNumber);
125 "keyVersion", k->keyVersion);
140 nk->keyNumber=k->keyNumber;
141 nk->keyVersion=k->keyVersion;
151 if (k->refCount==1) {
166 return k->cryptAlgoId;
194 return k->keyVersion;
257 const uint8_t *pInData,
259 uint8_t *pSignatureData,
260 uint32_t *pSignatureLen) {
263 return k->signFn(k, pInData, inLen, pSignatureData, pSignatureLen);
271 const uint8_t *pInData,
273 const uint8_t *pSignatureData,
274 uint32_t signatureLen) {
277 return k->verifyFn(k, pInData, inLen, pSignatureData, signatureLen);
285 const uint8_t *pInData,
291 return k->encipherFn(k, pInData, inLen, pOutData, pOutLen);
299 const uint8_t *pInData,
305 return k->decipherFn(k, pInData, inLen, pOutData, pOutLen);