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.

“Suddenly I am no longer verified”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
2834708c01cfc77bb2597dc518e519a0079ea859100d6df901e2363bf2da9f0f
Signature (Ed25519, base64)
K7TzAHVPq46zD8jp1hjljvLpGiknQjHGduQoWIAC4CrbiKgJTtX26h0H/aKI8Br86tREYFz+XzB7t0/lBYdaAA==
Merkle root
80de158564b7616572ca0c0059561f6ec90cd5bce49a388e61df989f3f6f2a86
Merkle path
["2832c40464a21952852dd34f1bfb864e508c9f00cc37a107feac26cbc854cfc3","2536503faaa6c5eb23c6d82facfd428c6ea7cc90d3d6d58b1b914fe2e216d280","f0f99b980a541bcae804b03eb46e2675d5b7c933ccc729036eb542624c3b693b","cd05a7e48541604229b4b08073a458cc295efa9966311e16271a29092713e779","2e2d4a0fb87df0005af97131cfa46e5588299887d8a99e8784e4c496c96bdf49","6904bd3094cbae0549898bc8728ff44013378de5f8808c72912b3e0dbb05d3aa","a8cb0b7ae26f6b9a4693ad2bd5fee88c98bc9f09949170935985c8f497936766","e6fc26e099b0e8bca59f180b1cb2f82a47bc9450e16517007f3c2a85c09e6076","a5a2cd88357ea4c87a6869e7321501e3c0f1c49e695e5b74691dc8930142f2ca","e27c1c88394f5db559172d05d89b9e2803af001dd0277195c740f664304a6ae2","8fb5c1d3899b27e08c5ee594d63d581d84f5cc9e313c1296dfa67cf46bf0c830","faba3b23debb9fc075c521513f94f38a91d83c2fb94ef6409b18f730ae39c109","c0d3c29d57b890f7faa23830cb86c1df3b164402674908e09950b515624cad23","f23007ee336c6a9903bdec729de4dd7e96694a7e2f1071f195563e9aff8dd97f","68889fd35b89925b8d265e65260618471cd9c2f5458718fde3d6cb3829d8f00f"]
Anchored
2026-08-19
Public log entry
search.sigstore.dev, log index 2513802575 · entry 108e9186e8c5677a9216…
Expected log hash
5899b5d0ea18fa3c879147333708054c2e3cd77662f2b6f633aa3b5d5512bbe5 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":"v1787121142818","kind":"published-quote","locale":"en","page":"product:relai/bitcoin-savings-plan/en","quote":"Suddenly I am no longer verified","rating":1,"review_date":"2026-02-10","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.relai","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 (80de158564b7…), 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.