区块见闻 区块见闻
Ctrl+D收藏区块见闻

TAL:科普:什么是稀疏默克尔树多值证明_NBS

作者:

时间:

译者注:以太坊网络是一台富状态(stateful)的世界计算机,其状态包括状态余额、交易流水号(nonce)、合约代码及合约存储内容等。在技术上,这些状态数据是靠一种叫做 “默克尔树” 的结构来组织的,因此,以太坊世界状态及其访问、更新,便可表达为一棵默克尔树及其访问、更新。同样地,所有跟默克尔树相关的数据证明及验证操作,都可以在以太坊协议的语境下被理解为状态的证明及验证操作。实际上,默克尔树是我们理解、利用、改进以太坊协议不可或缺的一环。本文介绍了一种可以证明多个值存在于同一棵默克尔树上的方法,因此也可以说,这就是在介绍如何证明多个以太坊状态隶属于同一时刻的世界状态的方法。

稀疏默克尔树多值证明(Sparse Merkle multiproofs)是对默克尔树截顶(Merkle pollard)的一种替代方案,可在为证明一棵默克尔树上存在多个值时提供空间上较为节约的证明。什么是默克尔证明、默克尔树截顶,我已在前一篇··文章中解释过了;推荐您先阅读并理解这些概念再来阅读本文。接下来,文本将用下图的默克尔树来解释多值证明:

美国说唱歌手Megan Thee Stallion与Cash App合作发布比特币科普视频:美国说唱歌手Megan Thee Stallion与由Square开发的移动支付服务Cash App合作发布了一段名为“Bitcoin for Hotties”的视频。该视频从她的角度解释了什么是比特币,为什么比特币有价值等内容。Megan Thee Stallion在Instagram上拥有超过2410万粉丝,在 Twitter上拥有640万粉丝。(Bitcoin News)[2021/8/8 1:41:10]

-图 1:一棵默克尔树-

稀疏多值证明最早由 Vitalik Buterin 提出。

多值证明

多值证明(multiproof)就是把一棵默克尔树中的一组证明打包在一起,从而节省存储空间。例如,下面是上图所示默克尔树的 3 条默克尔证明:

国务院:推进科普与区块链技术深度融合:为贯彻落实党中央、国务院关于科普和科学素质建设的重要部署,依据《中华人民共和国科学技术进步法》、《中华人民共和国科学技术普及法》制定《全民科学素质行动规划纲要(2021-2035年)》,其中要求实施智慧科普建设工程。推进科普与区块链等技术深度融合,强化需求感知、用户分层、情景应用理念,推动传播方式、组织动员、运营服务等创新升级,加强“科普中国”建设,强化科普信息落地应用,与智慧教育、智慧城市、智慧社区等深度融合。(新华社)[2021/7/10 0:40:52]

现场 | 火币中国推出数字经济及区块链产业科普新书:金色财经现场报道,12月6日,由海南省工业和信息化厅主办,南南合作金融中心协办,海南生态软件园、火币中国承办的“海南自贸港数字经济和区块链国际合作论坛”在海口举行,这是全球首次区块链部长级论坛。

在本次论坛上,火币中国举行了“数字经济及区块链产业科普系列新书发布”仪式,希望通过教材、专业教育、培训等多种方式,帮助从业者、高校、研究机构深入了解区块链,从而建立起区块链全局性知识模型,真正推动区块链应用落地。火币中国CEO袁煜明介绍,将联合机械工业出版社面向普通高等教育推出《区块链导论》、《区块链系统设计与应用》和《区块链新商业模式分析》系列教材,这是国内最早推动的区块链教材之一;火币中国还积极参与数字经济的研究,由中信出版社出版的新书《读懂Libra》已经上市;由火币中国负责编写的区块链技术科普读物《区块链技术进阶指南》将于12月面世;首本行业内最全的区块链应用案例集《区块链产业应用100例》在本次论坛进行了首次刊印。[2019/12/6]

