DAG:区块链行业下一个引爆点?

更新日期: 2019-11-14 阅读: 3.3k 标签: 区块链

何为DAG

DAG是Directed Acyclic Graph的缩写,是一种运用拓扑排序的直接图像数据结构。这种数据结构能够在数据压缩中找到最优解,因此在实际中被广泛地运用于数据处理等领域。总体而言,DAG结构中的每个节点通过一个具有特定方向的edge连接在一起,以此来排除任何回路的可能性。因此,DAG可以直观地理解为一个没有回路的有向图。



DAG的原理

在DAG的结构中,每一笔交易在自身被处理、确认之前,必须对另外两笔交易进行确认。当然,任何一笔交易的处理和确认由所有的节点进行负责。这种方式不仅使每一笔新的交易得到了确认,同时也使所有的交易都间接地得到了验证。每一位交易发起者不需要为自身交易的确认付出成本,因为该交易者也需要消耗自身的计算力来验证其他的交易。

在整个网络中,未被确认的交易通常被称作tip。一种名为马可夫链蒙特卡罗的算法确保了每个tip不能进行自我验证。因此,要想自身得到确认,这些tip不得不去确认其他的交易。


DAG与区块链的区别

如果说区块链技术是建立在一个垂直型结构上的话,那么DAG可以想象成建立在一个水平结构上。在区块链的工作量证明机制中,只有矿工才通过挖矿的方式来确定新的区块,并将新的区块附在最新的链上。并且,区块不可以同时创立,每一个区块的创立大约需要10分钟。

相比之下,DAG的体系中根本没有“区块”这一概念:交易与交易之间无需通过区块便可直接联系在一起。一旦没有了区块,挖矿这一过程也失去了意义,矿工在DAG体系中也相应地“失业”了。相较于区块链,DAG的结构更像是一幅多方交易的迷宫网络图。


图:DAG与区块链的区别,图片来源:Medium


DAG与区块链的共性

虽然DAG与区块链存在一些差异,但是从本质上讲,DAG来源于侧链的理念,仍然具备区块链的属性。因此,作为一个基于点对点网络的分布式数据库, DAG依然是一个对分布式决策验证的机制。

确认区间

确认区间(confirmation confidence)在DAG结构是一个非常重要的概念,是衡量一笔交易接受程度的重要指标。其具体的计算分为3个过程:1) 运行tip筛选算法100次 2) 计算出同意该交易的tip个数 3)用该个数除以100得到的百分比即为确认区间。换句话说,确认区间就是一笔交易确认过程中tip所占的百分比。

DAG正是基于确认区间这一概念很大程度上解决了比特币区块链的一个难题:可扩展性问题。理论上讲,在DAG结构中,随着网络节点和已处理交易量的增加,未来交易量处理的速度会更快。


结语

DAG作为一种运用拓扑排序的直接图像数据结构,很大程度上解决了比特币区块链所面临的可扩展性问题。目前而言,物联网链(IoT Chain)是基于DAG技术的一个很好实例,每秒交易量可达1万次。因此,随着DAG技术的不断发展,“交易速度”和“交易费用”对于区块链而言,将不再会是一个两难的局面。

根据国家《 关于防范代币发行融资风险的公告 》,大家应警惕代币发行融资与交易的风险隐患。

本文来自 LIANYI 转载


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://fly63.com/article/detial/6465

相关推荐

以太坊发展简史

在 以太坊在Serenity (ETH 2.0) 阶段来临之前经历的升级和硬分叉。通过本文将了解到升级或分叉发生的时间,加入那哪些特性。时至今日当我们鸟瞰区块链技术的发展,它仍旧算得上是一个新事物。

区块链开发中使用的最流行的编程语言

我们目前正处于一个新兴的区块链开发行业中。区块链技术处于初期阶段,然而这种颠覆性技术已经成功地风靡全球,并且最近经历了一场与众不同的繁荣。由于许多资金充足的项目现在急于建立区块链网络并在其上部署分散的应用程序

200行JS代码实现超级简单的区块链,带你入门区块链

本文通过JavaScript源码实现一个简单的区块链框架,带你入门区块链的相关知识。区块链的基本概念非常简单:一个分布式数据库维持不断增长的有序记录列表。

从概念到底层技术,一文看懂区块链架构设计(附知识图谱)

区块链作为一种架构设计的实现,与基础语言或平台等差别较大。区块链是加密货币背后的技术,是当下与VR虚拟现实等比肩的热门技术之一,本身不是新技术,类似Ajax,可以说它是一种技术架构,所以我们从架构设计的角度谈谈区块链的技术实现。

区块链开发的11种顶级编程语言

区块链是一种去中心化,安全且非常快速的技术,已经在商业世界引起轰动。随着大量的区块链项目正在开发和部署在互联网上,区块链开始走向世界。已经有一些公司试图在其他人的基础上发展。

区块链的六大层级结构

众所周知, 区块链 是 比特币 的底层技术,那么这个底层技术又是怎么分层级结构的呢?在前面我们介绍了区块链的四大核心技术是其独特的数据结构、分布式存储、密码学和共识机制。今天我们就来聊聊区块链结构的六个层级结构

用JavaScript写一个区块链

几乎每个人都听说过像比特币和以太币这样的加密货币,但是只有极少数人懂得隐藏在它们背后的技术。在这篇博客中,我将会用JavaScript来创建一个简单的区块链来演示它们的内部究竟是如何工作的

使用javascript实现小型区块链

区块链概念狭义:区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码方式保证的不可篡改和不可伪造的分布式账本。

什么是挖矿?

区块链中经常会听到挖矿这个名词,因为它和现实中的挖矿不一样,所以很多人对这个词很费解。为什么那么多人去挖矿呢?因为挖矿成功后会有奖励。为什么挖矿需要大量的矿机呢?因为有大量的哈希计算。这个计算的过程就被称为挖矿

初识区块链_用JS构建你自己的区块链

区块链太复杂,那我们就讲点简单的。用JS来构建你自己的区块链系统,寥寥几行代码就可以说明区块链的底层数据结构、POW挖矿思想和交易过程等。当然了,真实的场景远远远比这复杂。本文的目的仅限于让大家初步了解、初步认识区块链。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!