Terms of Service — Krest
Last updated: 2026-08-11
By downloading, installing or using the Krest app ("Krest", "the app") you agree to these Terms of Service ("Terms"). If you do not agree, do not use the app.
1. Who provides Krest
Operator: Hendrik Paul
Address: Am Rande 13, 34128 Kassel, Germany
Email: legal@krestapp.com
The Krest app, relays and operational infrastructure are proprietary software — all rights reserved by the operator. The protocol specification and the verification code path are intended for separate publication, so that anyone can independently verify a Krest proof without having to trust Krest — as of the date above, that publication has not yet happened. These Terms govern your use of the app and the optional convenience services (Anchoring Relay, Lookup Service, Share Relay) operated by the operator named above.
2. What Krest is
Krest is a cryptographic verification system for camera-captured media. It lets you:
- Verified (Capture) — sign a photo/video with your device's Secure Enclave at the moment of capture.
- Anchored — bind the hash of any file to the Bitcoin blockchain in time, without the file ever leaving your device.
- Fortress — multi-signature groups across hardware secure elements.
Krest is account-less: there is no sign-up, no user profile, no tracking. Your private keys never leave your device's Secure Enclave.
3. What "verified" means — and what it does not
This section is essential to using Krest correctly.
- A "verified" result is a cryptographic proof that a specific sequence of bytes was signed by a genuine Apple Secure Enclave and anchored to Bitcoin at a given time, and that the bytes have not changed since. It is binary: content is either verified or not. There are no confidence scores.
- A "verified" result is not a statement about the truth, meaning, legality or context of what the media depicts. It proves integrity and origin, not the honesty of the person who pointed the camera.
- "Unverified" does not mean "fake." It only means a proof could not be established — e.g. the media was edited, re-encoded, or never carried a Krest proof. Absence of verification is never an accusation of forgery.
- Any modification (crop, filter, colour/recompression beyond the capture encoding) permanently invalidates a Verified proof by design. This is intended behaviour, not a defect.
You agree not to present Krest results in a way that overstates what they prove.
4. Acceptable use
You agree not to use Krest to:
- capture, anchor, share or verify content that is illegal where you are, that infringes others' rights, or that depicts others without a lawful basis;
- attempt to forge, tamper with, or misrepresent a verification result;
- attack, overload, reverse-engineer for circumvention, or disrupt the relays or other users' use of the service;
- use the service in violation of applicable export, sanctions or privacy law.
You are solely responsible for the content you capture and for how you use the proofs Krest produces. You retain all rights to your content — the operator claims no ownership of your media.
5. The convenience services are not the trust anchor
Verification in Krest is trustless: it can be performed independently against the Bitcoin blockchain and your device's signature, without any Krest server. The Anchoring Relay, Lookup Service and Share Relay are convenience services only. The operator does not warrant their continuous availability, and may modify, suspend or discontinue them. This does not affect the verifiability of proofs already anchored to Bitcoin.
Krest depends on third parties outside the operator's control — in particular the Bitcoin network (anchoring timing depends on network conditions and is not guaranteed within any specific window) and Apple (App Attest, StoreKit, iOS). The operator is not responsible for outages or changes in those systems.
6. Paid features (when enabled)
Krest is free to download and verification is always free. The operator may offer optional paid features via Apple's In-App Purchase:
- Subscriptions (auto-renewable) granting a per-billing-period allowance of "mints" — the credit that pays for anchoring a capture — plus additional features.
- Mint packs (one-time, consumable, non-expiring credits), which may be purchased with or without an active subscription.
A capture is anchored in one of five fee-cap classes (Standard, Express, Priority, Premium, Ultra). Each class buys a fixed ceiling on the Bitcoin network fee rate the anchor is allowed to pay — not a speed and not a block target. The class determines how many mints the anchoring costs and is chosen at capture time, not at purchase time.
- Billing, renewal and cancellation are handled by Apple under your Apple ID and Apple's terms. Subscriptions renew automatically until cancelled at least 24 hours before the period ends; manage or cancel them in your Apple ID settings.
- The subscription mint allowance applies per billing period and resets at the start of the next one; unused mints from the subscription allowance do not carry over. Purchased pack credits do not expire and remain usable, subject to Section 4.
- A class buys a fee cap, not a speed. Bitcoin confirmation times depend on the fee market and cannot be promised (see also Section 5).
- Every class is bound to its fee cap — a capture waits, it is never downgraded or suspended. If the live Bitcoin network fee exceeds the cap of the class you selected, the anchor is not sent at a lower class and is not rejected: it stays queued, in that class's own already-paid queue, until the market falls back within the cap, and is then anchored at the class you actually paid for. No mints are lost and nothing extra is ever charged. In practice this means anchoring may take longer than usual if network fees stay elevated for an extended period — the cap protects what you pay, not when the anchor confirms.
- Access to Express, Priority, Premium and Ultra depends on the subscription tier. A purchased pack raises only the balance, never the tier.
- Refunds are handled by Apple according to Apple's policies; the operator cannot issue App Store refunds directly.
- Prices and allowances may change prospectively; changes never affect a billing period already paid for.
Legal review needed (do not ship Section 6 as-is): in the App Store model Apple is normally the merchant/contracting party for in-app purchases, which shifts the consumer right of withdrawal (Widerrufsrecht, § 356 BGB / EU Consumer Rights Directive) and the immediate-performance waiver for digital content onto Apple's flow. Confirm with a lawyer whether you must provide your own Widerrufsbelehrung, and align this section with Apple's required EULA terms (Schedule to the Apple Developer Agreement) before enabling purchases. Additionally to be settled in the same review (new with the mint model): (a) [Updated 2026-08-11 for the cap-and-wait model — not yet reviewed under this mechanism] Whether a capture waiting — rather than being downgraded — within an already-paid period constitutes a defect, and whether the compensation model chosen here (the capture stays queued in the class actually purchased at no extra cost, is never downgraded to a cheaper class, and no mints are ever lost) forecloses reduction or refund claims for the delay. The clause is deliberately added before the first paying customer so it is a condition agreed from the outset rather than a later unilateral change. (b) Whether the expiry of unused subscription mints at period end can be validly agreed in this form, particularly as against the pack credits that expressly do not expire. (c) Whether selling packs without an active subscription shifts the withdrawal/consumption position (a consumable sold to a customer with no ongoing contractual relationship).
7. Disclaimer of warranties
Krest is provided "as is" and "as available," without warranties of any kind, express or implied, including merchantability, fitness for a particular purpose, and non-infringement. The operator does not warrant that the app or services will be uninterrupted, error-free, or that any anchor will confirm within a particular time. Nothing in Krest constitutes legal, forensic or evidentiary advice, and a Krest proof is not a substitute for expert testimony or a court's evaluation of evidence.
8. Limitation of liability
To the maximum extent permitted by applicable law, the operator is not liable for indirect, incidental, special, consequential or punitive damages, or for loss of data, profits or goodwill, arising from your use of or inability to use Krest. Mandatory statutory liability — in particular under German law for intent, gross negligence, injury to life, body or health, and under the German Product Liability Act — remains unaffected. For the breach of essential contractual obligations (cardinal obligations), liability for slight negligence is limited to the foreseeable, contract-typical damage.
9. Changes to these Terms
The operator may update these Terms as the app evolves. The "last updated" date reflects the latest revision; material changes will be announced in the app changelog. Continued use after a change constitutes acceptance.
10. Governing law and jurisdiction
These Terms are governed by the law of the Federal Republic of Germany, excluding its conflict-of-laws rules and the UN Convention on Contracts for the International Sale of Goods (CISG). Mandatory consumer protection provisions of your country of residence remain unaffected. Place of jurisdiction, to the extent legally permissible, is Kassel, Germany.
11. Contact
legal@krestapp.com
See also: PRIVACY.md (data handling) and IMPRESSUM.md (provider identification under § 5 DDG). German version: AGB.md.