{"source":"live/…/observer_web/static/cmmx_attestation.json","predictive_claim":"NONE","data_state":"FRESH","age":"52s","payload":{"v":"CMMX-ATTEST-1","seq":75473,"mmr_root":"fd429aab3ee6210f1be74bf095760687c8fad74c26b8646f64766bbaa0952931","freeze_hash":"af4587e43752c175fb825f390977e4733c645746fa90803499f7ea321a52c81c","state_time":"2026-09-11T03:56:18.265076+00:00","attested_at":"2026-09-11T03:56:36Z"},"ed25519":{"alg":"Ed25519","pubkey_fingerprint":"2001f57eee4a7a56","signature_present":true,"pubkey_hex":"764b02cf193e0cfaa0e3f8d80e9276275dab70e8d50c2e52241076f397896e05"},"mldsa":{"alg":"ML-DSA-65","pubkey_fingerprint":"a3e323f0640c5fa9","signature_present":true},"verify_recipe":"Hybrid: Ed25519 verify(pubkey_hex, signature_hex, canonical) AND ML-DSA-65 verify(mldsa_pubkey_hex, mldsa_signature_hex, canonical); canonical = json.dumps(payload, sort_keys=True, separators=(',',':')).encode()"}