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.

“OTP never gets delivered”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
303062a4525de661f9b675b9952263fea0022556165bcbcb5f38dd146ea5eeb9
Signature (Ed25519, base64)
Glx49kCQ+Ln3EB7UZohfyl5oqYkG5XpuQTZrhKPvhO9xjg5dXhySvXThJbC9oRuGRLKy3pDKGJTsdDjU27IUBA==
Merkle root
61c0358904092135da9dcafe8883af2adb0c61440bf491948394c6fe07255cf0
Merkle path
["303195a1bcfe2eb9a153bb43bd00c3e534a903dd457da6f6a18949f7bc51072b","da26c7de52313ac3d5256ea3000a9c13306a278b318e73f6af2485b9d356c0a3","6bf53de2190e08c433f8308e2482bc1d0ccce342a3bfe102bc6bc33f14300515","a7b573cf27af86b7dc5a3056e53492be455275056889bceefe3ffd853a056e62","8f42d51b4bf7b7447901fde97e0d0f6910b947e7996d2ea4a579ae4a6f5d5a45","c8e3b927cb4ea419895181a6e111d3463d52aa0fcd349c30144fea7726f1f6d6","8f9ce4b546d236c9d46cd60cd9a656e239de744d7a02e6acb269bf8397b28cb5","0bb8c2a106aa0fa2ee63ceb0c32f2decbe8c5fb7370de8d38857873a09a4df6c","47a428ad2ee239594cbf99207a6d7a284518c49750f9e9d5cfa84841367dbf36","cea2e0aa5d7a28732fffe2ad7c09f3e79d2aaf08373615143a9c7cb894fc77d4","a9f36dafc9303dcc840686d2785b2da9245a0862ca49dae166cf85628507c9bc","38ad7414f198f2cf9183fb161e628f3389d604f081107685a270086b8f1e5098","71cae424255aa4638e3d855f2e4d0d3ec8f410d9b00b335969ebfbb7884e48de","5f85197a8394f334f8f9e8be202ba3ec072c11f71435e83d07f11a0a073ecf02","6b5b9926e6b590cb1bd6278f63edc47584ee36101706f8e0b22f8404af273127"]
Anchored
2026-08-24
Public log entry
search.sigstore.dev, log index 2579329594 · entry 108e9186e8c5677a2f40…
Expected log hash
bb1ce4990105a11e35218e4ee0348633e0f4be8179db75acbed652ddd79f7a87 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":"v1787538369368","kind":"published-quote","locale":"en","page":"brand:amag","quote":"OTP never gets delivered","rating":1,"review_date":"2026-07-19","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.amag.amagallride","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 (61c035890409…), 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.