mt logoMyToken
Market cap:$0
0%
FGI:0
0%
Cryptocurrencies:--
Exchanges --
ETH Gas:--
English
USD
APP
Ap Store QR Code

Scan Download

基于比特币开发DeFi,一文了解Atomic Loans的设计与实现
Collect

关于去中心化金融(Defi),目前大部分的创新都发生在以太坊平台上,那比特币呢?作为当前加密货币世界的老大哥,比特币是否也会迎来自己的Defi应用?

Atomic Loans ,这是一家致力于将DeFi产品原生性引入比特币的创业公司。在今年4月份的时候,这家公司就获得了包括Initialized、ConsenSys、Morgan Creek Digital等机构的245万美元种子轮融资。

此前,开发者们并没有选择在比特币系统上构建DeFi工具,理由是它缺乏以太坊具备的强大智能合约。但实际上,比特币本身有一个健壮的脚本语言,这个脚本语言是多重签名交易和原子互换(atomic swap)等功能背后的技术。

而Atomic Loans便是尽可能多地使用比特币的脚本语言来构建DeFi产品,显然,这样的尝试会更受比特币社区的欢迎。

他们的第一个产品,使用类似于哈希时间锁定合约(HTLC)的脚本来提供非托管比特币抵押贷款,最近他们完成了两次系统审计,并在比特币主网上发布了一个beta版本。

基于比特币开发DeFi,一文了解Atomic Loans的设计与实现

(图:Atomic Loans创始合伙人,从左到右依次为Steven Zhao,Matthew Black和Tony Cai)

那这个系统到底是如何设计的呢?我们来看看Atomic Loans的创始人Matthew Black是如何解释的:

Atomic Loans(原子借贷)为跨链抵押贷款提供了一种机制。具体来说,该系统允许人们在锁定比特币作为抵押品的同时,借入以太坊平台上发行的美元稳定币。在违约的情况下,贷款人的抵押品会被清算。作为失败清算的应变计划,贷款人最终可以扣押一部分抵押品。

Atomic Loans的详细设计

在下面的描述中,我们将使用到以下角色:

  1. Alice,她想要使用比特币作为抵押,来借取以太坊代币;
  2. Bob,他想要取出他的以太坊代币;
  3. Carol,一个协助清算程序的自动化代理人;
  4. David,以折扣价购买抵押品的清算人;

1、贷款设定

要建立贷款,Alice和Bob必须首先就贷款参数达成一致。虽然有一个可选 的Funds 合约,允许贷方在链上建立参数,并接受任何同意这些参数的人的贷款,但该协议可以在链外发生。这些参数包括抵押品和本金的数量、利率、在违约的情况下可以扣押抵押品的哪一部分、过程各个步骤的持续时间等。

建立贷款的一部分,是建立将在整个贷款过程中使用的秘密(secret)。这些秘密用于许多commit-reveal方案,因此这些秘密最初是哈希加密的,然后会在适当的时间进行揭示。

  1. A1是Alice在取回贷款本金时透露的秘密。贷款到期后,Bob可以用它来扣押抵押品;
  2. B1是由Bob接受贷款偿还或取消贷款(在Alice收到本金之前)时透露的秘密。Alice可以用这个秘密来收回她的抵押品;
  3. A2和B2用作违约情况下抵押品清算过程的一部分。实际上会存在多个A2和B2秘密,来支持多个清算;
为了建立贷款,Alice必须证明她有债务协议所需的资金。她是通过签署一笔无效的比特币交易来实现这一点的,该交易的签名由Bob检查。这种资金证明是为了防止欺诈。

一旦Bob对Alice的资金感到满意,他就把代币转到 Loans 合约上。然后,Alice必须在批准到期前,将其抵押品锁定在一对比特币P2SH(支付脚本哈希)中:一个用于可退还抵押品,另一个用于可扣押抵押品。可退还的抵押品归Alice所有,除非是抵押品因清算而被出售,如果Bob没有得到偿还,抵押品可能会被Bob没收。

一旦Bob对锁定的抵押品感到满意,他就会在以太坊区块链上将本金释放给Alice。Alice拿着抵押品,揭示A1秘密。

2、还款

Alice可以偿还以太坊区块链上的贷款本金和利息。Bob必须揭示B1才能接受此还款,此时Alice可以解除所有抵押品的锁定,并且贷款已完成。

3、抵押品清算

Alice可能无法在贷款期结束前偿还贷款。在这种情况下,Alice的抵押品以7%的折扣进行清算。在清算过程中筹集的资金中,Bob收到了他所欠的金额(本金加利息),Alice则收到了剩余的部分。抵押品随后支付给清算人。

