Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
aes128.hpp File Reference

Go to the source code of this file.

Namespaces

namespace  bb
 Entry point for Barretenberg command-line interface.
 
namespace  bb::stdlib
 
namespace  bb::stdlib::aes128
 

Functions

template<typename Builder >
std::vector< stdlib::field_t< Builder > > bb::stdlib::aes128::encrypt_buffer_cbc (const std::vector< stdlib::field_t< Builder > > &input, const stdlib::field_t< Builder > &iv, const stdlib::field_t< Builder > &key)
 Main public interface: AES-128 CBC encryption.
 
template<typename Builder >
std::array< stdlib::field_t< Builder >, BLOCK_SIZEbb::stdlib::aes128::convert_into_sparse_bytes (Builder *ctx, const stdlib::field_t< Builder > &block_data)
 Converts a 128-bit block into 16 sparse-form bytes via AES_INPUT plookup table.
 
template<typename Builder >
stdlib::field_t< Builderbb::stdlib::aes128::convert_from_sparse_bytes (Builder *ctx, std::span< stdlib::field_t< Builder >, BLOCK_SIZE > sparse_bytes)
 Converts 16 sparse-form bytes back to a 128-bit field element.
 

Variables

constexpr uint32_t bb::stdlib::aes128::AES128_BASE = 9
 
constexpr size_t bb::stdlib::aes128::BLOCK_SIZE = 16
 
constexpr size_t bb::stdlib::aes128::EXTENDED_KEY_LENGTH = 176
 
constexpr size_t bb::stdlib::aes128::NUM_ROUNDS = 10
 
constexpr size_t bb::stdlib::aes128::COLUMN_SIZE = 4