{"format":"receipts-proof/1","hash":"0118234e0576d4d2e98804501057a9602b8898a792beb497fc0edb9effc1c9ab","provider":"demo-ema-cross","seq":38,"kind":"signal","issued_at":"2026-09-28T11:00:53.055Z","prev":"e820ccf8d4dcbf535c53de683102b2e80bf459bc9b9758caed3aa4e93aa52287","body":{"issued_at":"2026-09-28T11:00:53.055Z","kind":"signal","nonce":"5e13f2b25be8a83f88cc27bea7d7824a","payload":{"entry":{"type":"market"},"expires_at":"2026-09-29T11:00:53.055Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: EMA 9/21 cross, 15m. Mechanical rule, not advice.","side":"long","stop":"2642.19","targets":["2681.13"]},"prev":"e820ccf8d4dcbf535c53de683102b2e80bf459bc9b9758caed3aa4e93aa52287","provider":"demo-ema-cross","seq":38,"v":1},"signer":null,"sig":null,"batch":{"root":"0118234e0576d4d2e98804501057a9602b8898a792beb497fc0edb9effc1c9ab","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-09-28T11:01:53.125Z","opentimestamps":"AE9wZW5UaW1lc3RhbXBzAABQcm9vZgC/ieLohOiSlAEIARgjTgV21NLpiARQEFepYCuImKeSvrSX/A7bnv/Byav/8Ahh6fS+HbYGPwjwEO03emr88iLN/LAA9xfkOowI8SDPRiHurYuIxcl1iIhJb3CTtJih4SK8tZO9x6kQ+01yJAjwIEnnYIsvh3Xuv876+ubswY7c1s8Ydk+HVOx7BZbRvRBECPAguqxZbvgk3LokeH/EaKNGRFEk3pY0KRS9P60Elhxt/5gI8QRqukki8AjfX+ndWcGlMQjxIFTW6Pq2qo4p0m8q3qy6oUNjqWpxFO9m46gSfCiiCrZICPAgSzRnKsYp9IqQ02Zmi21N7JgUSh2x8aVGh8QZjXCn2CII8SDJ3EdviOSkM+byYsBuKvjKO9hPz4wBfwuHessJXcBJMQjxID0UG1JUCkEZTDn2Ua/aH9mB67oWLVmKLULSovYL2FkQCPAgTyNFOd7aFOiqbrIBSa4SFDKJ65yg27H0+jZTnt4i1VEI8CDNUNzcxx7cISr0Q3alNZ8+pomG308hwVG+xrutDsX81QjxIB9BL9pQQsXvjbFktO/gLQ5bpjIW/05GxhEk7FEidLpwCPEgaPiMnWTqoZDak+jWDiYqSTJVpb+sZ31q3CJ1KUrBGIsI8CB4/51a8c4QhLE+v544mQtjiQN+qei7b/92o9xrxVnKDQjxICoFs0J3HbXvjvpD4SQ+KjJyWwlAbOihx6xIimkYdBJACPEgbhey2IpPIMn38CsvRJ92vK06Go4YlLKb9JLaiTJ8tykI8CDjTnrYFF0eBPKc0gkxCMsSWX+/MnXTn44R2G213KfOuQjxWQEAAAABV6egVtDKQcviLOfVJYCagvAVRYUE6suS1EgrPVQCvkkAAAAAAP7///8Cjy4BAAAAAAAWABTPtdWZDh9hwiJ0X48XBkEbyDT6FwAAAAAAAAAAImog8AQZyQ4ACAjwIHYDAkhMSfJeVH/FxDBLPbUFWoSWNVgWzO8vKFFvB9yQCAjxIAU/bRj99joyBLysJ6hRxG5pzI+TmHkR8CtKXV+ny4q5CAjwIHTHOxLGwboRiAtI6pomuIo01Uppw97c6D+9/AeX/KSuCAjxILn5mOJgKowMclaiHxa8SitOUQ4SoHywFXLOYdZbRLjaCAjwICUEET1tDn//IXtDg7k8VDm/D/d/3icx0TtEllDB928WCAjxIDVZxp3VnUH0ey2+lMKhX60uviYyO+Sjb32IetesRIADCAjwIFPft1alIl4gL5UorPjcJxysZI6ICwH1BJlv8sOt/uGyCAjwIFWpGy42utR77yayeeUKWBbMWf745j/QmoTIDCV6vOonCAjwII1qqG1mWcmI9HA2qdYgYC6JDib+tp37HfYOnH0FcfRmCAjxIEMy7iGcpX1osPMqj1+p4z8hRqzu8AVNaaxsXgpemvSOCAjxIMIvOXYQ9uHfyvBiBp7tluEtIOrCia4C/TIsUepUzMtnCAjwIJipuIAFpOLh7Dqd365Q84b0ipd6TMESBtRfSmL+NRCvCAgABYiWDXPXGQEDm5I7//AIyJC70ruXGBoI8CA9NszdG+2xxRN/N1fa51Sv3JpUnccU8jlx8j1Ty5KHnAjwEEZQCWd7t6Z+ymnkE+QbJwsI8CBxBlDcXyS9/8h0PpWIEKA1rcdwf1Eu6HvutAo5gD18uQjxIHyVe2o30d17wKwdvpVpNu0FTF2U1C+TDZEXlv0dNmY+CPAgtlymyF9JVpF5Gs1KlHm8/7iYyET2kcTuJzZi9tZ4SPYI8QRqukki8AiXSxZOpEZRKgCD3+MNLvkMjiwraHR0cHM6Ly9ib2IuYnRjLmNhbGVuZGFyLm9wZW50aW1lc3RhbXBzLm9yZ/AQLjRpP5hyhVaKKmJ5bH/esgjxIChkbPVHNIy6aJNB4VLt2Gny60dbf95Jotc5XQ4Vwhf1CPEEarpJIfAI80qxFhcUdoMAg9/jDS75DI4pKGh0dHBzOi8vZmlubmV5LmNhbGVuZGFyLmV0ZXJuaXR5d2FsbC5jb20=","chain_anchor":null,"bitcoin_block":968987},"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"]}