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.

“providing free, easy-to-use software that lets me edit and sign pdfs”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0c93b42abce7de08f3e9fdad2a13e7d9e8ddbf0ac9b192d3a330332ace8ec377
Signature (Ed25519, base64)
ScA8zHZ58w1HoVBGUNFwZHGHb21KhGjmBUThNg992WS5cqKjxp3Ff0BvebpKsHNkHk+Nx6rDM9gKK+BswS7UDA==
Merkle root
8d929b933d3da853a342174568dafd4f2990c556a59a904f6c4eac8eca263c18
Merkle path
["0c9072bcffd42531376553976ddb40f2303c0acda56204874192a9c754abe87c","ff2b11ecb98823443975dc0cb434ae1db95a5cb3c829a1ebd54287b64e53c745","1138b5c13bd058e340f3eac048b613f66cf783b0f7b558b9cbc76fee146d33f4","f658010a94080841909b950a712132986ff4bff5cc1a0375f09c5118ded0d4f3","e443fb2cd696c9ccc4b79856c6684d00c58262179e434e8af198fe768307797e","bb255a848b1ef79da74233f412e5b016c5a424e03b448f656fb30374a1b0e300","1be1ef038922022d061b2b79b135ae200a13d1f30dd88f79cf442166378305a0","b340a82b2a0a6a404f097e83f5971b85d8347eeb0742f8ac4ff47b209eacf8bc","f6da43719d565fc5919a797324d1d8dfef4db561f8f4201cfb40e4edbb080f97","a214b6aed1be4876c2e4ee38ad9b654be32ebc1615c01f6662ba447c4d67d66c","ae7abb3375ae4dd1e271bb3f6197dac5f377045f7fd4e0809ba0e99e567fe40c","4273814e139b537ff52878f215555e1437b0cf0a363d27847ea79db5ccf13f6f","db36e5683a162968d642d2b33f1127be2dcf059690ad38add1e5db8d7a7a41ac","9576369f408a7fb58ca2e97774369b4e7458346c8937c3d02549b43f61f201e1","67cc9c31bb9e37342ca834f1c2afacca9d4e9ea3aa24cfabf98f677678d81a55"]
Anchored
2026-08-24
Public log entry
search.sigstore.dev, log index 2579616312 · entry 108e9186e8c5677a98b8…
Expected log hash
169fea3926d76eeb6fbcc1ed6cb8bcc55e598869705eefd29172a719878e4a1c 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":"v1787542624469","kind":"published-quote","locale":"en","page":"product:smallpdf/edit-pdf/en","quote":"providing free, easy-to-use software that lets me edit and sign pdfs","rating":5,"review_date":"2026-07-02","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a45a0819b36315faead5724","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 (8d929b933d3d…), 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.