默克尔与区块链 什么是默克尔树?它在区块链中的重要性是什么?

gateio 204 0

本篇文章给大家谈谈默克尔与区块链,以及什么是默克尔树?它在区块链中的重要性是什么?对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

什么是区块链?不是比特币进化慢,而是我们进化慢

自从区块链(blockchain)这个词被从比特币中抽象出来之后,整个业内就弥漫着一种奇特的意识形态叙事(ideological narrative)。这个叙事是这样的:比特币是一架又慢又旧的破马车,十几年了没有什么改进,什么炫酷的功能都没有。当然,从人类“无利不起早”的天然本性而言,给你讲这么一通破烂话的人,绝对不是吃饱了撑的无事生非,而通常都会在看到你对手里的大饼(BTC)起了半信半疑之心之后,趁机向你推销他正在兜售的拉风跑车项目。

北京时间11月14号下午13点15分27秒,随着区块高度709632的区块被挖出,比特币自2017年隔离见证升级之后最重要的升级之一,Taproot升级,宣告成功激活(今年6月份就已经获得超90%矿工投票lock-in了,本次激活属于明牌)。

该区块中包含了chainside联合创始人Federico Tenga的一笔V1_P2TR交易。在该笔交易中,Federico在OP_RETURNDATA中附加了一句话:gm taproot 。据信,这是 历史 上第一笔Taproot交易。为了抢到这个名次,Federico支付了2510 sat/vB的矿工费(手续费),这大概是正常矿工费(不到10 sat/vB)的5百多倍。[1]

Taproot升级为我们带来了区块扩容、更好的隐私性以及增强的扩展性等诸多好处。这些好处主要是由于两项技术的引入而带来的。其一就是Schnorr签名,而另一个就是MAST(默克尔化的抽象语法树)。

Schnorr签名能够压缩数字签名的尺寸。单签名比ECDSA节省约12%的尺寸,也就可以节省转账手续费。以及,它能够把多签名压缩成一个签名,这可以极大压缩多签地址的尺寸,并保护多签参与者的隐私。据说早在2012年Mike Hearn就在bitcointalk论坛提出过类似想法。通过压缩签名尺寸,相当于扩大了区块容量,容纳更多交易量。

MAST则可以大大改善P2SH交易的交易尺寸、隐私性和灵活性。最早的BIP-114提案是由Johnson Lau于2016年提出的。早前的P2SH交易可以允许支付时不揭示script(比特币脚本代码)。但是,当花费UTXO(未花费的交易输出)时,便需要提供script且记录到链上,从而占据区块链的容量。如果script比较复杂,则会占据较多的空间。MAST的引入使得我们可以把包含很多条件的复杂脚本组织成默克尔树。在花费UTXO时,也只需要揭示默克尔证明和涉及的script,而不需要揭示整颗树。这就节省了区块容量,改善了脚本的隐私性。同时,由于打开了script尺寸的限制,这就为比特币的可编程性引入了更大的扩展性和灵活性。

应该说,上面几段话对一些只在中心化交易所炒炒币,甚至连私钥都不懂的朋友来说无异于天书。别说Taproot了,便是4年前的segwit(隔离见证),对很多所谓圈内的人来说都不知何物。这没有什么可耻的。我头一次看这些新技术、新名词也是脑袋爆炸。多学习,多研究,多琢磨琢磨,也就搞明白了。

相比于 科技 的进步,我们掌握知识的能力进化的实在是太慢了。时至今日,很多人还搞不清楚比特币究竟是存储在自己手机上的钱包里,还是在比特币网络上。自己手机或者电脑上的钱包软件又是起什么作用的。私钥是什么,助记词是什么,所谓的HD钱包又是什么。1开头的地址,3开头的地址,5开头的地址,bc1开头的地址都有啥分别。怎么把大饼从交易所提出来,放到所谓链上。怎么自己掌控自己的比特币。怎么签名转账比特币。怎么使用隔离见证地址。以及现在,如何构建Taproot交易呢?

