Skip to main content

Blockchain as Global State Machine

How Integra uses blockchain as a shared, trustless coordination layer for real-world contracts across unlimited parties and software systems.

The Fundamental Challenge

Private contracts face an impossible coordination problem:

How do parties coordinate contract execution when:
  - Each party uses different software (Salesforce vs SAP vs custom)
  - Each party has different tech stacks (.NET vs Java vs Python)
  - Each party has strict security policies (no shared databases)
  - Parties don't trust each other (competitors, strangers)
  - Parties are globally distributed (different jurisdictions)
  - No central authority exists (peer-to-peer)
  - Privacy must be preserved (sensitive content)

Traditional solutions all fail:
  - Cloud SaaS: Privacy policies prohibit
  - Shared database: No one trusts it
  - Email/phone: Not automated, error-prone
  - APIs: Require integration with every counterparty
  - Standards bodies: Too slow, not enforced

Result: Manual processes, no automation, limited to parties using the same software.

Integra's Solution: Global State Machine

Use blockchain as a shared, immutable, trustless coordination layer:

Blockchain = Global State Machine

State:
  - Record registrations (integraHash -> RecordInfo)
  - Token ownership (who holds what)
  - Attestations (who is authorized)
  - Payment signals (who owes what)
  - Events (what happened when)

Properties:
  - Globally accessible (anyone can read)
  - Immutable (cannot be changed)
  - Trustless (no central authority)
  - Real-time (instant state updates)
  - Event-driven (automation triggers)
  - Software-agnostic (any tech can read)

Result: Ad hoc coordination across unlimited parties

How It Works

The State Machine Model

Traditional state machines:

Application -> Database -> State
  - Controlled by one party
  - Private (only app can access)
  - Trusted (must trust owner)

Blockchain as global state machine:

Any Application -> Blockchain -> Global State
  - No single controller (decentralized)
  - Public (anyone can read)
  - Trustless (cryptographically verified)
  - Software-agnostic (any tech stack)

Integra's State Components

1. Record State (Identity Layer)

State: integraHash -> RecordInfo
  - owner: address
  - contentHash: bytes32 (content proof)
  - tokenizer: address
  - resolvers: bytes32[]
  - executor: address
  - timestamps: uint256

Global question answered:
  "What is the current state of record 0xABC...?"
  -> Owner: 0x123..., Tokenizer: OwnershipTokenizerV1, Registered: 1700000000

2. Token State (Economic Layer)

State: integraHash + tokenId -> TokenRecord
  - holder: address
  - amount: uint256
  - status: enum (reserved, claimed, transferred)
  - metadata: custom per tokenizer

Global question answered:
  "Who holds the tokens for record 0xABC...?"
  -> Token #1: Alice (0xAAA...), Token #2: Bob (0xBBB...)

3. Authorization State (Permission Layer)

State: attestationUID -> Attestation
  - recipient: address
  - capabilities: uint256
  - valid: bool
  - expiration: uint64

Global question answered:
  "Is address 0xBBB... authorized to claim token #2?"
  -> Yes, attestation 0xATT... grants CLAIM capability

4. Payment State (Financial Layer)

State: requestId -> PaymentRequest
  - requestor: address + tokenId
  - payer: address + tokenId
  - amount: encrypted
  - status: enum (pending, paid, expired)
  - deadline: uint256

Global question answered:
  "Does tenant owe rent for record 0xLEASE...?"
  -> Yes, request #456 pending, due in 5 days

5. Event History (Audit Layer)

Events: Immutable log of all state changes
  - RecordRegistered
  - TokenClaimed
  - OwnershipTransferred
  - PaymentRequested
  - All include: integraHash, processHash, timestamp

Global question answered:
  "What is the complete history of record 0xABC...?"
  -> Full audit trail from registration to current state

The Power: Software-Agnostic Coordination

Any Software Can Participate

Blockchain state is accessible to any technology stack:

