Skip to content
LifeHash

For developers

Portable evidence, held by its owner.

LifeHash uses the existing Statement Graph claim grammar and standard XYO BoundWitness signatures. Browser-local custody and portable verification operate independently of optional finalized chain publication.

Shape of the system

Write path

Browser-direct

The browser signs participant statements and explicit membership acceptance, and stores its custody and evidence encrypted. Independent XL1 wallets approve ordinary evidence without a chain transaction. No server holds a participant key.

Read path

Portable, offline evidence

Bearer packages include supporting payloads for account-free offline verification under independently selected trust. They cannot establish globally complete history or authoritative ordering; finalized publication provides separate evidence.

Server surface

Separate and explicit

The website is static. A separate authenticated connector handles email/OAuth work, signs only as its own witness, and keeps durable private operational records. Immutable records use the standard S3 datalake; mutable records use S3 transport.

The pieces

◆
schemas & protocol
The namespace, payload shapes, and the pure, deterministic fold — identical on client and indexer.
◆
sdk
Browser custody, complete encrypted recovery, portable evidence verification, provider enrollment and optional finalized publication.
◆
connect
Framework-agnostic, server-side channel witnessing — email and login challenges that sign only as themselves. It is not mounted in the current static Vercel target.
◆
indexer
A standalone walker that folds the LifeHash grammar and publishes frames to a local directory or any S3-compatible bucket. No repo, no framework, no chain node — it runs anywhere.

Keep local and published evidence separate.

Local creation, acceptance, verification and recovery require neither a public datalake nor an XL1 commitment. The indexer serves optional finalized history; it does not make a bearer package complete or establish membership on its own.

Try a verification →