关于区块链:通过-Chainlink-Proof-of-Reserve-来验证质押资产

42次阅读

共计 2310 个字符,预计需要花费 6 分钟才能阅读完成。

智能合约和预言机能够保障链上和链下资产的双向通明,参与者能够在新的框架下实现用户对于本身产品的信赖。随着新的金融工具在去中心化金融的生态中不断涌现,对于加密资产来说,急需一个更加稳固的基础设施来保障协定和数据的平安。毕竟,如果所有利用应用的规范不一样的话,就没法在这个模块化的生态中实现端到端的偏心通明和最小信赖。

Chainlink Proof of Reserve(PoR)是一个自动化的解决方案,能够通过去中心化的形式,提供质押物的实时信息,来最大水平帮忙协定实现透明性和可验证性。在具体场景中,它能够帮忙开发者去验证由链下或者跨链资产撑持的 stablecoins,wrapped 通证和其余资产是否有足额的质押物。

在这篇文章,咱们将会理解去中心化验证形式的重要性,同时学习如何借助 Chainlink PoR 来验证 Wrapped BTC 通证的质押物。具体案例在这里,BitGo’s Wrapped Bitcoin(WBTC)。

Wrapped 通证和跨链资产的 Proof of Reserve

Wrapped 通证是与其余资产锚定的一种链上资产。不同的 wrapped 资产都通过其特有的机制保障它的价格能够锚定在其所依赖的资产上。传统做法是靠一个不通明的人工流程来保障这个锚定,然而在这个流程中,用户不可能独立验证链上资产。另外一种做法是,一个繁多的机构管制资产的发行和供应,然而这种状况下,wrapped 资产无奈防止中心化风向和单点失败危险。

Chainlink Proof of Reserve 容许 wrapped 通证产品通过一种新的形式晋升它们的安全性和透明度。它们能够应用 Chainlink PoR 这个自动化且实时的验证形式来代替动辄须要数月的人工验证过程。通过应用 Chainlink PoR,Wrapped 通证相干的我的项目能够在 mint(铸造)机制中加一个额定的平安层,这个额定的平安层能够管制 wrapped 资产的产出,保障流通中的供应量可能反馈出链下或者跨链抵押物的供给,以防呈现超额抵押的状况。

Wrapped 通证产品还能够应用 PoR 做一个程序电路中的电阻,当储备资产不足以撑持 wrapped 通证供给的时候,暂停 mint 或者 burn 函数,这样做能够防止 mint 出无抵押的通证,而导致的只有局部通证有抵押。

<p align=”center”>
Chainlink Proof of Reserve 怎么阻止抵押有余的 WBC 被 mint(铸造)
</p>

初始化 Feeds

import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";

contract ProofOfReserve {
    IERC20 public WBTC;
    AggregatorV3Interface internal reservesWBTC;
    /**
     * Aggregator: WBTC reserve and WBTC supply
     * WBTC Address: 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599
     * Reserves Address: 0xB622b7D6d9131cF6A1230EBa91E5da58dbea6F59
     */
    constructor() {WBTC = IERC20(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599);
        reservesWBTC = 
AggregatorV3Interface(0xB622b7D6d9131cF6A1230EBa91E5da58dbea6F59);
   }
}

取回数值

//Returns the latest Supply info
function getSupply() public view returns (uint256) {return WBTC.totalSupply();
}

//Returns the latest Reserves info
function getLatestReserves() public view returns (int) {
    (
        /* uint80 roundID */, 
        int answer,
        /* uint startedAt */,
        /* uint updatedAt */,
        /* uint80 answeredInRound */
    ) = reservesWBTC.latestRoundData();
    return answer;

}

依据 Wrapped 通证的供应链查看 BTC 的储备资产

//Determines if supply has exceeded reserves
function isWBTCHealthOK() public view returns (bool) {return getLatestReserves() >= int(getSupply());
}

总结

随着 Web3 开发者创立的金融产品越来越简单,肯定要有一个值得信赖的,通明并且去中心化的规范。这个规范能够借助区块链,智能合约和预言机极强的透明性,来应用一个自动化过程验证储备资金。

Chainlink Proof of Reserve 提供了一个去中心化的形式来保障 DeFi 协定端到端的透明性和可验证性。当任何人都能够验证一个 wrapped 资产是不是被它所宣传的抵押资产所抵押时,任何储备资金都能够被验证是否足以担保 wrapped 资产供应量的当前,web3 才能够建设在一个巩固,可继续而且平安的根底之上。

能够关注 Chainlink 预言机并且私信退出开发者社区,有大量对于智能合约的学习材料以及对于区块链的话题!

正文完
 0