Vault¶
Vault 是一个链上智能合约,按用户维护账本余额来存储已存入的代币。它是 Sera 交易的基础。
非托管设计¶
Vault 完全非托管。您的代币留在智能合约中您的地址下 — Sera 的链下服务(订单撮合、API)从不持有或控制您的资金。所有存款、冻结、结算和提款完全在链上强制执行。每个操作都需要您的 EIP-712 签名,这意味着您可以在钱包中查看授权的确切内容(代币、金额、接收者)后再批准。
为什么需要 Vault¶
Vault 的存在是为了保证每位参与者的结算。当您在 Sera 上交易时,您希望确定当订单匹配后,对方确实能够支付。Vault 提供了这一保证 — 因为双方都已预先存入资金,结算始终成功。
如果没有 Vault,结算时需要从钱包中提取代币。如果交易对手方的钱包不再有足够的资金,交易就会失败 — 让您面对一个无法结算的已匹配订单。通过要求预先存入抵押品,Vault 确保每个匹配的订单都能在链上立即且原子性地结算。这就是 Sera 订单簿对所有参与者可靠的原因。
Note
兑换不需要 Vault 存款 — 代币在执行时处理。Vault 仅用于限价单和虚拟流动性批次。
余额类型¶
| 余额 | 说明 |
|---|---|
| 钱包余额 | 您以太坊钱包中的代币(尚未存入) |
| Vault 可用 | Vault 中可用于新订单的代币 |
| Vault 冻结 | 锁定在未结订单中的代币 — 仍在 Vault 合约中您的地址下,不由 Sera 持有 |
| Vault 总计 | 可用 + 冻结 |
您可以通过 GET /balances 查看所有余额。
存款与提款¶
存款将代币从您的钱包转移到 Vault 合约中。API 为您构建未签名交易 — 您的前端签署并广播它们。请参阅存款了解完整流程。
提款使用双重签名即时提款将代币从 Vault 转回您的钱包。请参阅提款了解详情。
紧急提款¶
如果 Sera 的 API 不可用,您始终可以通过直接在 Sera 智能合约上调用 emergencyWithdraw() 来取回资金 — 包括冻结余额。这是一个两步流程,有约 24 小时的延迟以防止滥用,但它保证您无需依赖任何链下服务即可访问您的代币。
详情请参阅紧急提款。