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 has ruined Rappi for me.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
84819a4198374a8bae94ca0d276426a470c57fc101069f37881c1e79e1515c55
Signature (Ed25519, base64)
KjpQy1AyVQW376ZR1MVWEB9WU+3UJGN2p5Zb1R2ql1XbF18MZEZ4jxQBFFC1KV985mVzkzJC78H0riylP1CkAg==
Merkle root
04b39eaa56e1cf8f75dc8eac18bf6942167c8418ea731a7471223f0be60e3e6c
Merkle path
["84835dd656cb375c0a9be071a613832268854052f6b6c238ba39565255aacb13","cc45bce90566fb7dbe79908785ecd4c3a6f644c989251abf13f6b9ad81a47b3b","b844376ddedecac0111dec41a420a495c734a39d52cb148cdadc5719a6a10bf3","9ce15ad7245f534ce10d306f093d227a9bb89bce0787e60d3e1091b3496a2412","37f957ce0b926d90703e0ac8283def2cef0c6a7f9ee5ed1fcc94ff220b14d502","c3fe8bbd4b091557013e7a7d947a7edb35a34170d6b81e99528892a3125b6fd5","86638c1fff9d6addf454fabde825baf4b30e8b2c807783a11254861bd40e9907","1bfe4fabae38a2aae72946a2f465a844ef2ff301d6f7c3708a49f0d06b26fa82","a7e3e2e5f3919046257b4f7ee20ab34fea34b9271f7ba414abdccc94b19e4292","11151d4b70e179ca656b560e761fa84df3e957f1f398aa01171731048082b13c","9ed21073134c6af75a4a27391a91501dbc430d2043430db149625343dd6ebda3","e651c62e99d40f4b39a35a595eb8e69bab534ed1159ac9b7ae46954f2fa9bac6","2a4eedd2e6770f347c97e6f4e61cb85be4af21173e299d5507007ad47305b4c9","c5cc7ab668acd70733708092004f0624164aaac2bfd55cacefad6637b26146b8","695aed3f647000e14ed985f8c4d6045987ffb913dd12c814d6f9a495d4d25fd3"]
Anchored
2026-09-19
Public log entry
search.sigstore.dev, log index 2890214870 · entry 108e9186e8c5677af53b…
Expected log hash
1f3acef0f063246e051bf412e40f4279cb96ed334ff7b0647a13320c1b31c4fa 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":"v1789722569406","kind":"published-quote","locale":"en","page":"theme:rappi/fit/en","quote":"The app has ruined Rappi for me.","rating":3,"review_date":"2026-03-17","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.grability.rappi","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 (04b39eaa56e1…), 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.