Alice的抵押品在另一种情况下要进行清算。贷款的一个参数是最低抵押比率,通过确定Alice抵押物的美元价值,并将其与贷款金额进行比较来衡量。如果不保持抵押率,甚至可以在贷款期结束前开始清算。

清算过程因需要处理跨链交互而变得复杂。以下是清算过程的说明:

  1. 抵押品以7%的折扣提供;
  2. 第三方清算人通过调用 liquidate 函数,并提供代币以折扣价购买该抵押品,以及提供秘密D1的哈希值来清算抵押品,该哈希值将其清算锁定在智能合约中。此时,确定出清算人(David);
  3. Alice和Bob生成签名,将所有抵押品转移到新的抵押品互换P2SH中;
  4. Alice和Bob还生成签名,以便在超时后将抵押品移回标准可退还抵押品和可扣押抵押品脚本。这是为了处理David从未揭露秘密D1的情况;
  5. Alice和Bob,一旦他们对签名都满意了,就揭示秘密A2和B2;
  6. 抵押品P2SH接受Alice和Bob的签名,以及秘密A2和B2,并允许资金转移到一个新的抵押品互换脚本中,用D1锁定;
  7. David取回比特币抵押品,揭示了过程中的D1;
  8. Alice和Bob可以使用D1来支付David出价的以太坊资金;
如果Alice和Bob未能移动抵押品,David可以在超时后请求退还其出价。

如果David未能在分配的时间段内披露D1,Alice和Bob可以将资金移回标准抵押品P2SH(使用步骤4中建立的“退还”脚本)并尝试另一次清算。

4、附带扣押

为了清算成功,Alice和Bob都必须通过签名和揭示秘密来参与。最多可发生三次清算。如果他们都失败了,Bob可没收抵押品的可扣押部分,而Alice可以收回可退还部分。

5、使用自动代理人

贷款流程中的许多步骤,都有一个活性(liveness)要求。Alice或Bob需要在线才能在超时时间过去之前执行进程的一部分。作为可选组件,Alice和Bob可以约定一个名为Carol的代理人。Carol可以在两个关键时刻代表Alice或Bob:
  1. Bob或Carol都可以接受还贷或取消贷款。在借款人偿还贷款时,这对于可能会出现离线情况的放贷人尤其有用。
  2. 在清算期间,Alice、Bob和Carol只需有两个人就可以将资金转移到抵押品互换脚本中,或者在出售到期后将资金转移回来。这意味着任何一方都可以在清算期间下线。

进阶阅读

注:以下资源虽已过时,但提供了有关Atomic Loans贷款流程的更多信息:
  1. Atomic Loans:加密货币债务工具
  2. BIP 197 -哈希时间锁定抵押合约(Hashed Time-Locked Collateral Contract);
  3. ERC 1850 - 哈希时间锁定主合约标准(Hashed Time-Locked Principal Contract Standard);
  4. AtomicLoans.io
开源代码:

以下资源包含协议中涉及的以太坊智能合约和比特币脚本。

比特币

  1. Collateral P2SH —— 比特币抵押托管;
  2. Collateral Swap P2SH —— 清算人互换托管;
以太坊
  1. Funds.sol - 贷款人资金利率管理合约;
  2. Loans.sol - 债务协议合约;
  3. Sales.sol - 清算合约;
注:这是V1版Atomic Loans

V2 版本将涉及一个无需信任的比特币借贷协议(除了预言机),它无需第三方仲裁者,使用的是一个非托管比特币价格预言机,详情如下: https://github.com/AtomicLoans/AtomicLoans-rfc/wiki/Bitcoin-Non-Custodial-Oracle

原文:https://github.com/AtomicLoans/atomicloans-rfc/wiki/System-Overview 作者:Matthew Black 编译:洒脱喜 稿源(译):巴比特资讯(http://www.8btc.com/article/596237)

Disclaimer: The copyright of this article belongs to the original author and does not represent MyToken(www.mytokencap.com)Opinions and positions; please contact us if you have questions about content
Related Reading

Bitcoin Price Consolidates Below Resistance, Are Dips Still Supported?

Bitcoin Price Consolidates Below Resistance, Are Dips Still Supported?

XRP, Solana, Cardano, Shiba Inu Making Up for Lost Time as Big Whale Transaction Spikes Pop Up

XRP, Solana, Cardano, Shiba Inu Making Up for Lost Time as Big Whale Transaction Spikes Pop Up

Justin Sun suspected to have purchased $160m in Ethereum

Justin Sun suspected to have purchased $160m in Ethereum