Datachain Rope Documentation

Technical documentation for building on Datachain Rope - a revolutionary protocol inspired by DNA's double helix structure with sub-5 second finality and quantum-resistant cryptography.

Mainnet Live - Chain ID 271828

Introduction

Datachain Rope is a revolutionary distributed ledger protocol that replaces traditional blockchain architecture with a String Lattice structure inspired by DNA's double helix. Designed in 2018 and now production-ready, it provides:

  • Sub-5 second finality with Byzantine fault tolerance
  • Quantum-resistant cryptography using CRYSTALS-Dilithium3 and Kyber768
  • AI Testimony validation for semantic and business logic verification
  • Self-healing data with Reed-Solomon erasure coding
  • GDPR compliance with controlled erasure protocol

Network Configuration

Mainnet

Parameter Value
Network Name Datachain Rope Mainnet
Chain ID 271828 (0x425D4)
RPC URL https://erpc.datachain.network
WebSocket wss://ws.datachain.network
Currency Symbol FAT
Block Explorer https://dcscan.io

Testnet

Parameter Value
Network Name Datachain Rope Testnet
Chain ID 271829 (0x425D5)
RPC URL https://testnet.erpc.datachain.network
WebSocket wss://testnet.ws.datachain.network
Block Explorer https://testnet.dcscan.io
Faucet https://faucet.testnet.datachain.network

Bootstrap Nodes

Network Multiaddr
Testnet Boot1 /ip4/92.243.26.189/tcp/9000/p2p/12D3KooWBXNzc2E4Z9CLypkRXro5iSdbM5oTnTkmf8ncZAqjhAfM

Running a Validator Node

# 1. Install rope-cli
cargo install rope-cli

# 2. Generate node keys (with post-quantum cryptography)
./rope keygen --quantum --output ~/.rope/keys

# 3. Get your Peer ID
./rope peer-id --key ~/.rope/keys/node.key --ip YOUR_IP --port 9000

# 4. Start a validator node on testnet
./rope node --network testnet --mode validator --data-dir ~/.rope/testnet

# Node will:
# - Connect to bootstrap nodes automatically
# - Produce anchor strings every ~4.2 seconds
# - Participate in Testimony consensus
# - Serve JSON-RPC on port 9001

String Lattice Architecture

The String Lattice is the foundational data structure of Datachain Rope, replacing traditional blockchain's linear chain with a multi-dimensional lattice inspired by DNA's double helix structure.

Key Properties

  • Parallel Processing – Multiple strings can be processed simultaneously, unlike sequential blockchain blocks
  • Intrinsic Ordering – Causally ordered events without global timestamps
  • Efficient Consensus – Virtual voting based on visibility, no message overhead
  • Self-Healing – Reed-Solomon erasure coding enables data recovery

String Structure

RopeString {
    id: StringId,               // Unique identifier (256-bit hash)
    creator: ValidatorId,       // Creating validator's public key
    timestamp: Timestamp,       // Logical timestamp (not wall clock)
    payload: Payload,           // Transaction data or testimony
    self_parent: Option<StringId>,   // Previous string from same creator
    other_parent: Option<StringId>,  // Latest string from other validator
    signature: Signature,       // Post-quantum signature (Dilithium3)
    nucleotide: Nucleotide,     // A, T, C, G – encodes string type
}

Nucleotide Types

Nucleotide Type Description
A (Adenine) Transaction Standard value transfer or smart contract call
T (Thymine) Testimony AI-generated validation proof
C (Cytosine) Consensus Virtual voting and anchor determination
G (Guanine) Genesis Network initialization or federation creation

AI Testimony System

AI Testimony is a unique validation layer where artificial intelligence agents provide semantic and business logic verification of transactions before they are finalized in the String Lattice.

Testimony Types

  • Semantic Validation – Verifies that transaction data makes logical sense
  • Business Logic – Ensures compliance with application-specific rules
  • Anomaly Detection – Identifies unusual patterns that may indicate fraud
  • Cross-Reference – Validates consistency with historical data

Testimony Structure

Testimony {
    string_id: StringId,        // String being validated
    validator: ValidatorId,     // AI validator identity
    verdict: Verdict,           // VALID, INVALID, or NEEDS_REVIEW
    confidence: f64,            // Confidence score (0.0 - 1.0)
    evidence: Vec<Evidence>,    // Supporting evidence
    timestamp: Timestamp,       // When testimony was created
    signature: Signature,       // Validator's signature
}