Salesforce (Apex):
  - Reads: Record state via Web3 API
  - Writes: New records via smart contract call
  - Monitors: Events via webhook/polling

SAP (ABAP):
  - Reads: Token ownership via RPC
  - Writes: Token reservations via executor
  - Correlates: ProcessHash to ERP workflow

SharePoint (.NET):
  - Reads: Payment signals via Graph API
  - Writes: Payment confirmations
  - Displays: Record verification status

Custom Python App:
  - Reads: Full state via ethers.py
  - Writes: Attestations via EAS
  - Processes: Events via WebSocket

Mobile App (Swift/Kotlin):
  - Reads: User's tokens via RPC
  - Writes: Token claims via WalletConnect
  - Displays: Record verification status

No integration required between these systems --- they all read and write the same global state machine.

Real-World Coordination Examples

Example 1: International Property Sale

Parties (different countries, different systems):

  • Seller (Germany, using local real estate software)
  • Buyer (USA, using different real estate software)
  • Title company (USA, using title management system)
  • Escrow service (Switzerland, using banking software)
  • Notary (Germany, using government system)

Traditional approach: impossible. Each party uses incompatible software. No shared database spans jurisdictions. No API integrations exist between these specific systems.

With Integra:

// 1. Title company registers deed (any software)
const integraHash = await integraRecordV1.registerRecord(
    deedHash,
    encryptedRef,
    ownershipTokenizerV1,
    titleCompanyExecutor,
    processHash,
    ...
);
// State update: Global blockchain now knows record exists

// 2. Seller (German software) monitors state
germanRealEstateSystem.watchBlockchain({
    onRecordRegistered: (integraHash) => {
        // Display: "Your property is registered"
        // Update local DB with integraHash
    }
});

// 3. Escrow service (Swiss banking software) checks state
swissBankingSystem.checkRecordState(integraHash);
// Reads: Owner, status, payment requirements
// No integration with title company needed

// 4. Buyer (US software) reserves token
usRealEstateSoftware.reservePropertyToken(integraHash);
// Executor calls contract on behalf of buyer
// State update: Global blockchain shows reservation

// 5. All parties monitor SAME state
germanSystem.getState(integraHash);  // Same state
usSystem.getState(integraHash);      // Same state
swissSystem.getState(integraHash);   // Same state
notarySystem.getState(integraHash);  // Same state

// No direct integration between ANY of these systems
// All read same global state machine

Example 2: Cross-Organization Supply Chain

Parties (different companies, different ERPs):

  • Manufacturer (Oracle ERP)
  • Distributor (SAP)
  • Retailer (Microsoft Dynamics)
  • Logistics (Custom system)
  • Quality control (Specialized software)
// Manufacturer registers bill of lading
oracleERP.createShipment(shipmentId) {
    const integraHash = await integraRecordV1.registerRecord(
        billOfLadingHash,
        encryptedRef,
        multiPartyTokenizerV1,
        oracleExecutor,
        processHash,
        ...
    );

    // Reserve tokens for supply chain parties
    await tokenizer.reserveToken(integraHash, 1, distributor, 1, processHash);
    await tokenizer.reserveToken(integraHash, 2, retailer, 1, processHash);
    await tokenizer.reserveToken(integraHash, 3, logistics, 1, processHash);
}

// Distributor (SAP) monitors global state
sapSystem.pollBlockchainState() {
    const events = await getEventsByProcessHash(processHash);

    for (event of events) {
        if (event.type === "TokenReserved" && event.recipient === ourAddress) {
            // Update SAP: Shipment incoming
            updateInventorySystem(event.integraHash);
        }
    }
}

// Logistics (custom system) claims custody token
logisticsSystem.acceptShipment(integraHash) {
    await tokenizer.claimToken(integraHash, 3, attestation, processHash);
    // Global state updated: Logistics has custody
}

// Retailer (Dynamics) monitors custody changes
dynamicsSystem.watchCustodyChanges() {
    tokenizer.on("TokenClaimed", (integraHash, tokenId, claimant) => {
        if (tokenId === 3) {  // Logistics token
            updateShipmentStatus(integraHash, "IN_TRANSIT");
        }
    });
}

