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.

“Its simple, and it works.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0b56060edf432098579fb13c1c1926c6ef2992b5ec62ab72bab6153d0fb60855
Signature (Ed25519, base64)
ikn6ZMvNMAnOFee80n/6Ei6gvjRpD9AU65qnQizQBwuJNP8yPtgne++T/mfuIFKo4ZcVp/i8BefGp8/hS3PTDA==
Merkle root
11760913b24394c3efea903b5693403de67f30c73517589265e62147ce6d7db9
Merkle path
["0b57d57f9670e03bd47286701db56d137b1dbfdc0ac7db1517a40a8aa57142f2","c0f6925197de5870c4029abed9797e4b7889ac94568fba58f6f07d231902e0a0","e18172d56912869b4ce50c06ac3f2ec86a1ec2b994dcfaad4a64e78ee9d1986b","387bccaf6c6cd28156a028fdf0c3d7c42c1c79c4a07626bfb8d0e26dd3572c69","1881361274a71606be4f1802e950ef4af24d1c868711a62c3541e0710df5393d","aa386eb35712bbca9bafea1e59fad962c972cddecf05f381d157e0314942d570","e8b95cb966f9667c241bfdf257fb0e51acdbe26b0c99e1a5abc0584f425ba623","d67ec49158583f9b544a0af3dbe8eef657f8ab90b717d51613c3f80447658076","b1ac28a40eca9f09064ae31f47a9097b95ac73532873a527eb3378ec97e81e2f","66ad941ea175664c11626a9423c4fc095091e6b8002d520af37f066eaf89ff76","ee3e6d1de476a7ce3dfc53a367d3d995ff810d2b3b5cba0fafbddd836558e142","4e02c6a47369138d0eacb837d8bed87707d8edf6573bf9a07b0288ec7a1a3832","bd8f0b0faf9d3ad7c16d60f7a01c003de274172458ab1f670d78e9cc1dffd585","4d94d9a9168f14be08d81b3238e6d7999acaf99b1233bada5f6c2802401f1b45","8cba8822ab29049afd67fa646ac9379523fc6be8932688ce4f3067f563511db4"]
Anchored
2026-08-27
Public log entry
search.sigstore.dev, log index 2612584084 · entry 108e9186e8c5677ac6bf…
Expected log hash
0a57a1a3ef828bcabfde2971260e46ab649b0f8c2c96e231d49bb83e51a8ab3d 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":"v1787801559681","kind":"published-quote","locale":"en","page":"product:proton/proton-authenticator/en","quote":"Its simple, and it works.","rating":5,"review_date":"2026-08-10","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=proton.android.authenticator","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 (11760913b243…), 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.