16 auto point = from_buffer<secp256k1::g1::affine_element>(point_buf);
17 auto scalar = from_buffer<secp256k1::fr>(scalar_buf);
25 write(result, output);
30 auto bigint_input = from_buffer<uint512_t>(input);
34 uint512_t target_output = bigint_input % barretenberg_modulus;
35 write(result, target_output.
lo);
WASM_EXPORT void ecc_secp256k1__reduce512_buffer_mod_circuit_modulus(uint8_t *input, uint8_t *result)
WASM_EXPORT void ecc_secp256k1__get_random_scalar_mod_circuit_modulus(uint8_t *result)
WASM_EXPORT void ecc_secp256k1__mul(uint8_t const *point_buf, uint8_t const *scalar_buf, uint8_t *result)
Entry point for Barretenberg command-line interface.
void write(B &buf, field2< base_field, Params > const &value)
void write(auto &buf, const msgpack_concepts::HasMsgPack auto &obj)
Automatically derived write for any object that defines .msgpack() (implicitly defined by MSGPACK_FIE...
General class for prime fields see Prime field documentation["field documentation"] for general imple...
static constexpr uint256_t modulus
static field random_element(numeric::RNG *engine=nullptr) noexcept