Virgil Security Crypto library
2.4.6
|
This namespace contains interfaces for high-level crypto operations, i.e. generate key pair, encrypt and decrypt data, sign and verify data. More...
Namespaces | |
foundation | |
This namespace contains interfaces for low-level crypto operations. | |
pfs | |
This namespace contains interfaces for Perfect Forward Secrecy data and algorithm. | |
stream | |
This namespace contains interfaces for stream data processing in crypto algorithms. | |
Classes | |
class | VirgilByteArrayUtils |
This class contains conversion utils for byte sequence. More... | |
class | VirgilChunkCipher |
This class provides high-level interface to encrypt / decrypt data splitted to chunks. More... | |
class | VirgilCipher |
This class provides high-level interface to encrypt / decrypt data using Virgil Security keys. More... | |
class | VirgilCipherBase |
This class provides configuration methods to all Virgil*Cipher classes. More... | |
class | VirgilContentInfo |
class | VirgilCryptoErrorCategory |
This is specific error category that contains information about crypto library errors. More... | |
class | VirgilCryptoException |
This only exception that crypto library can produce. More... | |
class | VirgilCustomParams |
Data object that represent ASN.1 structure: VirgilCustomParams. More... | |
class | VirgilDataSink |
This is base class for output streams. More... | |
class | VirgilDataSource |
This is base class for input streams. More... | |
class | VirgilKeyPair |
This class handles information about Virgil Security key pair. More... | |
class | VirgilSigner |
This class provides high-level interface to sign and verify data using Virgil Security keys. More... | |
class | VirgilSignerBase |
This class provides common functionality to sign and verify data using Virgil Security keys. More... | |
class | VirgilStreamCipher |
This class provides high-level interface to encrypt / decrypt streaming data using Virgil Security keys. More... | |
class | VirgilStreamSigner |
This class provides high-level interface to sign and verify data using Virgil Security keys. More... | |
class | VirgilTinyCipher |
This class aim is to minimize encryption output. More... | |
class | VirgilVersion |
Provides information about Virgil library version. More... | |
Typedefs | |
typedef std::vector< unsigned char > | VirgilByteArray |
This type represents a sequence of bytes. | |
Functions | |
VirgilByteArray | str2bytes (const std::string &str) |
Represents given string as byte array. | |
std::string | bytes2str (const VirgilByteArray &array) |
Represent given byte array as string. | |
VirgilByteArray | hex2bytes (const std::string hexStr) |
Translate given HEX string to the byte array. More... | |
std::string | bytes2hex (const VirgilByteArray &array, bool formatted=false) |
Translate given byte array to the HEX string. More... | |
VirgilByteArray & | bytes_append (VirgilByteArray &dst, const VirgilByteArray &src) |
Append given source bytes to the existing destination bytes. More... | |
std::tuple< VirgilByteArray, VirgilByteArray > | bytes_split (const VirgilByteArray &src, size_t pos) |
Split given bytes to two sequences. More... | |
std::tuple< VirgilByteArray, VirgilByteArray > | bytes_split_half (const VirgilByteArray &src) |
Split given bytes to two sequences of the same size. More... | |
std::vector< VirgilByteArray > | bytes_split_chunks (const VirgilByteArray &src, size_t chunkSize) |
Split given bytes to the chuns of the given size. More... | |
const VirgilCryptoErrorCategory & | crypto_category () noexcept |
Return singleton instance of the crypto error category. More... | |
VirgilCryptoException | make_error (VirgilCryptoError ev) |
Build exception with given error value and corresond error category. More... | |
VirgilCryptoException | make_error (VirgilCryptoError ev, const std::string &what) |
Build exception with given error value and corresond error category. More... | |
VirgilCryptoException | make_error (VirgilCryptoError ev, const char *what) |
Build exception with given error value and corresond error category. More... | |
std::string | backtrace_exception (const std::exception &exception, size_t level=0) |
Unwind information about nested excpetions. More... | |
ByteArray security clear utilities | |
void | bytes_zeroize (VirgilByteArray &array) |
Make all bytes zero. | |
void | string_zeroize (std::string &str) |
Make all chars zero. | |
This namespace contains interfaces for high-level crypto operations, i.e. generate key pair, encrypt and decrypt data, sign and verify data.
std::string virgil::crypto::backtrace_exception | ( | const std::exception & | exception, |
size_t | level = 0 |
||
) |
Unwind information about nested excpetions.
exception | - Top level exception. |
level | - initial identation level. |
std::string virgil::crypto::bytes2hex | ( | const VirgilByteArray & | array, |
bool | formatted = false |
||
) |
Translate given byte array to the HEX string.
array | - byte array. |
formatted | - if true, endline will be inserted every 16 bytes, and all bytes will be separated with whitespaces. |
VirgilByteArray& virgil::crypto::bytes_append | ( | VirgilByteArray & | dst, |
const VirgilByteArray & | src | ||
) |
Append given source bytes to the existing destination bytes.
dst | - bytes append to. |
src | - bytes append from. |
std::tuple<VirgilByteArray, VirgilByteArray> virgil::crypto::bytes_split | ( | const VirgilByteArray & | src, |
size_t | pos | ||
) |
Split given bytes to two sequences.
src | - bytes to be splitted. |
pos | - splitting position. |
std::vector<VirgilByteArray> virgil::crypto::bytes_split_chunks | ( | const VirgilByteArray & | src, |
size_t | chunkSize | ||
) |
Split given bytes to the chuns of the given size.
src | - bytes to be splitted. |
chunkSize | - size of the chunk. |
std::tuple<VirgilByteArray, VirgilByteArray> virgil::crypto::bytes_split_half | ( | const VirgilByteArray & | src | ) |
Split given bytes to two sequences of the same size.
src | - bytes to be splitted. |
VirgilByteArray virgil::crypto::hex2bytes | ( | const std::string | hexStr | ) |
Translate given HEX string to the byte array.
hexStr | - HEX string. |