准备工作
在加入 HyMatrix 网络之前,节点运营者需要完成两项基础准备:
- 一台满足运行要求的服务器或设备(物理机/云主机均可)
- 一个有效的钱包地址(用于注册节点身份、质押 AX/tAX、签名和惩罚机制)
这两者共同构成节点的运行基础与身份标识。
机器环境要求
HyMatrix 节点可以通过预编译版本运行,亦支持从源码构建。如需自行编译,请确保服务器满足下列系统与软件要求。如需参与生产级网络或开放对外服务,建议节点部署在高性能、高可用的公网服务器上。
系统硬件配置建议
| 项目 | 最低要求 | 推荐配置 |
|---|---|---|
| 操作系统 | Linux(Ubuntu 20.04+) | Ubuntu / Debian / Fedora |
| CPU | 2 核 | 8 核及以上,多线程优化效果更佳 |
| 内存 | 4 GB | 16 GB 或更高 |
| 存储 | 50 GB SSD 起步 | ≥200 GB SSD / NVMe |
| 网络带宽 | 上下行 ≥100 Mbps | ≥1000 Mbps 稳定公网带宽 |
| 公网访问 | 必须具备公网 IP | 推荐配置 HTTPS 域名(含 DNS) |
| GPU(可选) | 非必须,但推荐用于 AI 场景 | NVIDIA ≥8GB 显存 |
软件依赖
| 组件名称 | 版本要求 | 是否必须 | 用途说明 |
|---|---|---|---|
| Docker | 27.3.1 | ✅ 必需 | 节点任务容器运行环境,支持多种虚拟机(如 Docker / WASM) |
| Redis | 最新稳定版 | ✅ 必需 | 节点内部任务调度、消息队列与缓存功能 |
| Go | ≥ 1.24.0 | 可选(仅源码构建时需要) | 编译 HyMatrix 节点客户端源代码 |
| Git | 最新稳定版 | 可选(仅源码构建时需要) | 克隆节点代码仓库、管理依赖与构建工具链 |
💡 说明:
- 如你使用官方提供的预编译版本运行节点,可跳过 Go / Git 安装;
钱包准备(节点身份)
在 HyMatrix 网络中,每个节点必须绑定一个唯一的钱包地址,作为其在网络中的身份标识。该钱包不仅用于身份认证,也是经济活动(如质押、惩罚)的执行账户。
钱包的核心用途包括:
- 📝 节点注册与身份签名
- 🔐 对执行日志进行签名与验证
- 💰 提交质押 AX(测试网为 tAX)以接入网络
- ⚠️ 接收挑战请求与触发 Slash 惩罚(如验证失败)
支持的钱包格式
HyMatrix 网络原生支持以下两种主流钱包格式,功能完全等效,节点可任选其一用于注册与运营:
| 钱包类型 | 描述说明 |
|---|---|
| 以太坊钱包 | 基于 ECDSA(secp256k1)标准,广泛兼容 Web3 工具 |
| Arweave 钱包 | 基于 RSA 密钥,适用于已集成 Arweave 网络的节点 |
💡 性能建议:
使用 以太坊钱包 的节点签名效率更高,推荐对性能有较高要求的节点运营者优先采用。
使用以太坊钱包
适合已熟悉 Web3 工具链的用户,可通过常见方式快速生成。
方法 1:使用 MetaMask
- 安装 MetaMask 浏览器插件
- 创建账户并保存助记词 / 私钥
- 导出私钥供节点程序使用
- 节点将使用该地址进行身份注册与签名
方法 2:使用 ethers.js 脚本生成
npm install ethers
创建文件 wallet.js 并填入下面代码:
const { Wallet } = require('ethers');
const wallet = Wallet.createRandom();
console.log("Address:", wallet.address);
console.log("Private Key:", wallet.privateKey);
运行脚本:
node wallet.js
输出的钱包地址和私钥即为节点注册身份,请妥善保存。
使用 Arweave 钱包
适用于希望直接使用 Arweave 存储生态或偏好 JSON 钱包格式的用户。
方法 1:通过 Wander 插件生成
- 安装 Wander 插件
- 创建新钱包或导入已有助记词
- 导出 JSON(Keyfile)包文件并用于节点程序中加载
方法 2:使用官方 Arweave Js 工具
npm install arweave
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);
});
该代码将生成一个 JSON 格式的 Arweave 钱包文件,可直接作为节点身份使用。