X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=src%2Flibhashkit%2Faes.h;h=e021c5f1dec7ad1fc045d8ce3b0ae6cf07dcdeab;hb=2aab18117a2b078dd0eb366f3766a1fef06da695;hp=43a18b35ad32d7732409e5b378a85061985ba766;hpb=ec4b275c7dab0af781c8e2571021d4821736eef9;p=awesomized%2Flibmemcached diff --git a/src/libhashkit/aes.h b/src/libhashkit/aes.h index 43a18b35..e021c5f1 100644 --- a/src/libhashkit/aes.h +++ b/src/libhashkit/aes.h @@ -15,6 +15,27 @@ #pragma once +#ifdef WITH_OPENSSL + +#include + +typedef struct encryption_context { + EVP_CIPHER_CTX *encryption_context; + EVP_CIPHER_CTX *decryption_context; +} encryption_context_t; + +hashkit_string_st *aes_encrypt(encryption_context_t *crypto_context, const unsigned char *source, + size_t source_length); + +hashkit_string_st *aes_decrypt(encryption_context_t *crypto_context, const unsigned char *source, + size_t source_length); + +bool aes_initialize(const unsigned char *key, const size_t key_length, + encryption_context_t *crypto_context); + +encryption_context_t *aes_clone_cryptographic_context(encryption_context_t *source); +#else + struct aes_key_t; hashkit_string_st *aes_encrypt(aes_key_t *_aes_key, const char *source, size_t source_length); @@ -24,3 +45,4 @@ hashkit_string_st *aes_decrypt(aes_key_t *_aes_key, const char *source, size_t s aes_key_t *aes_create_key(const char *key, const size_t key_length); aes_key_t *aes_clone_key(aes_key_t *_aes_key); +#endif \ No newline at end of file