匿名性挖矿2.0 (AMv2)

BSC(https://cyclone.xyz/bsc)上的匿名池已使用匿名性挖矿2.0(AMv2)。

设计目标

虽然匿名性挖矿1.0(AMv1)已经应用在IoTeX上,并启动了第一个匿名池,但我们深刻知道AMv1的局限性——用户(将资产存入匿名池中)挖出的CYC数量与用户锁仓时间长短不成正比。这不能最好的激励长期匿名性提供者。

在AMv2中,我们重新设计了匿名性挖矿机制,实现以下两点:

  1. 挖出的CYC数量与用户将其资产锁定在池中的时间成正比——资产停留在池中的时间越长,匿名性提供者获得的CYC就越多;

  2. 自主选择存款时长,让每个匿名池的生命周期更具活力!通常,匿名池的奖励周期都固定在90天左右,为了鼓励匿名性提供者将资产存入新池中,进一步提高隐私保护程度,我们允许用户根据自身需求,自主选择存款时长(由于池中有许多长期存款,但缺乏短期存款/提款,因此提供的隐私保护程度非常有限)。

术语

在进行匿名性挖矿时,需要了解一些表示匿名池特性、参数的术语:

资产面值是匿名池提供匿名性的代币或者ERC20/XRC20 /BEP20通证的数量。例如,匿名池C3PO的主要资产是BNB,面值为100,这意味着每次在C3PO存款/提款的金额都为100 BNB。

代币面值是一种辅助功能,以提高用户的使用性。当用户将BUSD之类的资产存入匿名池中时,底层基础区块链的少量本币(例如0.1 BNB)将与资产一起存入池中,这笔费用将作为Gas费,并将在提款时全额退还至收款地址。例如,李四在提款时将0.1BNB存入新地址,他可以继续转移她的BEP20资产,或从该地址调用其他智能合约。

CYC面值是少量的CYC动态值,这可以确保李四赚取的CYC与他的资产在匿名池中存放的时间成正比,并且不会向其他人透露其资产在匿名池中滞留的时间。我们将从以下示例进行了解:当李四将他的资产+0.1BNB存入池中时,也会根据CYC面值,存入X个CYC;假设在存款周期内,李四赚取了Y个CYC。提款后,(X+Y)个CYC将被发送至李四的账户中。此时,只有李四知道在这次挖矿中他赚取了Y个CYC。由于非交互式简洁零知识证明(zkSNARK)将存款与提款的tx断开,没有人(除李四外)知道预付款是X个CYC,更没有人可以计算出收益Y。因此,没有人能够知道存款人的资产在匿名池中到底滞留了多长时间,这是不是很棒!

匿名池

以下是BSC上的创世匿名池:

每个池中的所有匿名性提供者根据各自质押比例分取对应数量,例如310.25

运作原理

  1. 将BNB(或IOTX或BUSD)存入C3PO(或R2D2,BB8)池;按需存入X个CYC

  2. 让BNB在池中停留N天,匿名性挖矿获得CYC

  3. 从池中取回BNB,同时获得Y个CYC(当然,Y> X)

AMv2工作示例演示如下。为了简化此示例,其他费用不计:

费用

提取资产后,将收取以下费用:

  • 1.5% 的CYC将被作为费用收取,并立即烧毁

  • 0.5% 的CYC将被发送至中继层,作为提取tx的gas费

最后更新于