31. RandProof Mobile Application: iOS & Android
The RandProof Mobile App is the primary interface for node operators, stakers, mobile light node participants, integrators, and end users. It serves f
The RandProof Mobile App is the primary interface for node operators, stakers, mobile light node participants, integrators, and end users. It serves four distinct user roles in a single application: Node Operator (manage keeper nodes, stake, monitor earnings), Light Node Participant (earn fees from your phone with zero hardware requirements), Integrator / Enterprise (monitor PoFR events, export RandProofs, manage API keys), and End User / Verifier (verify any RandProof artifact, check draw results, explore the live event feed).
Platform availability: iOS 16+ (iPhone, iPad) and Android 10+ (all major manufacturers). Built with React Native for shared codebase across both platforms. Available on App Store and Google Play.
31.1 App Architecture & Tech Stack
The RandProof Mobile App is built on a React Native foundation with native modules for cryptographic operations, biometric authentication, and background task execution.
-
Framework: React Native (Expo managed workflow for OTA updates)
-
State Management: Redux Toolkit + RTK Query for real-time chain data
-
Wallet Engine: ethers.js v6 (EVM) + @solana/web3.js + TON SDK + Cardano serialization lib
-
Key Storage: iOS: Secure Enclave + Keychain | Android: Android Keystore + EncryptedSharedPreferences
-
Biometrics: iOS: Face ID / Touch ID via LocalAuthentication | Android: BiometricPrompt API
-
Background Tasks: iOS: BGTaskScheduler (BGProcessingTask) | Android: WorkManager with Foreground Service
-
Push Notifications: Apple Push Notification Service (APNs) + Firebase Cloud Messaging (FCM)
-
Chain Connectivity: WebSocket RPC connections via WalletConnect relay + direct RPC
-
Entropy Fetching (Light Node): HTTP background fetch: DRAND, NIST, ANU QRNG, Tor consensus
-
P2P Gossip (Light Node): libp2p WebSocket transport (browser-compatible subset)
31.2 App Navigation & Screen Map
The app uses a bottom tab navigation with five primary tabs, each containing nested screens:
π Home Tab
-
Live Event Feed: Real-time stream of all PoFR events fulfilled across all 17+ chains. Each card shows: chain, eventId, seed hash, keeper addresses, entropy sources used, fulfillment time, and link to on-chain RandProof artifact.
-
Protocol Stats Dashboard: Global metrics: total PoFR events all-time, events in last 24h, active keeper count, total keeper earnings distributed, and current network uptime. Updates every 15 seconds.
-
RandProof Verifier: Enter any eventId or paste a RandProof artifact JSON/hash. App fetches the on-chain record and displays full verification: entropy sources, BLS signers, seed derivation, and outcome. Shareable as a PDF compliance certificate.
-
Chain Status Panel: Health indicators for all 17+ supported chains: block height, RPC latency, KeeperCoordinator contract status, pending events, and average fulfillment time.
π° Wallet Tab
-
Portfolio Overview: Total balance in USD across all chains and assets. Breakdown by chain and asset type (USDC, ETH, SOL, ADA, TON, SUI, DOT, BNB, AVAX, GLMR). Price feeds via CoinGecko / Chainlink price oracles.
-
Asset Detail Screen: Per-asset screen: balance, receive address with QR code, send flow, transaction history with deep-linking to block explorer, and any linked RandProof events (e.g., raffle winnings).
-
Send Screen: Multi-chain send: select chain, enter recipient address or ENS/SNS name, enter amount in USD or native asset, gas estimation with fast/standard/slow options, confirmation with biometric sign.
-
Receive Screen: Dynamic QR code per chain. Deep-link support (e.g., randproof://pay?chain=base&address=0x...). Share button for payment links.
-
Swap Screen: In-app swap via integrated DEX aggregator (Li.Fi / Socket.tech): cross-chain swaps including CCTP V2 USDC bridging. Swap native assets to USDC for stake top-ups.
-
WalletConnect Screen: Connect to any WalletConnect v2 dApp. Sign transactions and messages from external protocols. Session management: active sessions, revoke access.
π₯ Node Tab (Keeper Operators)
-
Node Overview Dashboard: All registered keeper nodes at a glance: chain, status (ACTIVE / INACTIVE / SLASHED), current stake in USD, uptime %, events fulfilled (24h / 7d / 30d), and pending earnings.
-
Per-Chain Node Detail: Drill into any chain: stake amount vs. minimum, BLS key fingerprint, last 10 fulfilled events with timestamps, uptime graph (7-day rolling), earnings chart, and entropy source health indicators for that chain.
-
Staking Management Screen: Full staking workflow: current stake per chain with USD conversion, top-up stake (pulls from wallet balance), unstake (initiates 7-day unbonding), claim unbonded stake, and withdraw earned fees. All actions require biometric confirmation.
-
Earnings Screen: Cumulative earnings by chain and time period. Exportable CSV for tax reporting. Projected monthly earnings based on current event volume and stake weight.
-
Node Health Monitor: Real-time health metrics synced from the desktop node: RPC connection status per chain, entropy source staleness (all 15 sources with last-update timestamp), BLS participation rate, and gossip peer count.
-
Remote Node Actions: Trigger actions on your desktop keeper node remotely via authenticated API: restart node, rotate BLS key, add/remove chains, update RPC endpoints. Requires desktop node to be online and reachable.
-
Register New Node: Step-by-step wizard to register a keeper on a new chain: select chain, confirm stake amount, review BLS key, sign registration transaction, confirm on-chain. Completes the same flow as Section 30.5 via mobile UI.
π± Light Node Tab (Mobile Participants)
-
Light Node Setup: One-screen onboarding: enable light node participation, select participation modes (gossip relay / entropy submission / event detection), set battery and bandwidth limits, deposit nominal $1β5 anti-spam stake.
-
Participation Dashboard: Live stats: events relayed today, entropy submissions today, earnings (pending and confirmed), battery usage (% day), bandwidth usage (MB/day), and current peer connections.
-
Mode Selection: Three toggleable participation modes, each with individual earnings rates. Gossip Relay (2% fee share, lowest resource usage). Entropy Submission (2% fee share, submits DRAND/NIST/ANU values). Event Detection (1% fee share, monitors chains for new DrawRequest events).
-
Earnings Tracker: Micro-earnings in real time. Accumulated USDC balance. Minimum withdrawal threshold (e.g., $0.50 USDC). Auto-sweep option: automatically sweep to wallet when threshold is reached.
-
Battery & Bandwidth Controls: Max battery impact slider (0.5%β5% per day). Max bandwidth slider (1β50 MB/day). Quiet hours: pause light node during specified hours (e.g., overnight 11 PMβ7 AM). Low battery auto-pause (below 20% battery).
-
Background Mode Indicator: Shows whether the iOS BGProcessingTask or Android WorkManager task is active. Troubleshooting steps if background mode is blocked by OS battery optimization.
βΉ More Tab (Settings & Enterprise)
-
Notification Settings: Per-category push notification toggles: PoFR event fulfilled (your events), node offline alert, stake threshold warning, earnings available, entropy source stale, slashing event, new chain support, governance announcements.
-
Security Settings: Biometric auth toggle, PIN fallback setup, auto-lock timer (1 / 5 / 15 / 30 minutes or never), transaction signing confirmation level (always prompt / prompt above $X), export encrypted wallet backup.
-
Enterprise Tools: API key management (create, rotate, revoke). Event monitor dashboard (all requestRandomness calls from your contracts across all chains). Webhook configuration (URL, auth header, events to trigger). Usage analytics (events/day, cost/month, chain breakdown).
-
RandProof Export: Select any fulfilled event and export the RandProof artifact as: JSON (for programmatic use), PDF compliance certificate (signed with RandProof Network timestamp), or QR code (for physical display). Suitable for court submissions, regulatory filings, or audit trails.
-
Network Settings: Custom RPC endpoints per chain (override defaults). Toggle between mainnet and testnet. Preferred entropy source display order.
-
Referral & Onboarding: Referral code sharing (earn 0.5% of referred node operatorsβ first 30 days of fees). Onboarding checklist: generate wallet, fund stake, register first node, earn first fee.
31.3 Wallet Features: Technical Specification
31.3.1 Multi-Chain Key Management
The RandProof mobile wallet manages a unified seed phrase (BIP-39 mnemonic) from which all chain-specific keys are derived. The user holds one 12 or 24-word phrase and the app derives:
-
EVM chains (Base, ETH, OP, ARB, Linea, Polygon, BNB, AVAX, Moonbeam, WorldChain, HyperEVM): BIP-44: m/44'/60'/0'/0/0 (same address across all EVM chains)
-
Solana: BIP-44: m/44'/501'/0'/0' (ed25519)
-
TON: TON-specific: BIP-39 mnemonic β TON wallet v4 keypair
-
Cardano: CIP-1852: m/1852'/1815'/0' (Shelley era, Icarus derivation)
-
Sui: SLIP-10: m/44'/784'/0'/0'/0' (ed25519)
-
Polkadot: sr25519 via SURI derivation from seed phrase (//0 hard derivation)
β SECURITY: Private keys are derived in-memory and never written to disk. The encrypted mnemonic is stored in iOS Secure Enclave or Android Keystore, decryptable only with biometric authentication. The app never transmits private keys or mnemonics to RandProof servers.
31.3.2 USDC Cross-Chain Management
USDC is the primary settlement asset for keeper earnings and fee payments. The wallet unifies USDC across:
-
Base, OP, ARB, Ethereum, Polygon: Native USDC (Circle-issued, CCTP V2 bridgeable)
-
Solana: Native USDC (SPL token, CCTP V2)
-
BNB Chain, Avalanche, Moonbeam: Native asset (BNB / AVAX / GLMR), no bridged USDC (AV-49 policy)
-
TON: jUSDT (primary stablecoin on TON)
-
Cardano: ADA (native), no bridged USDC (AV-49 policy)
-
Sui: SUI (native), no bridged USDC (AV-49 policy)
-
Polkadot: USDC via Asset Hub (XCM)
The wallet displays earnings per chain in either native USDC (where CCTP V2 is available) or that chain's native asset (where it is not), rather than presenting a single unified cross-chain USDC balance. RandProof does not bridge user or keeper funds through Wormhole or any other third-party bridge (AV-49 policy); cross-chain transfers, where a user chooses to make them, use CCTP V2 on supported chains only, and the wallet discloses when a chain has no native-USDC option rather than masking it behind a bridged balance.
31.3.3 Transaction Signing & Security Model
-
Biometric Signing: Every transaction (send, stake, unstake, claim, register) requires Face ID / Touch ID / Android biometric confirmation. Cannot be disabled for transactions above $1 equivalent.
-
Spending Limits: Optional daily spending limit (e.g., max $500/day without additional PIN confirmation). Configurable per chain.
-
Phishing Protection: Contract address allowlist for KeeperCoordinator contracts. Any transaction to an unrecognized contract triggers a warning with a 10-second delay before signing.
-
Simulation Preview: All transactions are simulated via Tenderly or Alchemy Simulate before signing. The app shows exact state changes (balances before/after) so users see what will happen before confirming.
-
Hardware Wallet Support: Ledger Nano X / Nano S+ via Bluetooth (iOS and Android). Ledger Live-compatible signing for all EVM chains. Ledger integration for Solana and Cardano via their respective Ledger apps.
-
Session Keys (Phase 2): Optional EIP-7702-style session keys for automated light node operations: pre-authorize small fee withdrawals (under $1) without per-transaction biometric confirmation, with strict per-session spending caps.
31.4 Staking: Mobile UI & User Flow
The staking UI is designed for one-handed operation on mobile. All staking actions are accessible in three taps or fewer from the Node tab.
31.4.1 Staking Dashboard
-
Total Staked (USD): Sum of all stakes across all chains, converted to USD at current prices. Color-coded: green (all above minimum), yellow (one chain approaching minimum), red (one chain below minimum).
-
Per-Chain Stake Cards: Scrollable list of chain cards showing: chain logo, stake amount in native asset and USD, minimum stake, percentage above minimum (e.g., 'At 100% minimum' or '150% of minimum'), and status pill (ACTIVE / AT RISK / INACTIVE).
-
Earnings Pending: USDC accumulated across all chains ready to withdraw. Tap to trigger withdraw-all action.
-
APY / Earnings Rate: Projected monthly earnings based on: current stake weight, network event volume (7-day average), fee per event, and your chains. Updates daily. Shows range: conservative (low-volume month) and optimistic (high-volume month).
-
Unbonding Positions: Any active unstake operations with countdown timer to claim eligibility. Tap to claim when timer reaches zero.
31.4.2 Stake Flow (Step by Step)
-
1. Select Chain: Tap any chain card or use the + Add Chain button to stake on a new chain.
-
2. Enter Amount: Numeric keypad. App shows: current balance, minimum stake, recommended stake (1.5x minimum for buffer). Toggle between native asset and USD display.
-
3. Gas Estimation: App estimates gas cost and shows net cost: stake amount + gas in USD. For EVM chains with low ETH balance, app offers to bridge ETH from another chain via CCTP.
-
4. Review: Summary screen: chain, amount, USD value, gas cost, estimated time to ACTIVE status (~1 block). KeeperCoordinator contract address shown with verified checkmark.
-
5. Biometric Confirm: Face ID / Touch ID. Transaction broadcasts. App shows pending state with transaction hash.
-
6. Confirmation: On-chain confirmation detected. Node status updates to ACTIVE. Push notification sent: 'Staked [amount] on [chain], node now active.'
31.4.3 Unstake & Unbonding Flow
-
1. Select Amount: Partial or full unstake. App warns if partial unstake would drop stake below minimum (would set node to INACTIVE).
-
2. Unbonding Notice: Clear disclosure: 'Stake will be locked for 7 days. Your node remains ACTIVE during unbonding but cannot receive new stake. You can re-stake during unbonding to cancel.'
-
3. Confirm & Sign: Biometric confirmation. Unbonding timer starts on-chain.
-
4. Countdown Widget: The app shows a countdown timer on the Node tab. iOS Lock Screen widget available. Android home screen widget available.
-
5. Claim: When timer reaches zero, a Claim button activates. One tap + biometric to release funds to wallet.
β SLASHING RISK NOTICE: The app displays a persistent warning if any staked chain shows uptime below 85%: 'Your node on [chain] has [X]% uptime. Slashing begins at 80% sustained downtime. Check your node connection.'
31.5 Mobile Light Node: Earn from Your Phone
The mobile light node is the lowest-barrier way to participate in the RandProof network and earn fees. No hardware, no staking beyond a nominal $1β5 anti-spam deposit, no technical setup beyond enabling the feature in the app. The phone runs background tasks that contribute to the network while earning micro-fees.
31.5.1 What the Light Node Does
-
Gossip Relay: Receives signed keeper messages and relays them to other peers in the P2P network, accelerating BLS signature aggregation. Uses WebSocket connections via libp2p. Earnings: 2% of base fee per event relayed. Resource usage: <1 MB/day, ~0.5%/day battery
-
Keepers incorporate confirmed light node entropy as an ADVISORY verification input only (not into the commit-reveal pool). Keepers must independently verify all external entropy values, light node submissions are cross-checked but never trusted directly. Light nodes that submit values mismatching verified entropy 3 times are auto-banned. Rate limited to 1 submission per source per round. (AV-13 fix)
-
Event Detection: Monitors subscribed chains via lightweight WebSocket RPC for DrawRequest events. First detector to broadcast a new event to the keeper network earns the detection bonus. Earnings: 1% of base fee per detected event. Resource usage: ~2 MB/day, ~0.5%/day battery
31.5.2 Light Node Economics at Scale
Estimated monthly earnings for a mobile light node running 16 hours/day:
-
Genesis (100 events/day network-wide): 100 events/day, ~$0.08β$0.15/month
-
Phase 2 (1,000 events/day): 1,000 events/day, ~$0.80β$1.50/month
-
Phase 3 (10,000 events/day): 10,000 events/day, ~$8β$15/month
-
Phase 4 (100,000 events/day): 100,000 events/day, ~$80β$150/month
π‘ **NETWORK EFFECT:** Light node participants are critical to RandProof decentralization. Every phone running a light node increases the gossip network density, reduces fulfillment latency, and strengthens the commit-reveal entropy pool. At 10,000 active light nodes, the network achieves a gossip propagation time under 500ms for any new event across all chains.31.5.3 Background Operation (iOS & Android)
-
iOS (BGTaskScheduler): The app registers a BGProcessingTaskRequest that runs when the device is plugged in, on Wi-Fi, and the screen is off. iOS may delay or throttle execution based on usage patterns, the more consistently the app runs in the foreground, the more reliable background execution becomes. Background sessions may run 1β30 minutes per trigger. App optimizes tasks to complete within iOS-granted windows. Setup: Enable in Settings > General > Background App Refresh > RandProof: ON. For best results, keep app in foreground during peak hours.
-
Android (WorkManager): Uses a Foreground Service with persistent notification (required by Android for long-running background work). WorkManager schedules periodic tasks with NETWORK_TYPE_UNMETERED (Wi-Fi only) and BATTERY_NOT_LOW constraints by default. Android allows more consistent background execution than iOS. Foreground service notification shows: 'RandProof Light Node, Active. X events relayed today.' Setup: Ensure app is excluded from battery optimization: Settings > Apps > RandProof > Battery > Unrestricted.
31.6 Node Contributions & Keeper Management via Mobile
Full keeper node operators use the mobile app as the primary monitoring and management interface for their desktop nodes. The mobile app communicates with the desktop keeper node via an authenticated REST API (secured with a per-device API key generated at pairing time).
31.6.1 Mobile-to-Desktop Node Pairing
-
QR code appears in the terminal (no manual PIN, QR-only exchange, AV-17 fix). Scan with mobile app to establish pairing.
-
2. Scan in mobile app: Node tab > Remote Nodes > Pair New Node. Camera opens, scan QR code.
-
Scan QR code on desktop with mobile app camera, secure Ed25519 key exchange happens automatically. No manual PIN entry. (AV-17 fix)
-
4. Secure channel established: Mobile app and desktop node exchange Ed25519 keypairs. All subsequent communication is end-to-end encrypted. Pairing is device-specific, revoke access from any device remotely.
-
5. Dashboard available: All desktop node metrics now visible in the mobile app in real time.
31.6.2 Real-Time Node Monitoring Metrics
-
Uptime % (rolling 24h, 7d, 30d) with trend arrow
-
Events fulfilled today vs. yesterday vs. 7-day average
-
Current BLS participation rate (% of events where node signed)
-
Fulfillment latency P50 / P95 (milliseconds)
-
Pending earnings by chain (USDC and native)
-
RPC connection status: green (connected), yellow (degraded), red (disconnected) per chain
-
Entropy source health: all 15 sources with last-update time and staleness warning
-
Gossip peer count (target: 5+ peers)
-
Pending events in queue (events detected but not yet fulfilled)
-
Last slash check: 'No slash events. Last verified: [timestamp]'
31.6.3 Remote Actions Available from Mobile
-
Restart keeper process: Graceful restart: completes in-flight fulfillments before restarting. Estimated downtime: <30 seconds.
-
Rotate BLS key: Generates new BLS keypair on desktop, registers on-chain, transitions to new key over 24h window. Old key remains valid during transition to complete in-flight signatures.
-
Add chain: Select a new chain to activate. App prompts for RPC endpoint (or suggests a public endpoint). Desktop node adds the chain and begins staking flow.
-
Remove chain: Graceful withdrawal: unstakes, waits for unbonding, then removes chain from active list.
-
Update RPC endpoint: Override the RPC endpoint for any chain without restarting the full node. Useful when an RPC provider has downtime.
-
Download logs: Fetch the last 1,000 log lines from the desktop node to the mobile app for debugging. Filterable by severity.
-
Emergency pause: Immediately stops fulfillment participation on all chains. Node remains registered and staked but stops signing. Use if you suspect a security issue. Resume requires manual confirmation on both desktop and mobile.
31.7 Push Notification System
Push notifications are delivered via APNs (iOS) and FCM (Android). The RandProof notification server receives events from the keeper network and routes alerts to registered devices. No private key data is ever sent to the notification server, only event metadata.
Node Operator Alerts (High Priority):
-
Node offline (no fulfillments in 30+ minutes): 'β Your node on [chain] has been offline for 30 minutes. Slashing risk increases after 24 hours.'
-
Stake below minimum: 'β Stake on [chain] is below minimum ($[amount] required). Node set to INACTIVE. Top up to reactivate.'
-
Slashing event: 'β Slashing event on [chain]. Reason: [double-sign / offline / invalid signature]. Stake reduced by [amount].'
-
Entropy source stale: 'β [Source] has not updated in [X] minutes. Check your network connection or API endpoint.'
-
BLS key rotation due: 'π Your BLS key is 85 days old. Rotation recommended. Tap to rotate.'
Earnings & Financial:
-
Earnings available: 'π° $[amount] USDC ready to withdraw from [chain]. Tap to collect.'
-
Earnings milestone: 'π You have earned $50 total from RandProof Network. Keep going!'
-
Unbonding complete: 'Unstake complete on [chain]. $[amount] available to claim.'
-
Auto-sweep executed: 'Light node earnings of $[amount] USDC swept to your wallet.'
Event Monitoring (Integrators):
-
PoFR event fulfilled: 'β Event [eventId] fulfilled on [chain]. Winner index: [N]. View RandProof.'
-
Event timeout: 'β° Event [eventId] on [chain] has not been fulfilled after [X] minutes. Manual intervention may be needed.'
-
Contract interaction: 'New DrawRequest from your contract on [chain]. EventId: [id].'
Network & Protocol:
-
New chain supported: 'RandProof now supports [chain]! Add it to your node to earn more.'
-
Protocol upgrade: 'RandProof Keeper v[X.Y.Z] is available. Update recommended within 14 days.'
-
Governance announcement: 'New proposal: [title]. Voting open until [date].'
31.8 Enterprise & Integrator Tools
31.8.1 API Key Management
-
Create API Key: Name the key, set permissions (read-only / read-write), set expiry date (optional), set IP allowlist (optional). Key displayed once, save immediately.
-
Usage Dashboard: Requests per day, requests per key, most-called endpoints, error rate, and latency percentiles.
-
Rotate Key: Generate a new key while old key remains valid for a configurable transition window (1β72 hours).
-
Revoke Key: Immediately invalidate a key. Useful if a key is compromised.
31.8.2 RandProof Artifact Export
Every fulfilled PoFR event can be exported as a compliance document. Supported formats:
-
JSON: Full artifact: eventId, seed, entropy sources with values, BLS aggregate signature, signer addresses, fulfillment block, timestamp, chain ID. Suitable for programmatic verification and API integration.
-
PDF Compliance Certificate: Formatted document with RandProof Network header, event summary, entropy source attestation table, BLS verification proof, QR code linking to on-chain record, and RandProof Network timestamp signature. Suitable for regulatory submissions, legal discovery, audit trails, and court filings.
-
QR Code: Encodes the on-chain verification URL. Printable for physical display at events (e.g., 'Scan to verify this raffle was fair').
-
Shareable Link: randproof.network/verify/[eventId], public URL anyone can visit to independently verify the outcome without the app.
31.9 Mobile App Roadmap
-
Phase 1 (Q3 2026) (Beta release alongside KeeperCoordinator testnet):
-
β’ Core wallet (EVM chains only: Base, OP, ARB, Ethereum)
-
β’ Node staking and earnings management (EVM chains)
-
β’ Live event feed and RandProof verifier
-
β’ Basic push notifications (node offline, earnings available)
-
β’ iOS and Android TestFlight / Beta builds
-
Phase 2 (Q4 2026) (Public launch alongside permissionless staking):
-
β’ Full multi-chain wallet (all 17+ chains)
-
β’ Mobile light node (gossip relay + event detection)
-
β’ WalletConnect v2 integration
-
β’ Enterprise tools (API key management, event monitoring)
-
β’ App Store and Google Play public release
-
Phase 3 (Q1 2027) (Enterprise features and enhanced node management):
-
β’ Remote node pairing and management
-
β’ Entropy submission light node mode
-
β’ RandProof PDF compliance certificate export
-
β’ Ledger hardware wallet integration
-
β’ iOS Lock Screen and Android home screen widgets for node status
-
Phase 4 (Q2βQ3 2027) (Full feature parity and ecosystem integrations):
-
β’ Session keys for automated light node micro-transactions
-
β’ Cross-chain USDC auto-sweep and rebalancing
-
β’ RandProofBox companion mode (manage hardware node from phone)
-
β’ Governance participation (view and vote on proposals)
-
β’ Referral program with in-app tracking
-
β’ Apple Watch / Wear OS companion app for node status glances
31.10 Mobile App Security Model
-
Zero Server-Side Key Storage: RandProof servers never see private keys, mnemonics, or BLS key shares. All signing occurs on-device in the Secure Enclave (iOS) or Android Keystore.
-
Certificate Pinning: The app pins TLS certificates for all RandProof API endpoints to prevent man-in-the-middle attacks. Certificate pins are updated via signed OTA updates.
-
Jailbreak / Root Detection: The app detects jailbroken (iOS) or rooted (Android) devices and displays a security warning. Staking and signing features are disabled on compromised devices.
-
Encrypted Local Storage: All local data (event cache, node metrics, earnings history) is encrypted at rest using AES-256-GCM with keys derived from the device Secure Enclave.
-
No Analytics SDKs with PII: The app uses only privacy-respecting analytics (no Google Analytics, no Facebook SDK). Crash reporting via Sentry with PII scrubbing. No wallet addresses or transaction data in analytics events.
-
Open Source App Code: The RandProof mobile app is fully open-source (MIT license) at github.com/randproof-network/mobile. All cryptographic operations can be independently audited.
30. Node Operator Runbook: Complete Setup & Deployment Guide
This section is the authoritative technical reference for deploying a RandProof keeper node. It covers hardware requirements, software installation, B
32. Multi-Chain Integration Architecture: How Each Chain Secures RandProof
RandProof is not merely deployed on multiple chains: each chain actively contributes to the security, entropy, and payment integrity of the entire pr