-图 2、3、4:分别对应 Banana、Peach 和Kumquat 的默克尔证明-

声音 | ETC Labs主管:科普教育是未来几年公链面临的巨大挑战:ETCLabs主管Darin Kotalik认为,科普教育是未来几年公链面临的巨大挑战,人们必须要对区块链有基本的认识,分清楚公链和私链的区别。[2019/8/25]

从上图可以看出,3 个证明总共包含 9 个中间分支的哈希值(即由绿色标出的部分):每条证明有 3 个哈希值。将这 3 个证明组合成如下图所示的结构,即成多值证明:

-图 5:对应 Banana、Peach 和Kumquat 的默克尔多值证明-

相比于单条证明时总共需要的 9 个中间分支哈希值,默克尔多值证明只需要 7 个哈希值,这就节省了存储空间。

稀疏的多值证明

虽然默克尔树的多值证明确实节省了一些存储空间,但其中一些数据可以用其他方式得到,所以移除这些数据可以进一步节省存储空间。(译者注:可通过其他方式得到的数据,就不需要存储在证明中,只要在需要时能够得到即可)

金色财经独家分析 监管机构、媒体、业界提示风险 区块链科普道阻且长:新华社今日发文表示,近来“区块链”类案件频发,不法分子以“投资虚拟货币周期短、收益高、风险低”为借口,取用户信任并诱使其转账进行投资。无独有偶,同日消息,腾讯手机管家安全专家也提醒此类风险,并从技术上提出防建议。在美国,监管机构警示加密货币欺诈现象普遍承诺高收益而不披露潜在风险。金色财经独家分析,不法分子假借新技术之名进行,一方面是抓住民众趋利的心理,一方面反映出区块链科普的欠缺。区块链是新兴科技和底层技术并有改变社会生产关系的潜力,应该进行系统性的科普教育,当前,部分大学已经开始设置了区块链课程,但对于普通民众仍然有科普的需求,人们应该了解到系统和正确的知识,不仅要了解区块链的好,也要明确局限和弊端,以在高收益的诱惑下,保持清醒客观。[2018/4/11]

以上图的默克尔树多值证明为例,许多中间分支的哈希值都可以被计算出来。比如验证者将已知的值 Banana 和 Peach 通过哈希函数计算后,可以得到哈希值 bc4F…8d3f 和 59a0…421d。对于与根节点相连的两个节点的哈希值 c0b7…da30 和 6ff9…8e3d,可以通过其孩子节点(与两个节点直接相连的,并处于上方的节点)的哈希值计算出来。因为孩子节点的哈希值要么是证明中包含的,要么可以通过再上一层的哈希值计算出来。下图中黄色的节点标记了这 4 个可由计算得到的哈希值:

-图 6:默克尔树多值证明中可以被移除的哈希值(见黄色标记)-

移除这些哈希值后,可以得到 默克尔树中稀疏的多值证明,如下图所示:

-图 7:稀疏的默克尔树多值证明-

稀疏的默克尔树多值证明将需要包含的哈希值数量从 9 个减少到了 3 个。证明效果相同时,稀疏的多值证明也比默克尔截顶更有效,因为后者需要 6 个哈希值。

验证者得到稀疏的多值证明后,为了验证那些值是默克尔树的一部分,需要执行以下的步骤(在默克尔树中,依照从左到右,从上到下的顺序):

(译者注:“将某个值哈希”指:将值作为哈希函数的输入,得到随机的一串输出)

将 Banana 哈希得到 bc4f…8d3f

将Peach 哈希得到 59a0…421d

将 Kumquat 哈希得到 2aab…6f791

将bc4f…8d3f 和 59a0…421d哈希得到 9c15…5dec

将 2aab…6f79 和 45cf…14d9哈希得到 a6e4…87df

将d596…66ef 和 9c15…5dec 哈希得到 c0b7…da30

将e336…ed14 和 a6e4…87df 哈希得到 6ff9…8e3d

