{"format":"receipts-proof/1","hash":"9763f0f5ef80f6bbbe263181db75500df7a5d84ab92daffaa9f6c61129fa5f56","provider":"demo-ema-cross","seq":79,"kind":"signal","issued_at":"2026-10-04T16:52:46.420Z","prev":"eacec1b65735a336bcb340157b0265ff2cf3ad43b32853bdedec3b8193149d1e","body":{"issued_at":"2026-10-04T16:52:46.420Z","kind":"signal","nonce":"1bc7b42cf319155ae851ce10d26ef938","payload":{"entry":{"type":"market"},"expires_at":"2026-10-05T16:52:46.420Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: EMA 9/21 cross, 15m. Mechanical rule, not advice.","side":"long","stop":"2696.26","targets":["2715.55"]},"prev":"eacec1b65735a336bcb340157b0265ff2cf3ad43b32853bdedec3b8193149d1e","provider":"demo-ema-cross","seq":79,"v":1},"signer":null,"sig":null,"batch":{"root":"9763f0f5ef80f6bbbe263181db75500df7a5d84ab92daffaa9f6c61129fa5f56","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-10-04T17:04:13.518Z","opentimestamps":"AE9wZW5UaW1lc3RhbXBzAABQcm9vZgC/ieLohOiSlAEIl2Pw9e+A9ru+JjGB23VQDfel2Eq5La/6qfbGESn6X1b/8AjGsV9aMpMnVQjwEC/dvIxvmE5v5OHJZL7igBkI8SBRUsZfVufulJHdvWzxFpkvXpAVvxnPzJV9dIEyYdiVlwjxBGrChw7wCIHTXYUTvWQICPEg/rzihoTHCjufTeoIA3mW2sy0QJubKbl4i+ll1zpyzIQI8SDiGciX2pWy9ISq4JAjcbAduYXxBsllLcoKGQpeWPboEQjxIJnat0Wk4XGp3BBxQF/lLjrcWZ5Uz+Fcq63YYZj5apyqCPEgk1cRg8jt/caFJSKlTgPJOi9GzxbBKp5yLPPCAzpcFmYI8CAVR9qavWYkElMFPzsHq6wYIhnvGNFNWu9pUQTBb3Do/QjwILTX9aFXenLkbr5KVfb/ZluwJS7n5QSZp8LnU5wBhvAJCPEgtvNv5zDBtIrKGftWFRP6GsVokFrmaTUT0EPbqPfsrGkI8CANP5eNGekF4gdDo+pXGbXR4dXTNy+CU48IBsWgxTBExgjwIOBqE+YyrAKOs1zfCv5PkOBqziIrwU7mnJq8v40geoBLCPFZAQAAAAHmWUnnajlgSYlHMLImIZgrrDdVX5kmKfB6j7J7qyQH0gAAAAAA/v///wI3BgAAAAAAABYAFHYoIoqEDu8YmU6foeB+UMF282sVAAAAAAAAAAAiaiDwBJbMDgAICPEgoEKGeu3jELn47ZGhIqhaw0aEtigxTQULOm29poC5wE0ICPAgWpA9X3SXpw/XyFEBRp47SdnisrEsk0L0zxQTp4Es81EICPAgZxVz4Iz2b4pN+T6T8KQ/Ak2rtV46BBRGHlnPbQM6OEMICPAgMrIxXGX6/Ey6u3B/jt5lvxXkr8h5SIZIsTw4MfewgoEICPEgkr5JAbBL6iX7DYIluqDOrUJmjcKZf11iY/f9r9YPkpYICPEgwMyo07Q0LHaKHC1QXq9g2VLXIZZl4IrrMpS8xNPKFn0ICPAgJ0hIW3sVu5kWfOHvMXqDN2pQAMdZmCb4IiX58yL5RZQICPEgMlUKKnM2p3MUfxnbVGrBkAp8DvoV8mNC4TMuWrsTppIICPEgmIOXbTpY5esZw0djaCeh3Oz4BnfyR7Udpk+m4yH/uXoICPAgpeJddhcAI7WYX1bJbcjaw61Uj5d/XukEY4uhTl9RU/4ICPAgqyWiXlyNsIZQMea5P6IwOTHLNT337uSlnQP4vA1WbmQICPAgdj5sydkuOERactZyWfH0yLgLoJV6HZmQYFQZG9vvwEcICPAgefFjmuvxIq3VXGYhuavXPE1SySgoVSQAFThtXw2fgngICAAFiJYNc9cZAQOXmTv/8AjaQnS52mOxawjwEEdfA2dGRlojaQ3FHN3HDDkI8CDS3z4qC2e1i2021rzM6ihjYL4Al+jb2uFPrAI0FzsG3AjwIFVsKGxkpHwcwBaNoIJq1b2I7OiKWjRpRw4NDPmAEOLYCPEEasKHD/AIRoAlojD45U0Ag9/jDS75DI4sK2h0dHBzOi8vYm9iLmJ0Yy5jYWxlbmRhci5vcGVudGltZXN0YW1wcy5vcmfwEPWevwRJZzGXjTtWhzIxY8UI8CCtn0NOyAlp8l0FS+jczr7rzxXy1UWD3Ub44JZSS8FCFQjwIJzchVz95XFZlMupXMpb2V6th2UU/vGTlgi52KOOLwr2CPEgGSZDdyPBAoXlPB9Vnj0RrUNHH2d0jbzVMcmC6MPRQpUI8QRqwocO8AhDCOCjRcBdHACD3+MNLvkMjikoaHR0cHM6Ly9maW5uZXkuY2FsZW5kYXIuZXRlcm5pdHl3YWxsLmNvbQ==","chain_anchor":null,"bitcoin_block":969879},"how_to_verify":["hash = sha256(\"receipts/v1\\n\" + canonical_json(body)), keys sorted, no whitespace.","body.prev must equal the hash of the same provider's event seq - 1 (64 zeros for seq 1).","If signer is set: sig must be a valid Ed25519 signature by signer over the UTF-8 bytes of \"receipts/v1/sig\\n\" + hash.","Fold the Merkle proof: node = sha256(0x01 || left || right); the result must equal batch.root.","Decode opentimestamps (base64) to a .ots file, then run: ots upgrade file.ots && ots verify -d <batch.root> file.ots","Or run: node scripts/verify-bundle.mjs bundle.json"]}