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.

“I love this app!”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
8da888b10472bd91b2d4e30164c136a8cf5e4f4ba90ef8a46b010e977bf03129
Signature (Ed25519, base64)
PY07VTEAIOakeMJQzrWQkXyEUmQsAo4Mn0RKyciE+z6+ETbg3vEh8Oy7LBCRbgfWBqC8wZkcYv9BxQKFj9ZPDw==
Merkle root
e299bf38720a5a91bdf63bbc0205245bccdf3432ab1652c69342549658b7a9ef
Merkle path
["8da90c0e7c40c77ea59c13505c3c52e494506bdb7b4ed3a1e109202b89fdf665","893b0c31e9c756c0597f0010341a40754ae8c1b68dac3d5e65cebdef0820abb5","fd5c7dad09d5a63cfd1ba8913e6d38b787515e2cb69a25d534999389f22f3d83","576b2f3544580b358965272e090f112d4add96068bcf4bb6f290b2c40857434b","0f9a1af8ac02dfa6c5ee89247f0d9bb8a0f0131ec2a5ccff97ef529f89a3a7dc","2323240a26ed90af060f934e2dfc7ac3c503809d3abdeb6a89ad473f749f8de1","acd6c66d2da7b966f825f29b2b300ede2882469db25196df7f718cc101722dd6","ac60f5ba859f03bd2b3f4d95eb2bb664dfd769eef17e328d3e21ec0c88264e76","d262668f65940c63b4789339c622d051fa028b9c0c4d84eaa16ffa96f0cbe5fa","39e0541676b1b5f08764015169838aa7ed6eaea7e123a116d8ba1e7e5b3b2e4d","3ffdc1ad653f39c0429787d5c91bba35366ff0cac1e131f271cc3308cb191be9","9c56efa7498f22733bd81d9e1a9aa96f7fa30f782f3e2c5dc658ff683f136fda","3fdd31064998e61048d534909957bf68a4f9bbe35571f6d185756d8acc2a5420","aa4bbeb87247c2797626ab02a549451da6dfce4dcb854a36fdcc601e3e788772","bce5d442c07de6307e5ea8947098e74ce88c2246eda5e5fc1015a6d7519228a8"]
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/fit/en","quote":"I love this app!","rating":5,"review_date":"2026-08-18","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.