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 interface is simple, the features are helpful, and everything works smoothly.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
130bd3d66efec7f03a133ebaa6a3b91a9f3f15e02d491c7ce7a658742e6b9ba5
Signature (Ed25519, base64)
G/pgLyU9hsitXly7bfRzkyTcYQLvzAOH2rIyX4yLhchnA1gNB4APguzw7NeC6Bjz044I/pn+saO9Gb3wg7GMBw==
Merkle root
f0f62c56ff0378d82fdd48082f920661828d39b95ccd5c38fdfe4483f1ee2ee3
Merkle path
["1308d11a94d259a05a0271d914fa73f6524d61554c2eab4a4454ab28c99367d3","c22210ac53de3af9bc866969ea1b28b0762f001edc646b2f5c99fc76da290588","57566f8695cd765e7ab85d954547357f349d5e98e836639a9169b719b8e646da","dfa0688c771175720b90ce4ff81652bd7887f6dad35c98bad067fd6c926642fd","56908cb241b250a9fbb8254de613f50d2e0c28deeb4fad633308b70ccf797c75","914b0d346f2d6a69755fb9297b8859c91e84ac43ba3dca358e08d5b53d744ef5","d343c344de44d437425c0ed2ffc6f287880d8b744d3a7fc40122540039515bf5","17beea3b61b16a9e8b9d47df79b26ff1db3bfdf43cd9af02e1b5b5d96a994f5f","1952f0d05ab880847ca53900e2c86648ae89634beba53fb2ea0e9e69c1275d16","d38a4c8c66c249b9fa1c9068ea744c123c06af3957d648be89aad484086b9983","6d818803c16ccdf2271639cec625d38c8500079b9612f4f2c71ba737f8e11780","7d8b20bdc86b0c3711c79fd7ebf8dec75f6ed63b7ed9d8d0bded2ce456a7c7d2","f33830fb240c498bfb90ed4544f0b1042b70e0584e260584204d58966911980e","b16027fe2b380a7ac9563ceaf3de6c51b4d714d6a037cd948f12111ce23be9c8","453f962172aedc32eb37e395c8cdb7d9ce578b1f2f396446f685a169153e3630"]
Anchored
2026-08-31
Public log entry
search.sigstore.dev, log index 2657634507 · entry 108e9186e8c5677ab840…
Expected log hash
e92d5b270304966dfd65dc0d9d8022a5b05931f761c79f5d6dec1128a7483f8d 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":"v1788146824604","kind":"published-quote","locale":"en","page":"theme:acrobat/ordering/en","quote":"The interface is simple, the features are helpful, and everything works smoothly.","rating":5,"review_date":"2026-08-12","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.adobe.reader","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 (f0f62c56ff03…), 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.