barretenberg
Loading...
Searching...
No Matches
src
barretenberg
stdlib
commitment
pedersen
pedersen.hpp
1
#pragma once
2
#include "../../primitives/byte_array/byte_array.hpp"
3
#include "../../primitives/field/field.hpp"
4
#include "barretenberg/crypto/pedersen_commitment/pedersen.hpp"
5
#include "barretenberg/stdlib/primitives/group/cycle_group.hpp"
6
7
namespace
proof_system::plonk::stdlib {
8
9
template
<
typename
CircuitBuilder>
class
pedersen_commitment
{
10
private
:
11
using
bool_t
=
stdlib::bool_t<CircuitBuilder>
;
12
using
field_t
=
stdlib::field_t<CircuitBuilder>
;
13
using
EmbeddedCurve =
typename
cycle_group<CircuitBuilder>::Curve;
14
using
GeneratorContext
=
crypto::GeneratorContext<EmbeddedCurve>
;
15
using
cycle_group
=
stdlib::cycle_group<CircuitBuilder>
;
16
using
cycle_scalar =
typename
stdlib::cycle_group<CircuitBuilder>::cycle_scalar
;
17
18
public
:
19
static
cycle_group
commit(
const
std::vector<field_t>& inputs,
GeneratorContext
context = {});
20
static
cycle_group
commit(
const
std::vector<std::pair<field_t, GeneratorContext>>& input_pairs);
21
};
22
23
EXTERN_STDLIB_TYPE(
pedersen_commitment
);
24
25
}
// namespace proof_system::plonk::stdlib
proof_system::plonk::stdlib::bool_t
Definition:
bool.hpp:7
proof_system::plonk::stdlib::cycle_group
cycle_group represents a group Element of the proving system's embedded curve i.e....
Definition:
cycle_group.hpp:27
proof_system::plonk::stdlib::field_t
Definition:
field.hpp:10
proof_system::plonk::stdlib::pedersen_commitment
Definition:
pedersen.hpp:9
crypto::GeneratorContext
Definition:
generator_data.hpp:133
proof_system::plonk::stdlib::cycle_group::cycle_scalar
cycle_scalar represents a member of the cycle curve SCALAR FIELD. This is NOT the native circuit fiel...
Definition:
cycle_group.hpp:66
Generated by
1.9.6