Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
ecc.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "
barretenberg/vm2/common/aztec_types.hpp
"
4
#include "
barretenberg/vm2/common/field.hpp
"
5
#include "
barretenberg/vm2/common/memory_types.hpp
"
6
7
namespace
bb::avm2::simulation
{
8
9
// Forward declaration
10
class
MemoryInterface;
11
12
class
EccInterface
{
13
public
:
14
virtual
~EccInterface
() =
default
;
15
virtual
EmbeddedCurvePoint
add
(
const
EmbeddedCurvePoint
& p,
const
EmbeddedCurvePoint
& q) = 0;
16
virtual
EmbeddedCurvePoint
scalar_mul
(
const
EmbeddedCurvePoint
& point,
const
FF
& scalar) = 0;
17
virtual
void
add
(
MemoryInterface
&
memory
,
18
const
EmbeddedCurvePoint
& p,
19
const
EmbeddedCurvePoint
& q,
20
MemoryAddress
dst_address) = 0;
21
};
22
23
}
// namespace bb::avm2::simulation
aztec_types.hpp
bb::avm2::StandardAffinePoint< AvmFlavorSettings::EmbeddedCurve::AffineElement >
bb::avm2::memory
Definition
memory.hpp:36
bb::avm2::simulation::EccInterface
Definition
ecc.hpp:12
bb::avm2::simulation::EccInterface::~EccInterface
virtual ~EccInterface()=default
bb::avm2::simulation::EccInterface::scalar_mul
virtual EmbeddedCurvePoint scalar_mul(const EmbeddedCurvePoint &point, const FF &scalar)=0
bb::avm2::simulation::EccInterface::add
virtual EmbeddedCurvePoint add(const EmbeddedCurvePoint &p, const EmbeddedCurvePoint &q)=0
bb::avm2::simulation::EccInterface::add
virtual void add(MemoryInterface &memory, const EmbeddedCurvePoint &p, const EmbeddedCurvePoint &q, MemoryAddress dst_address)=0
bb::avm2::simulation::MemoryInterface
Definition
memory.hpp:10
memory_types.hpp
bb::avm2::simulation
Definition
address_derivation_event.hpp:6
bb::avm2::MemoryAddress
uint32_t MemoryAddress
Definition
memory_types.hpp:11
bb::avm2::FF
AvmFlavorSettings::FF FF
Definition
field.hpp:10
field.hpp
src
barretenberg
vm2
simulation
interfaces
ecc.hpp
Generated by
1.9.8