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.

“it just needs constant updates”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
31ccae03b4228b034f96f13e6b2a162d52b11a26c9145c0d4a09dcd84b9f61d0
Signature (Ed25519, base64)
sPYVAjLlkoQ4Xm5WP9EPuPK7HcxlWxBWtOhZbHVT0PnUKK8OrC3cr2pvymr2SQy2D2atW8ZfWTlMQHd5QP9vCA==
Merkle root
b9a08f9d6d76dd148110a496219c42cf3205c6f982800d84d5c85d77e9461e02
Merkle path
["31d21a68acdeb84768eb4578e5687da76796d9b1cad8b7aeed1962659a76dcdc","1ab4e080d151ff67d46d8f0b633bfaabed3860218b26ea5e6b27109de99e7bba","d65905ddbbe3a4e1eb254093950f45a532fda2794e28361baf0369e8106f3717","f7a3bc5c3da341dae63007462175a3fce40d80046240bc5fb9e8224d8cbad079","059034498c53863526c9b2b783d234b3edba094e9e0fbfa6e8edab8c93b4718c","dad78dbf4a2d879c73d53e9ac8a08100ad6127685845d14bb68fc1a5c380df7f","16a541f9dda3b3954e4525e96c439141ca817044cc2764b43ba78f3f706b3bb6","c345cfc557334983ac4c7d9e0c43673eb232c648401dc1e65ae55b494c4ca24c","49c9353f512b42935fb326119f4302d2f9b1c1a391474c3f3bbe9ba68cb9cc18","e75d6c1f3ac68af2a2cc622a4b29873b25a28537a8cddf2fa27acf51d6f176fc","e0f253c731d9a50fc143ce3dc5698955a6cd944ab369251d35139d245d1f6088","c7178b4eff2fba3e523e57ffd27d883eab0b92aca9ab4febca6b4f95755695c8","17354708d69221dcc11d442a2ae8d1a8fd9ce3422f52e63a29a599e2bc987d3a","7a4792c9dcf9466d19ba61ec3efd4f578e21f2d3035e8fa6a6264d3045083f7e","43a562d6822dab12c673c1efa0a3171d1ef69b949f676fb01847e1e5b56274de"]
Anchored
2026-09-22
Public log entry
search.sigstore.dev, log index 2907673729 · entry 108e9186e8c5677a06ea…
Expected log hash
bf9a74000249ba6e66b1e29aae9d8cb95c3400dc118569a80e5c0949f3e8ac62 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":"v1789969984102","kind":"published-quote","locale":"de","page":"brand:luminpdf","quote":"it just needs constant updates","rating":5,"review_date":"2026-08-01","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.luminpdfapp","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 (b9a08f9d6d76…), 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.