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.

“It is a very good app.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
77e60e72361abf72b2b87e865afab7e89ecb0103b2f9d9ddc2530bd10fa34c6f
Signature (Ed25519, base64)
nXolG1sBUURQTtXwHanzWpdSX/OkBhDO4V158P9V6JkZtvih9UyTIgV65mMsIGMtknUQgROUUG1DhNMvW355Dw==
Merkle root
2f068f3de56bebe7a575ba4a979c9244445d2350140e36238e088fa40fbfdd88
Merkle path
["77e3cd77d56afda0711426a20f27b08b98947e75f8ec50a83694447b005fc932","cb2bbf56a9583f8223cf30f7969874991400efae89743fa2690d0f17da005c75","f323923b14dfa3c900f75e3d52305d20b0f22a338bc4f99292d3c7adfa32e3de","9e990bea61992bf68a4461377723ef94944baf346f52cb697e14c322e3069252","71db84a8073290489d6e7a8ce36bbe3bd853e3bc92eb5eeb29f1822a007dbe8e","1632a95feaafd9e2244a6369eb2d6edc4f0169ad96e8e6fd5bcc49dba8d74e03","9d98a8fc6480533997a297317ac7c4238105def1780adf0c650525b2d0a10693","71d13bac7603b4354ec4839908af1ea4509aeffef80c5ec7d57c691e79c1ef91","8fe0b9ee2fc387552f9898919800431b02f21fc4aeae9b5567e51f283a25e64e","ab44b554083dc94d4fa35de59edf67ec7026fb0e536086d1ec27e3d491d8f917","c3b3f5c19529bbeb5ebc1fab9e124029362e3e3d4f2fc2e58af4d4e08143082d","3c6ddbcfa48be5df39d5d13fece3ba9fab7f6eec0e8fcf21a13cdbcc6729a93c","c5d2216bf0003f30213891a39e09a3edafbc50505093b2ae98f61a9c067b5a3c","f2c4543851e26fd9d1e3721e592d66b00f142e537786e975d115c14b9cb61c0e","98191c82333f4385e47f318835e01d44ca8835262c6d0df40edfd5f6a4dc5c19"]
Anchored
2026-09-20
Public log entry
search.sigstore.dev, log index 2893887498 · entry 108e9186e8c5677af79f…
Expected log hash
90099e0300c6e23b62e79318296ebab91bff130379d248ada57f044f77e72ccd 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":"v1789796056710","kind":"published-quote","locale":"en","page":"theme:concordia/quality/en","quote":"It is a very good app.","rating":5,"review_date":"2026-08-26","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.concordia.myconcordia","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 (2f068f3de56b…), 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.