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.
“Bad application”
Checks (re-run on this request)
- ✓ Signature — Ed25519 signature over the record hash, verified against the public key at /.well-known/citatio-signing.json
- ✓ Merkle inclusion — Leaf recomputed through the sibling path to the anchored root
- ✓ Public transparency log — Sigstore Rekor log index 2670985056
Proof data
- Record hash (SHA-256)
0b42e589ca2cb43c60e6422cf7f2fe2d5d993196ee458fce8dc049c0c99770dd- Signature (Ed25519, base64)
kBHjQaM4IU4eS3+kGHNSsjnTJlPGk6+CfplD6mZGNzwHMxnHMO3mqxOiMAUV2bZmzWUug/eohIpQcyGsa1BMBA==- Merkle root
fe68a9ec2e6207dd1414683dd183944f75125b6c2562f0a23abbd81e00bcd90b- Merkle path
["0b4539bc48df37676df7bfb1a4c0a2647f87e5547cfca4a8a2359aa0f8aa7900","92c05512a12d6b8cd3e4c996754d50ca7cd5922ebc92fd60ed90c8c0948eecbf","679cabb0b172a17341196e6a0c594da5efbdaf543472ff05764887b2f66fb85d","869367562d84e2c737cc1550520d60a346d319c72912fbe9d8751c69cb82b2f8","442118f727dd38309a4f21e7250aa4b9a403299b6f06576943aa4f68f754ea24","f12ce39ca709e6cf77558f19383d4c3fb15463b26b2f2c32dd4cddc4d7de78a6","9cd6f493eb12b4ab945e59e0d03fc08831fc60050eac5faa37c3289237b91e0e","c9685a935c3aad328f98a8fb06ea4b7e49c87296ebc228ccf48dde83ae72d7de","05f34cdd8243b2447b46bf72df7c8955575de2116acb64afea7472bad4981761","d6c58d0ef4134a3c5760b1facc9536259a01d5faba453c6834b5605976341542","5a20171d451fbbd4ce43e59138474f32502a64859dfe714bfd1150b90ac64007","45dd706bac2cc0332dcbe46778f23659c357900b7b4e37efa0060c038e10718a","93f00b982f24a21c93ad94f3b06a01239412d63557bf3cc0fc81e8815ff01fc5","6964472ff8161cf1d11ff1df4f1d4b619de3c1f553b29120f683f51838cd8531","eeb1d944996c95773acfae0ab38890a16747a23a572977c9c76e24b2581f0338"]- Anchored
- 2026-09-01
- Public log entry
-
search.sigstore.dev, log index 2670985056 · entry
108e9186e8c5677a5868… - Expected log hash
-
a3256450b43380deb044f5248848190a4a97d9fd95427998eba3c6ad83d6bee1The log entry'sspec.data.hash.valuemust equal this value: the SHA-256 of the Merkle root string above. Recompute it yourself from the root to confirm. - Canonical record
{"dataset_version":"v1788232129626","kind":"published-quote","locale":"en","page":"product:smallpdf/smallpdf-mobile-app/en","quote":"Bad application","rating":1,"review_date":"2025-11-17","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.smallpdf.app.android","v":1}
Verify in the public log
- Open the Rekor entry (pre-filled with this proof's log index).
-
In the entry, compare
spec.data.hash.valuewith the "Expected log hash" above: it is the SHA-256 of the Merkle root string (fe68a9ec2e62…), which ties this proof's root to the log entry. -
Decode
spec.signature.publicKey.contentfrom base64: it must equal Citatio's published key at /.well-known/citatio-signing.json. -
The entry's
integratedTimeis the independent timestamp: the root, and with it this quote, existed no later than that moment. - 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.