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 is asking me to pay again”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
1db4d127a36ebc4daf1de7f4bf8d5d9391aedb7935441e5f3a978717f6e3f463
Signature (Ed25519, base64)
ZhQ2KCTDrxjRrtIoNHKvfpEEaSRL2qGbJ4nmbjR1ZWAmOqhmhkv01fJUZ/mftCUVqxAZt5vvxWJZrspbfrm7Cw==
Merkle root
1128c1e3e4534f30e1f8c2f8fc1f60db99ca4dd81f25405dfff62ff1f39e22a6
Merkle path
["1db541a0f96d68d1de08074d14f3256da3806c23e25f6e6e422aa633787fe395","af60e74b5361d16372325cc15652d680439f3653736fba1855108bca50082132","3602079bc95f7f393a0287839bf3930931585b707636b127d848a1ec88621161","d11f1b51f6405a32bb4d3bc2c73b703c0ee695d84113d9476de98f4b05783b2f","2a9a54bf2a27aef4c99d5142ee42a183bc3ba0185fbb12940e2006dae19048bc","1b29ae7b689455353b2dc1f52022b9391d021c837d427c69bd793fc2c279c3e2","82d9bf7051d846aca1a51458f11ae20638ef2f7cd03ad249438d0bc20ccff072","3cbf764727bc98e99ecec007e4a95f23e043e9ac84e636770767f51975d3b70a","36801a86408d94b6fdf37eea78781d1cdb97aec925fe0c9bc6c5d0adc5658724","2a8fa862966af974395d7fa5926c2ab2720a8c78f1b3e4663eaed13056e332b7","6d0d56bf35e92fc914622de507d820bade5cccd5e6abdf4ecbde1a2ae0fe9cbe","d2fcf30f71e978cfa8864728faa4ba390bcc591700ad83ceb71a9abba973d6c2","9428e24b047bb9d4ac05b5ab6de36e249e544865747a9fa357ea862bb3060151","c4a4d8b2a4d8c0bfbebb4916fd7e139c5aa71a08248affd318e33dfcfb90fbec","b39bfa02188a075f3ffabe31b61efbaa34ef7a32306f491e668efcd33d84ef4b"]
Anchored
2026-10-07
Public log entry
search.sigstore.dev, log index 3121353835 · entry 108e9186e8c5677a938c…
Expected log hash
3980f7151edd7b0249ea159b11c34712cba10d59cd8ffa603af676e538f81cfd 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":"v1791338675665","kind":"published-quote","locale":"en","page":"theme:accuweather/billing/en","quote":"the app is asking me to pay again","rating":1,"review_date":"2026-06-14","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.accuweather.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 (1128c1e3e453…), 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.