區塊鏈100講:Plasma鏈0x1的構造
2018-6-28 07:01
來源:
HiBlock-Net

Plasma是一個由Joseph Poon和Vitalik Buterin設計的區塊鏈擴展解決方案,它使用子鏈向根鏈(即以太坊)報告的方式來增加交易吞吐量,這樣就不用擔心通常情況下使用小一點的鏈而產生的安全問題。OMG(OmiseGO)去中心化交易所是期待Plasma而進行設計的。我們將會使用Plasma來支持可擴展性,完全的鏈上交易而不用犧牲安全。在這篇文章中我將會講述我們如何建立一個Plasma。
我們通過要求用戶在出現錯誤的時候退出子鏈而達到這一點。下面是運作方式:
如果一個無效的交易被包含在子鏈里,所有的用戶必須要在7天內退出子鏈。
如果一個用戶不能訪問一個子鏈,但是一個子鏈區塊被提交給它的父鏈,用戶就必須要重新獲取子鏈的訪問并檢查它的有效性,否則7天內退出。
撤回(也稱為退出)按照創建交易的順序進行退出處理。未花費交易輸出(UTXO)引用一個被包含在父鏈的低區塊高度的交易(也就是更老的交易)比包含在更新的區塊中的交易的優先權要高。這樣就導致引用最近包含的無效交易的退出比引用更老的有效交易的退出優先權要低一些。
只有輸入的擁有者簽名了已經被包含在相應父鏈的交易的確認驗證,交易才算是有效的。

客戶端——觀看以太坊并運行子鏈,盡快的檢測詐騙行為并退出。
子鏈——觀看以太坊的存款,并執行關于鏈當前狀態的所有計算。
根鏈——通過智能合約將子鏈鎖定到以太坊。為子鏈處理存款和退出,只接收足夠的信息來處理這兩者,以及確認和否認詐騙性退出。
父鏈——保證子鏈安全。與最小可行產品(MVP)的根鏈同義;在Plasma的最終形態中在子鏈和根鏈之間可能存在多個父鏈。
為了使用Plasma鏈,用戶必須要將他們的資產(即以太幣或其他代幣)從父鏈轉移到子鏈上。要移動存款,用戶通過將資產移動到在以太坊上相應的Plasma智能合約上從父鏈移到子鏈上。
MVP的存款處理已經簡化了在Plasma白皮書中指定的處理過程,降低了復雜性。存入Plasma鏈的存款會被立即包含到子鏈的父鏈記錄中,并且無法取消存款。想要取消存款,用戶可以立即撤回它們的資產。
存款人沒有額外的風險。一旦轉移資產到智能合約的交易被確認,它們可以被撤回。即使子鏈沒有相應存款的映射,存款人可以依然撤回他們的資產。
要將資產轉移回父鏈,用戶可以發起一個撤回。用戶發起撤回可以只是簡單的為了將資產移回到父鏈并將資存在父鏈。當檢測到一個錯誤性的Plasma鏈用戶必須發起一個撤回;如果用戶沒有及時撤回,那么他們可能存在丟失資產的危險。
有兩種類型的撤回。第一種是“簡單撤回”,這是單方從子鏈撤回自己的資產。第二種是“大量撤回”,當多方一起從子鏈撤回他們的資產。大量撤回顯然更加的復雜,將會在未來的文章中進行討論。
當用戶從Plasma子鏈撤回資產,是按照退出交易被創建的順序進行處理的(前面的先處理)。在挑戰期結束之后撤回會最終化。在挑戰期間任何人可以提供詐騙性行為的證據。
簡單撤回包含四步:
用戶提交一個撤回請求給父鏈上的Plasma智能合約。
撤回請求進入一個挑戰期,該挑戰期會打開一段時間。在這段時間內,任何人都可以提交雙花的證據給Plasma智能合約,證明這個撤回是無效的。如果一個挑戰成功了,那么用戶嘗試退出是無法撤回它們的資產的。
如果撤回請求被證明是無效的,撤回者會被懲罰,報告者會得到獎勵。如果直到挑戰期結束都沒有一個成功的挑戰,那么撤回者接收到自己的資產。這后面的經濟激勵還沒有最終化。
有兩種類型的最終化:
子鏈最終化——取決于子鏈使用的共識機制;我們選擇使用權益證明。
根鏈最終化——取決于根鏈使用的共識機制;以太坊目前使用的是工作量證明。
子鏈的最終化和安全性取決于根鏈。Plasma提供的所有安全保證都假設以太坊正常運行。
它是權威證明(POA),權益證明將會被加進來。
Plasma MVP是朝著下面兩點邁出的一步:
(i)通過擴展以太坊主網來激發以太坊的潛力
(ii)構建一個OMG去中心化的交易所,為主流金融的使用做好準備。
隨著OmiseGO更進一步參與到Plasma開發中,設計將會發展到Plasma和OmiseGO白皮書中描述的其他特征中。
內容來源:簡書
作者:Lilymoana
原文地址:Construction of a Plasma Chain 0x1
翻譯作者:許莉

版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。