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.

“I've only had good experiences”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
28d25bd757706d8269321c5b21daf39a8556696d61df51d723a7f0654aa4b0aa
Signature (Ed25519, base64)
SFt76to1BmsT5te6fEk5otcq8QOqdff9KD/yj2i23S5ZQ0NZYFYhDdrL0yfvd9adPAwY97f5LzIQX1KP6SWlDw==
Merkle root
ccae92ceb3dcfba104788424188fa34a8cb1410075ff6c1a21fa513e89f0c4fe
Merkle path
["28d299d56272f1ee7665177226d4ae18d1c924bb0d27e86e4df995946bb14fae","7b1c0f5b9f36c78c8342432440c0ad597ca20e8f7c7a3615c00c7d383ae352a1","ca73bfd2750d06dee3b6ef9f4a3c15f9f420bcac7a1c3150e48a2e39b6b207eb","da794d677fd6941e088c3c7787ef72941e6c1de28c8ec20f80b13e13ac98ff2a","65eb7e7a789dd183baa892e9d24e3bbee14ad62ec59ff8ca84c3895988ed9168","cd6b349e85e573577192e737b19c987623a63680009570790c19fadd8b336d30","46458660f76907e5f665851c363379d89927276392efedb01983358720deb593","08b9d519a717d79c29a2328985f8e6e435fc13751562bb033ced1e1068ea7220","7d0f6abf4a50a18f91e89d9f690668bd2ee4b2aab6b2936041a7fa2fba623179","87c49eaabaeb5e811a93cff89fd2e4316bfaf4eac001c14c722eb4b04f010e62","f79ba291446119d0465ca915392718387b0feb11e61114d98a8b08ba6e1bf58d","b70739f2a286d1253345040cb1057968814bff0ea65cfc9172c741a9be0b1a5f","107bacdb07a3118c4b3abff34aca5373871d7239f682906c5310a861fc9920d7","818afa9b60a40d27c2e88a8e5f62585c079335588148aef8eef246906a1d9ee6","f73291c2ca924ce4b3764e4b6ff1da65a701069f04fad47c52c8b693a0ec7e41"]
Anchored
2026-08-19
Public log entry
search.sigstore.dev, log index 2515282333 · entry 108e9186e8c5677a6652…
Expected log hash
af455e73500113c158c8df9793eab703ff863c9c98fe38560752c9a1772810a8 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":"v1787139531268","kind":"published-quote","locale":"en","page":"brand:relai","quote":"I've only had good experiences","rating":5,"review_date":"2025-04-18","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.relai","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 (ccae92ceb3dc…), 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.