Smart Contract Architecture

Technical documentation for the 9 core CopyrightChains v9.2 smart contracts

System Architecture Overview

CopyrightChains v9.2 operates on Chain ID 1199 using Power-of-Content (PoC) consensus. The system consists of 9 interconnected smart contracts that handle copyright registration, royalty distribution, legal entity creation, and dispute resolution.

Core Principles:

  • ADMIN-ONLY Pattern: Users never sign transactions or pay gas fees
  • Automated Workflows: Contracts execute without human intervention
  • Forensic Timestamps: Millisecond-precision blockchain timestamps
  • Permissioned Access: SempreID token required for all operations
  • Immutable Records: All registrations permanently recorded on-chain

The 9 Core Smart Contracts

1. MusicOrchestratorV9

Central orchestration and workflow management

2. MusicalWorkRegistryV9

Musical work copyright registration

3. RecordingRegistryV9

Recording copyright registration

4. WhiteBoxPoolV9_V2

Orphaned works management

5. RoyaltyDistributorV9

Automated royalty distribution

6. TokenFactoryV9

ERC-20 copyright token creation

7. WyomingSeriesV9

Automatic LLC entity creation

8. InvestigationModuleV9

Dispute resolution and investigation

9. SempreIDToken

Identity verification and access control

1. MusicOrchestratorV9

Contract Address:

0xFb5a8fcD3eBab0f75eaF3b0e0A5C8E03d6E5b8f9

The MusicOrchestratorV9 is the master control contract that coordinates all registration workflows. It acts as the entry point for all user interactions and manages the execution flow across other contracts.

Key Functions

  • registerMusicalWork(): Initiates musical work registration workflow
  • registerRecording(): Initiates recording registration workflow
  • verifyAccess(): Validates SempreID token ownership
  • coordinateContracts(): Manages inter-contract communication
  • executeWorkflow(): Orchestrates multi-step registration processes

Workflow Coordination

When a user registers a musical work, the Orchestrator:

  1. Verifies SempreID token via SempreIDToken contract
  2. Creates ERC-20 tokens via TokenFactoryV9
  3. Registers work in MusicalWorkRegistryV9
  4. Creates Wyoming LLC via WyomingSeriesV9
  5. Distributes tokens to creators
  6. Records forensic timestamp

2. MusicalWorkRegistryV9

Contract Address:

0x8c5C2eE6a45D5F4F6E2F8eA3bE2F5A6D8E9C5b4a

Manages all musical work registrations including compositions with lyrics, compositions without lyrics, and instrumental works. This contract maintains the canonical record of all underlying musical compositions.

Data Structure

  • Work ID: Unique identifier (ERC-1155 token ID)
  • Title: Musical work title
  • Creators: Array of composer and lyricist wallet addresses
  • Work Type: Composition with lyrics, without lyrics, or instrumental
  • ISWC: International Standard Musical Work Code (if assigned)
  • Registration Timestamp: Millisecond-precision blockchain timestamp
  • Copyright Tokens: Associated ERC-20 token contract address
  • Wyoming LLC: Associated Series LLC entity ID

Key Functions

  • registerWork(): ADMIN-ONLY function to register new musical work
  • getWorkDetails(): Retrieve all work information by ID
  • getWorksByCreator(): Query all works by creator address
  • verifyOwnership(): Confirm copyright token ownership
  • updateWorkMetadata(): ADMIN-ONLY metadata updates

16% Royalty Rule:

Composers and lyricists registered in this contract receive 16% of all royalties generated by associated recordings.

3. RecordingRegistryV9

Contract Address:

0x3d9a7C4B8E2F5A6D8E9C5b4a7c8d9E2F3a4b5c6D

Manages all recording registrations including audio recordings and audiovisual recordings. Each recording must link to a parent musical work and maintains its own copyright token pool.

Data Structure

  • Recording ID: Unique identifier (ERC-1155 token ID)
  • Title: Recording title
  • Parent Work ID: Link to MusicalWorkRegistryV9 work
  • Performers: Array of performer wallet addresses and percentages
  • Producers: Array of producer wallet addresses and percentages
  • Recording Type: Audio or Audiovisual
  • ISRC: International Standard Recording Code (if assigned)
  • Registration Timestamp: Millisecond-precision blockchain timestamp
  • Copyright Tokens: Associated ERC-20 token contract address
  • Wyoming LLC: Associated Series LLC entity ID

Key Functions

  • registerRecording(): ADMIN-ONLY function to register new recording
  • getRecordingDetails(): Retrieve all recording information by ID
  • getRecordingsByWork(): Query all recordings for a musical work
  • getRecordingsByPerformer(): Query all recordings by performer address
  • verifyParentWork(): Confirm valid musical work linkage

84% Royalty Rule:

