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 tried several times and can’t get a code.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
723efe5c2dfc915359157f400d262d735a51f12805ef5c91846e50acb8b1e489
Signature (Ed25519, base64)
l5wLjbNmKdFaspGpNHFatTQqMz7ViS368ujIV3laub3ci7gH2Y8T4d5o6fTFZ3355RFod6lMzE7e9Npc6fXcBA==
Merkle root
2f068f3de56bebe7a575ba4a979c9244445d2350140e36238e088fa40fbfdd88
Merkle path
["724001f823907686e99dde4019c17ebe37b525bb9f9d491ada5c67f7ba0c33a9","3f6937cde50f7e35a5c5ba0e5918302a2a67c0b59a79d42066d35ad894b50c45","d7a77e42dd945ebf0b0c7f1428a887e692087a863379cbe93418e0d74a3a020e","15b0835015974e7a1863141d655705f90c60c03da86e88ef39515a7acd6430b3","17af73a78cb91eb083b644d93fbc9619ad649b783f2dfaf5dedc97e612cf2ca1","29624dffcdd9a558cf84cc98430bba2c22155ddf123bbc332e32271605df3c52","d747bd453670e5b1afc6e840f29d315008d45e251235d7480ef4afc74a43ee16","077978e54ac50d0ed2f5ba42df45ff09b49938c1bab5f3113649054f5b98e843","0852ef0e460c061b0d8340d760c872187bd7810afbda14799b331ae4ac0cc104","8536532eb2a22e91919d4abd7c09524a5d8e3523a70bd368a2ce4101adfb645e","06b6f6d584977ae367194680dfa67ace6b01d63ed0e55b7d9e3bb1ac505c121e","3c6ddbcfa48be5df39d5d13fece3ba9fab7f6eec0e8fcf21a13cdbcc6729a93c","c5d2216bf0003f30213891a39e09a3edafbc50505093b2ae98f61a9c067b5a3c","f2c4543851e26fd9d1e3721e592d66b00f142e537786e975d115c14b9cb61c0e","98191c82333f4385e47f318835e01d44ca8835262c6d0df40edfd5f6a4dc5c19"]
Anchored
2026-09-20
Public log entry
search.sigstore.dev, log index 2893887498 · entry 108e9186e8c5677af79f…
Expected log hash
90099e0300c6e23b62e79318296ebab91bff130379d248ada57f044f77e72ccd 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":"v1789796056710","kind":"published-quote","locale":"en","page":"theme:bitwarden/communication/en","quote":"I tried several times and can’t get a code.","rating":5,"review_date":"2026-08-13","source":"Apple App Store","source_url":"https://apps.apple.com/us/app/id1137397744?see-all=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 (2f068f3de56b…), 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.