Uniswap 怎麼『空投』UNI 的?

柴先生的數位資產筆記
2 min readSep 19, 2020

--

前情提要: Uniswap 在前幾天推出了治理代幣:

不過跟過去很多專案會採用的空投方法:『把代幣直接轉到帳號』的方式不一樣,你需要去『領取』。

至於他怎麼實作領取的呢?他也不是直接把所有人(25萬個 address)可領取的資訊全部寫在鏈上。(這樣太耗資源了)

他們採用了 Merkle Proof 的方式。 Merkle Proof 背後的 Merkle Tree 是一種將資訊編碼的方式,在這個例子裡,這棵 Merkle Tree 的每一個節點都是可以領取 UNI 的地址跟可以領取的數量。

而這個 Merkle Tree 最終的根節點:Merkle Root ,才再被放到智能合約裡。僅僅只要存短短的0xc8500f8e2fcf3c9a32880e1b973fb28acc88be35787a8abcf9981b2b6。

領取時,提供你的節點(地址跟數量)加上 Merkle Proof,合約就可以驗證這個節點是不是真的存在在這棵以該 Merkle Root 為根的樹下。

使用這個非常簡潔的方法,Uniswap 把空投代幣的成本轉移到了使用者身上(當然也塞住了網路 xD)。

參考資料:

--

--

柴先生的數位資產筆記
柴先生的數位資產筆記

Written by 柴先生的數位資產筆記

隨筆關於加密貨幣 / 資產數位化 / 去中心化金融 / 以太坊 / 比特幣

No responses yet