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.

“The AI is sometimes unavailable and runs on a very cheap model.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
71bbe4b0f507820a81a310a5c6b9caf11e4969a39bdf0726bb205393f35de65a
Signature (Ed25519, base64)
MAJOxAGi0xS2Hdp0B5p8jhhv4XJZobIdLe8eG/+ldn1MiPgxlowPs45y0c0d1LI4KR9B171xlVvQs/J87QNUBA==
Merkle root
e299bf38720a5a91bdf63bbc0205245bccdf3432ab1652c69342549658b7a9ef
Merkle path
["71bb2028ce4cc2904a36f81b5a55df315303015a0d1715a1c7fb3ae20d71093f","d680824a9c4465856414fc58893a4d2a62ed2c86daa6d25152d6e2a3d825ca2f","a605b98c92c5a9f6efb022bde9a9710200d14718071f18add17d98417e1dc0be","ba18642c37bbe73d370be9db4505bf24cc185f20d82bb714bb571c557a9f0348","7d518be4bcce187c9c5b94b2404bdca44d5e2f98a10673d2f1b25ef5fc5cafb5","8fab8f24b2f4e9c48a84a0dd340890e8fb01be29dffe9b2c0ad02414906afda6","2fab826b3b11522c66e367bd7ae5cac0bff92f587e7762d052d3c77ac06e7e97","b0da2dd35b548652ff5c1459a9831ece6b3a081e4e172a506b7395acef245d26","d443595ac2173faad7c72ffaf3aad277122690398b7f26a0c5bcd241677663c8","e88cb832e83a8cfa3d07466c1d4656d34330b4e1b7aa4e81562620ff81ea6272","34889706621385a3b77481342901af55e0c9b40a18b5342ae3351d8fab5cea85","f1529d9d8d0b27350c2152458e297d9406b31a0ee9c50579b35f35e84480df87","3fdd31064998e61048d534909957bf68a4f9bbe35571f6d185756d8acc2a5420","aa4bbeb87247c2797626ab02a549451da6dfce4dcb854a36fdcc601e3e788772","bce5d442c07de6307e5ea8947098e74ce88c2246eda5e5fc1015a6d7519228a8"]
Anchored
2026-09-21
Public log entry
search.sigstore.dev, log index 2904877428 · entry 108e9186e8c5677ab408…
Expected log hash
d020708737f55ccdf49203f373fcbcefe8158cc388605556fbfda3c365de7360 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":"v1789881486272","kind":"published-quote","locale":"en","page":"theme:vaia/quality/en","quote":"The AI is sometimes unavailable and runs on a very cheap model.","rating":3,"review_date":"2026-09-15","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.studysmarter","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 (e299bf38720a…), 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.