{"format":"receipts-proof/1","hash":"d6724a0b43332e465394e6d2de1f5d865c807fb0fac9bda3254884686fa98024","provider":"demo-ema-cross","seq":195,"kind":"signal","issued_at":"2026-11-09T12:30:53.729Z","prev":"1bdcf433a6cde2cbe9a8d52717c9a9b61c13c4034c953983ac622a5779b48359","body":{"issued_at":"2026-11-09T12:30:53.729Z","kind":"signal","nonce":"9672ac7b4f8a03c0002e5abb4ac8092a","payload":{"entry":{"type":"market"},"expires_at":"2026-11-10T12:30:53.729Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: EMA 9/21 cross, 15m. Mechanical rule, not advice.","side":"long","stop":"2108.25","targets":["2152.89"]},"prev":"1bdcf433a6cde2cbe9a8d52717c9a9b61c13c4034c953983ac622a5779b48359","provider":"demo-ema-cross","seq":195,"v":1},"signer":null,"sig":null,"batch":{"root":"d6724a0b43332e465394e6d2de1f5d865c807fb0fac9bda3254884686fa98024","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-11-09T12:31:49.392Z","opentimestamps":"AE9wZW5UaW1lc3RhbXBzAABQcm9vZgC/ieLohOiSlAEI1nJKC0MzLkZTlObS3h9dhlyAf7D6yb2jJUiEaG+pgCT/8AiMR9ZSjRERugjwIEle+qu3RStEatFU4e/J78itLPir8yHg1+w92SAWfT5rCPAQO4gFWWNkY6w30RdBkJqDFAjwIJLr/fscKTMom3Dn+Bb5I+yDpuSnni+I8Iojuk7O8VFDCPEEavG9N/AI3oyf/IiTO5MI8SDiJigL1sSntWhG5QdiMe5mbG4V4QCBZWGBiUUL8WtapAjxIBbEginpGAvChHOriawjYNYCyVvJpqlWpo60w34faMZyCPAgEb6s1wog5lgfpGzDXFvJhN/dWMi2s0g2UFS0rK3qul0I8CBupRPCv5BKC/+k2iGvt5sMPwGh4CwHBvjksmS675Ce8gjxILkhNJzi8IwICTTO4k4i5/REASwKEHd5CDS0fr0as7a3CPAgPRA/0gwB6Q3vx6qeHR7aL8Pc52Qljl0YF47lRy/7bIYI8SAgCM/Idmdz4dHmLRxFAu3w4lHT1UJt+E3Zo2B9RI6UagjwIJybn5vFwt7SHooBKEGMymFCwCVABGADfG3h0estQcTuCPAgHOQI1/0yn0JTQtdEFNa+6xycW2r0Z3oMx1IVFSpveiUI8CB5LK1TSEMdkYpAE/WZzLBt78YkOU01ZpZbO6Jhv9hWTwjwIFVrOnxZUrKsDRhH/HzdRTqwi09RQO1hyF4x1nveTIqHCPAgQDD02y5m74see6cpujGkW07Lsp1MnAZ7lCs+a/0FEbgI8CDMqV/SI9MgujE+L6lvgMYdshkcFvYE2mZp28YG+J6KjAjxWQEAAAABE1VjsNp2u3Wl1xb5fmGYV6YOpZwbVt09uTrrKpenmEcAAAAAAP7///8Cq8MAAAAAAAAWABQfrypdrw6c5pVUVwWDZuTiZCDlHgAAAAAAAAAAImog8ARP4Q4ACAjwILxDIgP7LafwDD2NpTsCgeoJoSKyeQKKm+CGglvW/duACAjxIIvmjDeByciWbyXxyjKZ2IH6FvLKTLcI+IPERNlqFT2DCAjwILaNtJO7sWill1WhmzzAHtJKZiOvhzWOGB9X4CGUgt2+CAjwIGN6TYsZ891DLUD7CJ84RhwMPjPYKnV+KII2Ae3/TGqZCAjxIHRRsRrPh6MOHQe3RxypcfphxSQTA+vEf40YiMFGpGUiCAjwIOD99oWgtxt9LL1p5110x/KZpisdk9N96E+70yfEN5O9CAjxILbL+IA6TCNzQx8Rpx4+YtuycQ6XJhiMydYvUldJeSUUCAjwICdv8MnPnTsccLkvm2y0ScRV7WtEVq9me9GmRWLPC/toCAjxIEZ2gXa1w8zx3NdAvaqk3VII+FYfqrsLRNKu1vDii0QTCAjwILEBkLx/Gpiy/rDZVUQCoj6OgostZe8n98emevwKECBKCAjxIHfYQOvmFg0U6FkHjKV9P2R85A/QMYBbShuUn3C20u7LCAjwIJURY0S5T+qZtM5ub9KIgd5yz2od0NrC32uX8TmQn3HDCAgABYiWDXPXGQED0MI78Agkv760J0imSgjwEIAra216vOse8RwdxjKMC3QI8CCmskzUShdnZFmmbYRqwLiN9Iust4y/MkicqcSgZgkdAgjwIOmX/yywMoq4Depbvi5noN9t/YHb4htphiG2Qbplea++CPAgv7ro++ysUPGc1pdmTDZ4NqgOg/jyG5aaPBst/6KIhkYI8QRq8b038Ag98rbD/pVYygCD3+MNLvkMjiwraHR0cHM6Ly9ib2IuYnRjLmNhbGVuZGFyLm9wZW50aW1lc3RhbXBzLm9yZw==","chain_anchor":null,"bitcoin_block":975184},"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"]}