Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
secp256r1_fake_glv_decomposition.fuzzer.cpp File Reference

Pure-native fuzzer for bb::stdlib::element_default::detail::compute_secp256r1_fake_glv_decomposition. More...

#include "barretenberg/ecc/curves/secp256r1/secp256r1.hpp"
#include "barretenberg/numeric/uint256/uint256.hpp"
#include "barretenberg/stdlib/primitives/biggroup/biggroup.hpp"
#include <cassert>
#include <cstdint>
#include <cstring>

Go to the source code of this file.

Typedefs

using fr = bb::secp256r1::fr
 

Functions

int LLVMFuzzerTestOneInput (const uint8_t *Data, size_t Size)
 

Detailed Description

Pure-native fuzzer for bb::stdlib::element_default::detail::compute_secp256r1_fake_glv_decomposition.

Given a random secp256r1 scalar s, the helper returns (alpha, |beta|, beta_is_negative) such that

beta_signed * s ≡ alpha   (mod n),       |alpha|, |beta| < 2^128.

The fuzzer reconstructs s from raw bytes, runs the decomposition, and asserts both the size bound and the congruence. Any violation aborts via libFuzzer.

Definition in file secp256r1_fake_glv_decomposition.fuzzer.cpp.

Typedef Documentation

◆ fr

Function Documentation

◆ LLVMFuzzerTestOneInput()

int LLVMFuzzerTestOneInput ( const uint8_t *  Data,
size_t  Size 
)

Definition at line 30 of file secp256r1_fake_glv_decomposition.fuzzer.cpp.