Open Consent Protocol (OConsent)

The decentralized standard for cryptographic consent management

GitHub v0.0.2 arXiv:2201.01326 RFC Draft 2025 Apache 2.0 Licensed
Whitepaper Documentation
OSI Approved

Production-Grade Open Consent Protocol

OConsent combines open-source foundations with enterprise reliability:

System Architecture

The OConsent protocol consists of three core layers:

1. Consent Layer

ERC-721 based consent tokens with embedded permissions, expiry, and compensation terms.

struct ConsentToken {
  address owner;
  string scope; // e.g., "llm_training"
  uint256 expiry;
  uint256 fee; // in wei
}

2. Verification Network

Decentralized nodes validate requests against on-chain rules with Zk-proofs for privacy-preserving verification.

3. Enforcement Engine

Smart contracts that automatically enforce consent terms and manage compensation flows.

End-to-End Data Flow

                        %% Paste your Mermaid code here
                        graph TD
                            A[User Devices] -->|Sets Consent Preferences| B[OConsent Dashboard]
                            B -->|Issues Consent Tokens| C[Blockchain Network]
                            C -->|Stores Immutable Records| D[Consent Registry]
                            E[Applications] -->|Checks Consent| F[Verification Network]
                            F -->|Queries| D
                            F -->|Returns ZK-Proof| E
                            G[Data Processors] -->|Pays for Access| H[Compensation Layer]
                            H -->|Settles Payments| I[User Wallets]
                            D -->|Triggers| J[Enforcement Engine]
                            J -->|Applies Rules| K[Compliant Systems]
                            J -->|Blocks| L[Non-compliant Systems]
                    

Technical Specifications

Consent Tokens

Non-fungible tokens (ERC-721) representing granular data permissions with:

  • Machine-readable scope definitions
  • Time-bound validity periods
  • Optional compensation terms
  • Revocation capabilities

Verification Protocol

On-chain verification of consent status with:

  • ZK-SNARKs for private verification
  • Multi-chain support (EVM, Solana, Cosmos)
  • Off-chain computation proofs

Governance

Decentralized governance model for:

  • Protocol upgrades
  • Scope definitions
  • Dispute resolution
  • Fee structures

Integration Methods

OConsent can be integrated via multiple methods depending on your infrastructure:

JavaScript SDK

import { checkConsent } from '@oconsent/sdk';

async function processData(user) {
  if (await checkConsent(user, 'data_processing')) {
    // Proceed with data processing
  } else {
    throw new Error('Consent not granted');
  }
}

REST API

GET /api/v1/consent/{user_id}?scope=data_processing

Response:
{
  "granted": true,
  "expiry": "2025-12-31T23:59:59Z",
  "terms": "https://oconsent.io/terms/123"
}

Smart Contract

interface IOConsent {
  function checkConsent(
    address user, 
    string calldata scope
  ) external view returns (bool);
}

Use Cases

AI/ML Training Compliance

Demonstrate ethical data sourcing for LLM training with immutable consent records.

Compatible with: Hugging Face, OpenAI, Anthropic

Healthcare Data Sharing

Granular patient consent for research while maintaining HIPAA compliance.

Compatible with: Epic, Cerner

Advertising & Analytics

User-managed opt-in/opt-out with compensation models.

Compatible with: Google Analytics, Adobe

Comparison with Existing Solutions

Feature Traditional Consent OConsent Protocol
Technical Enforcement None Blockchain-verified
User Control Per-service Universal dashboard
Auditability Manual logs Immutable records
Compensation None Micropayments
GDPR Compliance Documentation Automated proof
License Model Proprietary Apache 2.0 (Open Source)

Development Roadmap

Q3 2025

Browser Extension Beta

  • Chromium/Firefox support
  • Basic consent management
Q4 2025

Enterprise Integrations

  • Google Cloud toolkit
  • AWS deployment package
Q1 2026

RFC Standardization

  • IETF draft submission
  • Industry working group

Request Enterprise Demo

Complete this form to schedule a technical demo for your organization:

Get Involved

Developers

Contribute to the open-source protocol and RFC standardization process.

Enterprises

Join our early adopter program for enterprise integration support.

Users

Join the waitlist for early access to the consent dashboard.