PEPE0.00 -6.99%
SUI4.18 -8.85%
TON5.74 -3.67%
TRX0.25 -2.17%
DOGE0.31 -6.29%
XRP2.15 -6.62%
SOL188.13 -5.46%
BNB689.03 -2.06%
ETH3318.31 -4.53%
BTC95513.25 -3.66%
PEPE0.00 -6.99%
SUI4.18 -8.85%
TON5.74 -3.67%
TRX0.25 -2.17%
DOGE0.31 -6.29%
XRP2.15 -6.62%
SOL188.13 -5.46%
BNB689.03 -2.06%
ETH3318.31 -4.53%
BTC95513.25 -3.66%
ETH Gas6.18 Gwei
贪婪 79
撰写:Ricsson Ngo、Shatabarto Bhattacharya
编译:深潮 TechFlow
当时间也可以被代币化,加密世界又会产生哪些新的玩法?
近期,一种名为“时间绑定代币”的概念被提出,相关的技术设计和用例也开始被探讨。无论是传统金融还是加密资产,“时间”在其中往往约束了某种权利---例如到期还款、限期租赁、期权期货.... 一定期限内(条件)你对某种资产拥有某种权利,并按照不同的规则到期后实现经济利益(结果)。
这种“条件”--“结果”的现实逻辑,显然可以被智能合约所设计,也意味着时间期限这种条件,存在代币化的可能。
那么,时间绑定代币具体如何实现?又有哪些可实现的场景?本文会回答这些问题,并让我们嗅到新的叙事可能。
时间绑定代币(TBT,Time Bound Token)是一种可以转移和管理资产时间线所有权的代币,本质上是一种期权的纯粹表示。它可以代表有时间限制的资产,如可出租 NFT、托管头寸、有时间限制的治理、广义期权、租赁房地产等等。 TBT 的工作原理是将代币(FT或NFT)切割成周期性的时间线,这些时间线可以由不同的地址拥有。
TBT 的设计考虑到了实用性。TBT 的所有者有权通过调用函数来利用标的资产以获得某种经济或财务利益。通过检查当前时间是否是用户声明的时间线的一部分来确定令牌的所有权。这些好处的例子可能如下:
使用包装的 Crypto Kitty 孵化新的 Crypto Kitty 蛋。
使用包装的 Uniswap 流动性头寸收取费用。
调用与治理相关的功能。
按照恒定总和公式(期权)在 USDC 和 ETH 之间交换。
表示房地产租赁权。
定期付款。
让我们阅读上面的示例,进行头脑风暴。假设,Alice 从第 0 个月到第 1 个月拥有 100 TBT,而 Bob 则拥有第1个月到第2个月的 100 TBT。现在假设从第 0 个月开始已经过去了 0.5 个月,那么 Alice 可以根据需要多次调用效用函数,而 Bob 则不能,因为当前时间是 Alice 时间线声明的一部分。Alice 将在第 1 个月后失去调用效用函数的能力,而 Bob 必须等到第 1 个月才能从效用函数中受益。TBT 在其完整期限过后就会过期并消失。
TBT 可以像普通代币一样转移。需要说明的是,这里的转账代表的是债权和代币数量的转账。例如,Alice 可以将从月份 0 到月份 1 的 50 TBT 转移给 Bob,因此 Alice 将剩下从月份 0 到月份 1 的 50 TBT,而 Bob 将具有从月份 0 到月份 1 的 50 TBT 和从月份 1 到月份 2 的 100 TBT。Charlie 可以将从月份 6 到无限期间的 100 TBT 转移给 Oscar,因此 Charlie 将保留从月份 2 到月份 6 的 100 TBT,而 Oscar 将具有从月份 6 到无限期间的 100 TBT。
以下是 TBT 的早期接口实施的草案(深潮注:并配有代码示意,对技术实现不感兴趣的读者可以直接看文章结论)。
我们将遵循类似于 ERC1155 的多代币标准,其中 ID 代表不同的代币。供应量为 1 表示它是 NFT,而供应量大于 1 表示可互换代币。
代码示意:
function period(uint256 id) external view returns (uint256 seconds)
此函数返回具有给定 ID 的 TBT 的一个周期的秒数。我们将两个周期之间的时间戳称为时间刻度。通常,我们不希望周期太短,因为这会导致 TBT 的 Gas 过高。我们也不希望周期太长,因为这会使 TBT 失去太多灵活性。一些一般的社会标准是每周、每月、每季度、半年和每年。
function shift(uint256 id) external view returns (uint256 seconds)
此函数返回秒数的初始偏移量,其中我们开始计算周期。偏移量应小于周期长度。
function transfer(address to, uint256 id, uint64 start, uint64 end, uint256 amount, bytes calldata data) external
此函数允许所有者通过给定 TBT 的开始和结束时间来将 TBT 转移到目标地址。在减去偏移量后,开始和结束时间必须能够被周期整除。如果开始时间小于当前块时间戳,则默认为当前周期的开始时间刻度。如果结束时间为零,则我们假定它是无限大。数据结构应该用链式映射实现,以获得最佳的 Gas 效率和最小的更新。
function balanceOf(address owner, uint256 id) external view returns (bytes memory balance)
此函数将返回一个表示所有者整个时间线位置的 bytes。需要调用者使用下面所示的纯函数对其进行解码:
function decodeBalance(bytes memory balance) internal pure returns (TimeDelta[] memory timeDeltas)
struct TimeDelta { uint64 time; int192 delta; }
时间增量数组是一种有效的数据结构,用于表示时间线位置。时间字段表示所有者存在增量变化位置的时间刻度。delta 字段表示时间刻度后 TBT 的正值或负值变化。例如,假设我们得到以下时间增量:
{ time: 1,700,000,000, delta: 100 }
{ time: 1,700,010,000, delta: -50 }
{ time: 1,700,030,000, delta: 150 }
这意味着所有者从块时间戳 1,700,000,000 到 1,700,010,000 拥有 100 TBT。然后从块时间戳 1,700,010,000 到 1,700,030,000,拥有 100-50 = 50 TBT。最后,从块时间戳 1,700,030,000 到无限大的时间内,拥有 100-50 +150 = 200 TBT。
请注意,此类实现,其中使用 bytes 和解码器,仅需要返回未来任意时间的声明。我们可能会将实现更改为更实用的方式,将回报限制在最大限制。
请注意,每个时间刻度的时间增量之和不得为负。因此,铸造、销毁和转移代币必须保证这种行为。另外,随着时间的推移,所有者的余额必须仅显示当前时间段以后的最新时间刻度。
例如,使用上面相同的示例,假设块时间戳已经变成了 1,700,010,010。balance
请注意,每个时间滴答声的时间增量之和不得为负数。因此,铸造、销毁和转移代币必须保证这种行为。另外,随着时间的推移,所有者的余额必须仅显示当前时间段以后的最新时间滴答声。
例如,使用与上面相同的示例,假设块时间戳已变为 1,700,010,010。BalanceOf 应显示这些时间增量:
{ time: 1,700,010,000, delta: 50 }
{ time: 1,700,030,000, delta: 150 }
还有其他在本文档中未显示的函数,如多重转移、更新、分页 balanceOf、分页更新、metadata、onReceived 等。上述功能是 TBT 与当前代币标准的关键区别。
另一个潜在的 TBT 实现是在一个合约中拥有一个 TBT 的单一存储库,其中实现了更新时间线余额、铸造、销毁和转移的基本实现。任何人都可以为给定的 ID 初始化 TBT。为了可扩展性,在 TBT 周期的多个点上我们都设置了回调(Hooks)。这具有潜在的好处,可能不需要 approve 和 transferFrom,因为与 TBT 接口的合约可以利用多代币转移数据。
随着时间约束代币化,我们现在可以创造性地将基于时间的资产金融化。我们可以为这些资产创建 AMM,例如一个市场,交换从月份 0 到月份 1 的 TBT 和从月份 1 到无限期的 TBT。当前具有类似功能的协议示例如下:
Pendle Finance 将现有收益型资产分割成两个时间线:
收益代币:从现在到到期日,其中实用函数在到期前汇集收益增益。
本金代币:从到期日开始,用户可以拆封并在到期后收回本金。
该协议允许用户以固定收益和折扣之间进行交换。
Timeswap 可以通过时间交换代币,也将资产划分为两个时间线:
交换现有代币以获取未来代币,该协议将到期前的代币交换为到期后的代币,这使用户可以购买折扣代币。
交换未来代币以获取现有代币,该协议将到期后的代币替换为到期前的代币,这使用户可以在无需清算的情况下杠杆化。
TBT 将扩展这些协议的未来迭代的功能,并吸引新的设计进入固定到期日期金融领域。该代币标准可能会是推动 DeFi 空间扩大到固定到期日期空间的火花,这是传统金融市场中未被开发的巨大市场。
租赁 NFT 用于游戏也是一种流行的功能。游戏公会会将其 NFT 出租给玩家以获得游戏奖励。拥有 TBT 将扩展出租 NFT 的灵活性和功能。
欢迎加入深潮TechFlow官方社群
2024.12.26
2024.12.26
2024.12.25