Validation Process

  1. Transaction submitted to network
  2. Assigned to AI testimony validators based on expertise
  3. Validators analyze transaction semantics and business logic
  4. Testimonies collected (minimum 2/3 supermajority required)
  5. Transaction finalized or rejected based on aggregate verdict

OES Cryptography

OES (Observability, Erasability, Sovereignty) is Datachain Rope's cryptographic framework that ensures data can be observed by authorized parties, erased when required (GDPR compliance), and sovereignty remains with data owners.

Key Components

Component Algorithm Purpose
Digital Signatures CRYSTALS-Dilithium3 Post-quantum secure authentication
Key Exchange CRYSTALS-Kyber768 Post-quantum secure key encapsulation
Hashing BLAKE3 Fast, secure cryptographic hashing
Erasure Coding Reed-Solomon Data redundancy and self-healing

Controlled Erasure Protocol

Datachain Rope supports GDPR-compliant data erasure through a unique protocol that allows data to be permanently removed while maintaining network integrity:

  • Erasure Request – Data owner initiates erasure
  • Verification – Network verifies ownership and legal basis
  • Controlled Erasure – Data shards are zeroed across all nodes
  • Tombstone – Permanent record that data was lawfully erased

Consensus Mechanisms

Datachain Rope employs a multi-layer consensus architecture tailored to different organizational structures within the network. Each consensus mechanism is optimized for specific use cases.

DkP Consensus

Delegated Keeper Proof – Used for Federation consensus

  • Validators are selected by federation stakeholders
  • Keepers hold delegated authority to validate strings
  • Weighted voting based on stake and reputation
  • Optimized for enterprise federations
  • High throughput with known validator set
FINALITY: ~2-3 seconds

PoA Consensus

Proof of Authority – Used for Community consensus

  • Pre-approved validators with known identities
  • Round-robin block production
  • Reputation-based validator selection
  • Ideal for industry-specific communities
  • Lower energy consumption than PoW
FINALITY: ~3-5 seconds

Virtual Voting

String Lattice Consensus – Global ordering

  • No explicit voting messages required
  • Consensus derived from string visibility
  • Strongly-sees relation for anchor determination
  • Supermajority (2/3+) observation threshold
  • Asynchronous Byzantine fault tolerance
FINALITY: Sub-5 seconds (aBFT)

Hashgraph

Hedera Integration – Coming soon

  • Gossip-about-gossip protocol
  • Virtual voting with complete history
  • Fair ordering guarantees
  • Planned integration for cross-chain
  • Mathematically proven consensus
STATUS: Planned Q3 2026

Consensus Selection by Layer

Layer Consensus Validators Use Case
Global (Network) Virtual Voting All active validators Cross-federation ordering, anchors
Federation DkP (Delegated Keeper Proof) Federation-appointed keepers Enterprise data management
Community PoA (Proof of Authority) KYC-verified validators Industry vertical governance
Individual Chain Single-party Data wallet owner Personal data sovereignty

Virtual Voting Algorithm

The Virtual Voting algorithm achieves consensus without explicit voting rounds by leveraging the String Lattice's gossip history:

fn determine_consensus(string: &RopeString, lattice: &StringLattice) -> bool {
    // Find validators who can "strongly see" this string
    let observers = lattice.find_strong_seers(string);
    
    // Calculate stake-weighted observation
    let observed_stake: u64 = observers.iter()
        .map(|v| v.stake)
        .sum();
    
    // Consensus achieved if 2/3+ of stake observes
    let total_stake = lattice.total_stake();
    observed_stake * 3 > total_stake * 2
}

// Strongly-sees: A string X strongly sees Y if:
// 1. X can see Y (Y is an ancestor of X)
// 2. X can see a supermajority of strings that can see Y

Byzantine Fault Tolerance

Datachain Rope maintains safety and liveness with up to f < n/3 Byzantine (malicious) validators:

  • Safety – Two honest validators never finalize conflicting strings
  • Liveness – Honest transactions eventually get finalized
  • Asynchronous – No timing assumptions required

Federation Generation Protocol

The Federation Generation Protocol enables creation of structured organizational units within the Datachain Rope network. Each federation can contain multiple communities, data wallets, and individual chains.

Federation Generation Flow Interactive
Generation Output
DATA WALLETS 3,500,000
Individual Chains 3,500,000
DkP Consensus Active

