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.

“PDF creation, layout with printable version, image creation/editing”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
1079c889f012917e2e136003f91d9fca250aca34de925dbbd7d90c244c9d0477
Signature (Ed25519, base64)
qIfN2JxI3lc9lYVf9Yr2Emw7XuGXmZRHrFzL0c1d5ZRkj5tvKD5GSbRqvjBugZgovLnhUls1SOhxja3Aja9pCQ==
Merkle root
c69b412346f0db8d88aed17dbaf2e4876a3743c1c4d16fb306ba56b5c0573123
Merkle path
["107b4bb700bb3a74557cb8bd491e911a35ec58e753d411b90be07a0e7ac50095","981e1c8044683b0504793e07ff20133e7069be4acf075199f4bc6ae525a3bcb7","39e575064b739d142301f7e79a73b7193faf98ba0cf2c1d64e7239673e02061c","754e1475fe349866d830c6026157e80e1a0061d0af9b5f4d5c2cf09e00d19c4e","ec58b10f797775ba5aeaa7e67c6fba936d9ddcc878a3d27f389003ddc8280ad0","4d52c4258a0b3baa6e6fef4e5fee5666b72a96ddf7b770a3fa68ff295f9d3ec6","9365c9b290b9bb1093e2012692a3314176dbdd30fdde74041d474a4993ce9c92","18818e7c4659f08fec5d3aba92b18f4f1fc7f013a74dbd88c26fa89c9e1c2e04","eb1d055c78c078fd6af4b33a9f21a05a8dde452278f5ef771244fe17b75610df","1e2e4c59de6d2e5fb3b87a002ada59e93901191bbe969df6bf860136e9b19a6a","3ecdb6488bc871dee592d07d294f888284dd90943caa250d8408a88510e19f35","d2ff7fe4617f0faeab86be5a07d9e5994cb2c5055379e39ba5f38bc3f21c4e08","09997fd9b1ef8c57766815e6c9849e05f2447cb27e8d805273108da18c60273d","62927e8f71080777dd1935c21221e60b742dc0377a31e2f20a0a64cf6c3282e8","3da38b679e2392986aef224a332d14750fb3a22c4e75287765e8f68f575f24f3"]
Anchored
2026-08-20
Public log entry
search.sigstore.dev, log index 2525010456 · entry 108e9186e8c5677a4287…
Expected log hash
659be4fcc7663b2dc65a53351e16497fea44ed9ec8aef1f3c48c8e452b350dc6 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":"v1787194832011","kind":"published-quote","locale":"en","page":"product:infomaniak/ksuite-pro/en","quote":"PDF creation, layout with printable version, image creation/editing","rating":4,"review_date":"2025-12-12","source":"Apple App Store","source_url":"https://apps.apple.com/ch/app/id6754152858?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 (c69b412346f0…), 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.