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.

“Beste Lern-App”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
ddddc63776243d8168593815ffd6f0ac9aaf0d6f715e30b04ce0b65385d658c0
Signature (Ed25519, base64)
4JVpwvy3RtiyOS/dhs5/JmtFROKbYpXTia3uQZzVPuTOhNrZHjcx50WoG05oxSoGxB8IO67QYuftdzDGZCQYDg==
Merkle root
e299bf38720a5a91bdf63bbc0205245bccdf3432ab1652c69342549658b7a9ef
Merkle path
["dddc8068270492ff65246806022ffb8b3ec97349969bf8cef29517dc833ddea2","ba67a5fa96c4d06b1adafb5b54963ec6258f19af3c7520819c19c97ddbe40741","ccb842bb54b2b81b02564568bf13928abf6149a0a33b26270472390d1fa47774","453fc03656278560f1815a2866d68e45c37a95b168e1532e427daa43e3176f14","bfb90ef9c7729d5781c458e57559d523abcf7d7ff03b0ffc2ba2e643f1682743","551f1005c15603d5d99758ed440efb016a59394b8f7ec62c54897012d2aaecd4","2e8f699518a97d65dbb61af663cedff10846523d77d07e7fba878c7016ec72b6","1f0deeba46a626c18ad1ef70707b998c81cc6fbeaf09e30821003c7a8ee18a86","8b8a91fcf39a99dd64a6fd8a058d9fcf6c26fee0668fcc424b09a74990aa0037","ed88d4e3a89ecaa852e7b20a1ee7f3a296bd3e57081ecddc2cd840a518ab70a2","85c3fbe89997c93f50bc23fa818bbf4bd3e224f003552f75980ca4b7480f0346","d28ed21d4373cfe7811429a5d4926ac987665261fca2846c93ddc2c90e391266","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":"de","page":"theme:vaia/quality/de","quote":"Beste Lern-App","rating":5,"review_date":"2026-09-14","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.