共识机制决定了区块链是一个确定性的系统,只有确定性的内容会被放在链上。
中心化(单节点预言机)易受攻击(单点失败 Single point failure)→Decentralized Oracle Network (DON)
喂价流程:
每一个预言机网络中的节点都由不同的运营商(operaters)运营 e.g.T-mobile
运营商从数据供应商(data providers)获取来自不同数据源(data source)的数据
运营商通过预言机网络聚合数据,通过OCR算法生成 Off chain report(链下报告)
验证链下报告是否有各预言机节点的签名
把数据存到Chainlink contract中
终端用户领取合约(导入自己的合约
喂价用途:
DeFi借贷合约中查看资产价值
合成资产(mirror asset)查看资产价值
稳定币发行所需抵押物价格决定发币数量
资产管理
衍生品交易
航班延误情况,天气,体育比赛结果……
DON监控chainlink functions合约执行情况
当用户有需求,会把请求发送到合约(on demand)
请求被写入chainlink function合约的一个
event中,被链下DON检测到DON网络中所有节点会调用外部API,获得结果,聚合后写回chainlink function合约,回调到用户合约
原先随机数的生成过程:使用未来区块的header(root hash?)作为种子,在链上通过特定函数将其变为随机数
当矿工或staker有强算力或多stake,有可能根据自己的tx的hash更容易的推测出header
预言机生成公钥(写入合约)&私钥(保存到本地)
用户请求随机数,预言机取当前区块的root hash,通过私钥生成随机数和一个proof(都写入合约)
合约自动验证该随机数是否是某一私钥持有人根据某个区块root hash经过某特定算法生成的随机数
应用场景:
NFT创建和分发
抽奖,公平选择
部分合约需要定期触发,为避免单点失败,不能依靠外部程序触发该合约
链下:预言机节点轮流检查合约是否满足条件
链上:如果满足,则通过某函数触发该合约的执行
应用场景:
Yield harvesting& compounding 收益再投资实现复利
DEX limit orders
Liquidation
Dynamic NFT
CCIP:chainlink的链间互操作协议
Committing DON :从原链(source chain)上找到需要跨链的数据,通过Committing DON写入目标链(destination chain)的Commit store上
AFN(Anti-Fruad Network反欺诈网络):运行该网络的节点将被质押许多资产,监控Commit store上内容是否合法(merkle tree .etc),并给予标注
Excuting DON:通过本网络把经过验证的数据在目标链上执行
将交付层和执行层分开:
易于批次处理
信息跨链协议,只要发布交易就能跨链,不限于资产跨链,提高灵活度
