crypto/internal/fips140/bigmod — validation proof
Go’s own crypto/internal/fips140/bigmod test suite, converted to C# by go2cs, built against the converted standard
library, run under the Go-semantics test host, and compared verdict for verdict against a clean
go test -json baseline of the same sources. This page is generated by the converter from that
comparison — it is the evidence behind the crypto/internal/fips140/bigmod row in
Validated Test Packages.
Validated 2026-09-22 · converter c6fdbe73c
79 matched · 0 disclosed — Go 1.24.13, windows/amd64, converted package
src/core/crypto/internal/fips140/bigmod.
Measured at Release (tiered JIT off), oracle go version go1.24.13 windows/amd64.
Both runtimes skip 4 of the matched tests identically.
Verdicts
| Test | go test |
go2cs |
|---|---|---|
TestAddMulVVWSized |
pass | pass |
TestAddMulVVWSized/1024 |
pass | pass |
TestAddMulVVWSized/1536 |
pass | pass |
TestAddMulVVWSized/2048 |
pass | pass |
TestExp |
pass | pass |
TestExpShort |
pass | pass |
TestExpand |
pass | pass |
TestInverse |
pass | pass |
TestInverse/line_103 |
pass | pass |
TestInverse/line_107 |
pass | pass |
TestInverse/line_11 |
skip | skip |
TestInverse/line_111 |
pass | pass |
TestInverse/line_115 |
pass | pass |
TestInverse/line_15 |
skip | skip |
TestInverse/line_19 |
skip | skip |
TestInverse/line_23 |
pass | pass |
TestInverse/line_27 |
pass | pass |
TestInverse/line_31 |
pass | pass |
TestInverse/line_35 |
pass | pass |
TestInverse/line_39 |
pass | pass |
TestInverse/line_43 |
pass | pass |
TestInverse/line_47 |
pass | pass |
TestInverse/line_51 |
pass | pass |
TestInverse/line_55 |
pass | pass |
TestInverse/line_59 |
pass | pass |
TestInverse/line_63 |
pass | pass |
TestInverse/line_67 |
pass | pass |
TestInverse/line_7 |
skip | skip |
TestInverse/line_71 |
pass | pass |
TestInverse/line_75 |
pass | pass |
TestInverse/line_79 |
pass | pass |
TestInverse/line_83 |
pass | pass |
TestInverse/line_87 |
pass | pass |
TestInverse/line_91 |
pass | pass |
TestInverse/line_95 |
pass | pass |
TestInverse/line_99 |
pass | pass |
TestIs |
pass | pass |
TestMod |
pass | pass |
TestModAdd |
pass | pass |
TestModAddCommutative |
pass | pass |
TestModSub |
pass | pass |
TestModSubThenAddIdentity |
pass | pass |
TestModulusAndNatSizes |
pass | pass |
TestMontgomeryRoundtrip |
pass | pass |
TestMul |
pass | pass |
TestMul/1024 |
pass | pass |
TestMul/1536 |
pass | pass |
TestMul/2048 |
pass | pass |
TestMul/small |
pass | pass |
TestMulReductions |
pass | pass |
TestNewModulus |
pass | pass |
TestRightShift |
pass | pass |
TestRightShift/0 |
pass | pass |
TestRightShift/1 |
pass | pass |
TestRightShift/1022 |
pass | pass |
TestRightShift/1023 |
pass | pass |
TestRightShift/1024 |
pass | pass |
TestRightShift/127 |
pass | pass |
TestRightShift/128 |
pass | pass |
TestRightShift/129 |
pass | pass |
TestRightShift/2 |
pass | pass |
TestRightShift/31 |
pass | pass |
TestRightShift/32 |
pass | pass |
TestRightShift/33 |
pass | pass |
TestRightShift/63 |
pass | pass |
TestRightShift/64 |
pass | pass |
TestRightShift/65 |
pass | pass |
TestRightShift/895 |
pass | pass |
TestRightShift/896 |
pass | pass |
TestRightShift/897 |
pass | pass |
TestRightShift/959 |
pass | pass |
TestRightShift/960 |
pass | pass |
TestRightShift/961 |
pass | pass |
TestRightShift/991 |
pass | pass |
TestRightShift/992 |
pass | pass |
TestRightShift/993 |
pass | pass |
TestSetBytes |
pass | pass |
TestShiftIn |
pass | pass |
TestTrailingZeroBits |
pass | pass |
Excluded declarations
Declarations filtered from both sides of the comparison, and therefore not claimed above:
Benchmark, Fuzz and Example declarations the converted host does not execute, plus any
test requiring a capability the managed runtime does not provide — a testing member the host
has not implemented, or a platform behavior it provably cannot reproduce. Each is named with
the capability it needs.
- BenchmarkExp (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkExpBig (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkModAdd (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkModMul (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkModSub (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkMontgomeryMul (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkMontgomeryRepr (benchmark): benchmark execution is deferred to Phase 4D