资讯 有向无环图 (DAG) 技术:超越区块链的分布式账本

szwzyh · October 23, 2018 · Last by icotide replied at October 24, 2018 · 1128 hits

一、起源

DAG(Directed Acyclic Graph,有向无环图)是一种数据结构,最早提出在区块链中加入 DAG 概念作为算法,是在 2013 年的 bitcointalk 论坛,被称作为 “Ghost 协议”,这一提议也是为了解决当时比特币的扩容问题。后来,在 NXT 社区,又有人提出了 DAG of block,将 DAG 的拓扑结构用来存储区块,解决效率问题。那时对于 DAG 的应用,还停留在类似于侧链的一个认识。

DAG

众所周知,扩展性是当前区块链技术急需解决的难点之一。谈到扩展性,首当其冲的便是区块链的扩容问题,当区块链上的交易频繁时,区块链的性能也呈会线性下滑。参考以太坊的容量,仅仅一个加密猫游戏就让区块链不堪重负,造成了巨大拥堵。所以,如何有效地扩容,成为了当下区块链技术的一大重点。

在 PoW 算法的区块链中尤其如此,由于 PoW 机制是将交易数据打包成区块,在由算力高的节点进行记账,这种算法相对于 PoS 速度较慢,交易量上升更加会影响到整体的确认速度,以比特币为例,一开始比特币区块链大小为 1M,后来交易量的上升使得社区不得不考虑扩容方案,还因此引发了扩容之争与分叉事件。

PoS 在确认速度上大为改善,但仍然难以跟上需求。

同时,PoW 和 PoS 算法都有趋向于中心化的理论风险,当拥有的算力或者代币达到了一定数量时,区块链就会变得中心化。

DAG 也是一种分布式账本技术,与区块链不同。因为区块链是由区块组成的一条单链,而 DAG 则是由交易组成的网络。但本质上,两者却有着很大的相似之处。DAG 中的交易,就可以看做是一个个 “区块”,只不过这些区块也可以作为节点,形成一个复杂交织的网络拓扑结构。

DAG 与 PoW、PoS 相比,DAG 有着更加高的性能,甚至可以说交易越多、节点越多,处理速度越快。

二、工作原理

DAG 技术如何在作为一个分布式账本进行应用呢?IOTA 是应用 DAG 技术较为知名的一个项目,它将 DAG 进行了改进,并提出 Tangle(缠结)方案。这里以 IOTA 作为例子来说明 DAG 的运行原理。

在 DAG 的网络中,每一个节点都可以是交易者和验证者,因为 DAG 中的交易处理,正是由交易节点本身来共同完成。

而且,IOTA 的 Tangle 账本在保证高速处理交易的同时,并不需要支付交易费用。不过,这并不代表上面的交易时免费的,这是因为在这个账本中,每一笔交易的发起都需要线验证另外两笔随机交易,并将自己发起的交易指向这两笔交易,这样在区块链上矿工所承担的责任就分配给了所有的交易者。

DAG 这种处理交易的方式,可称作为异步处理模式。

Tangle 账本是建立在 DAG 网络拓扑结构上的去中心化账本,利用这一结构,所有点都能成为 “矿工”,而且每个节点所承担的交易数量并不会超负荷,这样就使得交易量越大效率越高。

如果像 IOTA 一样,将其运用于微小交易,那么可参与的节点将会更多。区块链承担的交易量每秒可以万计算,而理论上 DAG 却能够达到每秒以亿计算。

三、优缺点

DAG 的优点非常明显,它没有区块链需要担忧的扩容问题,因为随着交易量和用户的增长,它的处理速度只会更加快速;同时无交易费这一点可以迅速提升交易量,增强去中心化。

更强的性能和更高程度的去中心化,是 DAG 领先于区块链,以及重大创新的部分。然而,DAG 也有着很大的隐患。

在安全性上,DAG 要比 PoW 脆弱得多。在 PoW 共识机制中,算力达到 51%,才能够发起攻击;而攻击 DAG,以 Tangle 为例,发起一笔交易验证两笔交易,理论上来说,只要达到 34% 的算力,就能够攻击整个 DAG 网络了。

而且,因为每个人都能处理交易,如果一个拥有高算力的节点通过发起巨量的交易,从而获得更多验证权,就很容易降低 DAG 网络的效率,甚至发起攻击;而无交易费使得发起和验证的成本为零,同时海量的节点更增加了这种攻击风险。

此外,在掌握高算力的情况下,也很容易出现 “双花” 现象,“双花” 即双重花费,指一笔钱花了两次。攻击者可以同时发起两笔交易,利用异步处理数据和节点间的信息差来达到这个目的。

DAG 作为区块链的一个有力竞争者,有着极大的创新之处,但同时也具有明显的缺陷。不过,作为一个年轻的数据结构,DAG 可以结合更多的新技术来扬长避短。目前使用这一技术的项目,有知名的 “DAG 三驾马车” IOTA、字节雪球、NANO。

目前,有越来越多的 DAG 项目正在发展,有乐观者认为 DAG 才是真正的区块链 3.0,也有人认为区块链才是更加完善的去中心化账本。不可否认的是,DAG 的确是区块链在去中心化和拓展问题上的强劲对手。

文章来源:区块链技术社区(www.bbcaijing.cn),如有侵权请联系删除!

但是 XDAG 这个公链没啥动静啊........

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up