Chainlink最近发布了最新的阈值签名技术,该技术可以大规模,低成本地应用分散式预言机。这个好消息使智能合约社区感到高兴。尽管阈值签名技术背后的数学逻辑非常复杂,但本文将以简单明了的语言来分析该技术。区块链共识机制区块链的核心价值是允许网络中的每个节点在特定状态下达成共识。这样,网络可以自主运行,而无需任何外力来协调或支配它。在比特币区块链上,矿工就交易状态达成共识,并确认一个账户中是否有足够的余额可以转移到另一个账户,以及该账户的私钥是否与公钥匹配。以太坊区块链就是以此为基础的。除了确认交易状态外,它还可以处理智能合约代码逻辑,例如:如果发生x,则执行y。如果x和y都存在于区块链上,则区块链可以轻松执行智能合约。但是,如果x和y都存在于链下系统中(也就是说,发生在本机区块链之外的事件),事情将变得更加复杂。例如,以太坊上的金融智能合约使用彭博社的市场数据(x)触发智能合约以人民币在支付宝上结算(y)。彭博数据和支付宝支付功能是在以太坊区块链之外存在的资源。 oracle共识机制Chainlink使用分散的oracle网络将高度可靠的脱链数据连接到智能合约。这种去中心化网络将区块链与链下数据连接起来,在安全性,可靠性和防篡改方面可与区块链共识机制相媲美。在现有的分布式oracle模型中,每个oracle需要发送对区块链上智能合约的响应。该智能合约专门负责将所有数据聚合到单个数据点中,并触发执行相应的智能合约。例如,一组甲骨文在特定的时间点获取资产的市场价格数据,然后将数据发送到智能合约进行汇总。智能合约将基于所有节点提交的数据取平均值(可能是为了消除异常值)。这样可以有效地防止某些节点提交不正确的数据并影响结果,并且可以基于多个数据源取平均值。但是,这种方法不仅成本高昂,而且还会导致网络拥塞,因为每个节点必须支付一定的汽油费才能将外部数据上传到区块链。因此,尽管使用大量预言片可以保证去中心化共识的安全性和可靠性,但是除非合同本身具有很高的价值,否则这是昂贵的,而不是最佳的策略。有一种创新的方法可以解决此问题,那就是阈值签名技术。阈值签名使oracle之间可以相互通信,并在链外达成共识,以确定链下数据源的真实性。链外预言机使用阈值签名技术来聚合数据,并且只需要将数据传输到区块链一次,因此只需要支付汽油费即可。简而言之,参与智能合约的每个oracle收集相关数据(例如市场数据),将数据发送到网络中的其他oracle,然后根据指令将所有数据聚合到单个数据点中,然后进行统一预测机器一次被发送到区块链上的智能合约。这些预言一起形成一个数据签名密钥。在区块链中,私钥(相当于密码)和公钥(相当于银行帐户)必须具有一对一的对应关系才能触发网络中的交易。在阈值签名中,密钥本质上等效于oracle私钥,oracle可以使用该私钥将聚合的数据发送到链中。使用阈值签名技术,该私钥可以分为许多部分,并分发给网络中所有参与的预言家。预言的数量必须达到预定的“阈值”。在“私钥片段”之前。手中可以重组为一个完整的私钥。甲骨文在链下进行交互,重新组合密码(私钥),然后可以在链上签署和批准交易,然后将数据(即汇总数据)发送到区块链上的相应智能合约。 “特定规模”指的是“特定规模”。网络中的oracle网络结合了“私有密钥片段”。在手中形成完整的密钥签名,并可以批准数据传输。这种所谓的“规模”是指需要事先达成一致,这就是“阈值”。震颤之