Golden numbers

The golden numbers are E46’s frozen test answers. For every library we write the rule twice: once in plain Python (slow, easy to read) and once in C++ (fast, used by the node). Both must give exactly the same answers on these files. Once a file is published here it is frozen: nobody edits it. If a rule ever changes, it gets a new file, so old results stay checkable forever.

They’re published so anyone can test their own implementation of E46 against ours, byte for byte. That’s mission v4 (honest evidence) in practice.

The key numbers at a glance

Number

Value

Where it’s defined

Block spacing

150 s

CHAIN-DESIGN §2

ASERT half-life

7,200 s (2 h)

§2, decision #16

MAX_TARGET (easiest difficulty)

0x1d7fffff ≈ 2^231, 25 leading zero bits

§2, Genesis, targets and overflow

Header size

120 bytes

§2b

Total supply T

46,000,000 E46

§3

Decay epoch

17,280 blocks (about 1 month)

§3

Decay shift k

20

§3

Neutrino (smallest reward)

1 base unit

§3

Reward split

80% miner / 10% N-pool / 10% Z-pool (each pool gets reward ÷ 10 rounded down; the miner gets the rest)

§5, WO-07

Stake cap N / finder cap Z

576 × subsidy / 0.1 × subsidy

§5

Coinbase maturity

100 blocks ⓘOnly newly mined coins wait. Block rewards, Rad rewards (E46i) and pool payouts become spendable after 100 blocks, about 4 hours. E46 someone sends you is spendable once it is in a block, about 2½ minutes. Why: if two blocks are found at once, one is dropped and its reward never existed; the wait stops that loss spreading to people who were paid with it. More

§2d

Rad puzzle size S

2^20 candidates per nonce

§4, decision #11

Z_base (Rad level)

41 (provisional)

§4

Collision tier

48 matching bits

§4, decision #13

Commitment stamp Z_commit

18 bits (provisional)

§2f

Frozen test-vector files

Want to see these numbers come alive? The Learn by exam page builds and signs a real transaction step by step, and its --debug mode prints every byte.

Fingerprint = SHAKE256 of the whole file, 32 bytes, in hex. Download a file, hash it, and compare (Python: hashlib.shake_256(open(f,'rb').read()).hexdigest(32)). A different fingerprint means a different file.

WO

What it tests

File

Size

SHAKE256 fingerprint

WO-01

RL v3 hash (librl)

{download}

1.06 MB

4f948c986ba843cd60663e7ba34f220bba14c6946c13ac9a467d2b4603917b6d

WO-02

SHAKE256 / KMAC256

{download}

0.78 MB

777daba12be2b7130cb071b279df188b189c1d6247f9b0bd2820b2312235b1c7

WO-03

Merkle and event roots

{download}

5.36 MB

a4f4cf16f8317106e4c63e6a4bc4cf1fdee7b9c8991b1d3bf94fb59f54fac6be

WO-03B

Count-bound roots

{download}

5.80 MB

e46d4de652a22a838bd7d553c4937b99f7e25d55bbee6ecf1369a30197746f40

WO-04

Bech32m codec

{download}

0.24 MB

64056b7026ce44850c9345ac49381d06cd02312fe9f63773fa0abad6f32027a6

WO-05

Addresses and IDs

{download}

0.02 MB

4ca69f7ab174289d5e6331a63e2c7bcc559efc8a6b3fc737e54ffeac55de4af5

WO-06

Header, PoW, ASERT

{download}

0.14 MB

99ffbc30890c012e35dc7ea1f103775130526b521bed00e3f23ca551462dea4d

WO-07

Emission, pools, E46i

{download}

0.01 MB

8b576386e466daacec393aee2f752e268036c94387cb7604f6e8674f8068e689

WO-08

Rad engine

{download}

0.81 MB

ffaddc3399ea97ba010c867efa8bb7cea9781c9510e92385544260e5bde627eb

WO-11

SLH-DSA keys + KMAC seeds

{download}

0.01 MB

893647a88d6f2ef21a231049fdb1a64bd98b513bbbeb0029ae7beca8ef57743f

WO-11

NIST ACVP SLH-DSA-SHAKE-128s keygen + signature

{download}

0.02 MB

058f1f25dd4724e2b49db3c0f4ebb03e9573f83d6d786b112016b103b9240ff5

WO-11

NIST ACVP empty-context sign/verify

{download}

0.05 MB

181e2c033dc509b8412ec1458413599ad0a6f4210fd4fd32ee86b8ded61649de

WO-12

Transactions, txid/wtxid, sighash

{download}

0.46 MB

49fde4760f81d584e3c78b3c9e64f76b53096ea4a8d2a7f6da9361862af0305e

All files listed are committed and frozen. The two NIST files are copies of NIST’s official test vectors (usnistgov/ACVP-Server), filtered to SLH-DSA-SHAKE-128s. Each file also records the Python reference that produced it; the generator scripts (e46/golden/generate_wo*.py --check) rebuild every file and confirm it hasn’t changed.