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.

“You select a flashcard type, but it still gives you questions in whatever format it wants.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
ec1e0f50bc30af4d47fbbb753a0082bf19b9528be258f81e6519a8741d92bc90
Signature (Ed25519, base64)
UmVIzlfXn/haiyNFVvfyJQjpI+Lm/s4JpHpPjXFOhTXCgoO7c2y3suGV6KeyxMLO77bxeWkSeWqHk/uu25sSAg==
Merkle root
e299bf38720a5a91bdf63bbc0205245bccdf3432ab1652c69342549658b7a9ef
Merkle path
["ec170121c7f0e6b9b7e9c7e5fe8b84e1a28ceefdebe71e2b153a0fad7abdcae6","a184151b133a3294d0c41043e4db6593924224625414f56da8019cdb60aab15d","90a4937f9ea9ff2528128729ae443f53f0ab00e834bf1fa496ab1f6d6127676e","65d7017db43e302f09ffcb182d3a43d2e2baa6f34d6fe000a879bf3b0095dfd2","ebcd8c4397ec66d0e39a7866190a5659f1fd7806399891c01a2b70b3011c68a6","c96bfcadda8f8c0af39bd5ea3a1c792233ff2b0f28803165087c783a5730af37","1b3514b6ac3c7ff330702b63e5552b9cbc1fdc4874b836de5a40edc89f3a5247","f6e67d1ffa6a580f0e21a94346d3003c3cf8472592d7bc10c15802f9a66df5d5","e0a247eec56ce92d98432511ea3f890319f22c2c081050488ac848588c972c0b","2f99031d1c290dff8d9f6c1f2e8f06da519449eb2614405d9c5ee1b450886c17","b331093f92df4d03f0bcccdb4c283a2d98779d6c363a06d0cd9c35338c6b7f1d","b382aebc31acbad71afb3ae06e4e6f9b354e9da57050f36d03bb1ef97dab503a","f95e3a68f572f5650a4093453e2bf28168547fa91a01ce08e539b3d7016a3f80","53a8a23597d45564e495678bf6125e41ef42f347693c924494330dab53ea1e2d","2a462314156907e42d6f0d96eed96123f1d79516aef73ed189d9f5466556b638"]
Anchored
2026-09-21
Public log entry
search.sigstore.dev, log index 2904877428 · entry 108e9186e8c5677ab408…
Expected log hash
d020708737f55ccdf49203f373fcbcefe8158cc388605556fbfda3c365de7360 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":"v1789881486272","kind":"published-quote","locale":"en","page":"theme:vaia/quality/en","quote":"You select a flashcard type, but it still gives you questions in whatever format it wants.","rating":1,"review_date":"2026-09-12","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.studysmarter","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 (e299bf38720a…), 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.