Supernova Blockchain v1.0.0-RC3: Complete Node Setup and Operation Guide
This guide walks developers through the process of setting up a Supernova node, configuring a wallet, mining, and creating transactions on the production-ready v1.0.0-RC3 network. Supernova combines industry-leading quantum-resistant cryptography with automated environmental consciousness for a secure, sustainable, and scalable blockchain platform.
Production-Ready v1.0.0-RC3 Features
The v1.0.0-RC3 release includes enterprise-grade capabilities:
- Complete Quantum Resistance: Production-ready post-quantum cryptography with CRYSTALS-Dilithium, Falcon, and hybrid schemes
- Environmental Leadership: Fully automated emissions tracking and carbon offsetting with comprehensive reporting
- Lightning Network: World's first quantum-resistant Lightning Network with instant payment channels
- Advanced Security: Enterprise-grade security hardening with comprehensive threat mitigation
- High-Performance Architecture: Optimized for enterprise workloads with improved throughput and latency
- Comprehensive Monitoring: Built-in Prometheus metrics with complete observability
Hardware Requirements Update
Minimum Requirements (Development/Testing)
- CPU: 8 cores (Intel/AMD x64 or ARM64)
- RAM: 16 GB (32 GB recommended)
- Storage: 500 GB NVMe SSD (1 TB recommended)
- Network: 25 Mbps stable connection with low latency
- Operating System: Ubuntu 22.04 LTS, Debian 12, or CentOS Stream 9
Recommended Requirements (Production/Mainnet)
- CPU: 32+ cores with high single-thread performance
- RAM: 64+ GB ECC memory
- Storage: 2+ TB NVMe SSD with RAID 1 for redundancy
- Network: 1 Gbps dedicated connection with < 50ms latency to peers
- Operating System: Ubuntu 22.04 LTS (recommended for production)
Mining Node Requirements (v1.0.0-RC3)
- CPU: 64+ cores optimized for quantum-resistant proof-of-work
- RAM: 32+ GB
- Storage: 1+ TB NVMe SSD
- GPU: NVIDIA RTX 4090 or equivalent (optional but significantly improves mining performance)
- Network: 1 Gbps with < 25ms latency for optimal block propagation
- Power: Renewable energy sources preferred for green mining incentives
Table of Contents
- System Requirements
- Quick Start Guide
- Detailed Installation
- Node Configuration
- Running Your Node
- Mining Setup
- Wallet Operations
- Transactions
- Lightning Network
- Security Best Practices
- Maintenance and Troubleshooting
- Appendix: API Reference
System Requirements
Minimum Requirements (Development/Testing)
- CPU: 4 cores
- RAM: 8 GB
- Storage: 100 GB SSD
- Network: 10 Mbps, stable connection
- Operating System: Ubuntu 20.04+, Debian 11+, or CentOS 8+
Recommended Requirements (Production)
- CPU: 16+ cores
- RAM: 32+ GB
- Storage: 1+ TB NVMe SSD
- Network: 100+ Mbps, low-latency connection
- Operating System: Ubuntu 22.04 LTS
Mining Node Requirements
- CPU: 16+ cores optimized for mining
- RAM: 16+ GB
- Storage: 500+ GB NVMe SSD
- GPU: Optional but beneficial for mining performance
- Network: 100+ Mbps, low-latency connection
Quick Start Guide
For those familiar with blockchain node operation who want to get started quickly:
# Clone repository
git clone https://github.com/username/supernova.git
cd supernova
# Build from source
cargo build --release
# Create configuration
mkdir -p ~/.supernova/config
cp config/node.example.toml ~/.supernova/config/node.toml
# Edit configuration (update reward_address for mining)
nano ~/.supernova/config/node.toml
# Start the node
./target/release/node
Detailed Installation
From Source
Building Supernova from source code provides the most flexibility and ensures you're running the exact code you expect.
- Install Dependencies
# Ubuntu/Debian
sudo apt update
sudo apt install -y build-essential pkg-config libssl-dev git curl
# CentOS/RHEL
sudo dnf install -y gcc make openssl-devel git curl
- Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
- Clone and Build Supernova
git clone https://github.com/username/supernova.git
cd supernova
cargo build --release
- Create Required Directories
mkdir -p ~/.supernova/{config,data,backups}
- Configure Your Node
cp config/node.example.toml ~/.supernova/config/node.toml
nano ~/.supernova/config/node.toml
Using Docker
Docker simplifies deployment and ensures consistent environments across different systems.
- Install Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
- Get Supernova Docker Image
docker pull supernovachain/node:latest
- Create Configuration Directory
mkdir -p ~/supernova/{config,data,backups}
curl -o ~/supernova/config/node.toml https://raw.githubusercontent.com/username/supernova/main/config/node.example.toml
- Edit Configuration
nano ~/supernova/config/node.toml
- Run Supernova Node
docker run -d --name supernova-node \
-p 8000:8000 -p 9000:9000 \
-v ~/supernova/config:/app/config \
-v ~/supernova/data:/app/data \
-v ~/supernova/backups:/app/backups \
supernovachain/node:latest
Node Configuration
Basic Configuration
Edit ~/.supernova/config/node.toml
with the following essential settings:
[node]
chain_id = "supernova-mainnet" # Network to join (mainnet, testnet, etc.)
environment = "Production" # Development, Testnet, or Production
log_level = "info" # Logging verbosity (debug, info, warn, error)
[network]
listen_addr = "/ip4/0.0.0.0/tcp/8000" # Network listening address
max_peers = 50 # Maximum peer connections
[storage]
db_path = "~/.supernova/data" # Blockchain database location
Networking Options
For optimal network connectivity:
[network]
# Add well-known bootstrap nodes
bootstrap_nodes = [
"/ip4/203.0.113.1/tcp/8000/p2p/QmRZf8wnY2HbQP4h6jtKnHBuEF3V59uCnYx9winHcwUwNX",
"/ip4/203.0.113.2/tcp/8000/p2p/QmP7HvWHJwJmPWGHH1XtKuKCrFCbjCSRHZ6bA8n5QkRfzC"
]
# For servers behind NAT
external_addr = "/ip4/your.public.ip/tcp/8000"
# For better peer selection
prefer_ipv6 = false
enable_upnp = true
Storage Settings
Optimize storage for performance:
[storage]
enable_compression = true # Compress blockchain data
cache_size = 1073741824 # Cache size (1 GB)
max_open_files = 1000 # Database file handles
block_cache_size = 268435456 # Block cache size (256 MB)
Advanced Options
For experienced operators:
[advanced]
# Enable quantum signature verification
quantum_resistant_verification = true
# Quantum signature scheme (Dilithium, Falcon, Sphincs)
quantum_signature_scheme = "Dilithium"
# Security level (1-5, higher is more secure but slower)
quantum_security_level = 3
Running Your Node
Command Line Options
Start your node with appropriate options:
# Basic node start
./target/release/node
# With custom config location
./target/release/node --config /path/to/config.toml
# With block import
./target/release/node --import-blocks /path/to/blocks.dat
# With log level override
./target/release/node --log-level debug
# Start with mining enabled
./target/release/node --mine
Using Systemd Service
For production environments, create a systemd service:
- Create Service File
sudo nano /etc/systemd/system/supernova.service
- Add Configuration
[Unit]
Description=Supernova Blockchain Node
After=network.target
[Service]
Type=simple
User=YOUR_USERNAME
ExecStart=/path/to/supernova/target/release/node
WorkingDirectory=/home/YOUR_USERNAME
Restart=on-failure
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
- Enable and Start Service
sudo systemctl daemon-reload
sudo systemctl enable supernova
sudo systemctl start supernova
- Check Status
sudo systemctl status supernova
Node Monitoring
Monitor your node's health and performance:
# View logs
sudo journalctl -u supernova -f
# Check sync status through API
curl -s http://localhost:9000/api/v1/status | jq
# Monitor system resources
htop -p $(pgrep node)
# Set up Prometheus monitoring
# Access metrics at http://your-node-ip:9000/metrics
Mining Setup
Built-in Mining
Enable the built-in miner for solo mining:
- Update Configuration
[mining]
enable = true # Enable built-in mining
threads = 8 # Number of mining threads
reward_address = "snova1..." # Your Supernova reward address
- Restart Node
sudo systemctl restart supernova
- Monitor Mining
# Check mining status
curl -s http://localhost:9000/api/v1/mining/status | jq
# View mining stats
curl -s http://localhost:9000/api/v1/mining/stats | jq
External Miner Setup
For better mining performance, use a dedicated mining application:
- Download Miner
git clone https://github.com/username/supernova-miner.git
cd supernova-miner
cargo build --release
- Configure Miner
nano config.toml
[miner]
node_address = "http://localhost:9000" # Your node's API address
reward_address = "snova1..." # Your Supernova address
threads = 8 # Mining threads
algorithm = "quantum-resistant-pow" # Mining algorithm
# Environmental reporting (optional)
[environmental]
energy_source = "solar" # Energy source type
renewable_percentage = 100 # Percentage of renewable energy
region = "US-CA" # Your region code
- Start Miner
./target/release/supernova-miner
Mining Pool Configuration
Join a mining pool for more consistent rewards:
- Find a Pool
Choose a reputable Supernova mining pool and register an account.
- Configure Pool Mining
./target/release/supernova-miner --pool stratum+tcp://pool.example.com:3333 --user username.worker --pass x
- Monitor Rewards
Most pools provide a web dashboard to track your mining statistics and rewards.
Environmental Reporting
Configure your environmental settings for green mining incentives:
- Enable Environmental Reporting
[environmental]
reporting_enabled = true # Enable environmental reporting
energy_source = "mixed" # Energy source type
renewable_percentage = 75 # Percentage from renewable sources
carbon_offset = true # Whether you use carbon offsets
region = "US-CA" # Your region code
# Optional verification details
[environmental.verification]
provider = "GreenCertProvider" # Verification provider
certificate_id = "GCP-123456" # Energy certificate ID
verification_url = "https://example.com/verify/GCP-123456"
- Get Fee Discounts
Verified green miners may receive fee discounts on the network.
Wallet Operations
Creating a Wallet
- Generate a New Wallet
./target/release/wallet create --output ~/.supernova/wallet.dat
- Set a Strong Password
When prompted, enter a strong password to encrypt your wallet.
- Backup Your Wallet
cp ~/.supernova/wallet.dat ~/.supernova/backups/wallet-$(date +%Y%m%d).dat
Securing Your Wallet
Implement these security practices:
- Encrypt Your Wallet
./target/release/wallet encrypt ~/.supernova/wallet.dat
- Create a Paper Backup
./target/release/wallet paper-backup ~/.supernova/wallet.dat
- Use Hardware Security (Optional)
./target/release/wallet hardware-setup --ledger
Quantum-Resistant Addresses
Generate and use quantum-resistant addresses:
- Generate Address
# Generate with Dilithium (default)
./target/release/wallet new-address --type quantum
# Generate with specific algorithm
./target/release/wallet new-address --type quantum --algorithm sphincs
- List Addresses
./target/release/wallet list-addresses
Transactions
Creating Transactions
Send funds on the Supernova network:
- Basic Transaction
./target/release/wallet send --to snova1... --amount 5.0
- Advanced Transaction
./target/release/wallet send \
--to snova1... \
--amount 5.0 \
--fee 0.001 \
--quantum-protected \
--memo "Payment for services"
- Batch Transactions
./target/release/wallet batch-send transactions.csv
Monitoring Transaction Status
Track your transactions on the network:
- Check Transaction
./target/release/wallet tx-status <TRANSACTION_ID>
- Using the Explorer
Visit the Supernova block explorer at https://explorer.supernovanetwork.xyz
and enter your transaction ID.
Fee Optimization
Optimize transaction fees:
- Check Recommended Fees
./target/release/wallet recommended-fee
- Set Custom Fee
./target/release/wallet send --to snova1... --amount 5.0 --fee 0.00075
Lightning Network
Setting Up Lightning
Enable fast, off-chain transactions with Lightning:
- Initialize Lightning
./target/release/lightning init
- Configure Lightning Node
nano ~/.supernova/lightning/config.toml
[lightning]
listen_addr = "0.0.0.0:9735"
announce_addr = "your.public.ip:9735"
alias = "My Supernova LN Node"
color = "008000" # Green color for node visualization
[fees]
base_fee_msat = 1000 # Base fee in millisatoshis
fee_rate = 10 # Fee rate in parts per million
- Start Lightning Node
./target/release/lightning daemon
Opening Channels
Create payment channels with other nodes:
- Connect to Peer
./target/release/lightning connect <NODE_ID>@<IP_ADDRESS>:9735
- Open Channel
./target/release/lightning open-channel <NODE_ID> --capacity 0.1 --push-amount 0.02
- List Channels
./target/release/lightning list-channels
Lightning Payments
Make fast, low-fee payments:
- Create Invoice
./target/release/lightning create-invoice --amount 0.001 --description "Coffee payment"
- Pay Invoice
./target/release/lightning pay <INVOICE>
- Send Payment
./target/release/lightning send-payment <NODE_ID> --amount 0.001 --description "Direct payment"
Security Best Practices
Implement these security measures:
- Firewall Configuration
# Allow only necessary ports
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
sudo ufw allow 8000/tcp # P2P port
sudo ufw allow 9735/tcp # Lightning (if enabled)
sudo ufw enable
- Regular Updates
# Pull latest updates
cd ~/supernova
git pull
cargo build --release
sudo systemctl restart supernova
- Secure RPC
[rpc]
enabled = true
bind_addr = "127.0.0.1:8545" # Bind to localhost only
auth_required = true
username = "your_username"
password = "your_strong_password"
- Use SSL for API Access
Set up an Nginx reverse proxy with SSL for secure API access.
Maintenance and Troubleshooting
Regular Maintenance
Perform these tasks regularly:
- Check for Updates
cd ~/supernova
git fetch
git log HEAD..origin/main --oneline
- Backup Data
# Backup blockchain data
rsync -av ~/.supernova/data/ ~/backups/supernova-data-$(date +%Y%m%d)/
# Backup wallet
cp ~/.supernova/wallet.dat ~/backups/wallet-$(date +%Y%m%d).dat
- Verify Database Integrity
./target/release/node --verify-db
Common Issues and Solutions
- Node Won't Start
Check logs:
sudo journalctl -u supernova -n 100
- Sync Issues
Try resetting peers:
./target/release/node --reset-peers
- Performance Problems
Adjust cache settings:
[storage]
cache_size = 2147483648 # Increase to 2 GB
- Mining Not Working
Verify reward address:
./target/release/wallet validate-address <YOUR_REWARD_ADDRESS>
Appendix: API Reference
Node API
- Status:
GET /api/v1/status
- Peers:
GET /api/v1/network/peers
- Block Info:
GET /api/v1/blocks/{height}
- Transaction Info:
GET /api/v1/transactions/{txid}
Wallet API
- Balance:
GET /api/v1/wallet/balance
- New Address:
POST /api/v1/wallet/address
- Send Transaction:
POST /api/v1/wallet/send
Mining API
- Mining Status:
GET /api/v1/mining/status
- Submit Work:
POST /api/v1/mining/submit
- Environmental Report:
POST /api/v1/mining/environmental
Lightning API
- Node Info:
GET /api/v1/lightning/info
- Channels:
GET /api/v1/lightning/channels
- Create Invoice:
POST /api/v1/lightning/invoice
- Pay Invoice:
POST /api/v1/lightning/pay
For more information, visit the Supernova Documentation or join the community on Discord.