XDAG:POW+DAG

比特币开创了区块链的先河,公认是区块链1.0时代,Ethereum将全球计算机的概念带入现实,被认为是区块链2.0时代,当前的EOS则将blockchain的技术发扬广大,有人认为是区块链3.0时代的开篇。

虽然行业经过多年发展,但是基于blockchain的区块链技术本身也面临诸多问题,并且随着普及范围扩大这些问题也越来越突出。尽管业内众多blockchain开发者都在尝试寻找各种技术手段来解决当前遇到的这些问题,但是从当前技术发展现状来看各种尝试并没有取得突破性进展。

目前遇到的问题主要有以下两个方面

1、blockchain本身的TPS瓶颈限制了区块链技术的性能

2、blockchain较长的确认时间也限制了区块链技术的广泛使用

针对以上两个问题,不管是EOS偏中心化的解决方案,还是目前如火如荼的分片技术、侧链技术都存在一些无法解决的问题。

这一现状间接说明基于blockchain本身再去扩展将面临巨大困难和挑战。

那除了blockchain上再进行扩展是否还有其他的方向可以去突破?答案是有的。那就是DAG技术!

DAG (Directed Acyclic Graph 有向无环图) 并不是一个刚出现的技术,而是在数学的一个分支—图论中的数学概念,早在1736年被提出,在计算机技术中则是在计算机科学与技术初期就已经存在的一种数据存储结构。从理论上而言DAG结构比单链结构更复杂,但拥有更好的扩展性。

目前业内已经有一些基于DAG数据结构的公链存在,但是每个公链都因为对于DAG技术的理解不同实现路线和适用场景不尽相同。

与众不同的是XDAG尝试通过从区块链技术底层的数据结构开始重新设计,并采用另外一种DAG构成方式,巧妙的将PoW共识算法和DAG技术相结合,并同时提供了不同节点之间交易并发处理方式,在确保的网络安全性和公平性的前提下提高TPS降低确认时间。

这里展示了一个最简单的XDAG转账处理结构。

A表示地址,M表示主块,Tx1 记为A1地址向A2地址进行的一笔转账,W我将其命名为见证块。

上图展示了一个典型的双花检测。

假设A1地址有10个XDAG,A1的钱包被人恶意拷贝了两份,同时发起了两笔转账,一笔Tx1从A1转了5个XDAG到A2地址,另外一笔Tx2从A1转了7个XDAG到A2地址。两笔转账合计12个XDAG,超出了A1地址原有的10个XDAG,是个典型双花。

在XDAG检测的逻辑是在节点同一时间收到Tx1和Tx2时,节点生成的W块会引用Tx1和Tx2,根据稳定的排序规则Tx2会在被W块引用时填充到了顺序编号更小的field中,从而Tx2优先被处理,而Tx1则后处理,从而检验出Tx1的花费是一次双花,从而在内部块中将这个哈希值指向的交易块标记为拒绝状态,而Tx1这个交易块永远记录在DAG中,不会删除。

XDAG未来的方向不仅仅是做一个高TPS的去中心化公链,同时也计划带来交易的匿名性和智能合约,让XDAG具有支付属性以外具有更广阔的应用场景。

商业合作

添加时备注“商业合作”

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181031B1XXF500?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券