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.

“Easy to use.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
77b0ff8d1f5bec22e2379d9fa59f1ea013ba11021cbec223fcfbc5b9bcc479c1
Signature (Ed25519, base64)
puDDppJDZLl424M/gpe2/syDKfdJHR6l3Oxa6DLmTWDWXgb7CxV3OHGCIV/JbQdeKi+HFQ4UxA7P8k2bfAI8Cg==
Merkle root
5397210619679ac63434abd334c13f5aaccbd1dd184ad9d8cac5ebeceaa346bd
Merkle path
["77b14c8f272dad4213c085b7be51560a39e098d49b5e3d516662d83153df9fea","58167369e7a96e2d633fd55a100ddeb3df241adf1d9e0e0486c823c4b2ded61e","7e0eb777272dcc9e0af207178cc7de739d39d5a0fc5ec903a1431629b8edb10c","ac677523677e60228f18c9387eafd6d25352bb09ad513d52ae206a9948be1acc","c9265c82624e3e5c4c469d2e20b2b838d29ab4e8b6b45e37393a5d5a4ce97c0f","a3fea717cdd0ad825db7339fb3edeba080c0ade02d85eb88b72a4079da21b84e","a1a9358e8177d239842683d183affb3b6096c79ed0c18aa8caf1efe19320f00c","0de25a328bd7fa84f2bad7c481bde904e1e3f89b87d1713f57ebb78fafdc95aa","6c079026ed9dd5c5a46269c6f596e866fc77c862f6d1770d44a3a82ff9305777","14be6fe50e884a1b4b951e5e6fa1a96719e8faf5fc1c9588cdadf1b62f27b6cf","d03ab0d5af0525317d7b078a57c0581a8f161ef990f077db88203a75760a9b38","39081e647d66856f4efcb9e90f0cfe2c81c995dfd64a8921978cee855362e1e3","48bc5ea5434a32841beac8d9496d2692095edbb7104396574890154d981868a9","f5d1cbec3469173c409764ba850b613628c88020363ace8f472e6f611d605e0c","eb97a4ce74ce5f5fa16f1703481b35cd770316cd3d34167e9b76f4403804f896"]
Anchored
2026-09-25
Public log entry
search.sigstore.dev, log index 2948162176 · entry 108e9186e8c5677a61d4…
Expected log hash
5ff8f25b7934b5d72d363d6805344624efba4d637f2c851f11783b259b9d81be 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":"v1790226990092","kind":"published-quote","locale":"en","page":"theme:schulthess/ordering/en","quote":"Easy to use.","rating":4,"review_date":"2025-11-12","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.schulthess.mobile.android","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 (539721061967…), 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.