libfcrypto3
Library to support encryption formats
Usage
#include <libfcrypto.h>
Support functions
const char *
libfcrypto_get_version(void);
Error functions
void
libfcrypto_error_free(libfcrypto_error_t **error);
int
libfcrypto_error_fprint(libfcrypto_error_t *error, FILE *stream);
int
libfcrypto_error_sprint(libfcrypto_error_t *error, char *string, size_t size);
int
libfcrypto_error_backtrace_fprint(libfcrypto_error_t *error, FILE *stream);
int
libfcrypto_error_backtrace_sprint(libfcrypto_error_t *error, char *string, size_t size);
Blowfish context functions
int
libfcrypto_blowfish_context_initialize(libfcrypto_blowfish_context_t **context, libfcrypto_error_t **error);
int
libfcrypto_blowfish_context_free(libfcrypto_blowfish_context_t **context, libfcrypto_error_t **error);
int
libfcrypto_blowfish_context_set_key(libfcrypto_blowfish_context_t *context, const uint8_t *key, size_t key_bit_size, libfcrypto_error_t **error);
int
libfcrypto_blowfish_crypt_cbc(libfcrypto_blowfish_context_t *context, int mode, const uint8_t *initialization_vector, size_t initialization_vector_size, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libfcrypto_error_t **error);
int
libfcrypto_blowfish_crypt_ecb(libfcrypto_blowfish_context_t *context, int mode, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libfcrypto_error_t **error);
Overview
DES3 context functions int libfcrypto_des3_context_initialize(libfcrypto_des3_context_t **context, libfcrypto_error_t **error) int libfcrypto_des3_context_free(libfcrypto_des3_context_t **context, libfcrypto_error_t **error) int libfcrypto_des3_context_set_key(libfcrypto_des3_context_t *context, const uint8_t *key, size_t key_bit_size, libfcrypto_error_t **error) int libfcrypto_des3_crypt_cbc(libfcrypto_des3_context_t *context, int mode, const uint8_t *initialization_vector, size_t initialization_vector_size, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libfcrypto_error_t **error) int libfcrypto_des3_crypt_ecb(libfcrypto_des3_context_t *context, int mode, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libfcrypto_error_t **error)
RC4 context functions int libfcrypto_rc4_context_initialize(libfcrypto_rc4_context_t **context, libfcrypto_error_t **error) int libfcrypto_rc4_context_free(libfcrypto_rc4_context_t **context, libfcrypto_error_t **error) int libfcrypto_rc4_context_set_key(libfcrypto_rc4_context_t *context, const uint8_t *key, size_t key_bit_size, libfcrypto_error_t **error) int libfcrypto_rc4_crypt(libfcrypto_rc4_context_t *context, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libfcrypto_error_t **error)
Serpent context functions int libfcrypto_serpent_context_initialize(libfcrypto_serpent_context_t **context, libfcrypto_error_t **error) int libfcrypto_serpent_context_free(libfcrypto_serpent_context_t **context, libfcrypto_error_t **error) int libfcrypto_serpent_context_set_key(libfcrypto_serpent_context_t *context, const uint8_t *key, size_t key_bit_size, libfcrypto_error_t **error) int libfcrypto_serpent_crypt_cbc(libfcrypto_serpent_context_t *context, int mode, const uint8_t *initialization_vector, size_t initialization_vector_size, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libfcrypto_error_t **error) int libfcrypto_serpent_crypt_ecb(libfcrypto_serpent_context_t *context, int mode, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libfcrypto_error_t **error)
Overview
The libfcrypto_get_version() function is used to retrieve the library version.
Return values
Most of the functions return NULL or -1 on error, dependent on the return type. For the actual return values see "libfcrypto.h".
Environment
None
Files
None