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.

“Adobe kept over charging me”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
293c49da02ced02ac82c8598d52f4bf5066819e8ba02ce0e0955c0d0a8d3dfd8
Signature (Ed25519, base64)
lhjVHRStzFKZyWUASJDi/sxD256M7HzW10xa0Ss1tJp1Ay/emN7srYKkRDVGn9+f3JtLzIOh1t8iYEvBFp1+Bw==
Merkle root
400ee8bc8bb6e48ec8bd5ac7598e893e5cb7545daceec4f0578b6b1d061e7911
Merkle path
["293c67fc6053b75d1189d98ded728acc69c7f69945a7fc137fc73afc2780c764","75af92036def7e5d92f998df544788bf8cc704c2a034d6b97e32fea96a0b07df","e423effee66c352110d6ac3648f3ac35f72c22d2f2bb3001f9bf2c7a59408a71","83f409ed90f9fe2be31df46e4bbdcab4c828da9c65db9da0d61ad46e3e67188f","cc21a49cde6f3a79cdbd89459fea6da51d7fff3854ba735d95f6fd3fbb5954a7","087db176ceb11f48565fa4ea50d18b63889e49751cccae8a1337dc4add4cff2c","422096efee132c8e12335ecf71558c533faf5eefd9a095321e346aa0f06e1613","4483d44c8fa4057d77f14fcf9635efe024893d15094cba4e5dd640c7d2c79a58","80e8dda8098860d26ebbcbf4ebbb740bc4c2a0c79804a092acae758a0fd210a6","35b230016042e7e9553bda5d40a93e38b65bfcd4639432ff7cff2c33aab7d407","5cb977db172094d8f54abf14ba6636b207ed1f3b3643c0f7a289f356d22a1449","1c260934ad839e3752daa759b4a570c4960f3263905f31ad5aa7610622752628","81e5928bbd5026857bec085d8693993066d3f6d2381ee910a23396515bcbc310","3e875c75273cb6de71b32afeb0515bfc68d941b50d1d4d965b5eec9b8f79e681","da3c78d15c3e7e744f2949813be9d01fa753f12e538edb94a65a960b11043d47"]
Anchored
2026-10-05
Public log entry
search.sigstore.dev, log index 3082153890 · entry 108e9186e8c5677a31d2…
Expected log hash
cff4076b1696aa395d1840cc38c433580d1b7821d298d64e1adff5db6503370b 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":"v1791175845570","kind":"published-quote","locale":"en","page":"brand:pdfelement","quote":"Adobe kept over charging me","rating":5,"review_date":"2026-08-31","source":"Apple App Store","source_url":"https://apps.apple.com/gb/app/id1516765045?see-all=reviews","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 (400ee8bc8bb6…), 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.