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.

“I was not even offered the simple option to update my email address”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
349625245aa49b6441540319fa1bb7425e05fdc120db1c00c6e2625d92b5cc7b
Signature (Ed25519, base64)
XMR8LqtIXXUBNG8p/aCROx8bXJ8WkAj0zLhCn4GzFcvjz1qlDv7DdJHss8Ae2H6VcBpLBZd7HAY79vdj9kt5BQ==
Merkle root
3ea09355a1b22a15fffcd33ac0d37e4039cee2896092e637dd8c4e7dfb5d507a
Merkle path
["3494a2fb4bd5c4d7ee1629579aa49c2fbb6740e9817e85cc0e36964b297d20b9","9c756b61ccf805434684e86b3a18eb6d1406da34e8d0f172c241b63c1bc379c5","548b9f930f5411f70dbf269e3f53a4df287180bd4753bdf6f03879b7785249d6","86d1c8fddb4b7fdb805d1959da9ea9a47b7eca3d46888508b4d272e5d7c692a9","0c27cdf69d640507012b6d824b43bd80ed2401d2cfcc63ebc3751f0f9bf683e4","5b519128adba5a87613378cbc5ab54f639da0ef5ba0d66d071766802376f7409","1fbe035ae2c0dd68a6adae47d935655198604da1b7e503985a28592b410f3140","f375340a0d5901a44d8d13b6aa71beaf43ff2be290e4b260579351a363daa6de","ef93108fa57e7d1936046b345c182c44ea5ec453678d523943ab8ff51506a12e","82068fc69d4939a73c746ed715af76cb59cb9ba477ea9df7839cb265f74065ea","ff5d4c1dac6e12be6855ca1b8924a8bae476096f5af7c614804b181a80aed4b9","db7231f5c7370130b5ac23acdd1afd53edf315a3f1f1ab1e0c162efd8101818d","d6068d4ec75b75f9574a0a861640ba111f52465cdd49a59f89c94af17934576b","c813a34665dab5ffae8513e10cc2fedc27edee77c70c636abfc3ac5275137875","331ffac0f34e1f76cacd782a04285f7bacef5f5dffbd1f8163703fce9b22280d"]
Anchored
2026-08-21
Public log entry
search.sigstore.dev, log index 2543978942 · entry 108e9186e8c5677ac836…
Expected log hash
69ff2d97383073bd392d75b79533a80cb25c69be55aee7dcb24b1acf4a379172 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":"v1787289230204","kind":"published-quote","locale":"en","page":"product:relai/bitcoin-savings-plan/en","quote":"I was not even offered the simple option to update my email address","rating":1,"review_date":"2025-10-21","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/68f750be1c2feb678820b0e7","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 (3ea09355a1b2…), 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.