// No integration between Oracle, SAP, Dynamics, or custom system
// All coordinate via global blockchain state

Parties (different law firms, different legal tech):

  • Law Firm A (Clio practice management)
  • Law Firm B (MyCase)
  • Law Firm C (Custom system)
  • Client (DocuSign)
  • Court system (Government software)
// Law Firm A registers settlement agreement
clioSystem.registerAgreement(caseId) {
    const integraHash = await integraRecordV1.registerRecord(
        settlementAgreementHash,
        encryptedRef,
        multiPartyTokenizerV1,
        lawFirmAExecutor,
        processHash,
        ...
    );

    // Reserve tokens for all parties
    await reserve(integraHash, 1, lawFirmB_ephemeral);
    await reserve(integraHash, 2, lawFirmC_ephemeral);
    await reserve(integraHash, 3, client_ephemeral);
}

// Law Firm B (MyCase) monitors global state
myCaseSystem.monitorAgreements() {
    const pendingClaims = await queryPendingTokensFor(ourEphemeral);
    // Shows: "You have pending agreement claim"
    // No need to know about Clio system
}

// Client (DocuSign) claims their token
docuSignSystem.finalizeAgreement(integraHash) {
    await tokenizer.claimToken(integraHash, 3, attestation, processHash);
    // Global state: Client has agreed
}

// Court system monitors completion
courtSystem.watchAgreementCompletion() {
    multiPartyTokenizerV1.on("DocumentComplete", (integraHash) => {
        // All parties claimed -> Agreement fully executed
        updateCaseStatus(integraHash, "SETTLED");
    });
}

// Each system uses different tech
// No direct integration needed
// All coordinate via global blockchain state

The Ad Hoc Coordination Breakthrough

Traditional Approach: Point-to-Point Integration

Party A <-> Party B integration
Party A <-> Party C integration
Party A <-> Party D integration
Party B <-> Party C integration
Party B <-> Party D integration
Party C <-> Party D integration

With N parties: N*(N-1)/2 integrations required
  5 parties = 10 integrations
  10 parties = 45 integrations
  100 parties = 4,950 integrations

Result: Impossible at scale

Integra Approach: Hub-and-Spoke via Blockchain

Party A -> Blockchain <- Party B
Party C -> Blockchain <- Party D
Party E -> Blockchain <- Party F

With N parties: N integrations (to blockchain only)
  5 parties = 5 integrations
  10 parties = 10 integrations
  100 parties = 100 integrations
  1,000,000 parties = 1,000,000 integrations

Result: Linear scaling, ad hoc coordination

Each party integrates with the blockchain once, then can coordinate with anyone.

The Platform: Tools for Global Coordination

1. Unique Record Identity (Foundation)

integraHash -> Universal identifier for record state

Any party, any software can:
  - Query: "What is the state of record 0xABC...?"
  - Update: "I am claiming token #2 for record 0xABC..."
  - Monitor: "Alert me when record 0xABC... changes"
  - Verify: "Is record 0xABC... the same as my copy?"

2. ERC Token Bindings (Economic Layer)

integraHash -> Tokenizer -> ERC tokens

Enables:
  - Standard wallet integration (MetaMask, Ledger)
  - Standard marketplace compatibility
  - DeFi composability (collateral, lending)
  - Role representation (buyer, seller, guarantor)
  - Economic interest tracking

3. ProcessHash (Workflow Correlation)

processHash -> Links on-chain events to off-chain workflows

