MINING GUIDE

Live Mainnet SHA-256d Mine-Only Distribution
Why Mine Irium?

Irium (IRM) is an independent proof-of-work blockchain built with a mainnet-first philosophy.

  • No ICO
  • No presale
  • No VC allocations
  • 100% mine-only distribution

What makes Irium different?

  • Pure Proof-of-Work (SHA-256d) — no staking, no validators; security comes from hash power.
  • Mainnet only — the chain you mine is the real chain.
  • No DNS seeds — bootstrap is cryptographically anchored, not dependent on central services.
  • Founder coins locked on-chain — vesting enforced by consensus rules.
  • Open-source & community-driven — MIT-licensed Rust implementation.

Mining Overview

  • Algorithm: SHA-256d
  • Block time: 600 seconds
  • Block reward: 50 IRM
  • Halving: Every 210,000 blocks
  • Coinbase maturity: 100 blocks
  • Max supply: 100,000,000 IRM

Network Status: check Irium Explorer.

Network Snapshot
572 MH/sNET HASHRATE
174.21DIFFICULTY
0.00% / 0.00%DIFF Δ (1H / 24H)
IRIUM OFFICIAL POOL
  • Pool Endpoint: stratum+tcp://pool.iriumlabs.org:3333
  • Algorithm: SHA-256d
  • Network: Irium mainnet

Recommended miners: Irium CPU miner, ASIC SHA256 miners, GPU miners supporting SHA256d.

1Example CPU miner command
./irium-miner \
--pool stratum+tcp://pool.iriumlabs.org:3333 \
--user YOUR_IRIUM_WALLET \
--threads 4
2Example ASIC configuration
  • Pool URL: stratum+tcp://pool.iriumlabs.org:3333
  • Worker: YOUR_IRIUM_WALLET
  • Password: x
3Pool Status

Connected miners

--

Shares (10 min)

--

Block candidates

--

Submit attempts

--

Last block

--

ASIC / Pool Quick Config
Pool URLstratum+tcp://pool.iriumlabs.org:3333
Fallback URLstratum+tcp://157.173.116.134:3333
Direct IP (backup)stratum+tcp://157.173.116.134:3333
Worker FormatYOUR_IRM_ADDRESS.worker1
Passwordx
ModeSOLO (full block reward goes to the IRM address in the username)
AAntminer / Whatsminer Example
  • Pool 1 (Primary): stratum+tcp://pool.iriumlabs.org:3333
  • Pool 2 (Fallback): stratum+tcp://157.173.116.134:3333
  • Worker: YOUR_IRM_ADDRESS.worker1
  • Password: x

If DNS fails on your network, keep hostname on Pool 1 and use direct IP backup for Pool 2/3. If your miner has stability issues on 3333, use 3335 fallback.

Important: For pool mining, do not point ASICs or third-party miners at local node RPC (127.0.0.1:38300). Use the Stratum pool endpoint.
Verify You’re Mining

After starting your miner, verify activity using your wallet address.

  • https://api.iriumlabs.org/api/pool/account/YOUR_IRM_ADDRESS
  • https://api.iriumlabs.org/api/pool/stats
  • https://api.iriumlabs.org/api/pool/workers?window=144&limit=20

Expect accepted shares to increase, your worker/address to appear in pool stats, and blocks_found/payout history for your address when applicable.

Miner Downloads

Use the official Irium miner for direct node mining. Use a compatible Stratum miner such as cpuminer-opt for pool mining.

CPU Mining with Official Irium Miner

Direct mining via your own node. You need the node fully synced before starting the miner. Mining on a node that is still syncing can cause stale blocks.

1Install Rust (one time)

Go to rustup.rs and install. Open a new terminal.

2Download + build
git clone https://github.com/iriumlabs/irium.git
cd irium
source ~/.cargo/env
cargo build --release
3Start the node (leave running)

Option A — Simple local run

IRIUM_NODE_CONFIG=configs/node.json ./target/release/iriumd

Option B — systemd service

sudo systemctl enable --now iriumd
sudo journalctl -u iriumd -f
4Wait for sync
curl -k https://127.0.0.1:38300/status
  • If you see no peers: wait a few minutes, make sure outbound TCP 38291 is allowed, and confirm bootstrap/seedlist.txt exists.
  • If height stays 0: start node with IRIUM_NODE_CONFIG=configs/node.json, then restart.
