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.

“free or cheaper alternatives, that will provide the same basic features”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
15d895326fcd269a46d8b9c9c6367539ec471064026ab764a58d09a69242b3bb
Signature (Ed25519, base64)
JVZRPLkBrStgR9/VMotzuNlQXfm578+0hB3PpwvQMOijsfEhwWrvr78oYriDxl/85F6YOMbYI/8A3alDnooHBA==
Merkle root
776280ee3d7c9fb97c17efec70636489b157ec8896f1d74156e65fd2784f427d
Merkle path
["15e9278c0ea6cc2cdedb6d9f5073e5f3ed7d1e36e0a3eb9c8252c542836f7db8","70f9a955a86592c8cc06363f0a165a1333e4e2868f0dd8289dfacc3377be6b54","7944d07a588ea460ac24a20118c7ac656045449cff0a46e25e91b78b79761678","baaea1c5a259c20975f2117d78fa5c9f21661d96eba40fc5fca0e8c111f50a7f","9667cf4c17dc6938969e6cd69a76cc5ab997ff914c850f2f666f3bc33101ba31","98ffb110361615f27a243d5412bb49cd5e1a3b9648e8c424c237879f3771fdf0","16ad46af92924d4860f95133bf4e856ec9ad8441b5fb8aa9179a4f6a190dc444","ea6cb9259411d327f9e188edb51404e9395232c66e94f32d43271aad7bb748f3","f28c20dd2af42c24b30e9f5ff9c32ee0151a169db6938cab95eef75d5a351999","c96f718824b7cf7e5e703fb61a2042bd6c1a238975bcd9c37ae9f3fd71074353","a759fcd81a9213685f5ed216277902356c866aa6708b73a26849fa9ef7e5a7f7","023a5af266f4ee0a70f591463d31f28dcaf6b3174be7c9f4383721d4931e5f64","d52ff57f3784c85afec760a4269c3d85d62725d932c884d3ad6b0915e7e87160","ed7d474ba5c549457ed31ec3935ff263facb949960d2ea6afb4e636fe877616f","e23829f40d0756976d56a16d11d0fb78fd0d4616f1a21fc6a093fb08e70e5613"]
Anchored
2026-08-24
Public log entry
search.sigstore.dev, log index 2579623934 · entry 108e9186e8c5677ac501…
Expected log hash
8e297dda0356012bc344d5c642295d48723652381c3471953a3655745b453c4c 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":"v1787543470065","kind":"published-quote","locale":"en","page":"product:acrobat/sign-pdf/en","quote":"free or cheaper alternatives, that will provide the same basic features","rating":4,"review_date":"2026-08-04","source":"Capterra","source_url":"https://www.capterra.com/p/251329/Adobe-Acrobat-DC/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 (776280ee3d7c…), 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.