LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 行情分析 > 小乔和你聊聊区块链的事儿(641)

小乔和你聊聊区块链的事儿(641)

2020-05-02 乔辞念安 来源:区块链网络

可伸缩性仍然是加密货币关注的一个问题,但聪明的头脑仍在不断地提出解决瓶颈的创新方案。一个具体的可伸缩性问题是加密货币节点持有的未使用事务输出(UTXO)数据集的增长。这是现有加密货币的所有(分数)列表以及如何使用的详细信息。不幸的是,这个列表往往会随着时间的推移而增长,特别是当新用户进入系统时——他们的硬币也会在UTXOs中反映出来。为了解决这一日益严重的问题,麻省理工学院媒体实验室数字货币计划(也是闪电网络白皮书的合著者)的Tadge Dryja提出了一种基于散列的累加器,他称之为“Utreexo”解决方案。


用户的加密货币余额是其所有UTXO的总和。当您进行交易时,您的钱包应用程序将“翻找”您的UTXOs集合,以找到足够的资金来支付交易。然后,交易(在区块链上确认后)实质上“销毁”所使用的UTXOs,并“创建”新的UTXOs:现在由交易接收者控制,以便在下一个交易中使用。加密货币节点还存储整个UTXO数据集,以了解以前支付的哪些输出尚未使用,从而确定哪些UTXO仍然可用。每当他们从网络上收到一个新的交易时,他们会对照utxo列表检查该交易,以确保在交易中花费的硬币确实存在,并且还没有花掉。如果事务有效,它们将更新其UTXO数据集。


因此,加密货币节点要存储两个大数据集:区块链和UTXO列表。在撰写本文时,区块链超过230G字节,并且正在以可预测的速度增长。不喜欢存储这些数据的用户可以“删减”(删除)旧的区块链数据:由于UTXO列表,他们仍然可以知道哪些硬币是可以消费的。然而,目前已经有近6000万个utxo,没有真正的激励措施来阻止该榜单的增长。无法删除此数据,因为节点需要它来判断哪些新事务有效。随着加密货币用户数量的不断增加和UTXO数据集的不断增长,运行一个完整节点的需求不断增长,它正成为一个重要因素。从长远来看,这个问题可能比区块链的增长还要严重。


加密货币开发人员多年来一直意识到UTXO问题,并提出了几种解决方案。最近的研究已经提出使用加密累加器,一个梅克尔树的“表亲”。当Merkle树将数据散列到一个散列中时,累加器将数据相乘成一个固定大小的数据和:一个“根”。与其他一些数据(一个“证明”)结合使用时,累加器允许用户检查特定数据块是否“存储”在根中。Dryja的Utreexo项目背后的想法是创建另一种类型的剪枝,但用于UTXO集。Utreexo使用累加器创建UTXO集的根。通过只存储这个和而不是完整的UTXO集,累加器将RAM和磁盘存储保持在小于1千字节的数据量。使用此Utreexo累加器的节点称为“紧凑节点”

当一个新的事务由一个紧凑的节点创建并通过网络传输时,它会将包含证明与事务一起发送。从那时起,每个压缩节点将事务和证明转发给其他压缩节点。由于每个紧节点都有相同的累加器状态和根,因此每个节点的证明都是相同的。紧凑型节点所做的就是将完全相同的消息转发给其对等节点。一旦事务包含在一个块中,它们就会丢弃所有的证明数据。这意味着紧凑型节点可以将事务和包含证明保存在其mempool中,但实际上永远不会写入硬盘驱动器。


但是,如果事务不是由紧凑型节点创建的,会发生什么情况?虽然紧凑型节点可以很容易地将这些事务相互通信,但并不是每个人都会保留紧凑型节点。为了允许紧凑型节点与全节点通信,Utreexo还引入了“桥接节点”的概念,桥接节点存储区块链和整个UTXO集。这个网桥节点是对现有网络的一个重要的“引导”。压缩节点无法直接从标准完整节点接收事务,因为标准节点不会发送包含证明。当一个完整的节点向一个紧凑的节点发送事务时,它首先通过桥接节点。桥节点查找UTXO,从它的累加器构建证明,并将事务和证明转发给紧凑节点。compact节点将转发的包含证明检查到自己的证明累加器中,并在匹配时验证事务。

好啦,今天的内容小乔就给大家讲到这里啦,下面我们来一起看看数字货币的数据:


最后祝大家天天开心,生活愉快!

—-

编译者/作者:乔辞念安

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...