有人于是说,那就不要让用户自己掌握私钥,远离这些技术细节好了。回到托管式的环境,回到互联网中心化的用户体验。这样一种用户体验的改善,就像中心化交易所一样,是以牺牲用户自主掌握资产为代价的。这直接抛弃了去中心化以来全部的价值观。这又是一种进化,还是一种退化呢?

如果只是为了发明一个噱头,让投机者去炒、去赌,那就尽可以不考虑这些。那就不仅不应该限制OP_RETURN的尺寸,甚至应该扩充script使之支持图灵完备的编程。这样就可以在比特币上发行各种空气币、土狗币,再搞出来各种为炒而生的应用出来,所谓繁荣的生态。但是比特币一路走来,似乎是走了相反的道路。不仅从一开始就极大限制了script的功能,而且主动缩短了OP_RETURN的数据尺寸,限制了在比特币链上玩各种花活儿的可能性。

比特币是审慎的。它清楚自己有更大的使命。Taproot的激活,可能会有利于二层的发展。但是,并不会给一层带来自限性的问题。相反的,它会因为压缩了数据尺寸,而扩大了一层的容量。

比特币是富有耐心的。它肩负着普及去中心化数字货币(而不是在中心化平台上进行投机)的 历史 任务。所以它必须耐心地等待,等待每一个人跟上技术发展的脚步。

交易数据是写入区块链的哪个部分

现实的区块链直接将内容数据(如交易数据)存储在数据库中默克尔与区块链,称为默克尔树默克尔与区块链,然后将默克尔树的跟存储在区块头。

_默克尔树具有非常独特的属性,使默克尔与区块链我们能够在对等网络中进行有效的数据验证。默克尔树是二叉树,其中节点存储哈希,而不是排序存储数据块。 https://copyright.bdstatic.com/vcg/edit/83381c1f7e42f5002b624dcec0be6931.jpg

区块链,就是一个又一个区块组成的链条。每一个区块中保存了一定的信息,它们按照各自产生的时间顺序连接成链条。这个链条被保存在所有的服务器中,只要整个系统中有一台服务器可以工作,整条区块链就是安全的。

这些服务器在区块链系统中被称为节点,它们为整个区块链系统提供存储空间和算力支持。

区块链-默克尔树

Merkle 树是一种组织和构造大量数据以使其更易于处理默克尔与区块链的方法。在加密货币和区块链的情况下默克尔与区块链,Merkle 树用于以对资源要求较低的方式构建交易数据。

当在 Merkle 树结构中进行加密货币交易时,它会被散列,然后被赋予一个等效的散列值。每笔交易在 Merkle 树中散列后,产生的散列值与另一个散列值配对,然后再次散列。例如,将散列值“AB”和“AC”组合起来创建“ABC”。

重复这个配对散列值的过程,直到产生最终的散列值。最终的哈希值,即默克尔根,提供默克尔与区块链了它包含的所有交易的摘要。然后将 Merkle 根摘要插入到块头中。

Merkle 树结构提供了一个区块中交易的易于访问的记录。因此,检查块中的数据是否已更改或篡改非常简单。这是真的,因为对 Merkle 树中的交易(或任何其他相关数据)的任何更改都会导致完全不同的对应 Merkle 根。

如果加密货币不使用 Merkle 树,则每个验证请求都将涉及通过网络发送的大量信息。在 Merkle 树中构建交易数据是一种更有效的资源利用。验证交易不需要账本的完整副本,因为可以在 Merkle 根中验证散列的交易数据,需要在节点间发送的信息少得多,因此分析整体数据完整性的计算能力也更少。

换句话说,Merkle 树结构使用户能够验证单个交易是否已包含在一个区块中,而无需经过下载整个区块链的过程。该技术是加密货币组织交易数据并像它们一样高效运行的重要工具。如果没有默克尔树,对资源的更大需求很可能会导致参与网络的节点更少。

默克尔与区块链的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于什么是默克尔树?它在区块链中的重要性是什么?、默克尔与区块链的信息别忘了在本站进行查找喔。

标签: #默克尔与区块链

  • 评论列表

留言评论