首页  >  要闻 >  区块链 >  Chainlink三大未实现功能之阀值签名实现
Chainlink三大未实现功能之阀值签名实现
 Relay Bits    
2019年10月18日 04:00
  收藏
   

阀值签名实现

Oraclize等中心化的可信数据源不同,Chainlink所要做的是「去中心化」的可信数据源,透过网络中的各个节点搜集现实世界的数据,并将结果输入智能合约,保障数据的可信与合约的有效性。然而,在目前的构架中,Chainlink可扩展性并不理想,节点会先各自将数据上传到链上聚合再整理出结果,这会导致什么问题呢?

举个例子,假设合约创建者需要来自2000个节点帮他搜集数据(合约创建者可自己设定数据源的节点数量),那么过程中所需要的以太坊燃料费可能会超过3000美元,简单来说就是成本太高了!且经过测试,目前链上聚合技术上也无法支持2000个节点同时参与一项任务,最多只能45个。

另外一个问题是,如果合约创建者需要2000个节点帮他搜集数据,但其中有200个节点因不明原因没有工作,最终只有来自1800个节点的数据,导致数据源与预期不符,合约创建者此时就会陷入两难,一方面数据源数量跟他预期的不同,他可以干脆要求重新收集,但1800个节点的燃料费都花下去了,合约创建者若要求重新搜集就又要再付一次费用,这会造成合约成本暴增。

阀值签名所要实现的就是可扩展性的解决方案。阀值签名与多重签名合约相当类似,其概念是将节点分组,每一组节点都会生成一对私钥与公钥,若想要将数据上链,就必须要有这把私钥,私钥则不归任何人所有,只有在搜集完该组节点一定数量以上的签名后,才有办法透过这些签名生成私钥,并对数据加密,生成共识结果的证明后才能上链。

Chainlink原设计

原设计

Chainlink加阀值签名实现

加入阀值签名后

还是上面的例子,合约创建者需要2000个节点的数据源,于是这项任务委派给了由2500个节点组成的小组,只有当2500个中的2000个节点搜集完数据,才能够上链,这解决了数据源与预期不符的问题,且数据是在链下搜集完一次上传到链上,因此也解决了可扩展性的问题。

总归一句,阀值签名将能够帮助用户节省大量成本,并让Chainlink在实际业务中带来更多应用场景。

币海微信二维码

点击关注币海启行微信公众号,了解更多

编辑: Relay Bits
更多财经请关注 WX: Chaocaijing123456
币海财经: 全球财讯门儿清 https://www.bihai123.com/
声明: 本文由入驻币海编者上传,观点仅代表编者本人,不代表币海财经赞同其观点或证实其描述,请自行判断。

延伸阅读