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.

“Doesn't give us a choice of language”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
55e01b468b9dbd73c5d0ea61f1d12a4ea4dc7fe4c03969a3bcb8e5e0e9362294
Signature (Ed25519, base64)
GmkweHtVWrBRsdt4SZCHD674KmisPqfKpPEPUWQSq9r83XqJ62BfD8t5oT26lpg7s+fi2EfwJ4pNqdmSlWkVAg==
Merkle root
1047936f87a157b28c078afc7a20c2628bbc08f0196f675d74b106da179f0837
Merkle path
["55ded6d6fbca8f391a68183be0fc9646deaca85c412b44d55017a71138e4bfb2","f13e6cd4bc00c4dcaa58b34a0664f0547313960fe84b11e1374d9ef9e663fd04","ac2000800b6af059ac7b188ddb3e3baae34a5d8cb574f91900ed7a20cd53cf2d","af05d8581051537877784221e13da917269cc6db1af86d93ca21c925fba74dcf","d7cacc935c5d3fa61b53400b631e6072091b29078aa2f3c54b31b853cf77f074","c0ef7644494f4551eff785340832961629e22984ec4e069e04be46c4003df8b6","43864eec9a2257dbded0e95250a9e4768a26e6e8d2fa192e177bbcde63825697","1f6a9726667e2bde6707f71577e7f6f630fa468a037874c1ecae3933ac856503","655e28c74e95f0cb1aabdd5486a615a8bcb162b8101f70c0aeb3a9f4fa6b1fc9","aa9d87ded14ba1f2210eb13e537c5a9753762fb0db7e90873bebc8d8ed85bc80","9b8ac6fdd4f0f073831270c6ccd70c38deaca68e7d369d639196f8f01a111b99","bd374366b4d3f0b640fad57dafcfddd60e049c3936139ab99d79667f7625f0bf","f0c9f05f81092a04253915106712474a19d91611bbbc8087119ec734570aca0d"]
Anchored
2026-11-03
Public log entry
search.sigstore.dev, log index 3668087860 · entry 108e9186e8c5677a9a52…
Expected log hash
8136c8219f7f6eb1e1368a1be1e1dded601bc632f0bfe79c4ca1bc6cf8be67a1 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":"v1793705308993","kind":"published-quote","locale":"en","page":"brand:atupri","quote":"Doesn't give us a choice of language","rating":1,"review_date":"2025-11-04","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.atupri.myatupri","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 (1047936f87a1…), 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.