将c0b7…da30 和 6ff9…8e3d 哈希得到 d576…ffd9

至此可以把最终得到的哈希值与默克尔树的根哈希值做比较,如果二者一致,则认定所有的值都在该默克尔树中。

下图对比了默克尔树中值和证明的数量变化时,默克尔树截顶和默克尔树中稀疏的多值证明在存储默克尔证明时可以节约的空间存储量:

值得注意的是,多值证明的节省量是近似值,因为能节省多少取决于被证明的值在默克尔树中的位置以及可以被移除的中间分支哈希值个数。

对比稀疏多值证明与默克尔截顶

从上表中可以看出,稀疏的多值证明比默克尔树截顶节省更多的存储空间,那么为什么还要使用默克尔树截顶呢?因为稀疏的多值证明相对于默克尔树截顶,拥有一些不同的特性,主要有以下几点:

在多值证明方法中,所有值的证明都是一起生成、一起得到验证的;而在截顶方法中,各个值的证明是分别生成、分别验证的(译者注:生成及验证时,对截顶来说,具体是哪个值,只需要这个值和相关的证明即可,对于多值证明,则需要把要验证的多个值,以及多个值对应的证明都拿出来)

稀疏的多值证明在生成及验证证明时,需要更多的内存和 CPU 周期

稀疏的多值证明很难并行地生成和验证

稀疏的多值证明的大小是可变的,而默克尔树截顶在给定默克尔树和总证明数时,其证明大小是固定的

一些情况下,因为用于传输信息的编码系统不同,可能会导致稀疏的多值证明比默克尔树截顶需要更多的空间;因此建议使用之前做一下测试

总的来说,还要看单个应用的需求来决定哪个更合适。但是这两种方法都比单独的默克尔证明节省更多的存储空间,因此当需要对同一棵默克尔树提供多个证明时,可以考虑使用这两种方法。

实现样例

https://github.com/wealdtech/go-merkletree/ 提供了稀疏的默克尔树多值证明的 Go 语言实现 。

标签:BSPNBS区块链TALBSP币nbs币发行量区块链技术通俗讲解图FullMetal Inu

芝麻开门交易所下载热门资讯
ADS:全面梳理 Avalanche:subtnet 对 Avalanche 未来影响几何?_DATADOGE

Avalanche共识协议一条链最基本的任务就是确保网络安全性,这涉及到的东西就是共识。所以我们在了解Avalanche的时候,首先需要介绍的就是Avalanche的共识协议.

BTC:币安上线现货杠杆交易 和期货合约有什么不同?风险几何?_USD

7 月 11 日,币安宣布正式开放杠杆交易(Margin Trading)。币安 CEO 赵长鹏称,“推出杠杆交易能够同时满足同一屋檐下的机构交易者和散户的需求.

USD:到底有多少人持有或者使用过加密货币?_BTC

不久前,白话区块链发文称全球有 2% 的人真正了解区块链。按照全球 70 亿人口计算,那么,全球真的有 1.4 亿人参与数字货币和区块链吗?今天,我们不妨用一些数据粗略地估算下,区块链行业到底有.

TAL:13款 GameFi YGG 新合作链游一览_nbs币发行量

近期,Yield Guild Games 在其合作伙伴名单中又添加了一批新的 P2E 游戏,旨在将其数万 scholars 带入到各类丰富的元宇宙中.

Filecoin:Filecoin为什么需要复制证明和时空证明?_OIN

在关于Filecoin的各种介绍中,我们经常听到这样两个技术术语:复制证明和时空证明,这两个术语是Filecoin系统的核心,也是Filecoin系统中挖矿的关键点.

PARTY:PartyDAO的故事:一群陌生人如何在1年内把一篇推文变成了2亿美金的产品DAO_Pool Party

几周前,PartyDAO公布了他们拿到A16z领投的1640万美金融资,估值两亿美金,这是迄今为止社区驱动类DAO的最高估值。