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.

“Codes konnten nur in der eigenen App wiederhergestellt werden”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
09d2394328a4d87b75357e1c5e66f62eb4871d57cc0c31a28c75838255e5c340
Signature (Ed25519, base64)
9KP06nmvMqT4DM5YIv7F+Zw0gf6iMzXKp/Pw/8AWjvuABPJfGmzK4NcknPrb1ylGk0AyB7tzLxLB9RDPskJ7Dw==
Merkle root
e4013647f339499bd419bb9f69745e1d5e6273d32dd17f94b6c35c2fc080d1e8
Merkle path
["09d384ef7ddfa82f68e78f2fd24b550b6214f0b23bab732d94c43cff50404687","b1407bfec0bd2fbee5f5a33df75b9704872841684c2de38d02f0c345a19a3d1a","efa9475913734fbfab79f7c22bd40644cbb6f79bacc5168d40b0d9dbae98b279","bea44343acc1260cca16441588435645c378516a8e3113407fcb5508ea334000","7cd1211d5a06f831c4b502e6183aff2cfe2c76781fbb2c8c0319e31a4517d555","4d54fa26a72aec9e618cf5605e4b6a915897a01e2b3efe4cf1dfe66b45e1dc5e","ccd356172659ed7b6956919eedbb90a9c134e020df8ed794742bfea7c59aa966","f95b60ae7d0ab5ca3175462e797d6683b6ce5365503831cce6a00e9803e45374","e78a23ed7a9f297d078123facc0486f1d843c7ff204f3d19b74fcfb4eca29696","24324a3ccfbe762f28d8875fd58229e60c6bad03c999024264c96449dd9bd280","9797ac4081b0914d8b66ad52e291ad8897c1f708022347193e3c8024db076258","84157a9cf885c89da85a3c686dcc74e8c468265987b0fbc6d0c7bdc1cc8053fd","df8342363186f2e3b45c88fa26a77bbc6852f833f9b39f10d9c7965a0af52872","3b1a28d2ad07744c06a00c9b4786a6cdb14dfb04fc76bcc1cbaf73cffed41efd","d68efe45fdecc3c76847a618a62019c7deb410aca5cffe58288bdc27d0bcb771"]
Anchored
2026-08-30
Public log entry
search.sigstore.dev, log index 2647547434 · entry 108e9186e8c5677ae1bc…
Expected log hash
fd8e30fab5cac12236b44671823a2259ebb0774adc4d1a33fd6a7c90ea280d43 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":"v1788063921301","kind":"published-quote","locale":"de","page":"product:proton/proton-authenticator/de","quote":"Codes konnten nur in der eigenen App wiederhergestellt werden","rating":5,"review_date":"2026-08-10","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=proton.android.authenticator","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 (e4013647f339…), 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.