The public history carried kat/__pycache__/mlkem768_reference.cpython-314.pyc, a compiled Python artifact embedding the operator's absolute local path. Text secret scanners do not read compiled binaries, which is exactly how it slipped through, and removing it from the tip would have left it reachable through the old root commits. So this repository is republished from a single clean root. This root also carries, from the previously unpublished line of work: - corrected LICENSE year, LICENSING.md, VERIFY-POLICY.md, and CITATIONS-UNRESOLVED.md remeasured 2026-08-11 (101 paths, README aligned) - O-018: run_consensus_verification.py ran 19 of 29 models and reported PASS; it now runs all 29, and computemarket_smt.py gains resolveByTimeout / reclaimUnsettled cases plus a negative control - O-006: the word 'audited' removed from next to Bouncy Castle, twice, after a concurrent edit resurrected it - O-014: prior art named and dated - Algorand's native falcon_verify shipped about ten months before AERE's precompiles; the primacy claim is withdrawn where it was implied - bench/ scripts parametrized so they actually run for an outsider (the earlier textual sanitization left $STAGING unexpanded inside Python strings) - AIP-2/AIP-3 errata with measured figures, spec remeasurements at 2026-08-01, and the spec-zk-stack retractions (owner is an operational key, not the Foundation; 'maximally sound' withdrawn; aggregator V1 deprecated) The redacted bench-host environment files from the sanitized line are kept exactly as published; the unredacted local variants are not carried.
121 lines
17 KiB
Rust
121 lines
17 KiB
Rust
// GENERATED by scripts/gen_vectors.mjs from the OFFICIAL committed KAT
|
|
// aerenew/contracts/test/fixtures/xmss-sha2_10_256-kat.json
|
|
// Source: github.com/XMSS/xmss-reference @171ccbd26f098542a67eb5d2b128281c80bd71a6, deterministic test/vectors.c vectors_xmss(oid=1,mt=0): seed[i]=i, idx=2^(h-1)=512, msg=0x25
|
|
// Do NOT edit by hand: re-run `node scripts/gen_vectors.mjs`.
|
|
//
|
|
// RFC 8391 XMSS-SHA2_10_256 (OID 0x00000001): n=32, w=16, len=67, h=10, SHA-256.
|
|
// This is the same official reference vector the on-chain AereXmssVerifier.sol and
|
|
// its independent JS oracle (contracts/test/xmssVerifier.test.js) are validated with.
|
|
|
|
use crate::{Hash, XmssPubKey, XmssSig, H, LEN};
|
|
|
|
/// Long-term XMSS public root (first 32 bytes of the XMSS public key).
|
|
pub const PUB_ROOT: Hash = [0x9d, 0x89, 0x80, 0x33, 0xe3, 0x7a, 0xf4, 0x8e, 0x6a, 0x11, 0x6f, 0x8b, 0x15, 0x65, 0x1c, 0xc2, 0x67, 0x73, 0x46, 0x70, 0x07, 0xad, 0x19, 0x37, 0x5d, 0x38, 0xc2, 0x3c, 0x69, 0x0c, 0x34, 0x83];
|
|
|
|
/// XMSS public SEED (last 32 bytes of the XMSS public key).
|
|
pub const PUB_SEED: Hash = [0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f];
|
|
|
|
/// Leaf index used by the signer for this signature.
|
|
pub const IDX: u32 = 512;
|
|
|
|
/// Per-signature randomizer R (from the signature).
|
|
pub const R: Hash = [0x8f, 0xf0, 0x30, 0x0b, 0xe4, 0x85, 0xde, 0xa7, 0xe5, 0xae, 0x2c, 0x56, 0x08, 0x03, 0x02, 0xfe, 0xbc, 0x91, 0xb4, 0x13, 0x18, 0xc5, 0x04, 0xf8, 0x95, 0xba, 0xab, 0x0b, 0x06, 0x89, 0x68, 0xf2];
|
|
|
|
/// The signed message bytes.
|
|
pub const MSG: [u8; 1] = [0x25];
|
|
|
|
/// The 67 WOTS+ one-time-signature chain values.
|
|
pub const WOTS: [Hash; LEN] = [
|
|
[0x22, 0xe5, 0xdd, 0x2e, 0x12, 0x05, 0x38, 0xcb, 0x72, 0xd1, 0x12, 0x67, 0xec, 0xf5, 0x5f, 0x62, 0x89, 0x7c, 0xb6, 0x41, 0x64, 0x33, 0x10, 0xf0, 0x39, 0xbe, 0x97, 0x57, 0xc5, 0xfa, 0x9d, 0x80],
|
|
[0xf7, 0x18, 0x84, 0xe3, 0x24, 0x47, 0xba, 0x71, 0xb4, 0xff, 0x1c, 0x50, 0xad, 0x42, 0x11, 0xc5, 0xd1, 0x07, 0x5b, 0xec, 0xa1, 0xa9, 0xf7, 0x57, 0x30, 0xf9, 0x12, 0x22, 0xe4, 0xc8, 0x9c, 0x6d],
|
|
[0x1e, 0x4e, 0x06, 0xd0, 0xa2, 0x22, 0x05, 0x3a, 0x60, 0x7b, 0x34, 0xa5, 0x42, 0x0f, 0xd7, 0xff, 0x8a, 0x13, 0x36, 0xa4, 0xda, 0x23, 0x8c, 0x23, 0x42, 0xd2, 0x10, 0xee, 0xee, 0x69, 0xc4, 0x69],
|
|
[0x75, 0x1a, 0x6e, 0x7b, 0xd5, 0x2d, 0xfb, 0x25, 0xd0, 0xc6, 0x32, 0x73, 0x35, 0xa8, 0x73, 0xfb, 0x4c, 0x4e, 0x98, 0xd8, 0x18, 0x5f, 0xdd, 0x47, 0x9d, 0x7a, 0x6b, 0x1d, 0x40, 0xe1, 0xe3, 0x9a],
|
|
[0x47, 0xff, 0x0d, 0xb1, 0x49, 0x37, 0xf3, 0x3b, 0x31, 0x03, 0x91, 0x5a, 0x9d, 0x43, 0x2f, 0xa6, 0x41, 0x42, 0xbf, 0x30, 0xe6, 0xf5, 0x35, 0x40, 0x19, 0xc3, 0xb3, 0xa3, 0x55, 0x88, 0x39, 0x40],
|
|
[0x6c, 0x67, 0xb1, 0x13, 0x98, 0x85, 0x87, 0xf9, 0xdd, 0xfa, 0xc7, 0x90, 0x22, 0x73, 0x0b, 0x5f, 0xaa, 0x22, 0x29, 0x14, 0x4e, 0x0f, 0xe1, 0x86, 0x14, 0xa7, 0xae, 0x52, 0xdb, 0x82, 0x02, 0x66],
|
|
[0xa0, 0xa1, 0xf8, 0xbe, 0x7d, 0x0e, 0x80, 0xdf, 0xbc, 0x9b, 0x6d, 0xae, 0x74, 0x31, 0x9d, 0xe3, 0x7c, 0x52, 0x55, 0xca, 0x3a, 0x70, 0xf0, 0xdf, 0xa8, 0x5b, 0xa1, 0xb3, 0x94, 0xac, 0xe6, 0x09],
|
|
[0x94, 0x47, 0xc3, 0xd9, 0xd1, 0x4a, 0x94, 0x97, 0xcf, 0x48, 0x3d, 0x4c, 0x4a, 0x87, 0xe2, 0x0b, 0xd0, 0x27, 0x9a, 0xc0, 0x6c, 0x8f, 0x58, 0xae, 0xe9, 0x23, 0xd4, 0xc7, 0x70, 0x81, 0xcc, 0xcf],
|
|
[0xea, 0xe7, 0x48, 0x69, 0x1f, 0x1b, 0xc9, 0xe8, 0x8e, 0x3d, 0xef, 0x45, 0xa0, 0xfa, 0x78, 0x07, 0x6a, 0x06, 0x6d, 0xc5, 0xb3, 0xf3, 0xe7, 0x90, 0x34, 0xd4, 0x28, 0x91, 0xf2, 0x9d, 0xf4, 0x51],
|
|
[0xc2, 0x45, 0x03, 0x6f, 0xb7, 0xaf, 0x6d, 0x76, 0x0e, 0x7b, 0xd4, 0x36, 0x53, 0x7b, 0xd6, 0xa7, 0xd0, 0xb8, 0x90, 0x3d, 0x1c, 0x56, 0x39, 0x9b, 0x2a, 0x95, 0xcd, 0xbd, 0x3c, 0x0b, 0xb2, 0x51],
|
|
[0x12, 0xed, 0x77, 0xa1, 0x2b, 0xca, 0xb5, 0x8d, 0xec, 0xdc, 0x08, 0x17, 0x6a, 0x10, 0x59, 0x10, 0xce, 0x14, 0x5a, 0x9c, 0x57, 0x22, 0x7a, 0xb6, 0xd5, 0x95, 0xe5, 0x0c, 0x06, 0x34, 0x22, 0xa3],
|
|
[0xf8, 0x50, 0x38, 0x47, 0xac, 0x6c, 0x01, 0x01, 0x7f, 0x53, 0x5a, 0x4b, 0x36, 0xf2, 0xfb, 0x6a, 0xfc, 0x04, 0x94, 0x8d, 0x62, 0x6e, 0xc2, 0xf7, 0xa9, 0x25, 0x55, 0xb4, 0x61, 0x35, 0x95, 0x21],
|
|
[0x27, 0x51, 0xdf, 0xa4, 0x40, 0xe1, 0x16, 0x64, 0xdd, 0x9d, 0x9d, 0xfc, 0x44, 0xaf, 0xb6, 0x61, 0xd1, 0xa9, 0x53, 0xa7, 0xc3, 0xe2, 0x25, 0x70, 0xa6, 0x29, 0xd4, 0x99, 0x42, 0x89, 0x2b, 0xf2],
|
|
[0xb5, 0xf7, 0x2c, 0x00, 0xa9, 0xa1, 0xb1, 0x66, 0x56, 0xe6, 0xf7, 0xef, 0x9d, 0x5b, 0xd7, 0xd0, 0x86, 0x5e, 0xec, 0x8a, 0x74, 0x51, 0x64, 0xfd, 0xd7, 0x54, 0x2c, 0x8b, 0xe4, 0xe7, 0xb7, 0x1d],
|
|
[0x2c, 0xd7, 0x9b, 0x79, 0x94, 0xbc, 0xa2, 0x64, 0xb4, 0xf0, 0xf3, 0x48, 0x46, 0xa4, 0xe6, 0xe7, 0x50, 0x1b, 0x26, 0x49, 0xef, 0xc0, 0xc4, 0x66, 0xf5, 0x90, 0x52, 0x5a, 0x45, 0x27, 0x08, 0x76],
|
|
[0xe2, 0xe9, 0x40, 0x00, 0xd6, 0x91, 0x8e, 0x7a, 0xbe, 0x48, 0x9d, 0xd5, 0x0c, 0xb2, 0x99, 0xa9, 0x7c, 0xf8, 0x61, 0xb8, 0x89, 0x88, 0x7c, 0xf2, 0x02, 0x3d, 0xa5, 0x5e, 0x52, 0x19, 0x27, 0xc4],
|
|
[0x7d, 0x40, 0xde, 0x41, 0x35, 0x93, 0xbd, 0x96, 0x44, 0x43, 0x50, 0x85, 0xbe, 0x3f, 0xfd, 0x5e, 0xea, 0x1d, 0xce, 0x50, 0xd9, 0x96, 0xd3, 0xda, 0x89, 0x71, 0xb2, 0xeb, 0xde, 0xa1, 0xab, 0xcc],
|
|
[0x02, 0x35, 0x29, 0x22, 0xeb, 0x1c, 0x75, 0xa2, 0x0c, 0x79, 0xc8, 0xd2, 0x91, 0x4b, 0x12, 0xfc, 0x33, 0x00, 0x26, 0x6e, 0xb7, 0x8e, 0x23, 0x78, 0xc4, 0x88, 0x7e, 0x0f, 0xd9, 0xed, 0x89, 0x05],
|
|
[0xc4, 0x6f, 0x63, 0x50, 0xc2, 0xb3, 0x12, 0x2e, 0x19, 0x96, 0x2e, 0xa2, 0x31, 0x13, 0xde, 0x6b, 0xcf, 0xe0, 0xd5, 0xb9, 0xbb, 0xfe, 0x68, 0xc4, 0xbd, 0x25, 0xa7, 0x77, 0xf2, 0x49, 0xd2, 0xbe],
|
|
[0xaf, 0xba, 0xa7, 0xb9, 0x81, 0xc5, 0xa1, 0xb9, 0x84, 0x00, 0x72, 0x08, 0xd5, 0x3a, 0x65, 0xa4, 0xf7, 0x09, 0xe2, 0x81, 0xfc, 0xdc, 0x57, 0x95, 0xb9, 0x4e, 0x39, 0x67, 0xa3, 0x04, 0x37, 0xce],
|
|
[0xd6, 0x28, 0x74, 0x4c, 0x7b, 0x2e, 0xa4, 0x92, 0xfa, 0x72, 0x96, 0x83, 0x8a, 0x79, 0x1e, 0x82, 0x68, 0x36, 0x3a, 0x11, 0x9e, 0x3b, 0xb7, 0x80, 0xc7, 0xc7, 0xb1, 0x30, 0x07, 0x0b, 0x2b, 0x37],
|
|
[0x50, 0x25, 0xef, 0x74, 0x85, 0xfc, 0xd6, 0x28, 0x41, 0x19, 0xd2, 0x35, 0xda, 0xbd, 0x8e, 0xc1, 0xa7, 0x76, 0x82, 0x60, 0x17, 0xe2, 0xd6, 0xed, 0x4c, 0xec, 0xf2, 0x09, 0x0a, 0x44, 0xf3, 0x94],
|
|
[0xce, 0xa9, 0x29, 0x02, 0xae, 0x21, 0xa8, 0x3a, 0x2f, 0x27, 0x75, 0xfa, 0x46, 0x95, 0x67, 0x1a, 0x2d, 0xf0, 0x9a, 0x07, 0x80, 0xec, 0xb4, 0xdf, 0x7f, 0x41, 0xed, 0xc5, 0x04, 0x81, 0x7e, 0x89],
|
|
[0xcc, 0x63, 0x2f, 0xec, 0x6e, 0xa1, 0x71, 0x6a, 0x14, 0xb4, 0x4b, 0xcf, 0x47, 0x04, 0xbb, 0xbf, 0xf6, 0xa0, 0x14, 0xa0, 0x01, 0x66, 0x0e, 0xaa, 0x5d, 0xf7, 0x79, 0xa7, 0xa0, 0x33, 0xb3, 0xfa],
|
|
[0x91, 0x74, 0x8c, 0x55, 0x30, 0xa1, 0x76, 0xc7, 0x89, 0x86, 0x71, 0xe5, 0x7f, 0x32, 0x42, 0x54, 0xfd, 0xa2, 0xa0, 0xb8, 0x10, 0xde, 0x21, 0x8c, 0x4a, 0xa1, 0x3e, 0x08, 0xd9, 0xab, 0xe3, 0x07],
|
|
[0x0b, 0x4a, 0x81, 0x51, 0xa7, 0x0f, 0x02, 0x08, 0x8b, 0x59, 0x10, 0x12, 0x67, 0x01, 0xf0, 0xa8, 0xb2, 0x47, 0x5c, 0x1d, 0x77, 0x11, 0xab, 0x56, 0xa7, 0x9a, 0xfd, 0x9b, 0xdc, 0x09, 0x62, 0x2c],
|
|
[0x95, 0xd1, 0x44, 0xd9, 0xde, 0x7a, 0x02, 0xd5, 0x06, 0x30, 0x47, 0x64, 0xff, 0x99, 0x36, 0xf7, 0x4d, 0x4d, 0x0f, 0xf6, 0xe4, 0xe6, 0xc6, 0xed, 0xe0, 0xdb, 0x75, 0x16, 0x65, 0x2e, 0x95, 0xcc],
|
|
[0x92, 0x36, 0x8d, 0x45, 0x36, 0x0e, 0xbd, 0xb1, 0x21, 0x99, 0xea, 0xfb, 0x21, 0x6e, 0x1b, 0x7b, 0x09, 0xc6, 0xd3, 0x31, 0x6e, 0x85, 0x52, 0xe1, 0x69, 0xea, 0xe4, 0x8e, 0xfd, 0x5c, 0x33, 0xb1],
|
|
[0x17, 0x87, 0x9d, 0xcf, 0x7d, 0xbd, 0x37, 0x95, 0x32, 0x7c, 0xea, 0xb2, 0x8d, 0x8a, 0x7c, 0x05, 0xbd, 0x12, 0x65, 0x4b, 0x0a, 0xbc, 0x3a, 0xa0, 0xcb, 0x73, 0x90, 0xf2, 0xbb, 0x58, 0x52, 0xd6],
|
|
[0xd4, 0xd1, 0x3f, 0x61, 0xb9, 0x4c, 0xd0, 0x6e, 0x93, 0x7b, 0x51, 0xf1, 0x83, 0x84, 0x4a, 0x4a, 0x78, 0xd0, 0xb7, 0x9a, 0x9c, 0xcb, 0x5c, 0x87, 0xaa, 0x02, 0x2e, 0x13, 0x15, 0x43, 0x70, 0xc5],
|
|
[0x9d, 0xdb, 0x1e, 0x38, 0xb3, 0xfe, 0x2f, 0xef, 0x96, 0xae, 0x94, 0xe8, 0x8b, 0x2e, 0x3c, 0x64, 0x02, 0xe6, 0xf3, 0xbd, 0x87, 0xb7, 0x71, 0x01, 0x48, 0xa6, 0x58, 0xe9, 0x6d, 0xa1, 0xfc, 0x38],
|
|
[0xbb, 0xc0, 0xe2, 0xa1, 0xcd, 0x19, 0x2e, 0x16, 0xb4, 0x4d, 0x97, 0xea, 0x4a, 0xf8, 0x14, 0x35, 0x03, 0x03, 0x5f, 0x37, 0x71, 0x34, 0x51, 0x69, 0xe2, 0x65, 0x53, 0x26, 0x0d, 0xf2, 0x69, 0xf5],
|
|
[0x11, 0xfc, 0x1c, 0xcf, 0xc2, 0x6b, 0x59, 0x44, 0xba, 0x2b, 0x10, 0x52, 0x16, 0xbe, 0xd0, 0xac, 0xed, 0x79, 0x0d, 0x1d, 0x17, 0x81, 0xbe, 0xce, 0xf3, 0xa3, 0x9a, 0x7c, 0xf4, 0x6a, 0x8d, 0x13],
|
|
[0x99, 0xe4, 0x41, 0x70, 0xb4, 0xd9, 0x48, 0x88, 0x4f, 0x6b, 0xf7, 0x01, 0xbb, 0x2f, 0xe7, 0xfc, 0x9d, 0x35, 0x79, 0x44, 0xdf, 0xce, 0xc1, 0x7e, 0x49, 0x81, 0x7f, 0x3f, 0xed, 0x98, 0x3d, 0x2c],
|
|
[0x2d, 0x05, 0xac, 0x4e, 0x08, 0xf4, 0x19, 0x95, 0x95, 0xaf, 0x5c, 0x93, 0x13, 0x1a, 0x59, 0xfc, 0xe8, 0xe4, 0xa2, 0x83, 0x43, 0x4c, 0x58, 0xb5, 0x33, 0xea, 0xed, 0x10, 0x96, 0x3c, 0x8d, 0x2e],
|
|
[0x49, 0x70, 0xe8, 0x3f, 0x1d, 0xce, 0x8c, 0x07, 0x39, 0x2f, 0x11, 0xf7, 0x77, 0x0e, 0x8b, 0xcc, 0xc7, 0xda, 0x3e, 0x71, 0x03, 0x5a, 0xa4, 0x4f, 0xa7, 0xf5, 0xf3, 0xa2, 0xac, 0xc0, 0xd7, 0x72],
|
|
[0x78, 0xc6, 0x21, 0x20, 0xfc, 0xe2, 0x01, 0xb1, 0xc7, 0x17, 0x43, 0x40, 0xc8, 0x3f, 0x9e, 0x4f, 0x1f, 0xa1, 0xa2, 0x4b, 0x77, 0x98, 0x39, 0x9f, 0xd6, 0x65, 0xe3, 0x47, 0xa3, 0x9e, 0x99, 0x4e],
|
|
[0xe8, 0x4e, 0x11, 0xd7, 0x05, 0xca, 0x20, 0x17, 0x2c, 0x36, 0x8a, 0x12, 0xe1, 0x07, 0x8a, 0xae, 0xf2, 0xa7, 0xa0, 0x13, 0xbe, 0xdd, 0xeb, 0xd4, 0x77, 0xaf, 0x53, 0x91, 0x01, 0x87, 0xcd, 0xa2],
|
|
[0x9f, 0x1e, 0x0b, 0xc1, 0xb4, 0x35, 0xc5, 0xba, 0xc9, 0xb6, 0xd3, 0x6e, 0xe6, 0x27, 0x39, 0x5f, 0xd5, 0x15, 0xfe, 0xb8, 0xe7, 0x46, 0x7a, 0x4a, 0xb6, 0xa8, 0xd9, 0xd9, 0x32, 0x60, 0x5b, 0x7b],
|
|
[0x73, 0xfa, 0xdf, 0x32, 0x90, 0x55, 0x4d, 0x5c, 0x2b, 0x0c, 0x8f, 0x11, 0xd9, 0x78, 0x7d, 0x4e, 0x1f, 0xe9, 0x03, 0x8d, 0xb6, 0xa0, 0x84, 0x81, 0x33, 0x0c, 0x9c, 0x91, 0x26, 0xe7, 0xe7, 0x9b],
|
|
[0x48, 0xeb, 0xd4, 0x71, 0x46, 0x15, 0x66, 0x4d, 0xdf, 0xd9, 0xbd, 0x0e, 0x5d, 0xd3, 0xfb, 0xb5, 0x61, 0x50, 0x66, 0x79, 0xd3, 0xa6, 0x36, 0xc0, 0xab, 0x4a, 0x66, 0xb4, 0x10, 0x7f, 0x0e, 0xf6],
|
|
[0x97, 0x81, 0x73, 0xce, 0x07, 0xd1, 0xa0, 0xb9, 0x62, 0x6b, 0xa0, 0xec, 0xee, 0x49, 0x8e, 0x3d, 0x7f, 0x77, 0x3f, 0x35, 0x9c, 0xd7, 0x95, 0x9d, 0xb7, 0x57, 0x89, 0x46, 0xd6, 0x23, 0x61, 0x77],
|
|
[0x6c, 0xa7, 0xe0, 0x14, 0x67, 0x3d, 0xab, 0x60, 0x79, 0x1e, 0x3f, 0x8b, 0xbd, 0x55, 0x31, 0x66, 0x1d, 0x16, 0xd6, 0xa9, 0xd6, 0xde, 0x7e, 0x9f, 0x03, 0x93, 0x17, 0x61, 0x55, 0x17, 0x9a, 0x27],
|
|
[0x0b, 0xf5, 0xea, 0xb7, 0x5b, 0x7d, 0x69, 0x31, 0x16, 0xac, 0x28, 0x8b, 0x13, 0xbc, 0x0e, 0xd9, 0xa0, 0x95, 0x9a, 0x84, 0x31, 0xaa, 0xc3, 0x3b, 0x16, 0x9c, 0x64, 0xa0, 0x3e, 0xb2, 0x89, 0x4e],
|
|
[0x20, 0x9e, 0xc5, 0x84, 0x5f, 0xa1, 0xd0, 0xfa, 0xc0, 0x03, 0x04, 0x83, 0x29, 0x83, 0x19, 0xde, 0xbb, 0x6f, 0x3c, 0x77, 0x54, 0x76, 0xb6, 0x27, 0x80, 0x08, 0xd9, 0xef, 0xed, 0x18, 0x44, 0x46],
|
|
[0x09, 0x11, 0x16, 0x77, 0xfe, 0xd5, 0xbe, 0xe0, 0x23, 0x84, 0x24, 0x14, 0xdc, 0x04, 0x94, 0x37, 0xd5, 0x89, 0x6a, 0x14, 0x48, 0xf9, 0x3f, 0xf5, 0x30, 0xe2, 0xc7, 0x3c, 0x4e, 0xa0, 0x85, 0xc2],
|
|
[0x33, 0x26, 0x8d, 0x5d, 0xc4, 0x49, 0x8a, 0x30, 0x1f, 0xb5, 0x54, 0xc8, 0x21, 0x51, 0xd3, 0x93, 0xa5, 0xd7, 0x93, 0x5a, 0x6f, 0x29, 0x96, 0xdb, 0xcf, 0xdb, 0xaa, 0x8f, 0xbb, 0x34, 0xd4, 0xb9],
|
|
[0x83, 0xbc, 0xbd, 0x04, 0x64, 0xa2, 0xb4, 0x55, 0xc8, 0x56, 0x23, 0xbb, 0xe5, 0xba, 0xec, 0x5f, 0x1f, 0x54, 0x71, 0xf3, 0x1b, 0xa3, 0x00, 0xc3, 0x13, 0x56, 0x40, 0xd9, 0x96, 0x9e, 0x02, 0x8f],
|
|
[0x56, 0xf6, 0x22, 0x97, 0xfd, 0x53, 0x7d, 0x07, 0x4b, 0xe3, 0x5d, 0x52, 0x45, 0x54, 0x6b, 0xb4, 0xab, 0xda, 0xb5, 0x40, 0x85, 0xc3, 0x64, 0xe1, 0x19, 0xa2, 0x02, 0x0a, 0xc2, 0xb1, 0xee, 0xbd],
|
|
[0x09, 0xcd, 0xdd, 0x3a, 0x02, 0x25, 0x7e, 0x5c, 0x35, 0xa7, 0x9c, 0x9c, 0x98, 0x8d, 0x7d, 0x6f, 0x47, 0xc9, 0x9e, 0x11, 0x38, 0x45, 0xf0, 0xbe, 0xae, 0x75, 0xe0, 0xd8, 0x76, 0xe9, 0x1d, 0x0d],
|
|
[0x6b, 0x5f, 0x61, 0x64, 0x5c, 0xd5, 0x2a, 0x6f, 0x0f, 0x09, 0x97, 0x97, 0x50, 0xe3, 0xda, 0xe7, 0x11, 0xd7, 0xfd, 0x29, 0xb5, 0x25, 0x80, 0x4e, 0x94, 0x71, 0xbb, 0x25, 0x8c, 0x74, 0x82, 0x97],
|
|
[0x37, 0x00, 0x1d, 0x91, 0x4a, 0x5d, 0x26, 0x0f, 0x4b, 0xf2, 0x40, 0x1d, 0xda, 0x0c, 0x10, 0xd5, 0xa5, 0xd3, 0x9e, 0x9d, 0xc5, 0x58, 0xa8, 0x55, 0x72, 0x87, 0x44, 0xcd, 0x7b, 0xa0, 0x21, 0x35],
|
|
[0xf4, 0x6f, 0x75, 0x98, 0x3d, 0x9f, 0xfb, 0x5c, 0x3d, 0x74, 0xa4, 0x4b, 0x92, 0x78, 0x08, 0x6f, 0x0c, 0x1c, 0x19, 0x57, 0x17, 0x52, 0x25, 0xd3, 0xeb, 0xd0, 0x2c, 0x68, 0x2c, 0xca, 0x76, 0xd1],
|
|
[0x31, 0x58, 0x4e, 0x21, 0x6c, 0x2c, 0x92, 0x24, 0xc9, 0xac, 0x81, 0xb5, 0x78, 0x5e, 0xcd, 0x7f, 0xe1, 0x7b, 0x3b, 0xf5, 0x17, 0x98, 0x19, 0xf7, 0xf9, 0xed, 0x0e, 0x6e, 0x97, 0x6a, 0x88, 0xfc],
|
|
[0x51, 0xde, 0xf3, 0xa3, 0xa3, 0x3e, 0x8e, 0xea, 0xfb, 0x93, 0x09, 0xd9, 0x39, 0xd0, 0x3a, 0x39, 0x01, 0xa4, 0xf5, 0xc4, 0x7a, 0x0c, 0xca, 0x5a, 0xc0, 0xef, 0x99, 0x37, 0x5c, 0x00, 0x2f, 0xb4],
|
|
[0x53, 0x8e, 0xb4, 0x51, 0xec, 0xa0, 0x8c, 0x7d, 0x7c, 0x53, 0x7f, 0x1b, 0xef, 0x90, 0x67, 0x9e, 0x25, 0xd2, 0xd7, 0x01, 0x5b, 0x38, 0xee, 0x1e, 0xfa, 0x66, 0x3c, 0x98, 0x34, 0xed, 0x6b, 0xdf],
|
|
[0x2d, 0x90, 0x84, 0x9a, 0x35, 0x71, 0xc0, 0xa2, 0x5b, 0x36, 0x07, 0x9f, 0xfc, 0x38, 0x9c, 0x2b, 0x87, 0x79, 0x7e, 0x98, 0x26, 0xea, 0xaf, 0x28, 0x6e, 0x3b, 0x4f, 0x9f, 0xd9, 0xc8, 0xab, 0x69],
|
|
[0xd6, 0xff, 0x1b, 0x3e, 0x57, 0x10, 0xb2, 0xed, 0x39, 0x4b, 0x32, 0x96, 0x25, 0x3f, 0x78, 0xeb, 0x9c, 0x3d, 0x49, 0xf3, 0x13, 0x94, 0xa8, 0xfc, 0x03, 0xb4, 0x16, 0x08, 0xcf, 0x1c, 0xae, 0xca],
|
|
[0x6e, 0x3c, 0x5f, 0xef, 0xab, 0x82, 0xfd, 0x9b, 0xba, 0x01, 0x48, 0xd7, 0xfa, 0xd8, 0xdb, 0xcd, 0xd4, 0x78, 0x32, 0x6d, 0x28, 0x95, 0x2b, 0x6e, 0x78, 0x1d, 0xdc, 0xf6, 0x69, 0x0a, 0xcd, 0x70],
|
|
[0xd5, 0xef, 0xc7, 0x5e, 0x69, 0x4d, 0x6f, 0x4a, 0x04, 0x96, 0xfc, 0xb7, 0x76, 0xdc, 0xb7, 0x52, 0x14, 0x91, 0x6d, 0x1f, 0xb6, 0x61, 0x7f, 0x23, 0x49, 0x1c, 0x31, 0xc8, 0xa1, 0x89, 0xdc, 0x09],
|
|
[0x00, 0x54, 0xb0, 0xf4, 0x6e, 0x67, 0x4c, 0xc5, 0xec, 0x38, 0xb4, 0xe1, 0xf9, 0xf1, 0xd8, 0xb2, 0x33, 0x07, 0x5b, 0xf0, 0x4c, 0xe6, 0x37, 0x76, 0x1e, 0x55, 0x95, 0xe7, 0xa1, 0xd7, 0x43, 0x3d],
|
|
[0xa3, 0x2e, 0x4b, 0xcd, 0xe5, 0x4c, 0x3b, 0x9f, 0x56, 0x9b, 0x40, 0xc1, 0x59, 0x87, 0x05, 0xca, 0xad, 0x5a, 0xef, 0x78, 0xaf, 0x0b, 0xfa, 0x00, 0xdf, 0xc8, 0x38, 0x24, 0x84, 0xfa, 0x1a, 0xe8],
|
|
[0x4d, 0xbc, 0x8f, 0x65, 0x27, 0x24, 0x72, 0x4d, 0xf4, 0xa0, 0x85, 0xb0, 0x43, 0x70, 0x45, 0x63, 0x54, 0xf3, 0xee, 0x86, 0x38, 0x4d, 0x39, 0xf2, 0x30, 0x3f, 0x33, 0x6f, 0x06, 0xc9, 0x51, 0x82],
|
|
[0x5b, 0xc5, 0x6a, 0x75, 0xc1, 0x27, 0x9d, 0xc8, 0x50, 0xf0, 0x99, 0xe1, 0x99, 0x5e, 0xd0, 0x2a, 0xc1, 0x72, 0xe4, 0x39, 0x70, 0x15, 0x09, 0x87, 0xf8, 0xc7, 0xf4, 0xc6, 0xbd, 0xd1, 0x8f, 0xd2],
|
|
[0xea, 0xb2, 0x76, 0x93, 0x33, 0x88, 0xcd, 0x7f, 0xba, 0x18, 0x7c, 0xce, 0xaf, 0xee, 0x6e, 0x52, 0x9c, 0xd3, 0x96, 0x1b, 0x5b, 0xfe, 0xbc, 0xc8, 0x7c, 0xe1, 0x1a, 0x70, 0x84, 0x30, 0xc2, 0x74],
|
|
[0xce, 0xd6, 0x08, 0xd1, 0x79, 0x0b, 0x7d, 0x51, 0xbd, 0x66, 0x1e, 0x42, 0x1c, 0xba, 0x67, 0xfc, 0x20, 0xc4, 0xaf, 0x6c, 0xeb, 0xf1, 0x9a, 0x3a, 0xc9, 0x8d, 0xcf, 0x46, 0x74, 0x1f, 0xe0, 0x73],
|
|
[0x05, 0x85, 0x0e, 0xaa, 0x75, 0x10, 0x3f, 0xb1, 0xc8, 0x63, 0x50, 0x07, 0x58, 0xbc, 0x37, 0x6d, 0xb0, 0x6f, 0x29, 0x2a, 0x6e, 0x55, 0x6c, 0x9a, 0xc2, 0xa1, 0xc6, 0x13, 0x47, 0xe7, 0xd8, 0x83],
|
|
];
|
|
|
|
/// The h = 10 Merkle authentication-path nodes.
|
|
pub const AUTH: [Hash; H] = [
|
|
[0x5f, 0x13, 0x2f, 0x05, 0x9c, 0x3a, 0xbc, 0x25, 0x86, 0x8b, 0xd9, 0xb7, 0x5d, 0x80, 0xb9, 0x5e, 0xef, 0x2f, 0x31, 0x56, 0x67, 0xd7, 0xd6, 0xe2, 0x60, 0x45, 0xcc, 0xf4, 0x87, 0x78, 0x05, 0x52],
|
|
[0xa2, 0x4b, 0x35, 0xc5, 0x62, 0x50, 0x5f, 0x07, 0x43, 0xf6, 0xf0, 0x89, 0xf8, 0x80, 0xe3, 0x5c, 0xca, 0x8b, 0x7e, 0x9c, 0xb8, 0x49, 0x67, 0x0b, 0x1c, 0xf0, 0x6a, 0xa5, 0x75, 0x9c, 0x57, 0x3a],
|
|
[0x0a, 0xea, 0xab, 0x6c, 0xa8, 0x93, 0x46, 0x0a, 0x7e, 0xa1, 0x55, 0x66, 0x94, 0xc6, 0x95, 0x14, 0x24, 0xfa, 0x6b, 0x42, 0xc5, 0x16, 0x36, 0x9c, 0xc9, 0x65, 0x8b, 0x81, 0xb3, 0x25, 0xd8, 0xd4],
|
|
[0x86, 0x97, 0x7a, 0x69, 0x91, 0x9f, 0x67, 0x41, 0x6d, 0xd3, 0x62, 0xef, 0xee, 0x90, 0x4d, 0x96, 0x04, 0x9e, 0x70, 0xfa, 0x95, 0xa0, 0x54, 0x4a, 0x5e, 0xd8, 0x5a, 0x4e, 0x57, 0x42, 0x9c, 0xe0],
|
|
[0x88, 0x4f, 0x76, 0x34, 0x50, 0xd9, 0xee, 0x23, 0x77, 0x69, 0xde, 0x8c, 0x96, 0xb7, 0x1a, 0xd7, 0x9e, 0xa5, 0xca, 0x55, 0x9b, 0x19, 0x6d, 0xbd, 0xb9, 0xf9, 0x6b, 0x69, 0x41, 0xd0, 0xd8, 0xa6],
|
|
[0xf5, 0xf1, 0xa8, 0x84, 0xfc, 0x6a, 0x80, 0x28, 0x15, 0xda, 0xe9, 0x57, 0xe4, 0x0b, 0xce, 0x0d, 0x4c, 0x8b, 0xa5, 0x00, 0x41, 0xda, 0x0b, 0x5d, 0x51, 0x0d, 0x3d, 0x2f, 0x66, 0x2d, 0xb2, 0xf6],
|
|
[0x35, 0x3b, 0x3a, 0x1c, 0xf0, 0x7b, 0x24, 0x3c, 0xd3, 0x43, 0x46, 0xbd, 0xaa, 0xff, 0xe5, 0xb7, 0xed, 0x4b, 0x64, 0xf8, 0xca, 0x7b, 0xa2, 0x89, 0x5f, 0x33, 0x96, 0x32, 0x92, 0xaf, 0x73, 0x76],
|
|
[0x53, 0x8d, 0x28, 0x31, 0x99, 0x8c, 0xbe, 0x8f, 0x07, 0x6d, 0x22, 0x31, 0xcc, 0x3a, 0x5d, 0xad, 0x0d, 0xa3, 0x6c, 0xe4, 0x9e, 0xec, 0x00, 0xe4, 0x0c, 0xc3, 0xa3, 0x40, 0xa4, 0x0f, 0xc2, 0x75],
|
|
[0xab, 0x1b, 0xea, 0x0f, 0x4e, 0x96, 0xe0, 0x08, 0xa4, 0x0d, 0x36, 0xc8, 0xa6, 0xbd, 0x04, 0x9b, 0xf2, 0x65, 0xf1, 0xb3, 0xdf, 0x85, 0x68, 0x6b, 0x53, 0xc6, 0x23, 0xb6, 0x40, 0xe3, 0x17, 0x5b],
|
|
[0xcb, 0x84, 0x95, 0x9b, 0x6d, 0x1e, 0x46, 0x95, 0x5e, 0x18, 0xbc, 0x5c, 0xf2, 0x7d, 0x5f, 0xe1, 0x3f, 0x72, 0x58, 0x9a, 0x39, 0x5e, 0x1e, 0xe0, 0x1e, 0xb9, 0x98, 0x3d, 0x5c, 0xe3, 0xe0, 0x4b],
|
|
];
|
|
|
|
/// The official reference public key as a [`XmssPubKey`].
|
|
pub fn official_pubkey() -> XmssPubKey {
|
|
XmssPubKey { root: PUB_ROOT, seed: PUB_SEED }
|
|
}
|
|
|
|
/// The official reference signature as a [`XmssSig`].
|
|
pub fn official_sig() -> XmssSig {
|
|
XmssSig { idx: IDX, r: R, wots: WOTS, auth: AUTH }
|
|
}
|