26 return { Permutation::permutation(
inputs) };
32 throw_or_abort(
"Poseidon2HashAccumulate requires at least one input");
36 for (
size_t i = 1; i <
inputs.size(); ++i) {
46 ctx.
offset =
static_cast<size_t>(hash_index);
53 ctx.
offset =
static_cast<size_t>(hash_index);
60 ctx.
offset =
static_cast<size_t>(hash_index);
78 std::vector<uint8_t> result = plaintext;
89 std::vector<uint8_t> result = ciphertext;
Cryptographic primitives command definitions for the Barretenberg RPC API.
Applies the Poseidon2 permutation function from https://eprint.iacr.org/2023/323.
static AffineElement commit_native(const std::vector< Fq > &inputs, GeneratorContext context={})
Given a vector of fields, generate a pedersen commitment using the indexed generators.
static Fq hash_buffer(const std::vector< uint8_t > &input, GeneratorContext context={})
Given an arbitrary length of bytes, convert them to fields and hash the result using the default gene...
static Fq hash(const std::vector< Fq > &inputs, GeneratorContext context={})
Given a vector of fields, generate a pedersen hash using generators from context.
const std::vector< MemoryValue > data
uint8_t const size_t length
stdlib::Poseidon2Permutation< Builder > Permutation
void aes128_decrypt_buffer_cbc(uint8_t *buffer, uint8_t *iv, const uint8_t *key, const size_t length)
std::array< uint8_t, BLAKE2S_OUTBYTES > blake2s(std::vector< uint8_t > const &input)
void aes128_encrypt_buffer_cbc(uint8_t *buffer, uint8_t *iv, const uint8_t *key, const size_t length)
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
static field serialize_from_buffer(const uint8_t *buffer)
void throw_or_abort(std::string const &err)