Classes | |
class | clan::AES128_Decrypt |
AES-128 decryption class (running in Cipher Block Chaining mode) More... | |
class | clan::AES128_Encrypt |
AES-128 encryption class (running in Cipher Block Chaining mode) More... | |
class | clan::AES192_Decrypt |
AES-192 decryption class (running in Cipher Block Chaining mode) More... | |
class | clan::AES192_Encrypt |
AES-192 encryption class (running in Cipher Block Chaining mode) More... | |
class | clan::AES256_Decrypt |
AES-256 decryption class (running in Cipher Block Chaining mode) More... | |
class | clan::AES256_Encrypt |
AES-256 encryption class (running in Cipher Block Chaining mode) More... | |
class | clan::HashFunctions |
A Collection of checksum functions. More... | |
class | clan::MD5 |
MD5 hash function class. More... | |
class | clan::Random |
Random class. More... | |
class | clan::RSA |
RSA class. More... | |
class | clan::Secret |
Key class. More... | |
class | clan::SHA1 |
SHA-1 hash function class. More... | |
class | clan::SHA224 |
SHA-224 hash function class. More... | |
class | clan::SHA256 |
SHA-256 hash function class. More... | |
class | clan::SHA384 |
SHA-384 hash function class. More... | |
class | clan::SHA512 |
SHA-512 hash function class. More... | |
class | clan::SHA512_224 |
SHA-512_224 hash function class. More... | |
class | clan::SHA512_256 |
SHA-512_256 hash function class. More... | |
class | clan::TLSClient |
Transport Layer Security (TLS) client class. More... | |
Construction | |
clan::AES128_Decrypt::AES128_Decrypt () | |
Constructs a AES-128 generator (running in Cipher Block Chaining mode) More... | |
Attributes | |
DataBuffer | clan::AES128_Decrypt::get_data () const |
Get decrypted data. More... | |
Operations | |
static const int | clan::AES128_Decrypt::iv_size = 16 |
static const int | clan::AES128_Decrypt::key_size = 16 |
void | clan::AES128_Decrypt::reset () |
Resets the decryption. More... | |
void | clan::AES128_Decrypt::set_iv (const unsigned char iv[iv_size]) |
Sets the initialisation vector. More... | |
void | clan::AES128_Decrypt::set_key (const unsigned char key[key_size]) |
Sets the cipher key. More... | |
void | clan::AES128_Decrypt::set_padding (bool value=true, bool use_pkcs7=true) |
Enable AES Padding. More... | |
void | clan::AES128_Decrypt::add (const void *data, int size) |
Adds data to be decrypted. More... | |
void | clan::AES128_Decrypt::add (const DataBuffer &data) |
Add data to be decrypted. More... | |
bool | clan::AES128_Decrypt::calculate () |
Finalize decryption. More... | |
Construction | |
clan::AES128_Encrypt::AES128_Encrypt () | |
Constructs a AES-128 generator (running in Cipher Block Chaining mode) More... | |
Attributes | |
DataBuffer | clan::AES128_Encrypt::get_data () const |
Get encrypted data. More... | |
Operations | |
static const int | clan::AES128_Encrypt::iv_size = 16 |
static const int | clan::AES128_Encrypt::key_size = 16 |
static const int | clan::AES128_Encrypt::block_size = 16 |
void | clan::AES128_Encrypt::reset () |
Resets the encryption. More... | |
void | clan::AES128_Encrypt::set_iv (const unsigned char iv[iv_size]) |
Sets the initialisation vector. More... | |
void | clan::AES128_Encrypt::set_key (const unsigned char key[key_size]) |
Sets the cipher key. More... | |
void | clan::AES128_Encrypt::set_padding (bool value=true, bool use_pkcs7=true, unsigned int num_additional_padded_blocks=0) |
Enable AES Padding. More... | |
void | clan::AES128_Encrypt::add (const void *data, int size) |
Adds data to be encrypted. More... | |
void | clan::AES128_Encrypt::add (const DataBuffer &data) |
Add data to be encrypted. More... | |
void | clan::AES128_Encrypt::calculate () |
Finalize encryption. More... | |
Construction | |
clan::AES192_Decrypt::AES192_Decrypt () | |
Constructs a AES-192 generator (running in Cipher Block Chaining mode) More... | |
Attributes | |
DataBuffer | clan::AES192_Decrypt::get_data () const |
Get decrypted data. More... | |
Operations | |
static const int | clan::AES192_Decrypt::iv_size = 16 |
static const int | clan::AES192_Decrypt::key_size = 24 |
void | clan::AES192_Decrypt::reset () |
Resets the decryption. More... | |
void | clan::AES192_Decrypt::set_iv (const unsigned char iv[iv_size]) |
Sets the initialisation vector. More... | |
void | clan::AES192_Decrypt::set_key (const unsigned char key[key_size]) |
Sets the cipher key. More... | |
void | clan::AES192_Decrypt::set_padding (bool value=true, bool use_pkcs7=true) |
Enable AES Padding. More... | |
void | clan::AES192_Decrypt::add (const void *data, int size) |
Adds data to be decrypted. More... | |
void | clan::AES192_Decrypt::add (const DataBuffer &data) |
Add data to be decrypted. More... | |
bool | clan::AES192_Decrypt::calculate () |
Finalize decryption. More... | |
Construction | |
clan::AES192_Encrypt::AES192_Encrypt () | |
Constructs a AES-192 generator (running in Cipher Block Chaining mode) More... | |
Attributes | |
DataBuffer | clan::AES192_Encrypt::get_data () const |
Get encrypted data. More... | |
Operations | |
static const int | clan::AES192_Encrypt::iv_size = 16 |
static const int | clan::AES192_Encrypt::key_size = 24 |
static const int | clan::AES192_Encrypt::block_size = 16 |
void | clan::AES192_Encrypt::reset () |
Resets the encryption. More... | |
void | clan::AES192_Encrypt::set_iv (const unsigned char iv[iv_size]) |
Sets the initialisation vector. More... | |
void | clan::AES192_Encrypt::set_key (const unsigned char key[key_size]) |
Sets the cipher key. More... | |
void | clan::AES192_Encrypt::set_padding (bool value=true, bool use_pkcs7=true, unsigned int num_additional_padded_blocks=0) |
Enable AES Padding. More... | |
void | clan::AES192_Encrypt::add (const void *data, int size) |
Adds data to be encrypted. More... | |
void | clan::AES192_Encrypt::add (const DataBuffer &data) |
Add data to be encrypted. More... | |
void | clan::AES192_Encrypt::calculate () |
Finalize encryption. More... | |
Construction | |
clan::AES256_Decrypt::AES256_Decrypt () | |
Constructs a AES-256 generator (running in Cipher Block Chaining mode) More... | |
Attributes | |
DataBuffer | clan::AES256_Decrypt::get_data () const |
Get decrypted data. More... | |
Operations | |
static const int | clan::AES256_Decrypt::iv_size = 16 |
static const int | clan::AES256_Decrypt::key_size = 32 |
void | clan::AES256_Decrypt::reset () |
Resets the decryption. More... | |
void | clan::AES256_Decrypt::set_iv (const unsigned char iv[iv_size]) |
Sets the initialisation vector. More... | |
void | clan::AES256_Decrypt::set_key (const unsigned char key[key_size]) |
Sets the cipher key. More... | |
void | clan::AES256_Decrypt::set_padding (bool value=true, bool use_pkcs7=true) |
Enable AES Padding. More... | |
void | clan::AES256_Decrypt::add (const void *data, int size) |
Adds data to be decrypted. More... | |
void | clan::AES256_Decrypt::add (const DataBuffer &data) |
Add data to be decrypted. More... | |
bool | clan::AES256_Decrypt::calculate () |
Finalize decryption. More... | |
Construction | |
clan::AES256_Encrypt::AES256_Encrypt () | |
Constructs a AES-256 generator (running in Cipher Block Chaining mode) More... | |
Attributes | |
DataBuffer | clan::AES256_Encrypt::get_data () const |
Get encrypted data. More... | |
Operations | |
static const int | clan::AES256_Encrypt::iv_size = 16 |
static const int | clan::AES256_Encrypt::key_size = 32 |
static const int | clan::AES256_Encrypt::block_size = 16 |
void | clan::AES256_Encrypt::reset () |
Resets the encryption. More... | |
void | clan::AES256_Encrypt::set_iv (const unsigned char iv[iv_size]) |
Sets the initialisation vector. More... | |
void | clan::AES256_Encrypt::set_key (const unsigned char key[key_size]) |
Sets the cipher key. More... | |
void | clan::AES256_Encrypt::set_padding (bool value=true, bool use_pkcs7=true, unsigned int num_additional_padded_blocks=0) |
Enable AES Padding. More... | |
void | clan::AES256_Encrypt::add (const void *data, int size) |
Adds data to be encrypted. More... | |
void | clan::AES256_Encrypt::add (const DataBuffer &data) |
Add data to be encrypted. More... | |
void | clan::AES256_Encrypt::calculate () |
Finalize encryption. More... | |
Operations | |
static uint32_t | clan::HashFunctions::crc32 (const void *data, int size, uint32_t running_crc=0) |
Calculate a CRC32 checksum on the data. More... | |
static uint32_t | clan::HashFunctions::adler32 (const void *data, int size, uint32_t running_adler32=0) |
Calculate a CRC32 checksum on the data. More... | |
static std::string | clan::HashFunctions::sha1 (const void *data, int size, bool uppercase=false) |
Generate SHA-1 hash from data. More... | |
static std::string | clan::HashFunctions::sha1 (const std::string &data, bool uppercase=false) |
SHA1. More... | |
static std::string | clan::HashFunctions::sha1 (const DataBuffer &data, bool uppercase=false) |
SHA1. More... | |
static void | clan::HashFunctions::sha1 (const void *data, int size, unsigned char out_hash[20]) |
SHA1. More... | |
static void | clan::HashFunctions::sha1 (const std::string &data, unsigned char out_hash[20]) |
SHA1. More... | |
static void | clan::HashFunctions::sha1 (const DataBuffer &data, unsigned char out_hash[20]) |
SHA1. More... | |
static std::string | clan::HashFunctions::md5 (const void *data, int size, bool uppercase=false) |
Generate SHA-1 hash from data. More... | |
static std::string | clan::HashFunctions::md5 (const std::string &data, bool uppercase=false) |
MD5. More... | |
static std::string | clan::HashFunctions::md5 (const DataBuffer &data, bool uppercase=false) |
MD5. More... | |
static void | clan::HashFunctions::md5 (const void *data, int size, unsigned char out_hash[16]) |
MD5. More... | |
static void | clan::HashFunctions::md5 (const std::string &data, unsigned char out_hash[16]) |
MD5. More... | |
static void | clan::HashFunctions::md5 (const DataBuffer &data, unsigned char out_hash[16]) |
MD5. More... | |
static std::string | clan::HashFunctions::sha224 (const void *data, int size, bool uppercase=false) |
Generate SHA-224 hash from data. More... | |
static std::string | clan::HashFunctions::sha224 (const std::string &data, bool uppercase=false) |
SHA224. More... | |
static std::string | clan::HashFunctions::sha224 (const DataBuffer &data, bool uppercase=false) |
SHA224. More... | |
static void | clan::HashFunctions::sha224 (const void *data, int size, unsigned char out_hash[28]) |
SHA224. More... | |
static void | clan::HashFunctions::sha224 (const std::string &data, unsigned char out_hash[28]) |
SHA224. More... | |
static void | clan::HashFunctions::sha224 (const DataBuffer &data, unsigned char out_hash[28]) |
SHA224. More... | |
static std::string | clan::HashFunctions::sha256 (const void *data, int size, bool uppercase=false) |
Generate SHA-256 hash from data. More... | |
static std::string | clan::HashFunctions::sha256 (const std::string &data, bool uppercase=false) |
SHA256. More... | |
static std::string | clan::HashFunctions::sha256 (const DataBuffer &data, bool uppercase=false) |
SHA256. More... | |
static void | clan::HashFunctions::sha256 (const void *data, int size, unsigned char out_hash[32]) |
SHA256. More... | |
static void | clan::HashFunctions::sha256 (const std::string &data, unsigned char out_hash[32]) |
SHA256. More... | |
static void | clan::HashFunctions::sha256 (const DataBuffer &data, unsigned char out_hash[32]) |
SHA256. More... | |
static std::string | clan::HashFunctions::sha384 (const void *data, int size, bool uppercase=false) |
Generate SHA-384 hash from data. More... | |
static std::string | clan::HashFunctions::sha384 (const std::string &data, bool uppercase=false) |
SHA384. More... | |
static std::string | clan::HashFunctions::sha384 (const DataBuffer &data, bool uppercase=false) |
SHA384. More... | |
static void | clan::HashFunctions::sha384 (const void *data, int size, unsigned char out_hash[48]) |
SHA384. More... | |
static void | clan::HashFunctions::sha384 (const std::string &data, unsigned char out_hash[48]) |
SHA384. More... | |
static void | clan::HashFunctions::sha384 (const DataBuffer &data, unsigned char out_hash[48]) |
SHA384. More... | |
static std::string | clan::HashFunctions::sha512 (const void *data, int size, bool uppercase=false) |
Generate SHA-512 hash from data. More... | |
static std::string | clan::HashFunctions::sha512 (const std::string &data, bool uppercase=false) |
SHA512. More... | |
static std::string | clan::HashFunctions::sha512 (const DataBuffer &data, bool uppercase=false) |
SHA512. More... | |
static void | clan::HashFunctions::sha512 (const void *data, int size, unsigned char out_hash[64]) |
SHA512. More... | |
static void | clan::HashFunctions::sha512 (const std::string &data, unsigned char out_hash[64]) |
SHA512. More... | |
static void | clan::HashFunctions::sha512 (const DataBuffer &data, unsigned char out_hash[64]) |
SHA512. More... | |
static std::string | clan::HashFunctions::sha512_224 (const void *data, int size, bool uppercase=false) |
Generate SHA-512_224 hash from data. More... | |
static std::string | clan::HashFunctions::sha512_224 (const std::string &data, bool uppercase=false) |
SHA512_224. More... | |
static std::string | clan::HashFunctions::sha512_224 (const DataBuffer &data, bool uppercase=false) |
SHA512_224. More... | |
static void | clan::HashFunctions::sha512_224 (const void *data, int size, unsigned char out_hash[28]) |
SHA512_224. More... | |
static void | clan::HashFunctions::sha512_224 (const std::string &data, unsigned char out_hash[28]) |
SHA512_224. More... | |
static void | clan::HashFunctions::sha512_224 (const DataBuffer &data, unsigned char out_hash[28]) |
SHA512_224. More... | |
static std::string | clan::HashFunctions::sha512_256 (const void *data, int size, bool uppercase=false) |
Generate SHA-512_256 hash from data. More... | |
static std::string | clan::HashFunctions::sha512_256 (const std::string &data, bool uppercase=false) |
SHA512_256. More... | |
static std::string | clan::HashFunctions::sha512_256 (const DataBuffer &data, bool uppercase=false) |
SHA512_256. More... | |
static void | clan::HashFunctions::sha512_256 (const void *data, int size, unsigned char out_hash[32]) |
SHA512_256. More... | |
static void | clan::HashFunctions::sha512_256 (const std::string &data, unsigned char out_hash[32]) |
SHA512_256. More... | |
static void | clan::HashFunctions::sha512_256 (const DataBuffer &data, unsigned char out_hash[32]) |
SHA512_256. More... | |
Construction | |
clan::MD5::MD5 () | |
Constructs a MD5 hash generator. More... | |
Attributes | |
static const int | clan::MD5::hash_size = 16 |
std::string | clan::MD5::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::MD5::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::MD5::reset () |
Resets the hash generator. More... | |
void | clan::MD5::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::MD5::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::MD5::add (const DataBuffer &data) |
Add. More... | |
void | clan::MD5::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::Random::Random (int cache_size=1024) | |
Constructs the object. More... | |
Operations | |
void | clan::Random::get_random_bytes (unsigned char *out_dest_ptr, int num_bytes) |
Get the random bytes. More... | |
void | clan::Random::get_random_bytes_nzero (unsigned char *out_dest_ptr, int num_bytes) |
Get the random bytes excluding bytes containing 0. More... | |
bool | clan::Random::get_random_bool () |
Get the random boolean. More... | |
Attributes | |
static void | clan::RSA::create_keypair (Random &random, Secret &out_private_exponent, DataBuffer &out_public_exponent, DataBuffer &out_modulus, int key_size_in_bits=1024, int public_exponent_value=65537) |
Create a keypair. More... | |
static DataBuffer | clan::RSA::encrypt (int block_type, Random &random, const DataBuffer &in_public_exponent, const DataBuffer &in_modulus, const Secret &in_data) |
Encrypt. More... | |
static DataBuffer | clan::RSA::encrypt (int block_type, Random &random, const void *in_public_exponent, unsigned int in_public_exponent_size, const void *in_modulus, unsigned int in_modulus_size, const void *in_data, unsigned int in_data_size) |
Encrypt. More... | |
static Secret | clan::RSA::decrypt (const Secret &in_private_exponent, const DataBuffer &in_modulus, const DataBuffer &in_data) |
Decrypt. More... | |
static Secret | clan::RSA::decrypt (const Secret &in_private_exponent, const void *in_modulus, unsigned int in_modulus_size, const void *in_data, unsigned int in_data_size) |
Decrypt. More... | |
Construction | |
clan::Secret::Secret () | |
Constructs a key (unset) More... | |
clan::Secret::Secret (unsigned int new_key_length) | |
Constructs a key to a specified length. More... | |
Attributes | |
unsigned int | clan::Secret::get_size () const |
Get the key size. More... | |
unsigned char * | clan::Secret::get_data () const |
Get the key data. More... | |
Construction | |
clan::SHA1::SHA1 () | |
Constructs a SHA-1 hash generator. More... | |
Attributes | |
static const int | clan::SHA1::hash_size = 20 |
std::string | clan::SHA1::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::SHA1::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::SHA1::reset () |
Resets the hash generator. More... | |
void | clan::SHA1::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::SHA1::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::SHA1::add (const DataBuffer &data) |
Add. More... | |
void | clan::SHA1::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::SHA224::SHA224 () | |
Constructs a SHA-224 hash generator. More... | |
Attributes | |
static const int | clan::SHA224::hash_size = 28 |
std::string | clan::SHA224::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::SHA224::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::SHA224::reset () |
Resets the hash generator. More... | |
void | clan::SHA224::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::SHA224::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::SHA224::add (const DataBuffer &data) |
Add. More... | |
void | clan::SHA224::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::SHA256::SHA256 () | |
Constructs a SHA-256 hash generator. More... | |
Attributes | |
static const int | clan::SHA256::hash_size = 32 |
std::string | clan::SHA256::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::SHA256::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::SHA256::reset () |
Resets the hash generator. More... | |
void | clan::SHA256::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::SHA256::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::SHA256::add (const DataBuffer &data) |
Add. More... | |
void | clan::SHA256::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::SHA384::SHA384 () | |
Constructs a SHA-384 hash generator. More... | |
Attributes | |
static const int | clan::SHA384::hash_size = 48 |
std::string | clan::SHA384::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::SHA384::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::SHA384::reset () |
Resets the hash generator. More... | |
void | clan::SHA384::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::SHA384::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::SHA384::add (const DataBuffer &data) |
Add. More... | |
void | clan::SHA384::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::SHA512::SHA512 () | |
Constructs a SHA-512 hash generator. More... | |
Attributes | |
static const int | clan::SHA512::hash_size = 64 |
std::string | clan::SHA512::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::SHA512::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::SHA512::reset () |
Resets the hash generator. More... | |
void | clan::SHA512::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::SHA512::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::SHA512::add (const DataBuffer &data) |
Add. More... | |
void | clan::SHA512::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::SHA512_224::SHA512_224 () | |
Constructs a SHA-512_224 hash generator. More... | |
Attributes | |
static const int | clan::SHA512_224::hash_size = 28 |
std::string | clan::SHA512_224::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::SHA512_224::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::SHA512_224::reset () |
Resets the hash generator. More... | |
void | clan::SHA512_224::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::SHA512_224::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::SHA512_224::add (const DataBuffer &data) |
Add. More... | |
void | clan::SHA512_224::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::SHA512_256::SHA512_256 () | |
Constructs a SHA-512_256 hash generator. More... | |
Attributes | |
static const int | clan::SHA512_256::hash_size = 32 |
std::string | clan::SHA512_256::get_hash (bool uppercase=false) const |
Returns the calculated hash. More... | |
void | clan::SHA512_256::get_hash (unsigned char out_hash[hash_size]) const |
Get hash. More... | |
Operations | |
void | clan::SHA512_256::reset () |
Resets the hash generator. More... | |
void | clan::SHA512_256::set_hmac (const void *key_data, int key_size) |
Enable a HMAC based calculation. More... | |
void | clan::SHA512_256::add (const void *data, int size) |
Adds data to be hashed. More... | |
void | clan::SHA512_256::add (const DataBuffer &data) |
Add. More... | |
void | clan::SHA512_256::calculate () |
Finalize hash calculation. More... | |
Construction | |
clan::TLSClient::TLSClient () | |
Constructs a TLS client. More... | |
Attributes | |
const void * | clan::TLSClient::get_decrypted_data () const |
Return a pointer to decrypted data available for consumption. More... | |
int | clan::TLSClient::get_decrypted_data_available () const |
Returns how much decrypted data is available. More... | |
const void * | clan::TLSClient::get_encrypted_data () const |
Return a pointer to encrypted data available for consumption. More... | |
int | clan::TLSClient::get_encrypted_data_available () const |
Returns how much encrypted data is available. More... | |
Operations | |
int | clan::TLSClient::encrypt (const void *data, int size) |
Adds data to be encrypted. More... | |
int | clan::TLSClient::decrypt (const void *data, int size) |
Adds data to be decrypted. More... | |
void | clan::TLSClient::decrypted_data_consumed (int size) |
Marks decrypted data as consumed. More... | |
void | clan::TLSClient::encrypted_data_consumed (int size) |
Marks encrypted data as consumed. More... | |
clan::AES128_Decrypt::AES128_Decrypt | ( | ) |
Constructs a AES-128 generator (running in Cipher Block Chaining mode)
clan::AES128_Encrypt::AES128_Encrypt | ( | ) |
Constructs a AES-128 generator (running in Cipher Block Chaining mode)
clan::AES192_Decrypt::AES192_Decrypt | ( | ) |
Constructs a AES-192 generator (running in Cipher Block Chaining mode)
clan::AES192_Encrypt::AES192_Encrypt | ( | ) |
Constructs a AES-192 generator (running in Cipher Block Chaining mode)
clan::AES256_Decrypt::AES256_Decrypt | ( | ) |
Constructs a AES-256 generator (running in Cipher Block Chaining mode)
clan::AES256_Encrypt::AES256_Encrypt | ( | ) |
Constructs a AES-256 generator (running in Cipher Block Chaining mode)
clan::MD5::MD5 | ( | ) |
Constructs a MD5 hash generator.
clan::Random::Random | ( | int | cache_size = 1024 | ) |
Constructs the object.
cache_size = Random number cache size
clan::Secret::Secret | ( | ) |
Constructs a key (unset)
clan::Secret::Secret | ( | unsigned int | new_key_length | ) |
Constructs a key to a specified length.
The data is not initialised
new_key_length | = Length of the key |
clan::SHA1::SHA1 | ( | ) |
Constructs a SHA-1 hash generator.
clan::SHA224::SHA224 | ( | ) |
Constructs a SHA-224 hash generator.
clan::SHA256::SHA256 | ( | ) |
Constructs a SHA-256 hash generator.
clan::SHA384::SHA384 | ( | ) |
Constructs a SHA-384 hash generator.
clan::SHA512::SHA512 | ( | ) |
Constructs a SHA-512 hash generator.
clan::SHA512_224::SHA512_224 | ( | ) |
Constructs a SHA-512_224 hash generator.
clan::SHA512_256::SHA512_256 | ( | ) |
Constructs a SHA-512_256 hash generator.
clan::TLSClient::TLSClient | ( | ) |
Constructs a TLS client.
void clan::SHA1::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::SHA224::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::SHA256::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::SHA384::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::SHA512::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::SHA512_224::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::SHA512_256::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::MD5::add | ( | const DataBuffer & | data | ) |
Add.
data | = Data Buffer |
void clan::AES128_Decrypt::add | ( | const DataBuffer & | data | ) |
Add data to be decrypted.
data | = Data Buffer |
void clan::AES256_Decrypt::add | ( | const DataBuffer & | data | ) |
Add data to be decrypted.
data | = Data Buffer |
void clan::AES192_Decrypt::add | ( | const DataBuffer & | data | ) |
Add data to be decrypted.
data | = Data Buffer |
void clan::AES192_Encrypt::add | ( | const DataBuffer & | data | ) |
Add data to be encrypted.
data | = Data Buffer |
void clan::AES128_Encrypt::add | ( | const DataBuffer & | data | ) |
Add data to be encrypted.
data | = Data Buffer |
void clan::AES256_Encrypt::add | ( | const DataBuffer & | data | ) |
Add data to be encrypted.
data | = Data Buffer |
void clan::SHA1::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::SHA224::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::SHA256::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::SHA384::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::SHA512::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::SHA512_224::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::SHA512_256::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::MD5::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be hashed.
void clan::AES256_Decrypt::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be decrypted.
void clan::AES128_Decrypt::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be decrypted.
void clan::AES192_Decrypt::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be decrypted.
void clan::AES128_Encrypt::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be encrypted.
void clan::AES192_Encrypt::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be encrypted.
void clan::AES256_Encrypt::add | ( | const void * | data, |
int | size | ||
) |
Adds data to be encrypted.
|
static |
Calculate a CRC32 checksum on the data.
void clan::SHA1::calculate | ( | ) |
Finalize hash calculation.
void clan::SHA224::calculate | ( | ) |
Finalize hash calculation.
void clan::SHA256::calculate | ( | ) |
Finalize hash calculation.
void clan::SHA384::calculate | ( | ) |
Finalize hash calculation.
void clan::SHA512::calculate | ( | ) |
Finalize hash calculation.
void clan::SHA512_224::calculate | ( | ) |
Finalize hash calculation.
void clan::SHA512_256::calculate | ( | ) |
Finalize hash calculation.
void clan::MD5::calculate | ( | ) |
Finalize hash calculation.
void clan::AES192_Encrypt::calculate | ( | ) |
Finalize encryption.
void clan::AES128_Encrypt::calculate | ( | ) |
Finalize encryption.
void clan::AES256_Encrypt::calculate | ( | ) |
Finalize encryption.
bool clan::AES128_Decrypt::calculate | ( | ) |
Finalize decryption.
IMPORTANT, to avoid timing attacks, if this function fails, you should still validate the data (via a hash or otherwise), then throw an error
bool clan::AES256_Decrypt::calculate | ( | ) |
Finalize decryption.
IMPORTANT, to avoid timing attacks, if this function fails, you should still validate the data (via a hash or otherwise), then throw an error
bool clan::AES192_Decrypt::calculate | ( | ) |
Finalize decryption.
IMPORTANT, to avoid timing attacks, if this function fails, you should still validate the data (via a hash or otherwise), then throw an error
|
static |
Calculate a CRC32 checksum on the data.
|
static |
Create a keypair.
random | = Random number generator |
out_private_exponent | = Private exponent (to decrypt with) |
out_public_exponent | = Public exponent (to encrypt with) |
out_modulus | = Modulus |
key_size_in_bits | = key size in bits |
public_exponent_value | = public exponent value |
|
static |
Decrypt.
Warning: An exception may be thrown when decrypting if in_data is not valid. Be careful handling this, to prevent "timing attacks"
in_private_exponent | = Private exponent |
in_modulus | = Modulus |
in_data | = Data to decrypt (length equals in_modulus.get_size()) |
|
static |
Decrypt.
Warning: An exception may be thrown when decrypting if in_data is not valid. Be careful handling this, to prevent "timing attacks"
in_private_exponent | = Private exponent |
in_modulus | = Modulus |
in_modulus_size | = size in bytes of in_modulus |
in_data | = Data to encrypt |
in_data_size | = size in bytes of in_data (length equals in_modulus_size) |
int clan::TLSClient::decrypt | ( | const void * | data, |
int | size | ||
) |
Adds data to be decrypted.
void clan::TLSClient::decrypted_data_consumed | ( | int | size | ) |
Marks decrypted data as consumed.
int clan::TLSClient::encrypt | ( | const void * | data, |
int | size | ||
) |
Adds data to be encrypted.
|
static |
Encrypt.
block_type | = 0 (private key), 1 (private key) or 2 (public key) |
random | = Random number generator |
in_public_exponent | = Public exponent |
in_modulus | = Modulus |
in_data | = Data to encrypt (maximum length is in_modulus.get_size() - 11) |
|
static |
Encrypt.
block_type | = 0 (private key), 1 (private key) or 2 (public key) |
random | = Random number generator |
in_public_exponent | = Public exponent |
in_public_exponent_size | = size in bytes of in_public_exponent |
in_modulus | = Modulus |
in_modulus_size | = size in bytes of in_modulus |
in_data | = Data to encrypt |
in_data_size | = size in bytes of in_data (maximum size is in_modulus_size - 11) |
void clan::TLSClient::encrypted_data_consumed | ( | int | size | ) |
Marks encrypted data as consumed.
DataBuffer clan::AES256_Encrypt::get_data | ( | ) | const |
Get encrypted data.
This is the databuffer used internally to store the encrypted data. You may call "set_size()" to clear the buffer, inbetween calls to "add()" You may call "set_capacity()" to optimise storage requirements before the add() call
DataBuffer clan::AES128_Decrypt::get_data | ( | ) | const |
Get decrypted data.
This is the databuffer used internally to store the decrypted data. You may call "set_size()" to clear the buffer, inbetween calls to "add()" You may call "set_capacity()" to optimise storage requirements before the add() call
DataBuffer clan::AES256_Decrypt::get_data | ( | ) | const |
Get decrypted data.
This is the databuffer used internally to store the decrypted data. You may call "set_size()" to clear the buffer, inbetween calls to "add()" You may call "set_capacity()" to optimise storage requirements before the add() call
DataBuffer clan::AES192_Decrypt::get_data | ( | ) | const |
Get decrypted data.
This is the databuffer used internally to store the decrypted data. You may call "set_size()" to clear the buffer, inbetween calls to "add()" You may call "set_capacity()" to optimise storage requirements before the add() call
DataBuffer clan::AES128_Encrypt::get_data | ( | ) | const |
Get encrypted data.
This is the databuffer used internally to store the encrypted data. You may call "set_size()" to clear the buffer, inbetween calls to "add()" You may call "set_capacity()" to optimise storage requirements before the add() call
DataBuffer clan::AES192_Encrypt::get_data | ( | ) | const |
Get encrypted data.
This is the databuffer used internally to store the encrypted data. You may call "set_size()" to clear the buffer, inbetween calls to "add()" You may call "set_capacity()" to optimise storage requirements before the add() call
unsigned char* clan::Secret::get_data | ( | ) | const |
Get the key data.
const void* clan::TLSClient::get_decrypted_data | ( | ) | const |
Return a pointer to decrypted data available for consumption.
int clan::TLSClient::get_decrypted_data_available | ( | ) | const |
Returns how much decrypted data is available.
const void* clan::TLSClient::get_encrypted_data | ( | ) | const |
Return a pointer to encrypted data available for consumption.
int clan::TLSClient::get_encrypted_data_available | ( | ) | const |
Returns how much encrypted data is available.
std::string clan::SHA1::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
std::string clan::SHA224::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
std::string clan::SHA256::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
std::string clan::SHA384::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
std::string clan::SHA512::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
std::string clan::SHA512_224::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
std::string clan::SHA512_256::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
std::string clan::MD5::get_hash | ( | bool | uppercase = false | ) | const |
Returns the calculated hash.
void clan::SHA1::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
void clan::SHA224::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
void clan::SHA256::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
void clan::SHA384::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
void clan::SHA512::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
void clan::SHA512_224::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
void clan::SHA512_256::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
void clan::MD5::get_hash | ( | unsigned char | out_hash[hash_size] | ) | const |
Get hash.
out_hash | = where to write to |
bool clan::Random::get_random_bool | ( | ) |
Get the random boolean.
out_dest_ptr = Where to write to num_bytes = Number of bytes to copy
void clan::Random::get_random_bytes | ( | unsigned char * | out_dest_ptr, |
int | num_bytes | ||
) |
Get the random bytes.
out_dest_ptr = Where to write to num_bytes = Number of bytes to copy
void clan::Random::get_random_bytes_nzero | ( | unsigned char * | out_dest_ptr, |
int | num_bytes | ||
) |
Get the random bytes excluding bytes containing 0.
out_dest_ptr = Where to write to num_bytes = Number of bytes to copy
unsigned int clan::Secret::get_size | ( | ) | const |
Get the key size.
|
static |
|
static |
MD5.
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
MD5.
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-1 hash from data.
|
static |
MD5.
data | = void |
size | = value |
out_hash | = char |
void clan::SHA1::reset | ( | ) |
Resets the hash generator.
void clan::AES256_Decrypt::reset | ( | ) |
Resets the decryption.
void clan::AES192_Decrypt::reset | ( | ) |
Resets the decryption.
void clan::SHA512::reset | ( | ) |
Resets the hash generator.
void clan::SHA512_224::reset | ( | ) |
Resets the hash generator.
void clan::SHA384::reset | ( | ) |
Resets the hash generator.
void clan::SHA512_256::reset | ( | ) |
Resets the hash generator.
void clan::MD5::reset | ( | ) |
Resets the hash generator.
void clan::SHA224::reset | ( | ) |
Resets the hash generator.
void clan::AES128_Decrypt::reset | ( | ) |
Resets the decryption.
void clan::SHA256::reset | ( | ) |
Resets the hash generator.
void clan::AES192_Encrypt::reset | ( | ) |
Resets the encryption.
void clan::AES128_Encrypt::reset | ( | ) |
Resets the encryption.
void clan::AES256_Encrypt::reset | ( | ) |
Resets the encryption.
void clan::SHA1::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::SHA224::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::SHA256::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::SHA512_256::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::SHA384::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::SHA512::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::SHA512_224::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::MD5::set_hmac | ( | const void * | key_data, |
int | key_size | ||
) |
void clan::AES256_Decrypt::set_iv | ( | const unsigned char | iv[iv_size] | ) |
Sets the initialisation vector.
This should be a random number
This must be called before the initial add()
void clan::AES192_Decrypt::set_iv | ( | const unsigned char | iv[iv_size] | ) |
Sets the initialisation vector.
This should be a random number
This must be called before the initial add()
void clan::AES128_Decrypt::set_iv | ( | const unsigned char | iv[iv_size] | ) |
Sets the initialisation vector.
This should be a random number
This must be called before the initial add()
void clan::AES192_Encrypt::set_iv | ( | const unsigned char | iv[iv_size] | ) |
Sets the initialisation vector.
This should be a random number
This must be called before the initial add()
void clan::AES256_Encrypt::set_iv | ( | const unsigned char | iv[iv_size] | ) |
Sets the initialisation vector.
This should be a random number
This must be called before the initial add()
void clan::AES128_Encrypt::set_iv | ( | const unsigned char | iv[iv_size] | ) |
Sets the initialisation vector.
This should be a random number
This must be called before the initial add()
void clan::AES128_Decrypt::set_key | ( | const unsigned char | key[key_size] | ) |
Sets the cipher key.
This must be called before the initial add()
void clan::AES256_Decrypt::set_key | ( | const unsigned char | key[key_size] | ) |
Sets the cipher key.
This must be called before the initial add()
void clan::AES192_Decrypt::set_key | ( | const unsigned char | key[key_size] | ) |
Sets the cipher key.
This must be called before the initial add()
void clan::AES192_Encrypt::set_key | ( | const unsigned char | key[key_size] | ) |
Sets the cipher key.
This must be called before the initial add()
void clan::AES256_Encrypt::set_key | ( | const unsigned char | key[key_size] | ) |
Sets the cipher key.
This must be called before the initial add()
void clan::AES128_Encrypt::set_key | ( | const unsigned char | key[key_size] | ) |
Sets the cipher key.
This must be called before the initial add()
void clan::AES192_Decrypt::set_padding | ( | bool | value = true , |
bool | use_pkcs7 = true |
||
) |
Enable AES Padding.
Example (use_pkcs7==true) : ... 0x03 0x03 0x03 (3 octets of padding) Example (use_pkcs7==false) : ... 0x02 0x02 0x02 (3 octets of padding, the last octet is the length)
value | = true = Enable padding (default) |
use_pkcs7 | = true = This uses the PKCS#7/RFC3369 method (Enabled by default). false = use the TLS method (rfc2246) |
void clan::AES128_Decrypt::set_padding | ( | bool | value = true , |
bool | use_pkcs7 = true |
||
) |
Enable AES Padding.
Example (use_pkcs7==true) : ... 0x03 0x03 0x03 (3 octets of padding) Example (use_pkcs7==false) : ... 0x02 0x02 0x02 (3 octets of padding, the last octet is the length)
value | = true = Enable padding (default) |
use_pkcs7 | = true = This uses the PKCS#7/RFC3369 method (Enabled by default). false = use the TLS method (rfc2246) |
void clan::AES256_Decrypt::set_padding | ( | bool | value = true , |
bool | use_pkcs7 = true |
||
) |
Enable AES Padding.
Example (use_pkcs7==true) : ... 0x03 0x03 0x03 (3 octets of padding) Example (use_pkcs7==false) : ... 0x02 0x02 0x02 (3 octets of padding, the last octet is the length)
value | = true = Enable padding (default) |
use_pkcs7 | = true = This uses the PKCS#7/RFC3369 method (Enabled by default). false = use the TLS method (rfc2246) |
void clan::AES192_Encrypt::set_padding | ( | bool | value = true , |
bool | use_pkcs7 = true , |
||
unsigned int | num_additional_padded_blocks = 0 |
||
) |
Enable AES Padding.
Example (use_pkcs7==true) : ... 0x03 0x03 0x03 (3 octets of padding) Example (use_pkcs7==false) : ... 0x02 0x02 0x02 (3 octets of padding, the last octet is the length)
value | = true = Enable padding (default) |
use_pkcs7 | = true = This uses the PKCS#7/RFC3369 method (Enabled by default). false = use the TLS method (rfc2246) |
num_additional_padded_blocks | = (Only valid when use_pkcs7==false). Set to "frustrate attacks on a protocol based on analysis of the lengths of exchanged messages". (Range 0 to 15) |
void clan::AES128_Encrypt::set_padding | ( | bool | value = true , |
bool | use_pkcs7 = true , |
||
unsigned int | num_additional_padded_blocks = 0 |
||
) |
Enable AES Padding.
Example (use_pkcs7==true) : ... 0x03 0x03 0x03 (3 octets of padding) Example (use_pkcs7==false) : ... 0x02 0x02 0x02 (3 octets of padding, the last octet is the length)
value | = true = Enable padding (default) |
use_pkcs7 | = true = This uses the PKCS#7/RFC3369 method (Enabled by default). false = use the TLS method (rfc2246) |
num_additional_padded_blocks | = (Only valid when use_pkcs7==false). Set to "frustrate attacks on a protocol based on analysis of the lengths of exchanged messages". (Range 0 to 15) |
void clan::AES256_Encrypt::set_padding | ( | bool | value = true , |
bool | use_pkcs7 = true , |
||
unsigned int | num_additional_padded_blocks = 0 |
||
) |
Enable AES Padding.
Example (use_pkcs7==true) : ... 0x03 0x03 0x03 (3 octets of padding) Example (use_pkcs7==false) : ... 0x02 0x02 0x02 (3 octets of padding, the last octet is the length)
value | = true = Enable padding (default) |
use_pkcs7 | = true = This uses the PKCS#7/RFC3369 method (Enabled by default). false = use the TLS method (rfc2246) |
num_additional_padded_blocks | = (Only valid when use_pkcs7==false). Set to "frustrate attacks on a protocol based on analysis of the lengths of exchanged messages". (Range 0 to 15) |
|
static |
|
static |
SHA1.
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
SHA1.
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-1 hash from data.
|
static |
SHA1.
data | = void |
size | = value |
out_hash | = char |
|
static |
|
static |
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-224 hash from data.
|
static |
data | = void |
size | = value |
out_hash | = char |
|
static |
|
static |
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-256 hash from data.
|
static |
data | = void |
size | = value |
out_hash | = char |
|
static |
|
static |
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-384 hash from data.
|
static |
data | = void |
size | = value |
out_hash | = char |
|
static |
|
static |
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-512 hash from data.
|
static |
data | = void |
size | = value |
out_hash | = char |
|
static |
|
static |
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-512_224 hash from data.
|
static |
data | = void |
size | = value |
out_hash | = char |
|
static |
|
static |
data | = Data Buffer |
out_hash | = char |
|
static |
|
static |
data | = String Ref8 |
out_hash | = char |
|
static |
Generate SHA-512_256 hash from data.
|
static |
data | = void |
size | = value |
out_hash | = char |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |