12 const std::vector<uint8_t> plaintext(16, 0);
13 std::vector<uint8_t> cyphertext(16, 0);
22 const std::vector<uint8_t> cyphertext(16, 0);
23 std::vector<uint8_t> plaintext(16, 0);
32 const std::vector<uint8_t> plaintext(16, 0);
33 std::vector<uint8_t> cyphertext(16, 0);
42 const std::vector<uint8_t> cyphertext(16, 0);
43 std::vector<uint8_t> plaintext(16, 0);
53 const std::vector<uint8_t> plaintext(128, 0);
54 std::vector<uint8_t> cyphertext(128, 0);
58 .
Encrypt(plaintext.data(), plaintext.size(), cyphertext.data());
65 const std::vector<uint8_t> cyphertext(128, 0);
66 std::vector<uint8_t> plaintext(128, 0);
70 .
Decrypt(cyphertext.data(), cyphertext.size(), plaintext.data());
77 const std::vector<uint8_t> plaintext(128, 0);
82 .
Encrypt(plaintext.data(), plaintext.size(), cyphertext.data());
89 const std::vector<uint8_t> cyphertext(128, 0);
94 .
Decrypt(cyphertext.data(), cyphertext.size(), plaintext.data());
101 const std::vector<uint8_t> plaintext(128, 0);
102 std::vector<uint8_t> cyphertext(128, 0);
106 .
Encrypt(plaintext.data(), plaintext.size(), cyphertext.data());
113 const std::vector<uint8_t> cyphertext(128, 0);
114 std::vector<uint8_t> plaintext(128, 0);
118 .
Decrypt(cyphertext.data(), cyphertext.size(), plaintext.data());
125 const std::vector<uint8_t> plaintext(128, 0);
130 .
Encrypt(plaintext.data(), plaintext.size(), cyphertext.data());
137 const std::vector<uint8_t> cyphertext(128, 0);
142 .
Decrypt(cyphertext.data(), cyphertext.size(), plaintext.data());
static const int AES128_KEYSIZE
static const int AES256_KEYSIZE
static const int AES_BLOCKSIZE
int Decrypt(const uint8_t *data, int size, uint8_t *out) const
int Encrypt(const uint8_t *data, int size, uint8_t *out) const
A decryption class for AES-128.
void Decrypt(uint8_t plaintext[16], const uint8_t ciphertext[16]) const
An encryption class for AES-128.
void Encrypt(uint8_t ciphertext[16], const uint8_t plaintext[16]) const
int Decrypt(const uint8_t *data, int size, uint8_t *out) const
int Encrypt(const uint8_t *data, int size, uint8_t *out) const
A decryption class for AES-256.
void Decrypt(uint8_t plaintext[16], const uint8_t ciphertext[16]) const
An encryption class for AES-256.
void Encrypt(uint8_t ciphertext[16], const uint8_t plaintext[16]) const
Main entry point to nanobench's benchmarking facility.
ANKERL_NANOBENCH(NODISCARD) std Bench & batch(T b) noexcept
Sets the batch size.
Bench & run(char const *benchmarkName, Op &&op)
Repeatedly calls op() based on the configuration, and performs measurements.
Bench & unit(char const *unit)
Sets the operation unit.
static void AES128CBC_EncryptWithPad(benchmark::Bench &bench)
static void AES256_Encrypt(benchmark::Bench &bench)
static void AES128CBC_DecryptWithPad(benchmark::Bench &bench)
static void AES128CBC_DecryptNoPad(benchmark::Bench &bench)
static void AES256CBC_DecryptNoPad(benchmark::Bench &bench)
static void AES256CBC_EncryptNoPad(benchmark::Bench &bench)
static void AES128_Decrypt(benchmark::Bench &bench)
static void AES256CBC_EncryptWithPad(benchmark::Bench &bench)
static void AES256_Decrypt(benchmark::Bench &bench)
static void AES128_Encrypt(benchmark::Bench &bench)
static void AES256CBC_DecryptWithPad(benchmark::Bench &bench)
BENCHMARK(AES128_Encrypt)
static void AES128CBC_EncryptNoPad(benchmark::Bench &bench)