Skip to content
Solana Devnet: test network. Documents and acceptances here are for testing, not production evidence.

Stele Proof

Know exactly what your user agreed to.

Publish the exact version of an agreement, let people accept it with a passkey or a wallet, and keep evidence anyone can verify later — without asking anyone to trust your database.

The problem

“I agree” is usually just a database flag.

It records that someone clicked — not which text they saw, and not in a way anyone outside the company can check.

The same acceptance, before and afterIllustration

Without Stele

acceptances
─────────────
user_id:  284
accepted: true

With Stele

  • DocumentTerms of Service — version 3
  • FingerprintSHA-256 9f2c 41aa 07de 5b13…
  • Signaturethe user's passkey or wallet
  • TimestampSolana slot 312,448,901
  • Receiptstele-receipt-….json

1/4Without Stele, the record of an agreement is a row in the company's own database.

How it works

Five steps from document to proof.

  1. 01

    Publish the exact version

    Your document is canonicalized into exact bytes; its fingerprint is committed on Solana. Versions are hash-chained and cannot be edited.

  2. 02

    The user accepts

    With a passkey (Face ID, Touch ID, Windows Hello) or a wallet. No crypto knowledge and no fees for the user.

  3. 03

    Cryptographic evidence

    The user's signature over that exact version is recorded with a time; nobody can sign for a key they don't hold.

  4. 04

    A receipt

    A portable file with the exact text, the signature and the transaction — for the user, for you, for an auditor.

  5. 05

    Anyone can verify later

    The open-source verifier checks it against Solana, with Stele's servers switched off.

Stele Proof — how evidence is madeIllustration
Companypublishes v3
FingerprintSHA-256 on Solana
User acceptspasskey · wallet
Stele evidencesignature + time
Verificationby anyone, later
Terms of ServiceVersion 3

1/6The organization publishes Terms of Service, version 3.

Try it live on Devnet

What users sign

Human-readable. Bound to one version, one site, one network.

Every acceptance names exactly what is being accepted, where, and for how long. A wallet displays this text; a passkey signs a challenge computed from it while the page shows the hash-verified text.

Signed message · examplestele-acceptance-v1
Stele Protocol v1 - Accept Agreement
I accept the exact document version below.
Organization: Acme Inc. (verified: acme.example)
Document: Acme Terms of Service
Version: 3.0 (#3)
Fingerprint: 9b367c5dc4269b205d9d7471e43542ae1276652e9914cf9f94ba76e89214253a
Account: 8Z8TF2R1GoddfFGFQvK5ePNGg9bzMu1BNL4egTaGGjie
Network: Solana Mainnet
Issued: 2026-09-21T14:13:20Z
Expires: 2026-09-21T14:23:20Z
Nonce: 0-1842-5f47f81cb3721019
Requested by: acme.example

Use cases

For any agreement that has to hold up later.

SaaS terms

Which Terms of Service version every customer accepted.

Employee policies

Handbooks, security and conduct policies, acknowledged per version.

Marketplace agreements

Seller and buyer terms that hold up in a dispute.

Financial disclosures

Fee schedules and risk notices — the exact text shown.

Consent forms

Consent to a specific text, signed with a passkey.

Partner agreements

Program terms accepted by each partner account.

E-commerce terms

Return and payment terms at the moment of purchase.

Honest boundaries

What the evidence proves — and what it doesn't.

Stele evidence proves

  • This exact text existed, unaltered, under this fingerprint
  • It was published by the organization's authorized key at a recorded time
  • A specific passkey or wallet accepted that exact version on that site
  • The acceptance was recorded on Solana at a specific slot and time

It does not, by itself, prove

  • The legal identity of the person controlling the key
  • That a key belongs to a person — whoever runs enrollment links keys to accounts
  • What a passkey prompt displayed — it shows the site; the page shows the text
  • That the person read or understood the document
  • That an agreement is enforceable — that depends on law and circumstances
Read the trust model

Running a Solana app?

Stele Gate adds enforcement on top of everything here.

Explore Gate