買以太坊 買以太坊
Ctrl+D 買以太坊
ads
首頁 > SAND > Info

ACH:什么是 Merkle Pollard?_Peachfolio

Author:

Time:1900/1/1 0:00:00

在密碼學貨幣領域,默克爾樹是一種很高效的方法,用于證明一大組數值中存在一個特定的數值,而且將數據存儲量降到了最低。本文介紹了默克爾樹,并且展示了如何通過存儲多個層級的默克爾樹分支而非根節點的方式來大量減少重復證明”)。哈希函數

哈希函數可以把一段任意長度的數據變成一個固定長度的值。例如,下圖中“Apple”和“Orange”的哈希值如下所示:

-哈希值-哈希函數有很多特征,其中最顯著的兩點是:即使輸入值僅有毫厘之差,得到的哈希值也會迥然不同;從數學上來說很難根據哈希值倒推出輸入值。默克爾樹

默克爾樹指的是將多個輸入值和它們的哈希值結合起來壓縮成某個固定長度的值。默克爾樹的頂端是各種輸入值,被稱為“葉節點”。每個葉節點經過哈希得到上一層分支,相鄰兩個分支拼接在一起之后哈希得到中間支。一層一層哈希之后,最后得到一個哈希值,即默克爾根節點。默克爾樹的示例圖如下:

大咖零距離 | 牛市來了 還可以在什么點位上車:2月12日16:00,金色盤面邀請區塊鏈KOL安迪做客金色財經《大咖零距離》直播間,將分享《牛市來了,還可以在什么點位上車?》,敬請關注,欲進群觀看直播掃描海報二維碼報名即可![2020/2/12]

-默克爾樹-上圖所示的默克爾樹有8個輸入值,分為4層。根節點就是位于最末端的0xd576...ffd9。正如上文所述,即使輸入值極為近似,得到的哈希值也是迥然不同的。如果輸入值發生了變化,會影響到默克爾樹的各個層次,最后得出完全不同的根節點。例如,將輸入值中的“Peach”改為“Pear”之后,這個默克爾樹都會發生變化,如下圖所示:

-一處改動對整個默克爾樹的影響-默克爾樹是可再生的:如果把完全相同的輸入值按照同樣的順序排列,默克爾樹的分支和根節點始終會得出同樣的哈希值。默克爾路徑

動態 | 調查顯示:愛爾蘭的大多數人不知道區塊鏈是什么:一項新的研究表明,區塊鏈可能是下一個在技術方面很重要的東西,但愛爾蘭的大多數人不知道它是什么,因此沒有考慮過從事它。這項由Wachsman公司委托開展的對1000人進行的研究發現,在那些拒絕接受區塊鏈相關工作的人中,略多于一半的人表示,他們主要是因為不了解區塊鏈技術是什么。許多人還表示,他們沒有足夠的技能在區塊鏈工作。[2018/11/15]

默克爾路徑指的是某個輸入值到默克爾根節點之間所有哈希值的集合。下圖顯示了輸入值“Peach”的默克爾路徑:

-"Peach"的默克爾路徑-默克爾證明

默克爾證明指的是不需要知道一個數據集合中的其他值就能證明某個值屬于這個集合。

Dfund創始人趙東:在比特幣的世界里,最重要的不是什么時候上車,而是永不下車:今晨Dfund創始人、數字貨幣投資人趙東發布微博,以自身經歷講述了一個“老韭菜”的自傳:“我2013年4月份開始玩比特幣,用1000萬人民幣起步,在2013年年底個人資產迅速過億。我那時候堅信比特幣未來會漲到100萬美元一個,但估計太過樂觀,在暴跌后反彈時加了大倉位大杠桿來賭,結果市場仍然泡沫太大崩盤,導致爆倉,同時欠下巨額債務。不過好在,我堅信比特幣是一個偉大的事物,會開創一個歷史的新時代,我相信活著最重要,沒敢尋死或者跑路,我曾經以為我需要十年時間來償還巨額債務,但是后來趕上了牛市好時光,兩年半就還清了。我以一顆(棵)老韭菜的身份告訴大家:在比特幣的世界里,最重要的不是什么時候上車,而是永不下車。”[2018/3/19]

-默克爾證明-默克爾證明需要三樣東西:輸入值、中間支哈希值和默克爾根節點。每個輸入值對應的中間支哈希值集合各不相同。區塊鏈系統經常會用到默克爾證明,證明某個數據集合內存在某個輸入值,這樣就不需要將整個數據集合都存儲在區塊鏈上了。假設一個以太幣合約內有一個白名單列表,只允許列表內的賬戶購買以太幣。如果將白名單內每個賬戶信息都存儲在區塊鏈上,勢必要付出很高的成本。在這種情況下,只需要創建一個默克爾樹,再將根節點存儲在區塊鏈上即可。例如,如果將根節點存儲在一個智能合約上,這個智能合約很容易就能證明某個賬戶包含在白名單內:這個賬戶需提供中間支哈希值,智能合約將這個賬戶的哈希值依次與中間支哈希值進行哈希計算。如果最后得出的結果與默克爾根節點一致的話,就證明這個賬戶確實在白名單里。請注意最后兩張圖中默克爾路徑和默克爾證明的哈希值之間的關系。在同一棵樹的同一個層級中,默克爾證明的哈希值與默克爾路徑的哈希值是相互關聯的。由此可見,默克爾證明能夠重塑輸入值的默克爾路徑,這就是為什么最終結果是默克爾根節點的原因。至此,可以看出默克爾證明具有以下特征:在鏈上存儲默克爾證明所需的空間遠遠小于直接存儲輸入值所需的空間在鏈上公開存儲默克爾證明也不會暴露整個輸入值集合要證明某個輸入值集合內是否存在某個值,驗證默克爾證明的成本低于核對整個輸入值集合的成本重復證明

