3#include "../generators/generator_data.hpp"
4#include "barretenberg/ecc/curves/grumpkin/grumpkin.hpp"
25 using AffineElement =
typename Curve::AffineElement;
26 using Element =
typename Curve::Element;
27 using Fq =
typename Curve::BaseField;
28 using Fr =
typename Curve::ScalarField;
29 using Group =
typename Curve::Group;
31 inline static constexpr AffineElement length_generator = Group::derive_generators(
"pedersen_hash_length", 1)[0];
32 static Fq
hash(
const std::vector<Fq>& inputs, GeneratorContext context = {});
33 static Fq
hash_buffer(
const std::vector<uint8_t>& input, GeneratorContext context = {});
36 static std::vector<Fq> convert_buffer(
const std::vector<uint8_t>& input);
Performs pedersen hashes!
Definition: pedersen.hpp:23
static Fq hash(const std::vector< Fq > &inputs, GeneratorContext context={})
Given a vector of fields, generate a pedersen hash using generators from context.
Definition: pedersen.cpp:59
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...
Definition: pedersen.cpp:69
Definition: generator_data.hpp:133