丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
金融科技 正文
發(fā)私信給敖萌
發(fā)送

2

區(qū)塊鏈研習(xí) | 區(qū)塊鏈中的默克爾樹

本文作者: 敖萌 編輯:溫曉樺 2017-12-13 16:28
導(dǎo)語:在UTXO的記賬模式中,使用默克爾樹結(jié)構(gòu),通常就無需擔(dān)心數(shù)據(jù)量一直增長(zhǎng)導(dǎo)致數(shù)據(jù)過大的問題了。

雷鋒網(wǎng)AI金融評(píng)論按:本文作者為中國(guó)信息通信研究院(工信部電信研究院)專家敖萌博士,雷鋒網(wǎng)獨(dú)家特約文章,雷鋒網(wǎng)(公眾號(hào):雷鋒網(wǎng))與信通院子公司泰爾英福(微信號(hào)Teleinfo_)聯(lián)合首發(fā)。未來,敖萌博士原創(chuàng)的區(qū)塊鏈系列文章還將繼續(xù)刊出,敬請(qǐng)關(guān)注! 

回憶一下本系列第一篇文章中,我們講的區(qū)塊鏈描述:


區(qū)塊鏈?zhǔn)菍?shí)現(xiàn)無中心分布式總賬的一種技術(shù)。除了采用塊、鏈結(jié)構(gòu)的典型區(qū)塊鏈以外,還有其他的方式實(shí)現(xiàn)分布式總賬這個(gè)需求。總賬技術(shù)的基本單元是‘交易’,整個(gè)賬本是由一條條的交易構(gòu)成。‘塊’類似于賬本中的頁,每頁都記錄了若干條交易,把一頁一頁的賬頁按照時(shí)間順序裝訂起來,就形成了一個(gè)完整的賬本——‘區(qū)塊鏈’?!畨K’是交易的容器,‘塊’通過密碼學(xué)算法相連接,形成了按照時(shí)間序列的‘鏈’。這種組織賬本的好處是由密碼學(xué)算法保證了無法篡改鏈上的單獨(dú)交易,除非整體性的篡改?!?/p>



根據(jù)描述,我們可以看出來,“塊”是交易的容器。每個(gè)交易都要放到容器里面,然后把整個(gè)容器用密碼學(xué)算法進(jìn)行連接,形成了一個(gè)完整的鏈。

這種數(shù)據(jù)的組織方式最大的好處就是數(shù)據(jù)易于保持完整,并且從密碼學(xué)角度看安全性較高。然而,這個(gè)好處是有代價(jià)的——數(shù)據(jù)一直不停的增長(zhǎng)。 

對(duì)于比特幣系統(tǒng)來說,這個(gè)問題并不大,因?yàn)榻刂鼓壳盀橹梗忍貛湃匀皇敲?0分鐘一個(gè)區(qū)塊,每個(gè)區(qū)塊1MB,即便到了100年后,總的數(shù)據(jù)量也不會(huì)大到單機(jī)無法處理。但是對(duì)于某些企業(yè)級(jí)應(yīng)用的區(qū)塊鏈系統(tǒng)來說,情況就完全不一樣了。每個(gè)區(qū)塊可能會(huì)非常大,生成區(qū)塊的速度也會(huì)非???。這種情況下,區(qū)塊鏈的數(shù)據(jù)量增長(zhǎng)是飛快的。

怎么解決數(shù)據(jù)量過大的問題呢? 

在我們傳統(tǒng)的數(shù)據(jù)系統(tǒng)中,也存在數(shù)據(jù)不斷增長(zhǎng),數(shù)據(jù)量過大的問題。以傳統(tǒng)的交易型系統(tǒng)為例,由于系統(tǒng)中的核心設(shè)計(jì)理念是保存賬戶的最終狀態(tài),只需要把歷史的交易過程數(shù)據(jù)移到其他專門的存儲(chǔ)設(shè)備上,主機(jī)數(shù)據(jù)庫保存賬戶的最新狀態(tài)和最近一段時(shí)間的交易記錄即可。(因此,我們?cè)诰W(wǎng)銀中查閱歷史交易時(shí),通常是有時(shí)間限制的。)

但是在區(qū)塊鏈系統(tǒng)中,尤其是使用UTXO方式存儲(chǔ)交易的區(qū)塊鏈系統(tǒng)中,保存的都是交易的過程。如果一個(gè)賬戶一直沒有交易,它則不會(huì)出現(xiàn)在最新的區(qū)塊中。 

那么按照傳統(tǒng)數(shù)據(jù)庫刪除歷史數(shù)據(jù)的方式,只要一個(gè)區(qū)塊中有一個(gè)交易一直沒有后續(xù)交易(就是沒有人使用這個(gè)交易的輸出賬戶),為了維護(hù)整個(gè)區(qū)塊鏈系統(tǒng)的密碼學(xué)完整性和安全性,這個(gè)區(qū)塊就必須保留,同時(shí)這個(gè)區(qū)塊之后的所有區(qū)塊也必須保留。 

怎么解決這個(gè)問題?其實(shí)有很多種辦法能夠解決,起初,在中本聰設(shè)計(jì)比特幣系統(tǒng)的時(shí)候,已經(jīng)預(yù)留了一個(gè)最佳的解決方案:默克爾樹(Merkle Tree)算法。

在比特幣區(qū)塊鏈系統(tǒng)中,區(qū)塊的結(jié)構(gòu)如下圖所示:

 區(qū)塊鏈研習(xí) |  區(qū)塊鏈中的默克爾樹

每個(gè)區(qū)塊中的Hash1就是本區(qū)塊中所有交易的哈希值。但這個(gè)哈希值不是把所有交易連成一個(gè)長(zhǎng)字符串后計(jì)算HASH值,而是使用了默克爾樹(Merkle Tree)算法來計(jì)算獲得這個(gè)HASH值,我們稱之為Merkle根。

 區(qū)塊鏈研習(xí) |  區(qū)塊鏈中的默克爾樹

默克爾樹算法并不是直接計(jì)算整個(gè)字符串的Hash值,而是每個(gè)交易都計(jì)算一個(gè)Hash值,然后兩兩連接再次計(jì)算Hash,一直到最頂層的Merkle根。

默克爾樹(Merkle Tree)算法的最大好處就是,每個(gè)交易都可以單獨(dú)直接刪除,只保留這個(gè)交易的Hash值即可。這樣,對(duì)整個(gè)區(qū)塊來說,并沒有改變他的密碼學(xué)安全性和完整性,但是數(shù)據(jù)量可以大大減小。(Hash值32個(gè)字節(jié),而一筆交易一般要400多個(gè)字節(jié))。如果一個(gè)區(qū)塊中只有一個(gè)交易沒有后續(xù)交易,那么刪除其他所有交易,整個(gè)區(qū)塊的數(shù)據(jù)量會(huì)大大減小。

因此,在UTXO的記賬模式中,使用默克爾樹結(jié)構(gòu),通常就無需擔(dān)心數(shù)據(jù)量一直增長(zhǎng)導(dǎo)致數(shù)據(jù)過大的問題了。 

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

分享:
相關(guān)文章

知情人士

工作在鵝廠的一名區(qū)塊鏈從業(yè)者。歡迎聯(lián)系我: mengao@tencent.com
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說