Quote verification

This proves the quote below is recorded by Citatio exactly as displayed and has not been altered since it was committed and anchored. It documents Citatio's crawl observation; it does not imply endorsement by the source platform. The quote links to the original review.

“The app is very user friendly.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
1329a76aee85f0e856cbc556e87b26660bdc344acdf5e80725ce845739dc656e
Signature (Ed25519, base64)
pq6jOYCd1J7ynr79ZNZKY1eA3UyTVw2dkEKRhKZ0qQUBFDRi3OaA9l5/gdUqYNsLGrQ1q5DJ+J8JX5d8d8taDQ==
Merkle root
97eb1062a862b99998bef0a84476eb3c3812bb77c2cb927f4fd2933b59da9e3d
Merkle path
["1328da393a8a37559b2dcab306360f4832bffdb7e2951df2b3947d04322b2941","705f425a0685a484176537ddd983013c7e6df1014d9441784cacd8dc556a259b","c8bfa94858e8c0363d7f6170f9852b4c2152a582fd293f3be751de64519b56d6","467db4d499875a4383305c811100763430260084d24134fcebf5b7bc7aee4201","4cbe217aa48d3d1cc39b38f33339a6c51f0212e1a5a213746a029e284afc2c9c","e2d22e61dee0e69d218e9b07227c55d48a93d4c993da263f7be3d369013f1b45","ac397512b167c72da841a6d661d149bdfc8f46c8da47cd2f5b51068e2224ee17","0a21f076d64a8d05e6e088e8eff9593b616b5243f04ad357f9aeec2860e5bda0","bd2a9f4c91887c74adaa992b73e9372ceee9b8660d3c4778178a0ed760fa82e1","69c56acb0245d6b88d6192c76c31715605cc8a58e565e3128c7f6424df5ee02d","c88b3d8b7a19b4ad39809cf40205783f933d9a74fff3512cfce9fe04f3d1b7d2","6c14202f6f4d89338c781140a2504c6d469b19d300474270ba84f87831aa8464","5b47260d99d2c4ad6e0d963995c990c8506dbf10eb0b146a116c3fc6ba348071","a9559f2ca8536f2c18bf059f3f0099d62235a93ac35dc17b09967d392b72be7f","01242865574478f13dcf9d888236d7a907264abdb87f360db7db06de0945075a"]
Anchored
2026-09-11
Public log entry
search.sigstore.dev, log index 2789279696 · entry 108e9186e8c5677a3885…
Expected log hash
05c7009ecf7ce5cf315c252c2a1dd135e64989a02cacdaaa3c5a87412a2e921c The log entry's spec.data.hash.value must equal this value: the SHA-256 of the Merkle root string above. Recompute it yourself from the root to confirm.
Canonical record
{"dataset_version":"v1789017464005","kind":"published-quote","locale":"en","page":"product:wave/mobile-app/en","quote":"The app is very user friendly.","rating":5,"review_date":"2026-05-20","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a0df32b445d5de8e3ee3e42","v":1}

Verify in the public log

  1. Open the Rekor entry (pre-filled with this proof's log index).
  2. In the entry, compare spec.data.hash.value with the "Expected log hash" above: it is the SHA-256 of the Merkle root string (97eb1062a862…), which ties this proof's root to the log entry.
  3. Decode spec.signature.publicKey.content from base64: it must equal Citatio's published key at /.well-known/citatio-signing.json.
  4. The entry's integratedTime is the independent timestamp: the root, and with it this quote, existed no later than that moment.
  5. Locally, without any Citatio infrastructure: SHA-256 the canonical record (must equal the record hash), verify the Ed25519 signature against the public key, and fold the hash through the Merkle path (sorted-pair SHA-256) to reach the anchored root.