生态
任何人都可以在 Velum 之上构建:交易所、钱包、硬件钱包、托管机构、质押和浏览器。我们开放协议和一个参考实现。只有即时通讯应用是闭源的。
哪些是开放的 {#abierto}
| 组件 | 许可证 | 用途 |
|---|---|---|
@velum/core |
Apache-2.0 | 协议:密钥、交易、状态、共识、通讯 |
velum-node |
Apache-2.0 | 全节点,每个系统一个二进制文件 |
@velum/sdk |
Apache-2.0 | 集成:地址、交易、签名、RPC、充值、质押 |
PROTOCOL.md 和 spec/vectors |
Apache-2.0 | 用其他语言逐字节实现 Velum |
| 即时通讯应用 | 闭源 | 用来聊天 |
无需征得我们的许可。我们只要求不要以看起来像我们自家产品的方式使用 Velum 品牌。
交易所 {#exchanges}
- 自建节点。 安装
velum-node并等待同步完成;不要依赖公共入口网关。本地 RPC 地址为ws://127.0.0.1:7420/ws?role=client,不要暴露到互联网。确认chain.block {height: 0}返回的header.chain == "{{chain}}"。 - 单位。 VEL 有 6 位小数;链上所有金额都是以 µVEL 计的整数。
- 确认数。 目前还没有即时最终性:普通金额等待 30 个区块,大额等待一个纪元。保存每个已入账区块的哈希,如有变化就重新读取。
- 充值。 每位客户一个带
memo的地址,或每位客户在m/44'/7420'/0'/0'/i'下一个地址。SDK 中的DepositWatcher会遍历达到 N 个确认的区块;一笔充值的唯一键是它的txId。 - 提现。 使用 SDK 的
buildTransfer。低于阈值时手续费为 0,附带工作量印章;高于阈值时为 1 个基点。在冷设备上用signTxBody离线签名。 - 热钱包与冷钱包。 热钱包只存一天的提现量;离线的冷钱包负责补充。
技术细节见钱包与交易所。
钱包 {#carteras}
- 24 个单词的 BIP-39 助记词。钱包 = 路径
m/44'/7420'/账户'/0'/索引'上的 SLIP-10 ed25519。官方应用使用0'/0'/0'。 - 即时通讯的身份密钥和设备密钥通过 HKDF 从同一组助记词派生,不是钱包密钥。
- 始终显示金额、准确的手续费(通常为 0)以及收款方实际收到的金额。
硬件钱包:Trezor 和 Ledger {#hardware}
| 项目 | 值 |
|---|---|
| 曲线 | ed25519 |
| 派生 | SLIP-10,所有层级均为强化派生 |
| 路径 | m/44'/7420'/账户'/0'/索引' |
| SLIP-44 币种编号 | 7420(待注册) |
| 签名内容 | 不含 sig 的交易规范 JSON 的 UTF-8 字节,使用纯 ed25519(RFC 8032) |
| 最大大小 | 4 KB(普通交易为 250–600 B) |
- 工作量印章
pow属于签名内容:由电脑在把交易发给设备之前计算。 - 设备必须完整显示目标地址、金额及其代币、手续费和
memo;如果chain不是{{chain}},必须发出警告。 - 生态规范中有一份 Ledger 应用提案(APDU
GET_PUBLIC_KEY和SIGN_TX)。
@velum/sdk {#sdk-abierto}
import { walletFromPhrase, buildTransfer, VelumRpc, DepositWatcher } from "@velum/sdk";
walletFromPhrase(助记词, 账户, 索引):SLIP-10 钱包。buildTransfer、buildDelegate、buildUndelegate、signTxBody:构造并签名交易,也支持离线。VelumRpc:节点 RPC 客户端。DepositWatcher:达到 N 个确认的充值。
示例:deposit-watcher.ts、withdrawal-signer.ts 和 staking.ts。
委托质押 {#staking}
stake.delegate { node, amount }:你的 VEL 被锁定在链上,提高该节点在桥抽签中的权重,上限与节点自有保证金相同。stake.undelegate { node, amount }:14 天后回到你的账户。node.commission { bp }:每个节点在 0 到 20% 之间设定自己的佣金。最多每 7 天调整一次,每次不超过 ±5 个百分点。- 每个纪元,节点发现的数量这样划分:先扣除其佣金,其余部分按比例分给其自有保证金和各委托人。划分的数量永远不会超过实际数量。
- 没有保证收益。 如果节点不工作,就什么也发现不了。
托管机构
替他人保管密钥是受监管的服务(在欧盟属于加密资产服务提供商)。请为每位客户单独设立钱包,或维护一本每天与链上数据对账的内部账簿。