Skip to main content

Preparation

Before joining the HyMatrix network, node operators need to complete two essential preparations:

  1. A server or device that meets the runtime requirements (physical or cloud-based)
  2. A valid wallet address (used for node registration, staking AX/tAX, signing, and penalty mechanisms)

Together, these form the foundation for node operation and identity within the network.


Machine Requirements

HyMatrix nodes can be run using precompiled binaries or built from source. If compiling from source, ensure your server meets the following system and software requirements. For production environments or publicly available services, it's recommended to deploy nodes on high-performance, reliable servers with public IP access.

Suggested Hardware Configuration

ItemMinimum RequirementsRecommended Configuration
OSLinux (Ubuntu 20.04+)Ubuntu / Debian / Fedora
CPU2 cores8 cores or more, with multithreading
Memory4 GB16 GB or more
Storage50 GB SSD minimum≥200 GB SSD / NVMe
Bandwidth100 Mbps up/down≥1000 Mbps stable public bandwidth
Public AccessMust have public IPHTTPS domain (with DNS) recommended
GPU (optional)Not required, but recommended for AI workloadsNVIDIA ≥8GB VRAM

Software Dependencies

ComponentVersionRequiredDescription
Docker27.3.1✅ RequiredRuntime for VM containers (Docker/WASM/etc.)
RedisLatest stable✅ RequiredInternal task queue, messaging, and caching
Go≥ 1.24.0Optional (only for source builds)Go language toolchain for building nodes
GitLatest stableOptional (source builds only)Source control for cloning HyMatrix repo

💡 Notes:

  • If using the precompiled binaries, you may skip installing Go/Git.

Wallet Setup (Node Identity)

In the HyMatrix network, each node must bind to a unique wallet address as its on-chain identity. The wallet is used for identity verification and also serves as the operational account for all economic activities (staking, slashing, etc.).

Main wallet use cases:

  • 📝 Node registration and signing
  • 🔐 Signing and verifying execution logs
  • 💰 Staking AX (or tAX in testnet) to join the network
  • ⚠️ Responding to challenges and potential slashing

Supported Wallet Types

HyMatrix supports two mainstream wallet formats, with full feature parity. You may choose either for registration and node operation:

Wallet TypeDescription
Ethereum WalletECDSA (secp256k1), compatible with Web3 tooling
Arweave WalletRSA keypair, used in Arweave-integrated environments

💡 Performance Tip:
Ethereum wallets provide faster signing and are recommended for performance-sensitive nodes.

Using an Ethereum Wallet

Suitable for users familiar with Web3 tooling. Two common methods:

Method 1: MetaMask

  1. Install MetaMask browser extension
  2. Create an account and save the seed phrase/private key
  3. Export the private key for use with the node
  4. The node will use this address for identity registration and signing

Method 2: Generate via ethers.js

npm install ethers

Create a file wallet.js with:

const { Wallet } = require('ethers');
const wallet = Wallet.createRandom();
console.log("Address:", wallet.address);
console.log("Private Key:", wallet.privateKey);

Then run:

node wallet.js

The output wallet address and private key will serve as your node identity. Keep them safe.

Using an Arweave Wallet

Ideal for users in the Arweave ecosystem or who prefer JSON-style wallets.

Method 1: Via Wander Extension

  1. Install Wander browser extension
  2. Create or import a wallet
  3. Export the JSON (Keyfile) for use with the node

Method 2: Generate via Arweave SDK

npm install arweave

Create a script:

const fs = require('fs');
const Arweave = require('arweave');

Arweave.init().wallets.generate().then(async (key) => {
fs.writeFileSync('arweave-key.json', JSON.stringify(key));
const address = await Arweave.init().wallets.jwkToAddress(key);
console.log('Arweave wallet address:', address);
});

This will generate a JSON-format wallet file, which can be used directly for node identity in HyMatrix.