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.

“The software is not user-friendly”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
f05a4ef172510d1cc08ab191b15e3af6be1e141bc12bfaf604d85cf4d3d738a4
Signature (Ed25519, base64)
0Vxe5BW53dqib/fum+HoVBefT6SwHWKGswbldSrda+6999/b4w5H69IKwOd/ttsTRMFY4uQTAux1tFWdeWQvBA==
Merkle root
97eb1062a862b99998bef0a84476eb3c3812bb77c2cb927f4fd2933b59da9e3d
Merkle path
["f05700e6141f849037dedcea10827f33663a2df3d0c8f340761422a96b200c19","e11df7e497daf235eeab59c71d9dc17854eeb3cf3e4529650f33ffcd26032253","df491753fc4a08b26248212f34a92e4e5b36ceb4d551b63365bfcee8d64851cd","f725564620f8bec25004facb2913aebd2e1c47069b97fcf1b2572c8182accba2","def1f713d2199ed70ff6810063cfb5a0ba8fdf3d33c2a53633ffb5d126b70042","2b678354c992738e0d33b57fe5cace3e4cc014f232b59ee84c929817b3958456","58274462166ff8a5b3137b8940dc9d19b6bcc9cd18b3015d9d602d75420aad8f","c6e0f85f60206230d0f8078f2b0a9b1081b6ee2a652356b6da6c708330ce5bec","88fba5556680c4c20c448533c04196c7eabd3b6f86c4cf9cbc5f0dd864d07b47","9fd27d854b64ec0539795bf571d9b2716143ec058c5722cc30c7450c3faf06d3","1a6229b9f2240e6f899513abefa7fce83e1183b1a1b2c74af015fcbae997826a","640b197bc6c52e1ae889c0e8b7a59a99fcc90984c8b3bd71fee23168c95ccff5","6a087565eaa0768d4c576fd78f88585a902d61259a245be7f47bc24b1ead4c18","fb01c9b29e184d558c43a512ba05af475ec20eceeace4dde365559da92299892","46bcfbc656e0e2a380a8a94cdc0be3d8b4c668e5f9e54a10ba396a45b371339b"]
Anchored
2026-09-11
Public log entry
search.sigstore.dev, log index 2789279696 · entry 108e9186e8c5677a3885…
Expected log hash
05c7009ecf7ce5cf315c252c2a1dd135e64989a02cacdaaa3c5a87412a2e921c 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":"v1789017464005","kind":"published-quote","locale":"en","page":"product:wave/mobile-app/en","quote":"The software is not user-friendly","rating":1,"review_date":"2026-05-21","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a0f47a71e7263210a6d51fe","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 (97eb1062a862…), 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.