+#ifdef WITH_OPENSSL
+bool hashkit_key(hashkit_st *kit, const char *key, const size_t key_length) {
+ kit->_cryptographic_context = (encryption_context_t *) malloc(sizeof(encryption_context_t));
+ ((encryption_context_t *) kit->_cryptographic_context)->encryption_context = EVP_CIPHER_CTX_new();
+ ((encryption_context_t *) kit->_cryptographic_context)->decryption_context = EVP_CIPHER_CTX_new();
+ if (((encryption_context_t *) kit->_cryptographic_context)->encryption_context == NULL
+ || ((encryption_context_t *) kit->_cryptographic_context)->decryption_context == NULL)
+ {
+ return false;
+ }
+ return aes_initialize((const unsigned char *) key, key_length,
+ (encryption_context_t *) kit->_cryptographic_context);
+}
+#else