![]() |
Disk ARchive
2.5.2
Full featured and portable backup and archiving tool
|
#include <crypto_sym.hpp>
Inherits libdar::tronconneuse.
Public Member Functions | |
crypto_sym (U_32 block_size, const secu_string &password, generic_file &encrypted_side, bool no_initial_shift, const archive_version &reading_ver, crypto_algo algo, bool use_pkcs5) | |
Static Public Member Functions | |
static size_t | max_key_len (crypto_algo algo) |
returns the max key length in octets for the given algorithm | |
static size_t | max_key_len_libdar (crypto_algo algo) |
returns the max key length in octets to use to compute a key from a user provided password | |
static bool | is_a_strong_password (crypto_algo algo, const secu_string &password) |
check whether the given password is reported as strong in regard to the given cipher | |
Protected Member Functions | |
U_32 | encrypted_block_size_for (U_32 clear_block_size) |
defines the size necessary to encrypt a given amount of clear data | |
U_32 | clear_block_allocated_size_for (U_32 clear_block_size) |
it may be necessary by the inherited class have few more bytes allocated after the clear data given for encryption | |
U_32 | encrypt_data (const infinint &block_num, const char *clear_buf, const U_32 clear_size, const U_32 clear_allocated, char *crypt_buf, U_32 crypt_size) |
this method encrypts the clear data given | |
U_32 | decrypt_data (const infinint &block_num, const char *crypt_buf, const U_32 crypt_size, char *clear_buf, U_32 clear_size) |
this method decyphers data |
inherited class from tronconneuse class
Definition at line 63 of file crypto_sym.hpp.
U_32 libdar::crypto_sym::clear_block_allocated_size_for | ( | U_32 | clear_block_size | ) | [protected, virtual] |
it may be necessary by the inherited class have few more bytes allocated after the clear data given for encryption
[in] | clear_block_size | is the size in byte of the clear data that will be asked to encrypt. |
Implements libdar::tronconneuse.
U_32 libdar::crypto_sym::decrypt_data | ( | const infinint & | block_num, |
const char * | crypt_buf, | ||
const U_32 | crypt_size, | ||
char * | clear_buf, | ||
U_32 | clear_size | ||
) | [protected, virtual] |
this method decyphers data
[in] | block_num | block number of the data to decrypt. |
[in] | crypt_buf | pointer to the first byte of encrypted data. |
[in] | crypt_size | size of encrypted data to decrypt. |
[in,out] | clear_buf | pointer where to put clear data. |
[in] | clear_size | allocated size of clear_buf. |
Implements libdar::tronconneuse.
U_32 libdar::crypto_sym::encrypt_data | ( | const infinint & | block_num, |
const char * | clear_buf, | ||
const U_32 | clear_size, | ||
const U_32 | clear_allocated, | ||
char * | crypt_buf, | ||
U_32 | crypt_size | ||
) | [protected, virtual] |
this method encrypts the clear data given
block_num | is the number of the block to which correspond the given data, This is an informational field for inherited classes. | |
[in] | clear_buf | points to the first byte of clear data to encrypt. |
[in] | clear_size | is the length in byte of data to encrypt. |
[in] | clear_allocated | is the size of the allocated memory (modifiable bytes) in clear_buf: clear_block_allocated_size_for(clear_size) |
[in,out] | crypt_buf | is the area where to put corresponding encrypted data. |
[in] | crypt_size | is the allocated memory size for crypt_buf: encrypted_block_size_for(clear_size) |
Implements libdar::tronconneuse.
U_32 libdar::crypto_sym::encrypted_block_size_for | ( | U_32 | clear_block_size | ) | [protected, virtual] |
defines the size necessary to encrypt a given amount of clear data
[in] | clear_block_size | is the size of the clear block to encrypt. |
Implements libdar::tronconneuse.