您现在的位置: 比特财富网 >> 区块链 >  >> 區塊鏈百科
深度| 以太坊的數據到底是如何存儲在以太坊網絡的?

此文我們會深入討論以太坊數據存儲層。www.emoneybtc.com我們會介紹區塊鏈“狀態”的概念。同時也會討論Patricia前綴樹結構背後的理論,使用谷歌的leveldb數據庫演示以太坊前綴樹的具體實現。

在存儲層中,我們存儲的是什麼?

首先我們需要理解為了讓區塊鏈系統運行,我們需要存儲的東西。讓我們簡單地看下關於Alice給Bob轉賬10美金的例子。

我們可以看出,通過執行轉賬可以改變其中的狀態。

我們必須要追蹤余額以及不同人(狀態)的其他細節,還有在區塊鏈之間發生的細節(轉賬)。不同的平台會有不同地處理方法。我們可以看出,比特幣和以太坊是如何處理的。

比特幣

比特幣的狀態是通過UTXO來實現的。比特幣價值轉移是通過轉賬實現的。更特別地是,比特幣用戶可以通過創建轉賬花費1個或多個UTXO,並且將他們的UTXO作為轉賬輸入。

UTXO模型讓比特幣和以太坊不同。我們可以看這些例子來理解其中的區別。

首先,比特幣UTXO不能部分花費。如果比特幣用戶花費0.5個比特幣(使用他們僅有的UTXO,價值1比特幣),他們需要特意地發回0.5個比特幣。如果他們不發送這部分,那麼這個0.5比特幣就會丟失,並且給到挖出轉賬的礦工。

其次,在最基本的層面,比特幣沒有包含用戶賬戶余額。通過比特幣,用戶可以簡單地持有私鑰,在任何時間點都可以進行一個或者多個UTXO。數字錢包看起來像是讓比特幣區塊鏈能夠自動地存儲和管理用戶賬戶余額,其實不是這樣。

比特幣的UTXO系統工作的很好,這是由於數字錢包能夠完成大多數轉賬任務。其中包括,但是不限於:
a) 處理UTXO
b) 存儲秘鑰
c) 設置轉賬費用
d) 提供返回地址
e)描述UTXO狀態(展示可行性,待轉賬以及全部的余額)

UTXO模型中的轉賬可以類比為紙幣轉賬。每個賬戶都會追蹤錢包添加的賬單(UTXO)。當我們想要花錢的時候,我們會使用一個或者多個賬單(現在的UTXO),這已經足夠來承擔花銷,或許還會得到一些找零。(新的UTXO)。每個賬單只能花費一次,一旦消費,UTXO就會從資金池移走。

總結下來,我們知道:
• 比特幣區塊鏈不會持有賬戶余額
• 的秘鑰
• 如果包含在轉賬中,完整的UTXO會被消費(有時候,部分會得到新的UTXO作為找零)

以太坊
和以上的信息相反,以太坊的狀態能夠管理賬戶余額,以及更多信息。以太坊的狀態並不是個抽象的概念。它是以太坊底層協議的部分。根據黃皮書中的描述,以太坊是一個基於轉賬的狀態機器;基於狀態機器的轉賬技術能夠被創建。

我們從頭開始來講述。和其他區塊鏈一樣,以太坊區塊鏈也是從創世區塊開始的。從那時候起,例如轉賬,合約和挖礦之類的事情,都會陸續改變以太坊區塊鏈的狀態。在以太坊中,舉例來說就是賬戶余額(存儲在狀態樹中),這會隨著轉賬而改變,同時和賬戶相關連。

重要地是,例如賬戶余額之類的數據並不是直接存儲在以太坊區塊鏈的區塊中。只有根節點哈希的轉賬,狀態數據和回執數據是直接存儲在區塊鏈上的。可以根據下圖看出。

也許你也注意到了,從上面的圖表中,存儲樹的根節點哈希(所有的智能合約數據存儲在其中)其實都是指向狀態樹的,從而指向區塊鏈。接下來,我們會討論更多細節。

以太坊中有兩種不同的數據類型:永久數據和暫時數據。永久數據的例子就是轉賬。一旦轉賬確認,就會在區塊鏈中記錄;然後就再也不可以更改。暫時數據的例子就是特定以太坊賬戶地址的余額。賬戶的余額就會存儲在狀態樹中,並且當有特定賬戶轉賬的時候,就會改變。永久數據是有意義的,就好像挖礦轉賬,暫時數據,就例如賬戶余額,應該被分開存儲。以太坊會使用數據樹結構來管理數據。

以太坊的數據記錄就好像在銀行。類似使用ATM機器和存儲卡。銀行會追蹤每個借記卡來確保在在完成轉賬之前,有足夠的余額。


  • 風電概念股有哪些?風電行業出現復蘇跡象!

    近期風電設備招標價格企穩回升,行業內出現較多復蘇跡象,企業盈利有望迎來拐點。今日風電概念股集體上漲,引發一波賺錢效應。那麼風電概念

  • 操縱股價的10種手段

    馬克思在《資本論》中曾生動精辟地指出:資本來到世間,從頭到腳都滴著骯髒的血。他還形象地指出:為了牟取暴利,資本敢於藐視法律,敢於铤而走險,敢

  • 周線和日線是外匯趨勢的指導線

    歡迎訪問 外 匯 邦 WWW.WaiHuiBang.com   周線圖和日線圖的作用,幫助外匯投資者

  • 美團優選傭金多少?

    最佳答案: 加入美團優選做團長,團長傭金一般是根據團長推廣商品的銷售總額*傭金比例來決定的。平台給團

  • 車損險不計免賠什麼意思?

    最佳答案: 是的,不計免賠是一個附加險種,與主險是對應的,而且要與車損險一起購才可以,它的含義是,如

  風險提示:比特財富網的各種信息資料僅供參考,不構成任何投資建議,不對任何交易提供任何擔保,亦不構成任何邀約,不作為任何法律文件,投資人據此進行投資交易而產生的後果請自行承擔,本網站不承擔任何責任,理財有風險,投資需謹慎。
比特財富網 版權所有 © www.emoneybtc.com