oConsent
On the record

Status.

Everything the protocol does today, what is in progress, and what is still on the frontier. We keep this line in plain sight, because a project about proof should not ask you to take its word. If something here is wrong, correct it.

Issued In the works Frontier
Issued and working
Consent lifecycle

Draft, sign, verify, revoke, and list records through the Python SDK and CLI.

The record

A consent record carries the subject, the processor, its purposes, a validity window, status, and references to its proof and seal. Each purpose holds its own retention term.

Signatures

Records are signed with the subject's key using standard elliptic-curve signatures. Forge-resistant by construction.

Independent sealing

A timestamp from the NIST Beacon fixes the date, with a Bitcoin source as a second anchor.

On-chain registry

Three Solidity contracts, ConsentRegistry, ConsentVerifier, and ConsentBatchOperations, built on OpenZeppelin and covered by a test suite.

Off-chain storage

An IPFS provider with pinning, retries, and streaming keeps bulky detail off the ledger and addressable by hash.

Command line

Seven commands issue, verify, revoke, list, export records, add purposes, and configure the client.

In the works
Bitcoin anchoring

Runs against a local node today. Hardening it for hosted use is in progress.

Documentation

Being rebuilt in this style. The old reference set is offline while we do it properly.

Licensing

The contracts are MIT. A single, project-wide license is being finalised.

On the frontier
Zero-knowledge proofs

Records carry a hash commitment today. The full zero-knowledge proofs the paper specifies are the next major build, and the most interesting open problem here.

Chains beyond Ethereum

Ethereum is wired and tested. Other chains are open work, waiting for a builder to claim them.

A hosted issuer

There is no hosted product, by choice. Right now the protocol and the code are the product.

Browser extension and a formal spec

Both are wanted. Neither is started. Good ground for a contributor to break in.

The fastest way to move a line up this page is to ship code. See how to contribute or read the reference implementation.