Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
blake3s.fuzzer.cpp
Go to the documentation of this file.
1
#include "
blake3s.hpp
"
2
#include "
barretenberg/circuit_checker/circuit_checker.hpp
"
3
#include "
barretenberg/crypto/blake3s/blake3s.hpp
"
4
#include "
barretenberg/stdlib_circuit_builders/ultra_circuit_builder.hpp
"
5
#include <cassert>
6
#include <cstdint>
7
#include <vector>
8
9
using namespace
bb
;
10
using namespace
bb::stdlib
;
11
12
extern
"C"
int
LLVMFuzzerTestOneInput
(
const
uint8_t* Data,
size_t
Size)
13
{
14
if
(Size == 0)
15
return
0;
16
UltraCircuitBuilder
builder
;
17
std::vector<uint8_t> input_vec(Data, Data + Size);
18
byte_array<UltraCircuitBuilder>
input(&
builder
, input_vec);
19
auto
output_bits =
Blake3s<UltraCircuitBuilder>::hash
(input);
20
auto
output_str = output_bits.get_value();
21
std::vector<uint8_t> circuit_output(output_str.begin(), output_str.end());
22
23
auto
expected =
blake3::blake3s
(input_vec);
24
25
assert(circuit_output == expected);
26
assert(
bb::CircuitChecker::check
(
builder
));
27
return
0;
28
}
LLVMFuzzerTestOneInput
int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size)
Definition
blake3s.fuzzer.cpp:12
circuit_checker.hpp
bb::TranslatorCircuitChecker::check
static bool check(const Builder &circuit)
Check the witness satisifies the circuit.
Definition
translator_circuit_checker.cpp:20
bb::UltraCircuitBuilder_
Definition
ultra_circuit_builder.hpp:42
bb::stdlib::Blake3s::hash
static byte_array_ct hash(const byte_array_ct &input)
Definition
blake3s.cpp:183
bb::stdlib::byte_array
Represents a dynamic array of bytes in-circuit.
Definition
byte_array.hpp:28
builder
AluTraceBuilder builder
Definition
alu.test.cpp:123
blake3s.hpp
bb::stdlib
Definition
graph_description_goblin.test.cpp:13
bb
Entry point for Barretenberg command-line interface.
Definition
acir_format_getters.cpp:6
blake3::blake3s
std::vector< uint8_t > blake3s(std::vector< uint8_t > const &input)
blake3s.hpp
ultra_circuit_builder.hpp
src
barretenberg
stdlib
hash
blake3s
blake3s.fuzzer.cpp
Generated by
1.9.8