Skip to content
Snippets Groups Projects
dap_enc_bf.h 2.01 KiB
Newer Older
ivan.fedorov's avatar
ivan.fedorov committed
#ifndef _DAP_ENC_BF_H_
#define _DAP_ENC_BF_H_
ivan.fedorov's avatar
ivan.fedorov committed

#include <stddef.h>
#include "dap_enc_key.h"
#include"blowfish/blowfish.h"

#ifdef __cplusplus
extern "C" {
#endif
ivan.fedorov's avatar
ivan.fedorov committed
void dap_enc_bf_key_delete(struct dap_enc_key *a_key);
void dap_enc_bf_key_generate(struct dap_enc_key * a_key, const void *kex_buf,
ivan.fedorov's avatar
ivan.fedorov committed
        size_t kex_size, const void * seed, size_t seed_size, size_t key_size);
ivan.fedorov's avatar
ivan.fedorov committed
//-----CBC----------
void dap_enc_bf_cbc_key_new(struct dap_enc_key * a_key);
size_t dap_enc_bf_cbc_calc_decode_size(const size_t size_in);
size_t dap_enc_bf_cbc_calc_encode_size(const size_t size_in);
ivan.fedorov's avatar
ivan.fedorov committed

size_t dap_enc_bf_cbc_decrypt(struct dap_enc_key * a_key, const void * a_in, size_t a_in_size, void ** a_out);
size_t dap_enc_bf_cbc_encrypt(struct dap_enc_key * a_key, const void * a_in, size_t a_in_size, void ** a_out);

// Writes result ( out ) in already allocated buffer
size_t dap_enc_bf_cbc_decrypt_fast(struct dap_enc_key * a_key, const void * a_in,
        size_t a_in_size, void * buf_out, size_t buf_out_size);
ivan.fedorov's avatar
ivan.fedorov committed
// Writes result ( out ) in already allocated buffer
size_t dap_enc_bf_cbc_encrypt_fast(struct dap_enc_key * a_key, const void * a_in,
        size_t a_in_size, void * buf_out, size_t buf_out_size);
ivan.fedorov's avatar
ivan.fedorov committed
//------OFB---------
void dap_enc_bf_ofb_key_new(struct dap_enc_key * a_key);

size_t dap_enc_bf_ofb_calc_decode_size(const size_t size_in);
size_t dap_enc_bf_ofb_calc_encode_size(const size_t size_in);

size_t dap_enc_bf_ofb_decrypt(struct dap_enc_key * a_key, const void * a_in, size_t a_in_size, void ** a_out);
size_t dap_enc_bf_ofb_encrypt(struct dap_enc_key * a_key, const void * a_in, size_t a_in_size, void ** a_out);

// Writes result ( out ) in already allocated buffer
size_t dap_enc_bf_ofb_decrypt_fast(struct dap_enc_key * a_key, const void * a_in,
        size_t a_in_size, void * buf_out, size_t buf_out_size);
// Writes result ( out ) in already allocated buffer
size_t dap_enc_bf_ofb_encrypt_fast(struct dap_enc_key * a_key, const void * a_in,
        size_t a_in_size, void * buf_out, size_t buf_out_size);

ivan.fedorov's avatar
ivan.fedorov committed
#ifdef __cplusplus
}
#endif

#endif