Enables:
  - CRM correlation (Salesforce workflow #12345)
  - ERP correlation (SAP purchase order #67890)
  - Multi-step tracking (query all events for workflow)
  - Cross-chain coordination (same processHash, multiple chains)
  - Audit trails (link on-chain and off-chain records)

4. Attestation-Based Authorization (Permission Layer)

EAS attestations -> Decentralized permission grants

Enables:
  - Off-chain identity verification
  - On-chain authorization proof
  - Cross-system capability grants
  - Revocable permissions
  - No central auth server needed

5. Resolver Composition (Service Layer)

integraHash -> Resolvers -> Custom services

Enables:
  - Compliance automation (per record)
  - Lifecycle management (expiry, renewal)
  - Payment automation (rent, royalties)
  - Custom business logic (unlimited)
  - No core contract changes

6. Event-Driven Architecture (Automation Layer)

Blockchain events -> Trigger off-chain automation

Enables:
  - Real-time notifications
  - Workflow automation
  - Cross-system triggers
  - Audit logging
  - State synchronization

The Entire New Class of Automations

Cross-System Triggers

// When record registered in System A
// Automatically trigger workflow in System B
// No direct integration between A and B
// Both watch global state

systemA.registerRecord() -> Blockchain state change
                              |
systemB.watchBlockchain()  <- Detects change, triggers workflow

Multi-Party Approval Flows

// 5 parties must approve (each using different software)
// Global state tracks approvals
// Automatically executes when threshold met

party1System.approve() -> State: 1/5 approved
party2System.approve() -> State: 2/5 approved
party3System.approve() -> State: 3/5 approved
party4System.approve() -> State: 4/5 approved
party5System.approve() -> State: 5/5 approved -> AUTO-EXECUTE

Conditional Automation Chains

IF record registered (any system)
  AND all parties claimed tokens (any wallets)
  AND compliance check passed (any compliance provider)
  AND payment received (any payment processor)
  THEN execute contract (automatic)
  AND notify all parties (any notification system)

Decentralized Escrow

// No central escrow service needed
// Global state coordinates release conditions

escrowContract.holdFunds() -> State: Funds held
buyer.claimToken()         -> State: Buyer claimed
seller.confirmDelivery()   -> State: Delivered
                             |
escrowContract.detectConditionsMet() -> Auto-release funds

// All parties using different software
// No trust in central escrow
// Global state ensures fairness

Cross-Border Coordination

// Party in USA (using US software)
usSystem.registerRecord(integraHash);

// Party in Japan (using Japanese software)
jpSystem.detectRegistration(integraHash);
jpSystem.claimToken(integraHash, tokenId);

// Party in Germany (using German software)
deSystem.detectClaim(integraHash);
deSystem.sendPaymentSignal(integraHash);

// Party in UK (using UK software)
ukSystem.detectPayment(integraHash);
ukSystem.confirmReceipt(integraHash);

// Global coordination across jurisdictions
// Each party uses local software
// Blockchain state machine coordinates

Privacy + Global Coordination

How Both Are Achieved

Privacy through:

  • Hashes (not content)
  • Encryption (references, payments)
  • Ephemeral wallets (no identity linking)
  • Off-chain data (identity, content)

Coordination through:

  • Shared identifiers (integraHash, processHash)
  • Global state (everyone reads same data)
  • Standard interfaces (ERC tokens)
  • Events (real-time updates)

The breakthrough:

Previous thinking: Privacy XOR Coordination
  - Either share everything (coordination, no privacy)
  - Or share nothing (privacy, no coordination)

Integra: Privacy AND Coordination
  - Share proofs and identifiers (coordination enabled)
  - Keep data private (privacy preserved)
  - Use blockchain as state machine (global agreement)

Summary

Integra's global state machine concept:

  1. Uses blockchain as a shared, trustless coordination layer
  2. Solves the coordination problem for private contracts
  3. Enables ad hoc coordination across millions of disparate parties
  4. Preserves privacy through public proofs of private information
  5. Provides a complete platform with identity, tokens, authorization, correlation, privacy, and extensibility
  6. Supports any software or tech stack (software-agnostic)
  7. Scales linearly (not N-squared)
  8. Creates an entirely new class of cross-organizational automations

The ultimate innovation: a global state machine for real-world contracts that enables trustless coordination with privacy preservation across unlimited parties using incompatible software.

Learn More