Federation Types

Type Examples Consensus
Structured City, Object, Contributors DkP
Unstructured Real-Madrid, Fans, Painter, Musicians DkP
Autonomous AI, Expert Systems, Bot, Script DkP

Protocol Invocations

Federations can invoke multiple external protocols:

// Available Protocol Invocations
Datachain Rope // Native protocol (required)
Hyperledger    // Enterprise blockchain
XDC Network    // XinFin hybrid chain
Solana         // High-performance chain
Polkadot       // Cross-chain protocol
Bitcoin        // Store of value layer
Ethereum       // Smart contracts
Tangle         // IOTA DAG (coming soon)
Hashgraph      // Hedera consensus (coming soon)

Community Generation Protocol

Communities represent industry-specific or purpose-driven groups within the Datachain network. Each community has configurable KYC/AML requirements and AI-powered predictability features.

Community Generation Flow Interactive
Generation Output
DATA WALLETS 10,000,000
Validator Chains 10,000,000
PoA Consensus Active

Industry Categories

Banking

Healthcare

Automotive

Mobility

Hospitality

Energy

Agricultural

Public Institution

Compliance Features

Feature Description
KYC/AML Transaction validation, SWIFT integration, SEPA compliance
eCitizenship ISO/IEC-24760-1, electronic ID, ePassport Protocol
Predictability AI Adaptability, Matching, Reinforcement, Context Mining, Risk Management, Fraud Detection, Scoring

CLI Interface

The Datachain Rope CLI allows you to interact directly with the network from your terminal. Experience the original 2018 design through a modern command-line interface.

rope-cli — datachain.network
# Datachain Rope CLI v1.0.0 # Connected to: erpc.datachain.network # Chain ID: 271828 | Genesis: 10B FAT rope> help Available Commands: status Show network status federation create Create a new federation community create Create a new community wallet create Generate a new data wallet string submit Submit a string to the lattice testimony request Request AI testimony validation validators list List active validators protocols list List available protocol invocations Generation Commands: generate federation [type] [name] generate community [industry] [scope] generate wallets [count] generate chains [count] rope> status ✓ Network Status: HEALTHY Finality Time: 4.2s Active Validators: 127 AI Agents: 5 Total Strings: 1,847,293 Total Testimonies: 892,451 Latest Round: 847,291 rope> generate federation structured "City of Paris" ⚡ Generating Federation... Type: Structured Name: City of Paris Consensus: DkP ✓ Federation Created Successfully Federation ID: 0x7a8b9c... Data Wallets: 3,500,000 Individual Chains: 3,500,000 rope> protocols list Available Protocol Invocations: ☑ Datachain Rope - Native protocol (required) ☑ Hyperledger - Enterprise blockchain ☑ XDC Network - XinFin hybrid chain ☑ Solana - High-performance chain ☑ Polkadot - Cross-chain protocol ☑ Bitcoin - Store of value layer ☑ Ethereum - Smart contracts ☐ Tangle - IOTA DAG (coming soon) ☐ Hashgraph - Hedera consensus (coming soon) rope> _
rope>

Installation

# Install via Cargo
cargo install rope-cli

# Or build from source
git clone https://github.com/KazeONGUENE/rope.git
cd rope/crates/rope-cli
cargo build --release

# Run the CLI
./target/release/rope-cli --rpc https://erpc.datachain.network

Configuration

# ~/.rope/config.toml

[network]
rpc_url = "https://erpc.datachain.network"
ws_url = "wss://ws.datachain.network"
chain_id = 271828

[wallet]
keystore_path = "~/.rope/keystore"
default_account = "0x..."

[crypto]
enable_pq_crypto = true    # CRYSTALS-Dilithium3 + Kyber768
oes_generation = 1         # OES evolution epoch

RPC API Reference

The Datachain Rope RPC API is available at https://erpc.datachain.network.

rope_networkStatus

Returns the current network status.

// Request
{
  "jsonrpc": "2.0",
  "method": "rope_networkStatus",
  "params": [],
  "id": 1
}

// Response
{
  "jsonrpc": "2.0",
  "result": {
    "status": "healthy",
    "finality_time_ms": 4200,
    "active_validators": 127,
    "ai_agents": 5,
    "latest_round": 847291,
    "total_strings": 1847293,
    "chain_id": 314159
  },
  "id": 1
}

rope_submitString

Submit a new string to the lattice.

