發表文章

目前顯示的是 9月, 2018的文章

Ethereum Plasma MVP and Plasma Cash

圖片
Vitalik大約在一年前(2017/08)提出了Plasma這個概念以解決Ethereum交易速度及成本的問題,不過提出的內容太概念性,沒什麼人知道該怎麼實作,在今年初Vitalik提出了 Plasma MVP(Minimal Viable Plasma) ,最小可行性的Plasma,而目前大家也是遵循這個規範來實作。 Plasma屬於layer 2的solution,就是在主鏈之外做運作(也就是離線交易)。Plasma簡單來說就是鏈中鏈,每個鏈都可以有自己的鏈,自己的鏈還可以再有鏈,就像是tree一樣的概念。舉例來說,往後交易所就可以創造自己的鏈,在自己鏈內交易,速度快而且無手續費。而目前MVP的設計是在主鏈外多一層而已,還沒有多層的概念。上個月的COSCUP有Plasma的開發者的分享, 影片連結在這 (是中文,大家不用害怕 XD)。 Plasma MVP 在每個Plasma chain會有一個operator,operator負責產塊(可以想像是中心化的管理者),以目前來說,operator實作成Restful API server,而產塊可以想作是在DB insert一筆紀錄,跟我們以往中心化的系統一樣。而你要進入到這個Plasma chain需要先在主鏈上的smart contract作存款(deposit)才能進入。然後Plasma chain每產一個塊,就必須跟主鏈作回報(回報Merkle root),這樣Plasma chain這邊的塊才算被confirm。每個Plasma chain是獨立的,所以不能跨鏈交易,必須先轉回到主鏈。 可以這樣想像,一個Plasma chain是一間賭場,你要進入一間賭場要先去把新台幣換成賭場的籌碼(deposit),接著你就可以在這間賭場做任何交易,那如果你要去隔壁賭場下注呢? 你要先換成新台幣,然後再換成隔壁賭場的籌碼。而在賭場的每一筆交易,都會被記載在賭場的帳本上(可以想像是Excel表格),而這個帳本要定期地跟政府報備,報備通過了,在帳本上的交易紀錄,才會被承認。Plasma chain的概念大概就像這樣。 那安全問題呢? operator是中央式的,如果被攻擊或是原本就是惡意的呢?接續上面的例子,其實要把籌碼換成新台幣,沒有這麼簡單。首先,要七天後才能領出...