李笑來:人為割裂區塊鏈和互聯網是利益之爭,不存在什么“古典互聯網”:李笑來在接受媒體采訪時表示:“不存在什么‘古典互聯網’,互聯網就是互聯網,區塊鏈也是互聯網的一部分。你怎么可能指著你的肚子之外的部分說,這是‘古典身體’,然后再接著問,‘這個肚子和古典身體之間有著不可調和的矛盾’?人為割裂區塊鏈和互聯網,本意不是理論體系的互斥,而是利益的爭奪。”對于中國互聯網的主要矛盾是什么,李笑來表示并不知道,只知道互聯網發展迅速造成了更大的貧富差距,引發了一定的社會矛盾,這是不能回避的事實。[2018/3/6]

在上文的例子中,每個賬戶只需要發送一個默克爾證明,就能夠驗證自己是否在白名單上。此外,默克爾樹還可以用作概率性知識證明,每一次知識證明都能使我們更加確信:默克爾樹的創建者知道所有的構成值。在這種情況下,證明者通常會根據包含幾十個乃至成百上千個輸入值的默克爾樹生成上百個證明。這些證明會連同默克爾根節點一起發送給驗證者,來驗證它們的有效性。讓我們緊接著上面的例子來探究重復證明,下面三幅圖分別是由同一個默克爾樹生成的三個不同的證明:

-同一個默克爾根的重復證明-可以看出總共發送了一個默克爾根節點和三個證明,加起來共有10個哈希值:根節點有1個,其余三個證明各有3個。有沒有效率更高的做法?可以看出默克爾樹的第一個層次只有兩個值c0b7...da30和6ff9...8e3d,但三個證明總共發送了3個哈希值。那么,如果一開始提供的部分不僅包括最低層次的哈希值,還提供更上一層次的哈希值,效率會不會更高?

-擴展式默克爾根節點的重復證明-默克爾樹截頂

擴展默克爾根也可以說是給默克爾樹截頂,也就是只保留默克爾根節點和少數幾層中間支。默克爾樹截頂的順序是按照根節點上方的中間支層數決定的。1階默克爾截頂包含一層中間支,如下圖所示:

-1階默克爾截頂-2階默克爾截頂包含兩層中間支,如下圖所示:

-2階默克爾截頂-如果同一個默克爾樹存在多個重復證明,采用默克爾樹截頂會減少證明的大小以及驗證證明所需的時間。要求得默克爾截頂的最佳階數,只需對證明數量取2的對數,再向下取整。下圖是一個低階默克爾樹截頂表,顯示了包含4096個輸入值的默克爾樹可節省的空間和時間,如下所示:

-不同階數的默克爾樹截頂所帶來的優勢-使用默克爾樹截頂能夠節省大量存儲空間。例如,一個STARK測試證明如果使用的是默克爾根節點,需要564KB的存儲空間,如果使用的是默克爾樹截頂,只需要346KB的存儲空間,減少了40%。傳輸并驗證證明所需的時間也會減少。實現樣例

https://github.com/wealdtech/go-merkletree/提供了采用Go語言實現的默克爾樹截頂。

Tags:區塊鏈比特幣ACHPEA區塊鏈可以看著是什么比特幣中國官網app下載安裝YACHTXPeachfolio

SAND
BNB:誰在熊市中異軍突起?_ETH

TOP3地位無可撼動TOP30基本格局已定對比前后兩次采集的數據,市值TOP30的加密貨幣總體變化不大,只有7個加密貨幣新晉入榜.

1900/1/1 0:00:00
比特幣:星球日報 | IBM與6家銀行簽署協議助力銀行發穩定幣; 花旗銀行放棄推出類似于JPM Coin的加密貨幣計劃_SBF

頭條 IBM與6家銀行簽署協議,通過支付網絡WorldWire助力銀行發行穩定幣3月18日,IBM宣布已與六家國際銀行簽署意向書,這些銀行計劃在IBM支付網絡WorldWire上發行穩定幣.

1900/1/1 0:00:00
TOP:行情周報|一級市場融資額暴增,SEC分析春天即將到來_Bitop

周報摘要上周全球數字資產市場回暖,市值上漲2.42%,交易量下跌1.09%。其中,TOP5日均市值較上周微漲1.35%。全球30家代表性交易所,新上交易對18個.

1900/1/1 0:00:00
比特幣:我找到了比特幣暴漲的原因_AVA

周三中午開始的比特幣暴漲,把整個市場整懵了。沒有人預估到喜悅竟然來的如此之快。最重要的是,根本沒有人想明白到底是什么原因。其中大部分人都理解它跟一篇愚人節文章有關系.

1900/1/1 0:00:00
ILY:專訪比特大陸產品負責人楊鑫:礦機技術門檻比資金門檻要高得多_Daily Crypto Giveaways

3月29日下午,比特大陸宣布,搭載第二代7nm芯片的螞蟻礦機S17系列新品將于4月9日正式發布,且一發布即有現貨供應.

1900/1/1 0:00:00
數字人:師太說區塊鏈|2.7 以太坊共識機制的艱難蛻變之路_以太坊官網錢包下載教程

文|滅絕師太出品|星球日報羊駝區塊鏈貝克鏈中鏈傳媒鏈證經濟圖|Kira以太坊開啟了區塊鏈2.0時代,讓區塊鏈產生了去中心化、去平臺化的應用.

1900/1/1 0:00:00
ads