Merkle-Patricia-Tries
包含在塊頭中的證明 - 狀態根
假設我已經擁有正確的塊頭,我想驗證智能合約狀態中是否包含某些數據。
狀態根的深度是多少?當我到達正確的節點時,儲存根的深度又是多少?
本質上,如果我在智能合約中獲得了一個變數的值,Merkle Patricia Proof需要多長時間才能重建狀態根?
謝謝你的時間 :)
特里樹的深度可達 64 層。
bytes32
雜湊的每個十六進製字元為 1 。要查找一條數據,必須一次遍歷 1 級,找出n
(通常)17 個元素數組的第 th 個索引。(來源)但是,當特定級別沒有其他分支時,可以優化此路徑。在實踐中,我發現在達到帳戶之前平均有 6 個級別。要遍歷帳戶的數據,您將從那裡更深入地遍歷。
所以在實踐中,一個賬戶餘額的證明將需要大約 6 個數組,每個數組有 17 個元素(預計會緩慢增加)。