下一个杀手级应用?DeFi流支付协议让你的预付费无法被“跑路”
如果你关注 DeFi 发展的话,最近一款名为sablier的应用会是非常有看点的,根据其创始人Paul Razvan Berg的介绍,它是一种实时DeFi流支付协议,怎么理解它呢?
比如你可以使用这款应用给员工按设置的时间点支付工资(可以是每分钟、15分钟、1小时、每天或者其它),它是基于以太坊的智能合约开发的,你可以在这个合约里一次性存入一笔钱,然后合约就会按照你预先设定的时间将钱分配给你指定的员工。
而除了工资发放之外,这种协议的潜在应用还包括租借、停车、咨询、纳税等。
尽管如此,sablier官方提到的应用对我来说其实还不够cool,其主推的实时工资发放应用固然很新颖,但它其实并非是必须的,那对我来说,什么是必须的呢?
DeFi协议+预付费
它就是预付费市场。
近年来,涉及到预付费的跑路事件已越来越多,常见的有健身房跑路、理发店跑路以及近期不断暴雷的教育培训机构跑路等等。
人们已面临越来越大的预付费跑路风险,其中教育培训行业尤为严重,比如笔者给女儿报的早教机构某*姆所在的杭州百司拓控股集团,其在近期就出现了暴露事件,很多家长都在维权……
而这种连续的暴雷事件,正引发了家长对培训机构的信任危机,并有可能导致这一行业的衰败。
而如果将流支付金融协议应用于预付费,那么理论上,信任问题就可有效得到解决!
由于合约是写死的,商家无法卷钱跑路,如果你想停掉服务,或者商家真的选择了跑路,你仍然可方便地取回合约中剩余的资金!
听上去,是不是感觉非常神奇呢,那当前能通过sablier来实现预付费功能吗?
运用sablier来实现预付费
理论上,它也是可实现的,下面就是一个简单的教程:
在运用该应用之前,先确保安装一个以太坊钱包,例如metamask.io,然后访问https://pay.sablier.finance/页面,并链接你的钱包:
然后点击“Stream Money”按钮,就会出现下面的页面:
选择你支付的稳定币类型(Dai、Sai、USD coin、Compound Dai、Compound USD coin)、数量、接收者地址、流支付时间(前提:你的metamask钱包中拥有相应数额的稳定币,并留足一部分资金作为交易费)。
与商家确认好资金、服务时间、地址后点击"create Stream"按钮。
然后这就实现了一个支付流,它会每秒向对方发送资金。
例如,上面的选择就是每秒支付约0.0003858 Dai,每天支付约33.33 Dai。
如果商家跑路,或者你不想继续使用他提供的服务,你可以点击REDEEM按钮进行赎回,将你剩余的资金取回。
那这种应用的实现原理是什么呢?
通过ERC-1620标准实现资金流协议
这就要从一种名为RICO的机制讲起了,它是以太坊开发者frozeman在Devcon4大会上提出的一种机制,简单说,它是一种可撤销的token融资想法,其基本思路如下:
- 分配阶段:投资者贡献ETH,并收到融资承诺token(LIA),投资者可随时退回其LIA,则其可收回相应的ETH。
- 分发阶段:每隔固定的时间,融得的ETH会流向融资方,此时,投资者也可以退款,但在这个时期,根据当前的时间点,投资者只能收回部分ETH。
而退款的比例,是与分发阶段经过的时间呈反比的,这意味着如果投资者退款晚了,那他只能退还部分或者完全失去投资。
而sablier的创始人Paul Razvan Berg则融入了这种机制,并开发了一个ERC-1620 token标准,其使用以太坊区块时间戳来测量时间,下面是sablier的实现流程:
- 开发者建立一个资金流合约;
- 付款人(发送者),可以通过在合约中存入资金并选择流持续时间来创建流;
- 收款人,可根据其持续偿付能力从资金流中提取资金,即支付 * (当前区块时间戳 - 起始区块时间戳);
- 付款人和收款人都可以终止资金流;
- 如果资金流已结束但尚未终止,则收款人有权提取合约所有的剩余余额;
- deposit: 要进行流支付的资金数量;
- ratePerSecond:每秒分配给收款人的token数;
- remainingBalance:stream流中剩余的资金;
- startTime:支付流启动时的unix时间戳;
- stopTime:支付流停止时的unix时间戳;
- recipient:资金流向的地址;
- sender:资助资金流的地址;
- tokenAddress:用作资金流货币的ERC20 代币;
- isEntity:显示流是否存在;
struct Stream {
uint256 deposit;
uint256 ratePerSecond;
uint256 remainingBalance;
uint256 startTime;
uint256 stopTime;
address recipient;
address sender;
address tokenAddress;
bool isEntity;
}
总结:目前sablier应用还处于非常早期的阶段,其合约的安全性还有待于进一步验证及加强,因此,它暂时并不适合较大额的支付,此外,其当前的用户体验依旧是有待提升的,而当其完善之时,或者有更好的类似产品,同时商家又愿意接受这种形式的支付,那我会很乐意使用这种方式来进行预付费,对于我而言,其吸引力要远远大于借贷应用。
参考资料:
1、https://medium.com/sablier/introducing-sablier-continuous-payments-on-ethereum-c2bf04446d31
2、https://github.com/ethereum/EIPs/issues/1620
3、https://github.com/lukso-network/rico-js
文/洒脱喜 稿源:巴比特资讯(http://www.8btc.com/article_537421)