aere-node/tools
Aere Network 88a87df694 tools: the on-chain pin proven under the certified state (mpt.mjs), shared by verify-anchor.mjs and verify-proof.mjs
Copies of aerenew/verificator-falcon at 2026-10-02 (AIP-24 C4 (b)): slot 0 of every anchor contract is proven with eth_getProof
under the state root of the certified parent of the newest verified anchor; nothing is read at `latest` any more. mpt.mjs is the
Merkle-Patricia proof walker both tools import: it must sit next to them.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-02 06:23:56 +03:00
..
proof-vectors tools/package.json: the verifier's dependencies, so that the published instruction works from scratch (npm install in tools/, then node verify-proof.mjs proof-vectors/...). Until now the package had no package.json: npm install installed nothing and verify-proof.mjs could not start. proof-vectors/README.md: the commands run from tools/. 2026-09-29 11:47:48 +03:00
falcon512.mjs tools: verify-anchor.mjs discovers registry v3 epochs (AIP-22 stage 3, formatVersion 3 entries of the same manifest index) and verifies each in full with registry-v3.mjs (every proof of possession, every ECDSA link, the rotation chain, the Merkle registry hash), then requires every v3 row to carry exactly the Falcon-512 key, SLH-DSA key and address of the key manifest that signs at its height; the identity height is the first epoch's bindHeight, IDENTITY_BLOCK=none disables it as a negative control. Adds tools/registry-v3.mjs and tools/falcon512.mjs, which verify-anchor.mjs imports and the package did not carry. Checked 2026-09-23: testnet 28001 20/20 with its published v3 epoch (registry hash 0xd19eef4a..., identity from 3,080,010); chain 2800 20/20 unchanged; a byte-altered epoch and an epoch whose SLH-DSA key differs from the signing manifest both refused with the reason. 2026-09-23 15:33:49 +03:00
mpt.mjs tools: the on-chain pin proven under the certified state (mpt.mjs), shared by verify-anchor.mjs and verify-proof.mjs 2026-10-02 06:23:56 +03:00
package.json tools/package.json: the verifier's dependencies, so that the published instruction works from scratch (npm install in tools/, then node verify-proof.mjs proof-vectors/...). Until now the package had no package.json: npm install installed nothing and verify-proof.mjs could not start. proof-vectors/README.md: the commands run from tools/. 2026-09-29 11:47:48 +03:00
registry-v3.mjs tools: verify-anchor.mjs discovers registry v3 epochs (AIP-22 stage 3, formatVersion 3 entries of the same manifest index) and verifies each in full with registry-v3.mjs (every proof of possession, every ECDSA link, the rotation chain, the Merkle registry hash), then requires every v3 row to carry exactly the Falcon-512 key, SLH-DSA key and address of the key manifest that signs at its height; the identity height is the first epoch's bindHeight, IDENTITY_BLOCK=none disables it as a negative control. Adds tools/registry-v3.mjs and tools/falcon512.mjs, which verify-anchor.mjs imports and the package did not carry. Checked 2026-09-23: testnet 28001 20/20 with its published v3 epoch (registry hash 0xd19eef4a..., identity from 3,080,010); chain 2800 20/20 unchanged; a byte-altered epoch and an epoch whose SLH-DSA key differs from the signing manifest both refused with the reason. 2026-09-23 15:33:49 +03:00
verify-anchor.mjs tools: the on-chain pin proven under the certified state (mpt.mjs), shared by verify-anchor.mjs and verify-proof.mjs 2026-10-02 06:23:56 +03:00
verify-proof.mjs tools: the on-chain pin proven under the certified state (mpt.mjs), shared by verify-anchor.mjs and verify-proof.mjs 2026-10-02 06:23:56 +03:00