| 参数 | 值 | 说明 |
|---|---|---|
| 代币符号 | AIB | 8 位小数,最小单位 sat(1 AIB = 10⁸ sats) |
| 总量上限 | 3,141,592,653 AIB (π×10⁹) | 绝对上限,链上强制,永不再增发 |
| PoW 初始补贴 | 747 AIB/块 | h1–h10,000 引导窗口 |
| 减半周期 | 2,102,400 块 (≈4年) | Bitcoin 式减半 |
| 出块间隔 | 60 秒 | 难度调整窗口 64 块,幅度钳制 [1/4, 4x] |
| PoS 时代增发 | 0 | h10,001 起无 coinbase,验证者只收手续费(fee-to-validator) |
| 手续费销毁 | 部分销毁(fee-burn) | 详见 RFC-002 |
当前流通量 ≈ PoW 窗口铸造量(h1–10,000 × 747 ≈ 747 万 AIB)+ PoS 时代零增发。任何"转 1000 万 AIB"的请求需先核对流通量。
// 出块者选择 (每高度每 attempt)
msg = "AIB-VRF-v1" || seed || height
output = SHA512(pubkey || msg || ed25519.Sign(msg))
ticket = SHA256("AIB-VRF-v1" || seed || height || output)
命中条件: ticket < stake × 2²⁵⁶ / totalStake // 质押占比 = 中签概率
// slot 空转时按 attempt 轮转重抽 (v0.11.32+,防卡死)
验证者被抽中后签名出块(ed25519)。多 attempt 轮转解决离线验证者导致的链停滞(P27)。
gossip 投票机制:验证者对近期块投票,2/3 质押权重确认后块标记 finalized,finalized 块禁止回滚。非侵入式设计(不改块头格式)。
| 参数 | 值 | 说明 |
|---|---|---|
| 最低质押 | 1,000 AIB | MinStakeAmount |
| 生效 | 下一块 | validator 集每个区块重建,质押即挖 |
| UnstakeCooldown | 3 块 (~1.5-3 分钟) | 解除质押冷却 |
| UnstakeUnlock | 2 块 (~1-2 分钟) | 币回到流动余额 |
| StakeLockPeriod | 3 块 | 最小防重组深度 |
| 奖励 | 块内全部手续费 | fee-to-validator,PoS 无 coinbase |
一句话:质押进去 ~1-2 分钟开挖,拿出来 ~2 分钟到账,无锁定期。权重 = 你的质押 / 全网总质押,当前全网总质押见 GET /v1/stake/validators。
签名体系: ed25519(确定性签名,无随机数陷阱,验签快)。AIB 是 PoS 链,每个区块的提议与投票、每个 validator 的握手都在签名/验签,ed25519 是这一场景的工程最优解。
AIB 地址 = ed25519 公钥原样 32 字节(非哈希型地址)。同一学派:Solana / Cardano / Stellar / Algorand / Nano。链上与 API 的规范格式(canonical)是 64 位 hex;人机界面推荐使用 AIB1… bech32m 显示格式(带校验和,防手滑,不可与 EVM 0x 地址混淆)。
| 格式 | 形态 | 用途 | 校验和 |
|---|---|---|---|
| AIB1…(大写) | AIB1W4GT7S3DG…R6VZT(约62字符) | 显示/输入推荐格式(钱包、Explorer、对话中粘贴) | ✓ bech32m 6位(敲错一位必拒) |
| aib1…(小写) | aib1w4gt7s3dg…r6vzt | 同上,全小写合法形态(BIP-350 允许全大写或全小写,拒绝混合) | ✓ 同上 |
| 64位hex(裸) | 7550bf42…1d51a37 | 链上/API 规范格式(canonical),程序对接用 | ✗ 无 |
| 0x…(EVM) | 0xf1bf…df0c(40位) | AIB 链不存在此格式。发往 0x 地址的交易会被节点直接拒绝(INVALID_REQUEST,不会上链、资金不损失) | — |
换算关系:AIB1 显示地址 ↔ 64位hex 是同一 32 字节的两种拼写,任何钱包/Explorer/API 应同时接受(v0.11.42 起转账 API 已双格式兼容)。
| 维度 | AIB(ed25519 32B) | ETH(0x+20B 哈希) | Bitcoin(base58check) |
|---|---|---|---|
| 签名算法 | ed25519(确定性) | ECDSA secp256k1 | ECDSA secp256k1 |
| 随机数坏→私钥泄露 | 数学上不可能 | ✗ 历史真实盗币(Sony/安卓钱包) | ✗ 同左 |
| 验签速度 | ~50µs(最快档) | ~200-400µs | ~200-400µs |
| 地址=身份 | 公钥本身就是地址 | 公钥的 keccak 哈希后20字节 | 公钥的双重哈希 |
| 防打错校验和 | AIB1 格式 ✓(6位bech32m) | 半个(EIP-55 大小写) | ✓ 完整 |
| 前缀可辨识 | AIB1 格式 ✓ | ✓ 0x | ✓ 1/3/bc1 |
| 量子暴露面 | 公钥常驻链上(PoS validator 天天签名,藏不了) | 休眠地址不暴露 | 休眠地址不暴露 |
| PoS 高频签名场景 | 最优(每块每票都签名) | 可用 | 可用 |
结论:PoS 链的签名密度是 PoW 链的百倍量级,确定性与验签吞吐是刚需 → ed25519 裸公钥 + bech32m 显示层(校验和+前缀)兼得安全与可用性。显示层于 v0.11.42 上线,链上格式零改动、零分叉。
| 用途 | AIB1 显示格式 | 64位hex(canonical) |
|---|---|---|
| faucet | AIB1W4GT7S3DGVJZSDWE4UPGE8WMXWUHHSAYP88VUS9DMM379SW4RGMSZR6VZT | 7550bf42…1d51a37 |
| validator(示例) | AIB16F6D7QZJPQYCP46MMV9TWQWGJZ6GU9UNN99LGN94JD0PXWS4RZWSHER5JY | d274df00…a15189d |
编码:BIP-350 bech32m(校验常数 0x2bc830a3,非 bech32 的 1);HRP=aib;5bit 分组;6 字符校验和。整串必须全大写或全小写,混合即非法。历史上 AIB 早期实现的校验和计算有误(缺 6 零填充+用错常数),v0.11.42 修复为标准 BIP-350 并通过独立参考实现交叉验证。
| 端点 | 方法 | 说明 |
|---|---|---|
/health /health/detailed /healthz /readyz | GET | 健康检查 |
/v1/block/latest | GET | 最新块(字段 data.height) |
/v1/block/{height|hash} | GET | 按高度/哈希查块 |
/v1/blocks/fetch | POST | 批量拉块 |
/v1/transaction/{hash} | GET | 查交易 |
/v1/transactions | GET | 交易列表 |
/v1/mempool | GET | 内存池 |
/v1/status /v1/peers | GET | 节点状态 / peer 表(Explorer 数据源) |
| 端点 | 方法 | 说明 |
|---|---|---|
/v1/balance/{address} | GET | 查地址余额 |
/v1/stake/info/{address} | GET | 质押+流动余额查询(推荐):liquid_aib / staked_aib |
/v1/wallet/info | GET | 本节点钱包(balance_aib 含已质押,勿当流动余额用) |
/v1/wallet/create | POST | 建钱包 {"label":"main"}(私钥只显示一次) |
/v1/wallet/send | POST | 转账 {"private_key","to_address","amount_aib":"1000"}(amount_aib 优先于 raw amount,v0.11.40+) |
/v1/wallet/import|export|restore | POST | 导入/导出/恢复 |
| 端点 | 方法 | Body |
|---|---|---|
/v1/stake | POST | {"private_key":"<128hex>","amount_aib":"199990"} — 全部字符串!amount 数字会报错 |
/v1/unstake | POST | {"private_key","amount_aib"} ~2 块解锁 |
/v1/stake/validators | GET | 全网验证者+权重 |
/v1/mining | GET | 本节点挖矿统计(slots_won / last_win_height) |
支付通道 /v1/channel/*、AI 推理 /v1/ai/*、提案 /v1/proposals、分发 /v1/distribution、迁移 /api/migration/*、发布 /v1/release/* — 详见 GitHub docs/rfc/。
# 普通节点 curl -sSfL https://aib.one/install.sh | bash # PoS 验证者(挖矿) — 参数形式,免疫管道环境变量陷阱 curl -fsSL https://aib.one/install.sh | bash -s -- validator
| 端口 | 用途 |
|---|---|
| P2P (默认 51413) | 节点互联 + HTTP 文件分发(install.sh/二进制) |
| API (默认 8080) | HTTP API(默认仅本机;对外需防火墙放行) |
| 种子 seed.aib.one:51413 | 主种子 + 发行中心(DNS A 记录待配置,当前经 install.sh 内置引导) |
第三方应用验证"用户是否持有 AIB 资产"(签名 + 链上实时查询,不上链、不碰用户币):
BASE = https://aib.one/auth # Auth Gateway(注: CF 对 /auth/* 路径当前返回 404,规则清理前请向项目方索取直连端点)
① 注册应用: POST /v1/apps {"name":"myapp","min_balance_aib":1000,"min_stake_aib":5000}
② 拿挑战: GET /v1/auth/challenge?app_key=xxx → nonce(5分钟有效)
③ 用户签名: ed25519.Sign(nonce, 用户私钥)
④ 验证: POST /v1/auth/verify {"challenge","signature","pubkey","address"}
→ 通过发放 session token,按链上余额/质押分层(basic/premium)
⑤ 校验 token: POST /v1/check {"token"}
/v1/block/latest + /v1/mempool(无 WebSocket,轮询间隔建议 ≥2s)/v1/wallet/send(注意 to_address 必须 64 位 hex 无 0x;amount_aib 用字符串)/v1/wallet/create 生成,私钥只显示一次必须保存| code | 含义 | 处理 |
|---|---|---|
| INSUFFICIENT_BALANCE | 流动余额不足 | 查 /v1/stake/info/{addr} 区分 liquid vs staked |
| INVALID_REQUEST | 参数格式错误 | 检查 JSON 类型(amount 必须字符串)、地址 64 位 hex |
| Invalid private key length | 私钥 hex 长度不对 | node_key.pem 前 64 字节的 hex(128 字符) |
| Invalid to address format | 地址格式错误 | 64 位 hex 无 0x,不是 EVM! |
docs/rfc/(RFC-001 POAT 共识 / RFC-002 fee-burn / RFC-003 bootstrap / RFC-004 治理 / RFC-005 bond)。