Skip to content

Paraxiom/quantum-harmony-node

Repository files navigation

QuantumHarmony Node Operator

Run a QuantumHarmony node with one command using Docker.

Prerequisites

Install Docker:

Verify installation:

docker --version
docker-compose --version

System Requirements

Resource Minimum Recommended
RAM 8 GB 16 GB
Swap 4 GB 4-8 GB
Disk 20 GB SSD 50 GB SSD
CPU 2 cores 4 cores
Network 10 Mbps 100 Mbps

Notes:

  • SSD strongly recommended for sync performance
  • Swap space helps prevent OOM crashes during sync
  • Chain data grows over time (~10GB currently)
  • Higher bandwidth speeds up initial sync

Quick Start

# Clone the repo
git clone https://github.com/Paraxiom/quantum-harmony-node.git
cd quantum-harmony-node

# Run setup (installs QSSH, generates keys)
./setup.sh

# Start with one command
./start.sh

Or manually:

docker-compose up -d
docker-compose logs -f node

Open http://localhost:8080 for the operator dashboard.

Architecture

┌─────────────────────────────────────────────────────────┐
│                  NODE OPERATOR STACK                     │
├─────────────────────────────────────────────────────────┤
│                                                          │
│   ┌──────────────────┐    ┌──────────────────────────┐  │
│   │  QuantumHarmony  │    │    LCARS Dashboard       │  │
│   │      Node        │    │    (port 8080)           │  │
│   │   (port 9944)    │    └──────────────────────────┘  │
│   └────────┬─────────┘                                   │
│            │                                             │
│   ┌────────▼─────────────────────────────────────────┐  │
│   │              Nginx Reverse Proxy                  │  │
│   │           (ports 80, 443)                         │  │
│   └──────────────────────────────────────────────────┘  │
│                                                          │
├─────────────────────────────────────────────────────────┤
│   SPHINCS+-256s POST-QUANTUM SECURED                     │
└─────────────────────────────────────────────────────────┘

Services

Service Port Description
node 9944 RPC/WebSocket endpoint
node 30333 P2P networking
node 9615 Prometheus metrics
dashboard 8080 Operator web UI
nginx 80/443 Reverse proxy

Dashboard Features

  • Status: Block height, peers, sync status
  • Transfer: Send QMHY tokens
  • Faucet: Request test tokens
  • Keys: Validator key management
  • Quantum: Post-quantum security status
  • Network: Peer connections and topology
  • Quests: Gamified onboarding (Devonomics)

Devonomics: Gamified Onboarding

Earn QMHY tokens by completing quests. Your node is your character.

Quest Action Reward
Genesis Node syncs to network 100 QMHY
Identity Generate session keys 50 QMHY
Registered Create account 25 QMHY
Connected 3+ peers connected 50 QMHY
Voice Post to validator chat 25 QMHY
Producer Author first block 200 QMHY
Quantum Use QRNG entropy 100 QMHY

Tiers:

  • Bronze: 0-249 QMHY
  • Silver: 250-549 QMHY
  • Gold: 550-999 QMHY
  • Platinum: 1000+ QMHY

See DEVONOMICS.md for full details.

Configuration

Environment Variables

Create a .env file:

NODE_NAME=MyNode

Custom Chain Spec

Replace configs/chain-spec.json with your chain spec.

Network

Production Testnet Bootnodes:

  • Alice: 51.79.26.123
  • Bob: 51.79.26.168
  • Charlie: 209.38.225.4

Ports Required:

  • 30333 - P2P (must be open for peers)
  • 9944 - RPC (optional, for external access)

Commands

# Start all services
./start.sh
# or: docker-compose up -d

# Stop all services
docker-compose down

# View node logs
docker-compose logs -f node

# Restart node only
docker-compose restart node

# Check status
docker-compose ps

Become a Validator

Follow these steps to join the network as a validator:

Step 1: Start Your Node

git clone https://github.com/Paraxiom/quantum-harmony-node.git
cd quantum-harmony-node
docker-compose up -d

Wait for sync to complete (check dashboard at http://localhost:8080 - STATUS tab shows sync progress).

Step 2: Create Your Account

  1. Open http://localhost:8080
  2. Go to KEYS section
  3. Click CREATE ACCOUNT
  4. SAVE YOUR MNEMONIC - it will only be shown once!
  5. Your address appears in the header

Step 3: Get Test Tokens

  1. Go to FAUCET section
  2. Click to request QMHY tokens
  3. Wait for confirmation

Step 4: Generate Session Keys

  1. Go to KEYS section
  2. Click GENERATE NEW KEY
  3. Copy the session keys (public key)

Step 5: Get Your Peer ID

Run this command:

curl -s localhost:9944 -H "Content-Type: application/json" \
  -d '{"id":1,"jsonrpc":"2.0","method":"system_localPeerId"}' | jq -r .result

Step 6: Register with Network

Send to the network admin:

  • Your account address
  • Your peer ID
  • Your session keys (public key)

They will register you in the validator set.

Step 7: Verify

Once registered, your node will start producing blocks. Check:

  • STATUS tab shows "Validator" role
  • NETWORK tab shows your node in the mesh

QSSH: Quantum-Secure Remote Access

QSSH is required for post-quantum security. Without QSSH, connections use classical cryptography vulnerable to quantum attacks.

Install QSSH

git clone https://github.com/Paraxiom/qssh.git
cd qssh
cargo build --release
cargo install --path .

Generate Keys

qssh-keygen -t falcon -f ~/.qssh/operator_falcon
qssh-keygen -t sphincs -f ~/.qssh/operator_sphincs

Connect to Your Cloud Validator

# Create quantum-secure tunnel
qssh -L 9944:localhost:9944 operator@your-validator.cloud:42

# In another terminal, start dashboard
./start.sh ui

# Enter "localhost:9944" in the dashboard endpoint field

Security

Component Algorithm Protection
Key Exchange Falcon-512 Post-quantum
Signatures SPHINCS+-256f Hash-based
Encryption AES-256-GCM Symmetric

Traditional SSH (RSA/ECDSA) is vulnerable to quantum attacks. QSSH protects your validator connections today against future quantum computers.

See docs/QSSH_OPERATOR_GUIDE.md for complete instructions.


Cleanup

To completely remove all containers, images, and data:

# Stop and remove containers
docker-compose down

# Remove the Docker image (to force fresh pull)
docker rmi sylvaincormier/quantumharmony-node:latest

# Remove all data (WARNING: deletes chain data!)
docker volume rm quantum-harmony-node_node-data

# Full reset - remove everything
docker-compose down -v --rmi all

License

Apache-2.0

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published