智能合约
HashNut 的支付基础设施建立在经过审计的智能合约之上,确保安全、透明和非托管的资金管理。
合约架构
核心合约
PaymentSplitter 合约
管理所有支付操作的主合约:
关键函数:
batchCreateReceiptWallets(count): 创建地址池claimReceiptERC20Tokens(...): 聚合资 金releaseERC20Tokens(...): 提现资金setWithdrawalAddress(...): 配置提现
合约类型
EVM 链 (Ethereum、Polygon、BSC 等)
合约: PaymentSplitterLogic
标准:
- ERC-20 兼容
- EIP-712 签名支持
- EIP-1559 gas 优化
TRON 网络
合约: PaymentSplitterLogicTron
标准:
- TRC-20 兼容
- TRON 特定优化
合约部署
部署过程
工厂模式
HashNut 使用单例工厂模式以优化 gas:
优势:
- ✅ Gas 节省: 共享工厂降低部署成本
- ✅ 确定性地址: 可预测的合约地址
- ✅ 可升级性: 工厂可以部署更新版本
- ✅ 安全性: 集中式工厂管理
地址池系统
收款钱包创建
地址分配
功能:
- 自动分配: 系统自动分配地址
- 池管理: 跟踪已用/可用地址
- 确定性: 地址可以在需要时重新生成
- 批量创建: 在一个交易中创建多个地址
资金管理
支付接收
资金聚合
功能:
- 批量处理: 每个交易最多处理 50 个钱包
- 选择性聚合: 只处理余额 充足的钱包
- 多代币: 在一个交易中聚合多种代币类型
- Gas 优化: 最小金额阈值降低 gas 成本
资金提现
功能:
- 多代币提现: 在一个交易中提现多种代币
- 费用计算: 透明的平台费用计算
- 提现地址: 资金发送到预配置的地址
- 链上验证: 所有提现在区块链上验证
合约安全
安全功能
安全措施:
- ✅ 访问控制: 只有合约所有者可以执行关键函数
- ✅ 经过审计的代码: 定期第三方安全审计
- ✅ 开源: 合约代码可在链上验证
- ✅ 不可变核心: 关键支付逻辑无法更改
- ✅ 多签支持: 可选的多签钱包
审计报告
HashNut 合约接受定期安全审计:
- 第三方安全公司
- 公开审计报告
- 持续监控
- Bug 赏金计划
合约地 址
测试网地址
Ethereum Sepolia:
- Factory:
0x... - PaymentSplitter:
0x...
Polygon Mumbai:
- Factory:
0x... - PaymentSplitter:
0x...
TRON Shasta:
- Factory:
T... - PaymentSplitter:
T...
主网地址
即将推出: 主网合约地址将在此发布。
合约交互
读取合约状态
// Example: Check receipt wallet balance
const balance = await contract.getReceiptWalletBalance(
receiptAddress,
tokenAddress
);
写入合约
// Example: Aggregate funds
const tx = await contract.claimReceiptERC20Tokens(
tokenAddresses,
minAmounts,
startIndex,
endIndex
);
await tx.wait(); // Wait for confirmation
Gas 优化
批量操作
优化策略:
- 批量创建: 在一个交易中创建 50 个地址
- 批量聚合: 每个交易处理最多 50 个钱包
- 选择性处理: 只处理余额充足的钱包
- Gas 估算: 执行前预计算 gas 成本
合约升级
可升级性
HashNut 合约使用:
- 代理模式: 用于可升级合约
- 工厂更新: 工厂可以部署新合约版本
- 向后兼容: 保持与现有集成的兼容性
下一步
准备部署? 查看 账户创建 →