Connection Profile
- Pool URL:
stratum+tcp://pool.iriumlabs.org:3333 - Username:
IRM_ADDRESS.worker1 - Password:
x - Algorithm: SHA-256d
- Mode: SOLO payout to username wallet address
Technical Whitepaper - Version 1.0
Irium is a purpose-built proof-of-work blockchain designed to maximize network independence and long-term survivability. The protocol eliminates reliance on DNS infrastructure, enforces transparent founder vesting via on-chain timelocks, incentivizes transaction relay quality without inflation, and prioritizes light client usability from genesis. This whitepaper outlines the core design principles, system architecture, monetary policy, and implementation status of the IRM asset and its supporting network.
Current Implementation: Production mainnet is LIVE; core innovations are operational, with NiPoPoW proofs implemented.
Most established proof-of-work networks inherit architectural assumptions from Bitcoin, including DNS-based bootstrapping, addrman-driven peer discovery, and an absence of protocol-level incentives for fast relay. Irium rethinks these components to produce a mainnet that can launch and sustain itself even if all founding infrastructure disappears.
Irium launched on January 5, 2026 with: - Mined genesis block at Bitcoin-standard difficulty (0x1d00ffff) - Zero DNS dependencies - Complete P2P networking - All services operational
Status: 6/6 implemented.
| Parameter | Value |
|---|---|
| Ticker | IRM |
| Algorithm | SHA-256d (Bitcoin-compatible) |
| Max Supply | 100,000,000 IRM |
| Genesis Vesting | 3,500,000 IRM (3.5%) |
| Mineable Supply | 96,500,000 IRM (96.5%) |
| Block Time | 600 seconds (10 minutes) |
| Initial Reward | 50 IRM |
| Halving Interval | 210,000 blocks (~4 years) |
| Difficulty Retarget | 2016-block retarget until height 16,462, then LWMA |
| Coinbase Maturity | 100 blocks |
| Min Transaction Fee | 0.0001 IRM (10,000 satoshis) |
| P2P Port | 38291 |
Irium separates responsibilities into modular subsystems:
Irium uses double SHA-256 hashing, identical to Bitcoin:
block_hash = SHA256(SHA256(header))
valid_block = block_hash < target
Benefits: - 16+ years of battle-testing - Compatible with Bitcoin mining hardware (ASICs, GPUs) - Well-understood security properties - Existing mining infrastructure
Genesis Block: - Nonce: 1,842,179,559 - Hash: 0000000028f25d65557e9d8d9e991f516c00d68f5aeae10b750645b398bd10a3 (valid mainnet PoW) - Mined: January 5, 2026
Target: 600 seconds per block (10 minutes) Retarget: Bitcoin-style 2016-block adjustment until mainnet height 16,462, then LWMA
Implementation note: Mainnet keeps SHA-256d and the 10-minute target. The scheduled code-defined activation height for LWMA is 16,462.
Pre-activation algorithm:
expected_time = 2016 * 600 # 1,209,600 seconds
actual_time = last_block_time - first_block_time
new_difficulty = old_difficulty * (actual_time / expected_time)
After activation, LWMA derives the next target from recent solve times while preserving the same PoW and block target cadence.
Each block must satisfy:
1. block_hash < target (proof-of-work)
2. Merkle root matches transaction tree
3. Timestamp within consensus range
4. All transactions valid (no double-spends)
5. Coinbase reward ≤ subsidy + fees
6. Block connects to valid chain tip
Implementation: src/chain.rs (block header validation)
Total Supply: 100,000,000 IRM (hard cap)
Genesis Vesting (3.5%): 3,500,000 IRM - 1,000,000 IRM unlocks at block 52,560 (~1 year) - 1,250,000 IRM unlocks at block 105,120 (~2 years) - 1,250,000 IRM unlocks at block 157,680 (~3 years)
Mineable Supply (96.5%): 96,500,000 IRM - Distributed via block rewards - Halves every 210,000 blocks - Fair distribution through mining
| Block Range | Reward | Blocks | Total IRM |
|---|---|---|---|
| 1 - 210,000 | 50 IRM | 210,000 | 10,500,000 |
| 210,001 - 420,000 | 25 IRM | 210,000 | 5,250,000 |
| 420,001 - 630,000 | 12.5 IRM | 210,000 | 2,625,000 |
| 630,001 - 840,000 | 6.25 IRM | 210,000 | 1,312,500 |
| ... | Continues halving | ... | ... |
Total mineable: 96,500,000 IRM over ~80 years
Minimum Fee: 0.0001 IRM (10,000 satoshis)
Fee Distribution: - 90% to block miner - 10% to relay nodes (up to 3 relays) - First relay: 50% of relay pool - Second relay: 30% of relay pool - Third relay: 20% of relay pool
Comparison: - Bitcoin: ~0.001 BTC (~$30-50 USD) - Irium: 0.0001 IRM (fraction of a cent)
Ultra-low fees enable micropayments and frequent transactions.
Problem: DNS is centralized, censorable, and a single point of failure.
Irium Solution:
- Signed seedlist.txt with raw IP multiaddrs (IPv4 + IPv6)
- Signed anchors.json with checkpoint block headers
- Bootstrap script: scripts/irium-zero.sh (no DNS queries)
- Distributed via GitHub, IPFS, torrents
- Signature verification via SSH signatures (sshsig), validated with ssh-keygen -Y verify and bootstrap/trust/allowed_signers
Status: ✅ Implemented and operational
Files:
- bootstrap/seedlist.txt - Seed node IPs
- bootstrap/anchors.json - Chain checkpoints
- scripts/irium-zero.sh - Bootstrap script
Problem: Networks need stable, honest peers; centralized trackers create vulnerabilities.
Irium Solution:
- Uptime proof system (HMAC challenges)
- Peer reputation scoring (0-1000 scale)
- Automatic peer promotion/demotion
- Network 'remembers' reliable peers
- seedlist.runtime updated automatically
Status: ✅ Implemented (src/reputation.rs, src/network.rs, src/p2p.rs)
Implementation Notes:
- P2P message types: UptimeChallenge, UptimeProof
- Capability: uptime_hmac_v1
- HMAC key derived from node ID pair; timestamp window defaults to 5 minutes
Reputation Factors: - Successful connections: +2 points each - Failed connections: -5 points each - Valid blocks shared: +10 points each - Invalid blocks: -50 points each - Uptime proofs: +5 points each
Thresholds: - Trusted peer: Score > 80 - Banned peer: Score < 20
Problem: Founder allocations often lack transparency or enforcement.
Irium Solution: - 3.5M IRM locked in genesis block - 3 separate UTXOs with OP_CHECKLOCKTIMEVERIFY - Unlock heights: 52,560 / 105,120 / 157,680 blocks - Consensus-enforced (cannot be spent early) - Fully transparent in genesis.json - Irreversible timelock
Status: ✅ Implemented in genesis block
Genesis Allocations:
{
"founder_vesting_1y": 1000000 IRM (52560 blocks)
"founder_vesting_2y": 1250000 IRM (105120 blocks)
"founder_vesting_3y": 1250000 IRM (157680 blocks)
}
Problem: No incentive to run relay nodes; slow transaction propagation.
Irium Solution: - Relay nodes earn 10% of transaction fees - Up to 3 relays per transaction - Distribution: 50%, 30%, 20% - Included in coinbase transaction - No supply inflation (comes from tx fees)
Status: ✅ Implemented (src/relay.rs)
Example: - Transaction fee: 0.001 IRM - Relay pool: 0.0001 IRM (10%) - First relay earns: 0.00005 IRM (50%) - Second relay earns: 0.00003 IRM (30%) - Third relay earns: 0.00002 IRM (20%) - Miner earns: 0.0009 IRM (90%)
Problem: Botnets can saturate networks with fake peers.
Irium Solution: - Proof-of-work challenge during handshake - Ephemeral key signing - Timestamp validation (5 minute window) - Configurable difficulty (default: 8 bits) - Trivial for legitimate nodes, prohibitive for bots
Status: ✅ Implemented (src/sybil.rs)
Process: 1. Node A sends PoW challenge to Node B 2. Node B solves challenge (8-bit PoW) 3. Node B returns proof with signature 4. Node A verifies proof and timestamp 5. Connection established if valid
Problem: Eclipse attacks can feed new nodes false chains.
Irium Solution:
- Signed checkpoint headers (anchors.json)
- Multiple trusted signers
- New nodes verify chain against anchors
- Protects even if all peers are malicious
Status: ✅ Implemented (src/anchors.rs)
Anchor Structure:
{
"height": 0,
"hash": "0000000028f25d65557e9d8d9e991f516c00d68f5aeae10b750645b398bd10a3",
"timestamp": 1767583930,
"signatures": ["..."]
}
Problem: Mobile devices can't store full blockchain.
Irium Solution: - SPV (Simplified Payment Verification) - NiPoPoW (Non-Interactive Proofs of Proof-of-Work) - Header-only sync - Merkle proof verification - Superblock proofs for ultra-light clients
Status: ✅ Implemented (header chain, merkle proofs, and NiPoPoW proofs)
Light Client Benefits: - Download only headers (~80 bytes per block) - Verify transactions with merkle proofs - NiPoPoW: Logarithmic proof size - Mobile wallet ready
Problem: No native way to timestamp documents.
Irium Solution: - Coinbase metadata field - Hash pointers to off-chain data - Notarization layer - Immutable timestamp proofs
Status: ✅ Implemented (coinbase OP_RETURN via IRIUM_COINBASE_METADATA / IRIUM_NOTARY_HASH)
Runtime Controls:
- IRIUM_COINBASE_METADATA: arbitrary string (hashed if not 32-byte hex)
- IRIUM_NOTARY_HASH: 32-byte hex hash
Use Cases: - Document timestamping - Code release verification - Copyright proof - Supply chain tracking
Header (80 bytes):
Version (4 bytes)
Previous Hash (32 bytes)
Merkle Root (32 bytes)
Time (4 bytes)
Bits (4 bytes)
Nonce (4 bytes)
Block: - Header (80 bytes) - Transaction count (varint) - Transactions (variable)
UTXO Model (like Bitcoin): - Inputs: References to previous outputs - Outputs: New spendable amounts - Signature: Proves ownership
Transactions are organized in a merkle tree: - Leaves: Transaction hashes - Root: Included in block header - Allows SPV proofs
Message Format:
[Version:1][Type:1][Length:4][Payload:N]
Message Types: - HANDSHAKE (1) - Connection establishment - PING (2) / PONG (3) - Keepalive - GET_PEERS (4) / PEERS (5) - Peer exchange - GET_BLOCKS (6) / BLOCK (7) - Block sync - TX (10) - Transaction propagation
Configuration: - Default port: 38291 - Max peers: 8000 per node (production-optimized for network scale) - Ping interval: 60 seconds (public nodes), 30 seconds (NAT nodes for keepalive) - Peer timeout: 180 seconds - Message timeout: 180 seconds - Cleanup check: 30 seconds
NAT Traversal: - Nodes behind NAT use 30-second ping interval to maintain session keepalive - Public nodes use 60-second interval for efficiency - Both configurations fully compatible and interoperable
Security: - Sybil-resistant handshake - Peer reputation tracking - Automatic cleanup of dead peers - DoS protection (message size limits)
51% Attack: - Requires majority of network hashpower - Economically infeasible for established network - Detected via peer consensus
Double-Spend: - Prevented by UTXO model - Each output can only be spent once - Validated in every block
Long-Range Attack: - Mitigated by anchor checkpoints - New nodes verify against signed anchors - Multiple trusted signers
Eclipse Attack: - Mitigated by anchor file verification - Suspicious peers detected and banned - Multiple seed nodes
Sybil Attack: - PoW handshake prevents mass bot connections - Peer reputation system - Connection limits
DoS Attack: - Message size limits (100KB max per tx) - Mempool limits (1000 tx max) - Peer connection limits (8 max) - Rate limiting
Security Audit Summary: - ✅ Consensus: Secure - ✅ P2P Network: Secure - ✅ Transactions: Secure - ✅ Wallet: Secure
Core Blockchain: - ✅ Genesis block specification and mining - ✅ Block validation and chain state - ✅ SHA-256d proof-of-work - ✅ Difficulty adjustment - ✅ UTXO tracking - ✅ Transaction validation
P2P Networking: - ✅ Binary message protocol - ✅ Peer discovery and management - ✅ Block propagation
P2P Network Architecture: - ✅ Binary message protocol (13 message types) - ✅ Peer discovery and management (runtime seedlist) - ✅ Block propagation (PUSH-based broadcasting) - ✅ Transaction broadcasting - ✅ Handshake and adaptive keepalive (60s public, 30s NAT) - ✅ NAT traversal support (outbound connections) - ✅ IP:PORT deduplication (multi-service support) - ✅ Self-connection detection (public IP aware)
NAT Support:
Irium fully supports nodes behind NAT/firewalls (same as Bitcoin):
The network requires at least one public bootstrap node. Bootstrap seeds are listed in:
- bootstrap/seedlist.txt (signed baseline)
- bootstrap/seedlist.extra (unsigned additions)
Runtime Seedlist:
Nodes maintain a dynamic peer list (bootstrap/seedlist.runtime):
- Automatically saves discovered peers (incoming + outgoing)
- Persists between restarts for network resilience
- Enables decentralized peer discovery
- Reduces dependency on hardcoded bootstrap nodes
- ✅ Transaction broadcasting
- ✅ Handshake and keepalive
Wallet System: - ✅ Key generation and management - ✅ Transaction creation and signing - ✅ QR code generation - ✅ REST API
Advanced Features: - ✅ Blockchain explorer API - ✅ Advanced mempool with fee prioritization - ✅ Uptime proofs and peer reputation - ✅ Sybil-resistant handshake - ✅ Relay reward system - ✅ Anchor verification - ✅ SPV + NiPoPoW proofs
Mainnet Status: ✅ LIVE
Public Services:
- Explorer API: self-hosted via /api (reverse proxy optional)
- Wallet API: self-hosted via /wallet (reverse proxy optional)
- P2P Network: see bootstrap/seedlist.txt for bootstrap seeds
Irium follows rough consensus and public review.
Upgrade Process: 1. Draft improvement proposal 2. Community review and discussion 3. Prototype implementation 4. Multi-stakeholder audit 5. Network upgrade via miner signaling
No on-chain governance; decisions made through code and consensus.
Real-time pool access layer inside the Irium ecosystem: endpoint, setup profile, and direct actions for miners.
stratum+tcp://pool.iriumlabs.org:3333IRM_ADDRESS.worker1xUse DNS endpoint for resilience. Raw host IP is intentionally not listed for network security.
Irium represents a new generation of blockchain technology that addresses fundamental challenges in decentralization, security, and accessibility. With all 8 core innovations implemented and operational, Irium is ready to serve as a foundation for the next era of cryptocurrency.
Network Status: Mainnet LIVE and operational Code Status: Production-ready, open source Community: Welcome to join and contribute
Hash: 0000000028f25d65557e9d8d9e991f516c00d68f5aeae10b750645b398bd10a3 Nonce: 1,961,837,199 Timestamp: 1767583930 (January 5, 2026) Merkle Root: cd78279c389b6f2f0a4edc567f3ba67b27daed60ab014342bb4a5b56c2ebb4db Difficulty: 0x1d00ffff (mainnet)
Mining Stats: - Total hashes: 5,405,910,517 - Mining time: 7 hours 4 minutes - Hashrate: 212,670 H/s average
Irium Blockchain © 2025 MIT License - Open Source
Built for true decentralization
Genesis launched at standard Bitcoin difficulty: 0x1d00ffff
The genesis block was mined with proper Bitcoin-standard difficulty calculation:
# Standard Bitcoin compact target calculation
def to_target(bits: int) -> int:
exponent = bits >> 24
mantissa = bits & 0xFFFFFF
if exponent <= 3:
return mantissa >> (8 * (3 - exponent))
else:
return mantissa << (8 * (exponent - 3))