技术详解DAG区块链项目SPECTRE.doc

技术详解DAG区块链项目SPECTRE.doc

ID:56060728

大小:29.50 KB

页数:10页

时间:2020-03-15

技术详解DAG区块链项目SPECTRE.doc_第1页
技术详解DAG区块链项目SPECTRE.doc_第2页
技术详解DAG区块链项目SPECTRE.doc_第3页
技术详解DAG区块链项目SPECTRE.doc_第4页
技术详解DAG区块链项目SPECTRE.doc_第5页
资源描述:

《技术详解DAG区块链项目SPECTRE.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、技术详解DAG区块链项目SPECTRE此前发布了DAG区块链项目SPECTRE的区块链初创企业DAGLabs在2月份正式公布了其最新扩容协议PHANTOM的技术细节,透露其将兼容智能合约,并实现了在链上区块的线性排列。据雷锋网AI金融评论了解,在由伯克利区块链主办的特币技术交流大会上,DAGLabs的首席科学家、GHOST协议的共同作者YonatanSompolinsky为在场听众详细介绍了DAG应用区块链网络遇到的具体技术挑战,并讲解了SPRECTRE项目针对区块链交易的扩展性、安全性的解决方案和基础参数调整。首先需要明白,区块链是新生的事物。如果你有一个系统,要改善扩展区块链的性

2、能,在SPECTRE项目上应用DAG(DirectedAcyclicGraph,有向无环图)能很好地实现这一点。如图片所示,首先引出两个问题。首先,目前区块链中的交易是怎么样的?大家可以想象在银行排队办理业务的情景,用户们一个接着一个按序列排好等待,只有当上一个用户完成交易后下一个用户才能开始行动,通过这样的方式来保证整个区块链的一致性和贯彻性。当有过多需要办理业务的用户挤进银行后,交易堵塞的情况就会变得越来越严重。出于加快交易处理速率的考虑,节省用户在等待交易时耗费的时间,DAG的设计能实现这样性能的优化。对于这批涌进银行等待交易的用户,无论他们手持现金还是办理银行卡业务,DAG网

3、络不再进行分类,使他们分成一行行排队等待,而是加速去为他们办理业务。如果发生交易冲突,DAG网络会先记录在案,在处理完所有用户的交易后再对出现的冲突进行处置,从整体上加快整批用户的交易速率。DAG网络通过这样的安排来取代传统排序方式的区块链,由此推广为DAG应用区块链的日常。通常从技术层面来说,在一个分布式的系统里,开发人员都遵循着“CAP”定理来进行开发和维护,它们分别是上述提到的一致性、可用性和隔离性。在以往的区块链中,首先需要注意的因素即为一致性,分布式账本需要一致,上链后的交易信息要保持一致,创建以区块,它里面包含的信息必须要和以往的历史信息保持一致,整个系统都要设计为尽力维

4、持这个特性。这就是为什么会出现之前图中看到的,在银行排队等待信息同步的情况。DAG区块链网络则更为注重可用性,保证每个用户都能在这个网络上面完成交易。DAG应用区块链的技术挑战:区块混乱生成导致交易冲突在现在,比特币的交易速度约为3-7笔每秒,那么什么时候才能到达每秒过千笔的交易速度呢?要实现这样的交易性能,需要对现有的区块链系统做出什么改造?我们需要先对区块链的技术局限有所了解。首先,让我们来看看在一个包含十个区块的区块链系统简化图,每秒的交易流程是什么样的。如图所示,在每个区块里储存的信息都会被导向下一个生成的连接着的区块,每个分支都导向最初的创世区块,使得信息可追溯,从而形成一

5、条条“树杈”。而在DAG应用区块链的网络中,每一个区块都有相邻的区块可参照,关注其中一个区块,可以发现其能与其他区块相连打通,体现了高度的可用性,但与此同时,区块之间打通之后,挖矿行为将由于发生频繁有可能导致更多的硬分叉,一致性将遭到挑战。同时更为严重的是:区块不再遵循序列来排列之后,在各区块里的交易冲突事件将会大幅提升,比如双花问题(doublespending)。特别地,针对这些问题,在DAG网络中的挖矿协议里形成了两条共识原则:规则1,每个新增的区块的诞生,都必须以过往的全部区块作为参照;规则2,所有区块生成的交易信息都必须在第一时间公布。这样一套DAG结合区块链的系统,暴露出

6、来的最大缺点在哪?交易的监管是一个大问题。如图所示,比如用户在某一个区块里发生交易之后,有矿工想进行挖矿时,其交易信息很快就会被公布到整个区块链,许多矿工都会很快求得挖矿结果,冲突累积得非常之快。所以最主要的挑战在于,在这样的DAG网络曲线图里,通过参考之前的区块生成区块之后,如何保证新生成的区块包含信息的一致性,及随之而来在交易中产生的大量冲突?如何分辨抓住针对这个区块链网络发起的攻击也是一个难题,比如前面提到的双花问题。当交易发生后,两个矿工同时挖出结果的几率很大,谁获得交易费用的奖励?还有,如何计算不同矿工的工作量证明?另外存储问题也突出的非常严重,如果实现了每秒过千笔交易,产

7、生的交易信息数据量将会巨大。还有许多其他随之而产生的问题,但其中最为重要需要解决的首要问题还是一致性。如何针对这些问题研发解决方案?根据前面描述的DAG结合区块链网络应用的困境,证明了其只是一个应用模型,它本身是一个数据结构框架,而非现成的解决方案,具体DAG应用区块链网络的案例有好有坏。那么该如何制作一个性能优异的DAG应用区块链网络的协议?首先在一个复杂的区块链环境中,区块呈链条、分支状结构排列,很难找到隐藏其中属于攻击者的区块,但它会干扰生成正确的区

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。