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.

“simple enough for somebody who’s never done it”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
3110107970f941f0bda918b768e678be9098cd2e351f054a4370ba152dec9ff7
Signature (Ed25519, base64)
KjC3nF5wB3ouTkA/0W2M44sr2sj5F7eS1bA7UvWpPvGicClr1BKOx4B4cs8Qo6DluqVdbkXfPjk215WTSbXmAQ==
Merkle root
404e3c13e38cb64105d39456b35227bf21885d8da4853edbdc28c1291169b69f
Merkle path
["3114f38229cca657b0d0ccd508a3d86c2a6a79345a270630aaef1c3125631b93","1f9e5db8707fd514947e48317ade73b25b9b809b7aa91434e931300bcd3547b0","3ac273329ec846d459cbb10545e00f6d4b17b80ae251f1880d65c82b8e05c8a2","a30181694ba84be55d8718a6fec4f22949862d6f5b4348ecedda29e39b02f7df","99a75bc6fa13c25e016ae937567111fc6a8332d204ae48cb2bcbb8fd527d6dad","ad802974f7b88ef04d9eb021201d681951fd4ae15f33cf81217ba9941ede6d55","ad6ffaee48ad32823bcd62bdf7d8f3e17fadf9208197d32a4e4c51e415eed31b","48769e56ff3c48a1e082108bb42901f9d9706952c9551a4f5c3a28a140ae42a3","c6a904fc34767b060cacb7d19c13366da6af84e6b34f577d60c598da278492fe","48496746a174cd0a0b5138a9dbc246072daeb84e4bec914ed55b4f3d55588aa3","fd776e5207e83337a1f333887b69966a83cc797ccf72f994b783cf9b3261be0e","58d953ea98a51c80c3002432ab81c9184d85d8ce2655c7de9feef7d888030a63","026912c64d27d32fd465b1a30cd870b0e8b66130bbbb03a64a97730d7722275c","bde050f080e8537023a46ea459bb1518e1d885f47b2ddaedca03653a64f35bdd","63269a191012537d921c10ea30214f6deffddee0c8302c1d6e8c9845e6049806"]
Anchored
2026-09-02
Public log entry
search.sigstore.dev, log index 2684163355 · entry 108e9186e8c5677a55e5…
Expected log hash
4066e61b2031c5768194188ceb0300adcf0b5443c63f9d6a4476a0f6ecc5beac 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":"v1788335271191","kind":"published-quote","locale":"en","page":"brand:canva","quote":"simple enough for somebody who’s never done it","rating":5,"review_date":"2026-09-01","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a9733dedd97c0a5944c44d5","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 (404e3c13e38c…), 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.