WOO X Global Merkle Tree:如何驗證帳戶資產

WOO X Global Merkle Tree:如何驗證帳戶資產

為了維護交易者的信任,除了實時動態資產負債表之外,WOO Network 還公佈了其基於 Merkle Tree 的準備金和資產負債證明,團隊的目標是使加密貨幣交易所比 TradFi(傳統金融)更被信任。

Merkle Tree 證明是一種加密解決方案,用戶可以根據 WOO X Global 持倉量直接驗證帳戶資產,而不會洩露有關個人帳戶的細節資訊。除了能夠從網站查看數據外,WOO X Global 還更進了一步,開源了 Merkle Tree 計算背後的代碼和方法。

在 WOO X Global Merkle Tree 上驗證您的帳戶

使用 WOO X Global Merkle Tree 極為簡易,只需要用戶選擇審計快照時間並輸入您的 Merkle Hash,您可以在登錄 WOO X Global 帳戶時點擊 [獲取您的 Merkle Hash URL] 時找到它。


Merkle Hash 位於您帳戶的審計頁面中。


確保審計快照時間與對應的 Merkle Hash 相符,然後點擊驗證。


驗證成功後會顯示資產列表和資產所屬的 Merkle Hash List。這意味著您的資產已經包含在特定快照時間的 Merkle Tree 中。


用戶也可以下載完整的 Merkle Tree 來查看所有的數據。作為我們對透明度的承諾兌現,我們在 GitHub 上開源了代碼,您可以使用 “下載 Merkle Tree” 按鈕查看快照數據。


驗證不成功時也會顯示該畫面。請注意,沒有資產或未通過 KYC 的帳戶將不會在 Merkle Tree 上看到他們的資訊。負資產不會顯示於 Merkle Tree 上。


WOO X Global Merkle Tree 的運作原理

GitHub 上的示例代碼演示瞭如何驗證 Merkle Tree。範例代碼透過 Java 進行編寫,它僅有 1 個 Java 文件。

MerkleCheck.java

入口點是 MerkleCheck.java 中的 main() 函數。您只需要提供和替換兩個變量:

  1. Merkle Tree 二進制文件的路徑。 (從 WOO X Global 網站下載)
  2. 用於指定審計帳戶的 UserHash。 (登錄後從 WOO X Global 獲取)

使用這兩個變量將使代碼能夠運行 Merkle Tree 驗證過程並查閱您的帳戶資產餘額以進行審計。歡迎您自己查看代碼以證實該驗證方法。

Merkle Tree 二進制格式

樹的結構

葉節點將用戶的資產分成 N 份(每次審計隨機決定),Merkle Tree 是一棵二元樹。因此,每個葉節點代表審計快照時每個用戶餘額的一部分。根節點代表所有用戶在審計快照時的餘額。

任何沒有資產或未通過 KYC 的帳戶都不會出現在 Merkle Tree 上。此外,任何負資產將不會顯示在樹上,以確保不會將錯誤的負餘額添加到樹中以低估用戶的資產總額。每個子帳戶都與樹中的主帳戶分開計算。

為了使葉節點處於同一級別,一些父節點將只有一個葉節點。我們還確保每 2 級節點至少有一個子節點。所以我們會為每 Level 2 節點至少分配一個葉節點,其餘葉節點從左到右依序分配。


Merkle Tree 格式

Merkle Tree 以 ProtoBuffer 格式序列化。 Proto 文件如下:

Merkle Tree 二進制文件以代幣名稱列表(例如 BTC、ETH)開頭,代幣的索引用於表示 [1] 中代幣本身。

第二個文件是 Merkle 節點資訊列表,它代表 Merkle Tree 中的單一節點。格式如下:

屬性 left/right 是當前節點的左/右子節點的 hash。加載樹時,我們可以使用左、右和父屬性構造二元樹結構。

hash 屬性表示節點的 hash。MerkleNode(非葉子節點)的散列由以下方式生成:

葉的 MerkleNode hash 由以下方式生成:

對於 leaf_balance_vector 和 leaf_position_index 部分,我們使用 MerkleBalanceVector Proto 訊息作為字節數組輸入。格式如下:

Index 屬性是一個標記列表。 我們可以在 [1] 中找到標記字符串表示的映射。 Balance 屬性表示每個代幣的數量。

葉節點 hash 的計算過程如下:

最後,UserHash 使用 ProtoBuffer 訊息,如下所示:

驗證算法

驗證算法嘗試透過根據 UserHash 輸入計算葉節點的 hash 並將其與葉節點的 hash 進行比較,來找到與 UserHash 匹配的所有葉節點。透過添加 leafIndex 確保配對是獨特的,leafIndex 是樹中葉子唯一的 ID。

在找到所有配對的葉節點後,算法將總結葉節點的餘額,這應該等於快照時帳戶的總餘額(也為每個帳戶和子帳戶在登錄後的 WOO X Global 審計頁面中提供)。

請關注 WOO X Global 更多社群媒體帳號,了解更多訊息

▲ 本文內容已被翻譯成不同地區語言並在多個平台共享。如因不同語言釋義而導致不一致的內容,請以英文官方網站之版本為準。

▲ 免責聲明:以上內容提供之資料僅供參考,各項內容並非投資及交易策略建議,亦不構成任何產品或服務之要約、要約招攬或建議,僅作為知識性及學術性分享,任何人據此等資料而做出或改變操作之決策,須自行承擔結果。文章資訊請依 WOO Network 官方媒體平台發佈為主。

We use cookies to improve your experience. To find out more, please read our Privacy Policy. By clicking "Accept", you consent to our cookie and Privacy Policy. Or you may click "Decline" to refuse to consent.