22 #ifndef openssl_suite_h
23 #define openssl_suite_h
29 #include "crypto_engine.h"
94 bool only_auth_ciphers);
262 bool only_auth_ciphers);
wickr_buffer_t * openssl_sha2(const wickr_buffer_t *buffer, const wickr_buffer_t *salt, wickr_digest_t mode)
wickr_buffer_t * openssl_gen_shared_secret(const wickr_ec_key_t *local, const wickr_ec_key_t *peer)
wickr_ecdsa_result_t * openssl_ec_sign(const wickr_ec_key_t *ec_signing_key, const wickr_buffer_t *data_to_sign, wickr_digest_t digest_mode)
bool openssl_decrypt_file(FILE *in_file, const wickr_cipher_key_t *key, FILE *out_file, bool only_auth_ciphers)
Metadata about curve types to help with key generation, and signatures.
Definition: eckey.h:67
bool openssl_is_fips_supported()
wickr_buffer_t * openssl_sha2_file(FILE *in_file, wickr_digest_t mode)
Elliptic Curve Digital Signature Algorithm Result.
Definition: ecdsa.h:54
Digest function parameters.
Definition: digest.h:54
wickr_cipher_result_t * openssl_aes256_encrypt(const wickr_buffer_t *plaintext, const wickr_buffer_t *aad, const wickr_cipher_key_t *key, const wickr_buffer_t *iv)
wickr_buffer_t * openssl_crypto_random(size_t len)
bool openssl_ec_verify(const wickr_ecdsa_result_t *signature, const wickr_ec_key_t *ec_public_key, const wickr_buffer_t *data_to_verify)
bool openssl_encrypt_file(FILE *in_file, const wickr_cipher_key_t *key, FILE *out_file)
bool openssl_hmac_verify(const wickr_buffer_t *data, const wickr_buffer_t *hmac_key, wickr_digest_t mode, const wickr_buffer_t *expected)
wickr_cipher_key_t * openssl_cipher_key_random(wickr_cipher_t cipher)
wickr_buffer_t * openssl_hkdf(const wickr_buffer_t *input_key_material, const wickr_buffer_t *salt, const wickr_buffer_t *info, wickr_digest_t hash_mode)
wickr_ec_key_t * openssl_ec_key_import(const wickr_buffer_t *buffer, bool is_private)
bool openssl_enable_fips_mode(void)
wickr_ec_key_t * openssl_ec_rand_key(wickr_ec_curve_t curve)
Represents an array of bytes and the length of the allocation associated with those bytes.
Definition: buffer.h:51
wickr_buffer_t * openssl_hmac_create(const wickr_buffer_t *data, const wickr_buffer_t *hmac_key, wickr_digest_t mode)
wickr_buffer_t * openssl_aes256_decrypt(const wickr_cipher_result_t *cipher_result, const wickr_buffer_t *aad, const wickr_cipher_key_t *key, bool only_auth_ciphers)
Represents a cipher that can be used in the crypto_engine. This meta object holds parameters for the ...
Definition: cipher.h:56
Representation of public and private Elliptic Curve Keypair information as buffers.
Definition: eckey.h:92