5Create a wallet address
./target/release/irium-wallet init
./target/release/irium-wallet new-address
./target/release/irium-wallet list-addresses

Use the address that starts with Q.

6Start mining
export IRIUM_MINER_ADDRESS=<YOUR_IRIUM_ADDRESS>
./target/release/irium-miner --threads <CORES>

Tip: set --threads to CPU cores you want. Miner auto-loads /etc/irium/miner.env if it exists.

7Check balance
./target/release/irium-wallet balance <YOUR_IRIUM_ADDRESS>

Public Stratum Pool

Mine via Irium Public Pool (SOLO)
  • Primary Pool URL: stratum+tcp://pool.iriumlabs.org:3333
  • Fallback URL: stratum+tcp://157.173.116.134:3333 (use only if your miner is unstable on 3333)
  • Username: IRM_ADDRESS.worker1
  • Password: x
  • Mode: SOLO (if a block is found, reward pays to the IRM address in the username).
  • Share policy: Accepted shares are canonical block-capable shares on the active profile.

Troubleshooting & advanced

1If the miner starts at height 0
  • The node is still syncing or the miner cannot reach RPC.
  • Check: curl -k https://127.0.0.1:38300/status
  • Make sure IRIUM_NODE_RPC is correct if mining remotely.
2Optional: set an RPC token (fixes HTTP 429)
export IRIUM_RPC_TOKEN=$(openssl rand -hex 24)
# use the same token for node + miner
3Remote mining (miner only)
export IRIUM_NODE_RPC=http://<node-ip>:38300
4Mobile / Termux notes
  • Builds are slow and phones throttle. Keep the session in the foreground or use tmux.
  • Many mobile networks block inbound peers, but outbound sync can still work.
5Common fixes
  • HTTP 401 → token mismatch. Use the same IRIUM_RPC_TOKEN in node + miner.
  • HTTP 429 → set a token or raise IRIUM_RATE_LIMIT_PER_MIN on the node.
6Check logs
sudo journalctl -u irium-miner -f
7Network hashrate (estimate)
curl http://127.0.0.1:38300/rpc/network_hashrate
curl http://127.0.0.1:38300/rpc/network_hashrate?window=120

Returns an estimate using recent blocks: hashrate, difficulty, avg block time, window, sample blocks, and tip height.

Remote Miner Setup

Run the miner on one machine while your node runs on another host.

1Set RPC endpoint
export IRIUM_NODE_RPC=http://<node-ip>:38300
# or
export IRIUM_NODE_RPC=https://<node-ip>:38300
2Set token if required
export IRIUM_RPC_TOKEN=<same-token-configured-on-node>
3Verify node reachability
curl -sS $IRIUM_NODE_RPC/status
# if TLS self-signed
curl -k -sS $IRIUM_NODE_RPC/status
4Start miner
export IRIUM_MINER_ADDRESS=<YOUR_IRIUM_ADDRESS>
./target/release/irium-miner --threads <CORES>

Then verify with Verify You’re Mining.

Troubleshooting & Advanced
1If miner starts at height 0

Node is syncing or miner cannot reach RPC.

curl -k https://127.0.0.1:38300/status

Ensure IRIUM_NODE_RPC is correct for remote mining.

2Optional: set RPC token (fixes HTTP 429)
export IRIUM_RPC_TOKEN=$(openssl rand -hex 24)
# use same token for node + miner
3Remote mining (miner only)
export IRIUM_NODE_RPC=http://<node-ip>:38300
4Mobile / Termux notes
  • Builds are slow and phones throttle; use foreground/tmux.
  • Many mobile networks block inbound peers, outbound sync still works.
5Common fixes
  • HTTP 401 → token mismatch.
  • HTTP 429 → set token or raise IRIUM_RATE_LIMIT_PER_MIN.
6Check logs
sudo journalctl -u irium-miner -f
7Network hashrate (estimate)
curl http://127.0.0.1:38300/rpc/network_hashrate
curl http://127.0.0.1:38300/rpc/network_hashrate?window=120

Returns estimate using recent blocks: hashrate, difficulty, avg block time, window and tip height.