mirror of
https://github.com/luxfi/evm.git
synced 2026-09-24 00:27:44 +00:00
VM.Initialize installs the chain-wide strict-PQ posture into the go-ethereum precompile layer when Config.LuxStrictPQ is true. The ecrecover precompile at 0x01 then returns ErrClassicalAuthForbidden (gas is still charged per EIP-150) and never produces a recovered address. Default (LuxStrictPQ=false) preserves classical-compat semantics required by legacy chains and the Lux-Permissive profile. Mirrors the coreth wire-up; the gate itself lives in luxfi/geth (commit 738ecc775, tag v1.16.88) and is single-implementation. Bumps luxfi/geth pre-release v1.16.86-0.20260413… → v1.16.88 to pull in the gate; transitive deps (luxfi/accel v1.0.7→v1.0.8, luxfi/consensus v1.22.70→v1.22.84, luxfi/precompile v0.5.12→v0.5.14) update as required by geth v1.16.88's own go.mod. Tests: TestEcrecoverStrictPQ_Forbidden — strict-PQ returns the error TestEcrecoverClassicalCompat_Works — nil profile keeps upstream path