Aere Network public source. Everything here can be checked against the live chain (chain id 2800, https://rpc.aere.network). Scope note, stated up front rather than buried: consensus on chain 2800 is classical secp256k1 ECDSA QBFT. The post-quantum work in this repository is at the signature, precompile, account and transport layers. Nothing here makes the consensus post-quantum, and no document in it should be read as claiming so.
37 lines
2.2 KiB
JSON
37 lines
2.2 KiB
JSON
{
|
|
"component": "BabyBear field F_p + degree-4 extension F_{p^4} (port spec component (a), FOUNDATION)",
|
|
"precompile": "0x0000000000000000000000000000000000000ae8",
|
|
"scope": "port spec section 2; the field-arithmetic foundation the whole STARK verifier is built on",
|
|
"validates": "F_p and F_{p^4} field axioms; Fermat inverse vs independent extended-Euclid bignum; generator has order p-1; two-adic generator order 2^k; W is a QNR so x^4-W is irreducible (real field); across Python/Node/Java",
|
|
"does_not_validate": "any real STARK proof (this is only component (a) of six); and that GENERATOR=31 / W=11 / two_adic_generator(27) are Plonky3's EXACT constants ([VERIFY]/[MEASURE] vs p3-baby-bear at pinned SP1 v6.1.0)",
|
|
"top_level_verifier": "unchanged, still fail-closed (returns EMPTY for every input)",
|
|
"constants": {
|
|
"P": 2013265921,
|
|
"P_expr": "2^31 - 2^27 + 1 = 15*2^27 + 1 = 0x78000001",
|
|
"generator": 31,
|
|
"two_adicity": 27,
|
|
"two_adic_generator_27": 440564289,
|
|
"W": 11
|
|
},
|
|
"cross_language": [
|
|
"java",
|
|
"node",
|
|
"python"
|
|
],
|
|
"flags": [
|
|
"[VERIFY] GENERATOR = 31 is Plonky3 p3-baby-bear's chosen multiplicative generator (order = p-1 is PROVEN here; the identity as Plonky3's is [VERIFY])",
|
|
"[VERIFY] W = 11 is Plonky3's BabyBear BinomialExtensionField<_,4> non-residue (x^4-11 irreducibility is PROVEN here; the identity as Plonky3's W is [VERIFY]/[MEASURE])",
|
|
"[VERIFY] two_adic_generator(27) exact value vs Plonky3 (order 2^27 is PROVEN here)",
|
|
"[MEASURE] byte-for-byte conformance of Fp/Fp4 outputs vs p3-baby-bear / p3-field unit vectors at the pinned revision (needs the pinned Plonky3 source)"
|
|
],
|
|
"notes": [
|
|
"multiplicative generator 31 proven order = p-1 = 2013265920 [VERIFY it is Plonky3's]",
|
|
"two_adic_generator(27) = 440564289, order proven 2^27 [VERIFY exact Plonky3 value]",
|
|
"W = 11: 11^((p-1)/2) == p-1 (QNR) and p == 1 mod 4 => x^4 - 11 irreducible (Lidl-Niederreiter Thm 3.75) => F_(p^4) is a genuine field [VERIFY it is Plonky3's W]",
|
|
"ord(W=11) = 671088640 = 2^27 * 5; ord(x) = 4*ord(W) = 2684354560 divides 4(p-1)",
|
|
"cross-language implementations compared: java, node, python"
|
|
],
|
|
"passed": 396242,
|
|
"failed": 0,
|
|
"total": 396242
|
|
} |