Performers and producers registered in this contract receive 84% of all royalties, distributed according to specified percentages.

4. WhiteBoxPoolV9_V2

Contract Address:

0x9e1E5668aF0c75E4e4e6eF01b0c53d5EAe96C228

Manages the WhiteBox system for orphaned and disputed works. Holds royalties securely until rightful owners are verified through the Investigation Module.

WhiteBox ID

0x0000000000000000000000000000000000000000000000000000000000000000

Special identifier marking works with unknown or disputed ownership

Key Functions

  • depositRoyalties(): Receive royalties for WhiteBox works
  • fileClaim(): Submit ownership claim with evidence
  • transferOwnership(): Transfer work to verified owner (Investigation Module only)
  • releaseRoyalties(): Distribute accumulated royalties to proven owner
  • getPoolBalance(): Query total WhiteBox pool balance
  • getWorkBalance(): Query accumulated royalties for specific work

Security Features

  • Time-locked withdrawals - no instant claims allowed
  • Investigation Module verification required for transfers
  • Audit trail for all claims and transfers

5. RoyaltyDistributorV9

Contract Address:

0x5d8E2A9C4B6E3F7a8D9E1C2B3A4F5e6D7C8B9A0E

Automates royalty distribution following the 16/84 split rule. Continuously monitors token ownership and distributes royalties proportionally without human intervention.

16/84 Split Mechanics

For every 100 USDC of royalties:

  • 16 USDC → Musical work creators (composers, lyricists)
  • 84 USDC → Recording creators (performers, producers)

Distribution within each group follows copyright token ownership percentages

Key Functions

  • distributeRoyalties(): Execute distribution for a recording
  • calculateShares(): Compute royalty shares based on token ownership
  • depositRoyalties(): Receive royalty payments for distribution
  • claimRoyalties(): Allow recipients to claim distributed funds
  • getRoyaltyHistory(): Query distribution history by work/recording
  • getPendingRoyalties(): Check undistributed royalty balance

Distribution Example

Scenario: Recording earns 1,000 USDC

  • 160 USDC → Musical work (2 composers split 50/50 = 80 USDC each)
  • 840 USDC → Recording (70% performer, 30% producer)
  • Performer receives: 588 USDC (840 × 0.70)
  • Producer receives: 252 USDC (840 × 0.30)

Automatic Execution:

Distribution happens automatically when royalties are deposited. No user action required. Token holders receive funds instantly based on current ownership.

6. TokenFactoryV9

Contract Address:

0x451f7CD81385D399176E1Ff25Acc2baA09c36B0A

Factory contract that creates ERC-20 copyright tokens for each registered work or recording. Automatically mints 1,000,000 tokens per registration.

Token Specifications

  • Standard: ERC-20 (Ethereum compatible)
  • Supply per Work: 1,000,000 tokens (fixed, no additional minting)
  • Decimals: 18 (standard ERC-20 divisibility)
  • Transferable: Yes, fully tradeable
  • Name Format: "Copyright - [Work/Recording Title]"
  • Symbol Format: "CPR[ID]"

Key Functions

  • createToken(): ADMIN-ONLY function to mint new copyright token
  • distributeTokens(): Send tokens to initial creators
  • getTokenAddress(): Query token contract address by work/recording ID
  • verifyTokenValidity(): Confirm token was created by factory

Ownership Calculation:

Ownership % = (Your Tokens ÷ 1,000,000) × 100
  • 100,000 tokens = 10% ownership = 10% of royalties
  • 500,000 tokens = 50% ownership = 50% of royalties
  • 1,000,000 tokens = 100% ownership = 100% of royalties

7. WyomingSeriesV9

Contract Address:

0x4c097dd8890e36095Be316fAEd7FCeF2b209608d

Automatically creates a Wyoming Series LLC entity for each registered copyright. Provides legal entity structure without manual paperwork or government filing.

LLC Formation Process

  1. Trigger: Work or recording registration initiates LLC creation
  2. Entity Creation: New Series LLC formed within master LLC structure
  3. Asset Assignment: Copyright automatically assigned to LLC
  4. Member Assignment: Token holders become LLC members
  5. Blockchain Recording: Formation recorded with forensic timestamp

Key Functions

  • createSeries(): ADMIN-ONLY function to form new Series LLC
  • assignAsset(): Link copyright to LLC entity
  • updateMembers(): Sync LLC membership with token ownership
  • getSeriesDetails(): Retrieve LLC entity information
  • verifyCompliance(): Confirm Wyoming law compliance

Limited Liability

Personal assets protected from copyright claims

Asset Isolation

Each work in separate legal entity

Tax Benefits

Pass-through taxation, no Wyoming state income tax

Zero Cost

No filing fees, no annual maintenance fees

8. InvestigationModuleV9

Contract Address:

0x01F408be5969C3C45054039B72a23b529ea6306E