// Request
{
  "jsonrpc": "2.0",
  "method": "rope_submitString",
  "params": [{
    "content": "0x...",
    "parents": ["0x...", "0x..."],
    "mutability_class": "immutable",
    "requires_testimony": true,
    "signature": "0x..."
  }],
  "id": 1
}

// Response
{
  "jsonrpc": "2.0",
  "result": {
    "string_id": "0x7a8b9c...",
    "round": 847292,
    "status": "pending_testimony"
  },
  "id": 1
}

Architecture Overview

┌─────────────────────────────────────────────────────────────────────────┐
│                    datachain.network (ROPE NETWORK)                      │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│   CORE PROTOCOL (rope-node)                                             │
│   ─────────────────────────                                             │
│   • Post-Quantum Crypto (Dilithium3/Kyber768)       ✅ 100%             │
│   • Virtual Voting (Appendix B.1)                    ✅ 100%             │
│   • Reed-Solomon Erasure Coding                      ✅ 100%             │
│   • libp2p Transport (QUIC+TCP)                      ✅ 100%             │
│   • AI Testimony Validation                          ✅ 100%             │
│   • OES Cryptography                                 ✅ 100%             │
│   • Federation/Community Management                  ✅ 100%             │
│                                                                          │
│   NETWORK SERVICES                                                       │
│   ────────────────                                                       │
│   erpc.datachain.network  → JSON-RPC                                    │
│   ws.datachain.network    → WebSocket                                   │
│   faucet.datachain.network                                              │
│   bridge.datachain.network                                              │
│                                                                          │
└─────────────────────────────────────────────────────────────────────────┘
                                │
                                │ Indexes & Fetches Data
                                ▼
┌─────────────────────────────────────────────────────────────────────────┐
│                      dcscan.io (BLOCK EXPLORER)                          │
│   • View Strings & Transactions                                         │
│   • Browse AI Agents & Testimonies                                      │
│   • Network Statistics & Charts                                         │
│   • Community Voting                                                    │
└─────────────────────────────────────────────────────────────────────────┘

Data Wallets — Datawallet+

Datawallet+ is the MetaMask of the Datachain Rope ecosystem — a self-custody identity and asset wallet for mobile (React Native / Expo) and web (React). It is the single entry point for sovereign identity, tokenized asset management, and cross-ecosystem interactions across Tanastok, DCSwap, NaturaProof, Careaway, Luzran, AlterOS, Picentriq, and Skywatcher.

Architecture Overview

┌──────────────────────────────────────────────────────────────────────────┐
│                         DATAWALLET+                                      │
│                                                                          │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐  ┌──────────────┐   │
│  │  Identity    │  │  Asset      │  │  DeFi       │  │  Fiat Ramp   │   │
│  │  Wallet      │  │  Manager    │  │  Hub        │  │  (Onramper)  │   │
│  │             │  │             │  │             │  │              │   │
│  │ ONCHAINID   │  │ DCNFT Deeds │  │ DCSwap      │  │ Buy/Sell     │   │
│  │ DID/SSDI    │  │ ERC-3643    │  │ LP Positions │  │ DC FAT       │   │
│  │ W3C VCs     │  │ DCR-20      │  │ Swap Router │  │ with fiat    │   │
│  │ ERC-735     │  │ Multi-chain │  │ Quotes      │  │              │   │
│  └──────┬──────┘  └──────┬──────┘  └──────┬──────┘  └──────┬───────┘   │
│         │                │                │                │            │
│  ┌──────┴────────────────┴────────────────┴────────────────┴───────┐    │
│  │              Core Services Layer                                │    │
│  │                                                                 │    │
│  │  NetworkService  │  MultiChainProvider  │  WalletConnectService │    │
│  │  RopeCrypto (Ed25519 + Dilithium3)  │  BiometricGate          │    │
│  │  IPFSService  │  EcosystemWebhooks  │  SecurityAuditService   │    │
│  └─────────────────────────────────────────────────────────────────┘    │
│         │                                                               │
│  ┌──────┴──────────────────────────────────────────────────────────┐    │
│  │              DatawalletConnect API v2.0                          │    │
│  │  WalletConnect v2 │ REST/SDK │ Ecosystem Connectors             │    │
│  └─────────────────────────────────────────────────────────────────┘    │
│                                                                          │
└──────────────────────────────────────────────────────────────────────────┘
         │                    │                    │
         ▼                    ▼                    ▼
    Tanastok             DCSwap              NaturaProof
    Careaway             Luzran              AlterOS
    Picentriq            Skywatcher          Any dApp

DatawalletConnect SDK

@datawallet/connect is the official npm package for any dApp to add "Connect with Datawallet+" in one line. It uses WalletConnect v2 under the hood and supports all 4 chains (Rope, Ethereum, Polygon, XDC).

Installation

npm install @datawallet/connect @walletconnect/sign-client

Quick Start

import { DatawalletConnect } from '@datawallet/connect';

// Initialize
const dw = new DatawalletConnect({
  appName: 'My dApp',
  appUrl: 'https://mydapp.com',
});

// Connect — opens Datawallet+ via deep link or QR
const session = await dw.connect();
console.log(session.address);  // 0x...
console.log(session.chainId);  // 271828

// Sign a message
const signature = await dw.signMessage('Hello from My dApp');

// Send a transaction
const txHash = await dw.sendTransaction({
  to: '0x...',
  value: '1000000000000000000', // 1 FAT in wei
});

// Switch chain
await dw.switchChain(1); // Switch to Ethereum

// Disconnect
await dw.disconnect();

Datawallet+ Specific Methods

// Request user's DID and identity claims
const identity = await dw.getIdentity();
// { did: 'did:datachain:...', address: '0x...', claims: [...] }

// Request Datawallet+ to sign an ONCHAINID claim
const claim = await dw.signClaim({
  topic: 1,         // KYC_VALIDATED
  data: '0x...',
  uri: 'ipfs://...',
});

// Query wallet capabilities
const caps = await dw.getCapabilities();
// { onchainid: true, erc3643: true, ipfs: true, ... }

Events

dw.on('connect', (session) => { /* connected */ });
dw.on('disconnect', () => { /* disconnected */ });
dw.on('chainChanged', (chainId) => { /* chain switched */ });
dw.on('accountsChanged', (accounts) => { /* account switched */ });

Supported Chains

ChainChain IDCurrencyPriority
Datachain Rope271828DC FATPrimary
Ethereum1ETHSupported
Polygon137POLSupported
XDC Network50XDCSupported

WalletConnect v2 Methods

MethodDescription
eth_sendTransactionSend a transaction on the active chain
personal_signSign a message with the wallet's private key
eth_signTypedData_v4Sign EIP-712 typed data
wallet_switchEthereumChainSwitch to a different EVM chain
datawallet_getIdentityRetrieve DID, address, and verified claims
datawallet_signClaimSign an ONCHAINID ERC-735 claim
datawallet_getCapabilitiesQuery supported features and standards

Identity Wallet

Datawallet+ implements a full self-sovereign identity stack:

StandardImplementationPurpose
ONCHAINID (ERC-734/735)On-chain identity + claims via IdFactory, IdentityRegistryKYC, AML, Country, Accredited Investor, DCNFT Holder claims
ERC-3643 (T-REX)Compliance-gated security token transfersEnsures only verified investors can hold/trade tokenized assets
W3C DIDdid:datachain:{nodeId} with Ed25519VerificationKey2020Decentralized identifier resolvable on Datachain Rope
W3C Verifiable CredentialsIssue, hold, present VCs with JWS/EdDSA proofsPortable credentials across ecosystem
Selective DisclosureShare only required attributes from credentialsPrivacy-preserving identity verification

Claim Topics (ERC-735)

Topic IDLabelIssued By
1KYC ValidatedDatawallet+ / Tanastok
2AML ValidatedDatawallet+ / Tanastok
3Country of ResidenceDatawallet+ / Tanastok
4Accredited InvestorDatawallet+ / Tanastok
10DCNFT HolderDatawallet+
99Sovereign IdentityDatawallet+

ONCHAINID Contracts (Mainnet)

ContractAddress
IdFactory0xB5218fcEc7a863e4907377F813f55d4a52F802FE
DatawalletClaimIssuer0xe5156dF30ed0645a585Cb8207cAa93d8D3847417
IdentityRegistry0x3065138F0CE815eB09f14d2e87E8BCbe98dD172B
TrustedIssuersRegistry0x42d605a05A063d91E83481867839bfD713D21666
TREXFactory0x76b40D5439F1CB661b2479fD15410662a7fe0991
DCNFT Template0x183c0666bFcFDab9453C0d48C0D39D511b4010B3

Cryptography