Handles dispute resolution, ownership verification, and WhiteBox claims. Creates court-admissible blockchain evidence with forensic timestamps.

Investigation Workflow

  1. Dispute Filed: User submits claim with evidence
  2. Forensic Recording: All evidence timestamped to millisecond precision
  3. Evidence Review: Investigator analyzes submitted proof
  4. Verification: Cross-reference with external registries (ASCAP, BMI, Copyright Office)
  5. Decision: Determine rightful ownership
  6. Execution: Transfer ownership and release royalties if approved

Key Functions

  • fileDispute(): Submit new dispute or WhiteBox claim
  • submitEvidence(): Add evidence to existing investigation
  • updateStatus(): ADMIN-ONLY status updates
  • resolveDispute(): ADMIN-ONLY final decision execution
  • generateReport(): Create court-admissible evidence package
  • getDisputeHistory(): Query all disputes for a work

Forensic Timestamp Features

  • Millisecond Precision: Exact blockchain timestamp for all events
  • Immutable Record: Cannot be altered after recording
  • Chain of Custody: Complete evidence history preserved
  • Court Admissible: Meets legal standards for digital evidence

Evidence Strength Scoring:

  • Strong (90-100): Official registrations, legal documents, original files
  • Moderate (60-89): Contracts, correspondence, witness statements
  • Weak (0-59): Self-declarations, uncorroborated claims

9. SempreIDToken

Contract Address:

0xE2D7aB5c8F3E9d4A6b7C8D9E0F1A2B3C4D5E6F7A

ERC-721 non-fungible token (NFT) that serves as identity verification and access control for the entire CopyrightChains ecosystem. MANDATORY for all platform access.

SempreID Requirements

  • Standard: ERC-721 (NFT)
  • Supply: One token per verified user
  • Transferable: No, permanently bound to wallet
  • Verification: KYC/AML compliance required
  • Access Level: Determines platform permissions

Key Functions

  • mintToken(): ADMIN-ONLY function to issue SempreID after KYC
  • verifyOwnership(): Check if wallet holds valid SempreID
  • revokeToken(): ADMIN-ONLY revocation for compliance violations
  • getTokenMetadata(): Retrieve user verification details
  • updateCompliance(): ADMIN-ONLY compliance status updates

Access Control

All other contracts check for SempreID ownership before executing functions. Without SempreID token:

  • Cannot access Dashboard
  • Cannot register works or recordings
  • Cannot receive royalty distributions
  • Cannot file disputes

Contract Interaction Flows

Musical Work Registration Flow

  1. User Action: Submit work via Dashboard
  2. MusicOrchestratorV9: Receive request, verify SempreID
  3. SempreIDToken: Confirm token ownership
  4. TokenFactoryV9: Create 1M ERC-20 tokens
  5. MusicalWorkRegistryV9: Register work with forensic timestamp
  6. WyomingSeriesV9: Create Series LLC entity
  7. TokenFactoryV9: Distribute tokens to creators
  8. MusicOrchestratorV9: Confirm completion, update Dashboard

Royalty Distribution Flow

  1. Royalty Payment: Funds deposited to RoyaltyDistributorV9
  2. RoyaltyDistributorV9: Calculate 16/84 split
  3. MusicalWorkRegistryV9: Query composers/lyricists
  4. RecordingRegistryV9: Query performers/producers
  5. TokenFactoryV9: Query token ownership percentages
  6. RoyaltyDistributorV9: Execute proportional distribution
  7. Result: Funds sent directly to creator wallets

WhiteBox Claim Flow

  1. User Action: File claim via Dashboard
  2. InvestigationModuleV9: Create investigation, record evidence
  3. WhiteBoxPoolV9_V2: Hold royalties during investigation
  4. InvestigationModuleV9: Verify evidence, make decision
  5. MusicalWorkRegistryV9/RecordingRegistryV9: Transfer ownership if approved
  6. WhiteBoxPoolV9_V2: Release accumulated royalties
  7. TokenFactoryV9: Transfer copyright tokens to proven owner

Developer Integration Guide

Network Configuration:

  • Chain ID: 1199
  • Network Name: CopyrightChains
  • RPC URL: https://rpc.copyrightchains.com
  • Block Explorer: https://explorer.copyrightchains.com
  • Currency Symbol: CCHN

Integration Steps

  1. Add Chain ID 1199 to MetaMask or Web3 provider
  2. Import contract ABIs from blockchain explorer
  3. Verify SempreID token ownership before contract calls
  4. Use read-only functions for querying data
  5. All write functions are ADMIN-ONLY (no user signatures required)

Important for Developers

  • NEVER attempt direct contract writes - use Dashboard API
  • Always verify SempreID ownership before data access
  • Use batch queries to reduce RPC calls

Related Topics