Datawallet+ is the first mobile wallet with post-quantum resistance. Every signature is dual-signed with classical Ed25519 and post-quantum ML-DSA-65 (Dilithium3).

AlgorithmTypeLibraryKey Size
secp256k1EVM transaction signing@noble/curves (audited)32 bytes
Ed25519DID / ONCHAINID claims@noble/curves (audited)32 bytes
ML-DSA-65 (Dilithium3)Post-quantum dual-signLocal WASM / pure JS1952 bytes (pub)
BIP-39 / BIP-32 / BIP-44HD key derivation@scure/bip39, @scure/bip32 (audited)12-24 word mnemonic

Key Derivation

Mnemonic (BIP-39, 12+ words)
  └─► BIP-32 seed
       └─► m/44'/60'/0'/0/0  →  secp256k1 private key  →  EVM address
            └─► SHA-256(privkey)  →  Ed25519 seed  →  DID keypair
                 └─► SHA-256(privkey + "Dilithium3 Seed")  →  ML-DSA-65 keypair

All keys are stored in expo-secure-store (iOS Keychain / Android Keystore). Sensitive operations are gated by biometric authentication (expo-local-authentication).

Asset Management

Domain Model: DCNFT → ERC-3643

Every real-world asset in the Datachain Rope ecosystem follows this model:

DCNFT (ERC-721)              ←  The DEED — minted once per asset
  │                               Originates from Tanastok, NaturaProof, or Datawallet+
  │
  ├─► ERC-3643 Contract A    ←  Fractional SHARES — minted per customer purchase
  │     tokenSymbol: "BFST"       maxSupply: 10,000 | mintedSupply: 3,247
  │
  └─► ERC-3643 Contract B    ←  Different tranche / jurisdiction
        tokenSymbol: "BFST-EU"    maxSupply: 5,000 | mintedSupply: 891
  • DCNFT (ERC-721) = the asset deed, always minted first (title, metadata, provenance on IPFS)
  • ERC-3643 tokens = fractional shares, minted each time a customer purchases. Supply grows with each acquisition.
  • ERC-3643 transfers are compliance-gated: buyer must be verified in IdentityRegistry (KYC/AML claims on ONCHAINID)

Token Tiers (Display Priority)

TierWhatExample
rope_nativeDC FAT, WFATNative gas token
rope_dcr20DCR-20 tokens on chain 271828USDC, USDT, EUROD
rope_erc3643ERC-3643 fractional sharesTanastok asset shares
bridgedWrapped tokens from Ethereum/XDC/PolygonwETH, wXDC
externalNon-Rope tokensAny external ERC-20

Fiat On/Off Ramp

Non-crypto users can buy DC FAT directly in Datawallet+ with credit card or bank transfer through two providers:

ProviderRoleIntegration
OnramperBuy/sell crypto with fiat — aggregates MoonPay, Transak, Banxa, etc.Widget (WebView) with signed URLs
BlindpayOff-ramp — convert stablecoins to fiat bank payout (100+ countries)REST API

Supported fiat currencies: USD, EUR, GBP, CHF, CAD, AUD, JPY, NGN, BRL, INR.
Supported crypto: DC FAT, ETH, MATIC, XDC, USDC, USDT.

Ecosystem Integration

Datawallet+ acts as the identity and asset hub for the entire Datachain Rope ecosystem. Events are broadcast via webhooks; data is shared through IPFS and on-chain state.

ProjectIntegrationData Flow
TanastokAsset tokenization, KYC bridge, professional listingsDCNFT minting, ERC-3643 deployment, claim issuance
DCSwapIn-app DEX, swap pairs, liquidity poolsDCSwapRouter on-chain, indexer API, token prices
NaturaProofBiodiversity credits, carbon offsets, sustainability certsEnvironmental claims, provenance verification
CareawayHealth data tokens, insurance credentials, wellness rewardsEncrypted health claims, credential verification
LuzranContent licensing, syndication royaltiesIPFS content registration, royalty tracking
AlterOSAI data marketplace, identity-gated datasetsDataset publishing, access control via DID
PicentriqAnalytics, compliance metricsIdentity-verified metrics, compliance reports
SkywatcherMonitoring, risk alerts, compliance surveillanceRisk alerts, address screening

Webhook Events

When events occur in Datawallet+, signed webhooks notify ecosystem projects:

claim.issued          // ONCHAINID claim issued (KYC, AML, etc.)
claim.revoked         // Claim revoked
identity.created      // New DID / ONCHAINID deployed
identity.updated      // Identity claims updated
asset.registered      // New DCNFT deed registered
asset.transferred     // Asset ownership changed
credential.issued     // W3C Verifiable Credential issued
credential.presented  // Credential shared with a verifier
swap.executed         // DCSwap trade completed

IPFS Integration

All claim evidence, asset metadata, identity backups, and token lists are stored on IPFS via ecosystem-owned Kubo nodes. No centralized storage dependency.

ServicePurpose
IPFSServicePin/fetch JSON and files to Kubo (primary) + ROPE node (replication)
IPFSAssetServiceERC-721 metadata pinning with image CIDs, tokenURI generation
IPFSIdentityBackupEncrypted SSDI vault backup/restore on IPFS
IPFSTokenListDCSwap token list (Uniswap Token Lists standard) from IPFS CID

Multi-Chain Support

While Datachain Rope is the primary chain, Datawallet+ provides real providers for Ethereum, Polygon, and XDC — users bring their entire portfolio into one wallet.

// Fetch balances across all chains
const balances = await multiChainProvider.getAllNativeBalances(address);
// [{ chain: 'Datachain Rope', native: '1250.5' }, { chain: 'Ethereum', native: '0.42' }, ...]

// Send on any chain
await multiChainProvider.sendNative(1, recipientAddress, '0.1'); // 0.1 ETH on Ethereum
await multiChainProvider.sendNative(271828, recipientAddress, '100'); // 100 FAT on Rope

Security

LayerProtection
Key storageiOS Keychain / Android Keystore via expo-secure-store
Biometric gateFace ID / Touch ID / fingerprint before signing or key export
Post-quantumML-DSA-65 (Dilithium3) dual-signing — local, no API dependency
HD derivationBIP-39/32/44 with audited @scure libraries (Trail of Bits audit)
WalletConnect v2Session approval with biometric confirmation
ONCHAINID complianceERC-3643 transfers blocked for unverified wallets
Pre-audit framework14-point automated security checklist across 8 categories

Pre-Audit Score

// Run from within Datawallet+
const report = await securityAuditService.runFullAudit();
// { score: 92, passCount: 13, failCount: 1, summary: '13/14 checks passed' }

Configuration

# .env — Required
EXPO_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
EXPO_PUBLIC_SUPABASE_ANON_KEY=your-anon-key
EXPO_PUBLIC_WALLETCONNECT_PROJECT_ID=f4fbdb67d801061f152ec95eedaec338
EXPO_PUBLIC_INFURA_API_KEY=e350c5ccf8b044ff9158e7b30c8b0905

# IPFS — Ecosystem-owned nodes
EXPO_PUBLIC_IPFS_NODE_URL=http://localhost:5001
EXPO_PUBLIC_ROPE_IPFS_NODE_URL=https://ipfs.datachain.network

# Onramper — Fiat on/off ramp
EXPO_PUBLIC_ONRAMPER_API_KEY=pk_prod_...
EXPO_PUBLIC_ONRAMPER_SIGNING_SECRET=...

# DCSwap contracts (Datachain Rope mainnet)
EXPO_PUBLIC_DCSWAP_ROUTER_ADDRESS=0x8ebdd966e9e9af2ec5d02c886b1c4b5ba617e7c4
EXPO_PUBLIC_WFAT_ADDRESS=0x285eecf51d5f0a6ab8d8151139b4d19b05c6b3e4

DatawalletConnect API v2.0

The public API is exposed via DatawalletConnectAPI and consumable through WalletConnect v2 or the @datawallet/connect SDK.

Capabilities

const capabilities = await datawalletAPI.getCapabilities();
{
  version: '2.0.0',
  walletConnect: true,
  onchainid: true,
  erc3643: true,
  did: true,
  ssdi: true,
  ipfs: true,
  verifiableCredentials: true,
  selectiveDisclosure: true,
  privacyProofs: true,
  reputation: true,
  dataMonetization: true,
  universalAssetRegistry: true,
  crossChainIdentity: true,
  postQuantumSigning: true,
  fiatRamp: true,
  multiChain: true,
  supportedChains: [271828, 1, 137, 50],
  connectedEcosystemProjects: [
    'tanastok', 'dcswap', 'datachain_rope',
    'naturaproof', 'luzran', 'alteros',
    'picentriq', 'careaway', 'skywatcher'
  ]
}