成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

深入理解Plasma(一)Plasma 框架

zhaochunqi / 3105人閱讀

摘要:本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接深入理解一框架原文已更新,請(qǐng)讀者前往原文閱讀這一系列文章將圍繞以太坊的二層擴(kuò)容框架,介紹其基本運(yùn)行原理,具體操作細(xì)節(jié),安全性討論以及未來(lái)研究方向等。因此,理解是一套框架是理解的關(guān)鍵。

本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)
原文鏈接:深入理解Plasma(一)Plasma 框架原文已更新,請(qǐng)讀者前往原文閱讀

這一系列文章將圍繞以太坊的二層擴(kuò)容框架,介紹其基本運(yùn)行原理,具體操作細(xì)節(jié),安全性討論以及未來(lái)研究方向等。本篇文章作為開(kāi)篇,主要目的是理解 Plasma 框架。

Plasma 作為以太坊的二層擴(kuò)容框架,自從 2017 年被 Joseph Poon(Lightning Network 創(chuàng)始人)和 Vitalik Buterin (Ethereum 創(chuàng)始人)提出以來(lái)[[1]](http://plasma.io/plasma.pdf),一直是區(qū)塊鏈從業(yè)人員關(guān)注的焦點(diǎn)[[2]](https://ethresear.ch/c/plasma)。首先需要明確的是,Plasma 實(shí)質(zhì)上是一套框架,而不是一個(gè)多帶帶的項(xiàng)目,它為各種不同的項(xiàng)目實(shí)際項(xiàng)目提供鏈下(off-chain)解決方案。這也是為什么很多人對(duì) Plasma 感到疑惑的一個(gè)重要原因,因?yàn)樵谌狈?shí)際應(yīng)用場(chǎng)景的情況下很難將 Plasma 解釋清楚。
因此,理解 Plasma 是一套框架是理解 Plasma 的關(guān)鍵。

從區(qū)塊鏈擴(kuò)容談起

在介紹 Plasma 之前,不得不先介紹區(qū)塊鏈擴(kuò)容。我們都知道,比特幣(Bitcoin)和以太坊(Ethereum)作為目前最廣泛使用的區(qū)塊鏈平臺(tái),面臨的最大問(wèn)題就是可擴(kuò)展性(Scalability)。這里需要注意的是,區(qū)塊鏈中的可擴(kuò)展性問(wèn)題并不是多帶帶特指某個(gè)問(wèn)題,而是區(qū)塊鏈想要實(shí)現(xiàn) Web3.0[[3]](https://medium.com/l4-media/m... 的愿景,為億萬(wàn)用戶提供去中心化服務(wù)所要克服的一系列挑戰(zhàn)。雖然以太坊號(hào)稱是“世界計(jì)算機(jī)”,但這臺(tái)“計(jì)算機(jī)”卻是單線程的,每秒鐘只能處理大約 15 條交易,與目前主流的 Visa 和 MasterCard 動(dòng)輒每秒上萬(wàn)的吞吐量相比實(shí)在相形見(jiàn)絀。因此如何在保證區(qū)塊鏈安全性的情況下,提高可擴(kuò)展性是目前區(qū)塊鏈發(fā)展亟待解決的問(wèn)題之一。

目前關(guān)于區(qū)塊鏈擴(kuò)容的解決方案無(wú)外乎兩個(gè)方向:一層(Layer 1)擴(kuò)容和二層(Layer 2)擴(kuò)容[[4]](https://blog.ethereum.org/201...。一層擴(kuò)容也被稱為鏈上(on-chain)擴(kuò)容,顧名思義,這類擴(kuò)容方案需要更改區(qū)塊鏈底層協(xié)議。但同時(shí)也意味著需要將區(qū)塊鏈硬分叉。這類擴(kuò)容方案就像將原來(lái)的單核 CPU 改裝成多核 CPU,從而可以多線程處理計(jì)算任務(wù),提高整個(gè)網(wǎng)絡(luò)的吞吐量。

目前最典型的一層擴(kuò)容方案是 Vitalik 和他的研究團(tuán)隊(duì)提出的“Sharding(分片)”,也就是說(shuō)將區(qū)塊鏈劃分成不同的部分(shards),每個(gè)部分獨(dú)立處理交易。想要了解更多關(guān)于 Sharding 的信息,可以參考以太坊官方的 Wiki[[5]](https://github.com/ethereum/w...。

二層擴(kuò)容也稱鏈下(off-chain)擴(kuò)容,同樣非常好理解,這種擴(kuò)容方案不需要修改區(qū)塊鏈底層協(xié)議,而是通過(guò)將大量、頻繁的計(jì)算工作轉(zhuǎn)移到“鏈下”完成,并定期或在需要時(shí)將鏈下的計(jì)算結(jié)果提交到“鏈上”保證其最終性(finality)。二層擴(kuò)容的核心思想是將底層區(qū)塊鏈作為共識(shí)基礎(chǔ),使用智能合約或者其它手段作為鏈下和鏈上溝通的橋梁,當(dāng)有欺詐行為發(fā)生時(shí)鏈下的用戶仍然可以回到鏈上的某一狀態(tài)。雖然將計(jì)算轉(zhuǎn)移到鏈下會(huì)在一段時(shí)間內(nèi)損失最終性,但這個(gè)代價(jià)是值得的,因?yàn)檫@樣做不止可以極大提高區(qū)塊鏈的靈活性和可擴(kuò)展性,也極大降低了用戶進(jìn)行交易所需要的代價(jià)。將計(jì)算轉(zhuǎn)移到鏈下也并不意味著完全放棄安全性,因?yàn)樽罱K的安全性還是由底層所依賴的區(qū)塊鏈來(lái)保證,因此二層擴(kuò)容主要關(guān)注的問(wèn)題就在于如何保證鏈上鏈下切換過(guò)程的安全性。這種思想最早被用在閃電網(wǎng)絡(luò)(Lightning Network)當(dāng)中作為比特幣的其中一個(gè)擴(kuò)容方案,并取得了很好的效果。

本文所要介紹的 Plasma 就屬于基于以太坊二層擴(kuò)容方案,類似的解決方案還有 State Channels 和 Trubit。這些方案雖然面向的問(wèn)題有所區(qū)別,但基本思想都是將復(fù)雜的計(jì)算轉(zhuǎn)移到鏈下進(jìn)行。那么,接下來(lái)我們將進(jìn)入 Plasma 的世界,一窺究竟!

理解 Plasma

在前文中我們已經(jīng)明白 Plasma 是一種二層擴(kuò)容框架,那么該如何進(jìn)一步理解 Plasma 是什么?它區(qū)別于其它二層擴(kuò)容方案的地方在哪呢?

Plasma 也被稱為“鏈中鏈(blockchains in blockchains)”。任何人都可以在底層區(qū)塊鏈之上創(chuàng)建不同的 Plasma 支持不同的業(yè)務(wù)需求,例如分布式交易所、社交網(wǎng)絡(luò)、游戲等。

這里可以舉一個(gè)例子來(lái)理解 Plasma。假如企鵝公司創(chuàng)建了一個(gè) Plasma Chain 叫作 Game Chain。用戶通過(guò)向 Game Chain 發(fā)送一些以太幣換取 Token,用于購(gòu)買皮膚等游戲內(nèi)的增值商品。加入 Game Chain 的操作是在鏈上進(jìn)行的,以太坊區(qū)塊鏈將這部分資產(chǎn)鎖定,轉(zhuǎn)移到 Game Chain 上。之后每次我們購(gòu)買虛擬商品的交易就會(huì)轉(zhuǎn)移到鏈下進(jìn)行,由企鵝公司記賬。這種方式幾乎跟我們現(xiàn)實(shí)生活中游戲內(nèi)購(gòu)的體驗(yàn)一樣,不僅結(jié)算迅速,而且手續(xù)費(fèi)低廉(相比于以太坊之上需要給礦工支付的手續(xù)費(fèi))。那么問(wèn)題來(lái)了,如果企鵝公司從中作祟,修改賬本,惡意占有我們的資產(chǎn)怎么辦?這時(shí)我們就可以提交之前每次交易的憑證到以太坊區(qū)塊鏈上,如果確實(shí)是企鵝惡意篡改了賬本,那么我們不但能夠成功取回自己的資產(chǎn),還能獲得之前企鵝公司創(chuàng)建 Game Chain 存入的部分或全部押金。

通過(guò)上面這個(gè)例子是不是已經(jīng)明白 Plasma 大致是如何工作的了?但上面這個(gè)例子還是過(guò)于簡(jiǎn)單,只涉及用戶自己和企鵝公司。下面我們使用區(qū)塊鏈的語(yǔ)言對(duì)上面的例子進(jìn)行解析。

首先,企鵝公司在以太坊主鏈之上創(chuàng)建了一系列智能合約作為主鏈和子鏈 Game Chain 通信的媒介。這些智能合約中不僅規(guī)定了子鏈中的一些基本的狀態(tài)轉(zhuǎn)換規(guī)則(例如如何懲罰作惡的節(jié)點(diǎn)),也記錄了子鏈中的狀態(tài)(子鏈中區(qū)塊的哈希值)。之后企鵝公司可以搭建自己的子鏈(可以用以太坊搭建一套私鏈)。子鏈實(shí)際上是一個(gè)完全獨(dú)立的區(qū)塊鏈,可以擁有專門的礦工,使用不同于主鏈的共識(shí)算法,例如 PoS(Proof of Stake)等。

當(dāng)子鏈創(chuàng)建完畢后,企鵝公司可以使用 ERC721 合約創(chuàng)建 token 作為游戲內(nèi)的商品(就像 Cryptokitty)。但這里需要注意的是,所有數(shù)字資產(chǎn)必須在以太坊主鏈上創(chuàng)建,并通過(guò) Plasma 子鏈的智能合約轉(zhuǎn)移到子鏈中。用戶也需要在主鏈上購(gòu)買數(shù)字資產(chǎn)后轉(zhuǎn)移到子鏈上。在上面這個(gè)例子中,Game Chain 的智能合約將主鏈上的資產(chǎn)鎖定,之后在子鏈上生成等值的資產(chǎn)。之后用戶就可以完全脫離主鏈,在子鏈上進(jìn)行交易。企鵝公司在子鏈上扮演 operator 的角色,如果一切運(yùn)行正常,子鏈中的礦工會(huì)正常打包區(qū)塊,并在需要時(shí)由 operator 將區(qū)塊的哈希值提交到主鏈作為子鏈的狀態(tài)更新證明。在這個(gè)過(guò)程中,用戶完全不需要和主鏈交互。

我們可以看到,將復(fù)雜的計(jì)算操作轉(zhuǎn)移到鏈下確實(shí)使得整個(gè)交易過(guò)程變得簡(jiǎn)單。但沒(méi)有強(qiáng)大的共識(shí)算法和龐大的參與者,資產(chǎn)在子鏈上是很不安全的。Plasma 給了我們一種避險(xiǎn)機(jī)制,即使 operator 作惡,我們也能取回屬于自己的資產(chǎn)。下圖(來(lái)源自[[1]](https://plasma.io/))簡(jiǎn)單說(shuō)明了這個(gè)過(guò)程。圖中,在第 4 個(gè)區(qū)塊中的交易被篡改。由于 Alice 本地保存有 Plasma Chain 中所有的區(qū)塊數(shù)據(jù),因此她可以向主鏈提交一個(gè)含有“防偽證明(Fraud Proof)”的交易。如果證明生效,那么主鏈將狀態(tài)從 4 號(hào)區(qū)塊回滾到 3 號(hào)區(qū)塊,一切恢復(fù)正常。Plasmas Chain 中的參與者也可以隨時(shí)提交資產(chǎn)證明,返回到主鏈。

到這里我們應(yīng)該已經(jīng)理解了,Plasma 所要做的工作并不是保護(hù)子鏈的安全,而是當(dāng)有安全事故發(fā)生時(shí),保證用戶可以安全地取回自己的資產(chǎn),并返回到主鏈上。并且采用一系列經(jīng)濟(jì)激勵(lì)的方式減少作惡情況的發(fā)生。

下一篇文章將對(duì) Plasma 運(yùn)行過(guò)程的細(xì)節(jié)進(jìn)行剖析。

相關(guān)資源

https://plasma.io/

https://ethresear.ch/c/plasma

https://medium.com/l4-media/making-sense-of-web-3-c1a9e74dcae

https://blog.ethereum.org/2018/01/02/ethereum-scalability-research-development-subsidy-programs/

https://github.com/ethereum/wiki/wiki/Sharding-FAQs

https://medium.com/l4-media/making-sense-of-ethereums-layer-2-scaling-solutions-state-channels-plasma-and-truebit-22cb40dcc2f4

https://medium.com/@argongroup/ethereum-plasma-explained-608720d3c60e

本文的作者是蓋蓋,他的微信公眾號(hào): chainlab

深入淺出區(qū)塊鏈 - 系統(tǒng)學(xué)習(xí)區(qū)塊鏈,打造最好的區(qū)塊鏈技術(shù)博客。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/24340.html

相關(guān)文章

  • 深入理解Plasma(二)Plasma 細(xì)節(jié)

    摘要:用戶在將主鏈的資產(chǎn)如以太幣或者其它合約發(fā)布的轉(zhuǎn)移到的過(guò)程稱為存款,具體做法是直接向主鏈上的合約發(fā)送以太幣或。將賣給,獲得了以太幣,賺取了以太幣。當(dāng)子鏈中有拜占庭行為發(fā)生時(shí),用戶之間可以共同協(xié)作執(zhí)行批量取款。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:深入理解Plasma(二)Plasma 細(xì)節(jié)原文已更新,請(qǐng)讀者前往原文閱讀 這一系列文章將圍繞以太坊的二層擴(kuò)容框架,介紹其基本運(yùn)行原理,具體操...

    Bowman_han 評(píng)論0 收藏0
  • 深入理解Plasma(二)Plasma 細(xì)節(jié)

    摘要:用戶在將主鏈的資產(chǎn)如以太幣或者其它合約發(fā)布的轉(zhuǎn)移到的過(guò)程稱為存款,具體做法是直接向主鏈上的合約發(fā)送以太幣或。將賣給,獲得了以太幣,賺取了以太幣。當(dāng)子鏈中有拜占庭行為發(fā)生時(shí),用戶之間可以共同協(xié)作執(zhí)行批量取款。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:深入理解Plasma(二)Plasma 細(xì)節(jié)原文已更新,請(qǐng)讀者前往原文閱讀 這一系列文章將圍繞以太坊的二層擴(kuò)容框架,介紹其基本運(yùn)行原理,具體操...

    Tecode 評(píng)論0 收藏0
  • 深入理解Plasma(三)Plasma MVP

    摘要:合約會(huì)處理由子鏈提交的區(qū)塊,并且將區(qū)塊的哈希值存在主鏈上。負(fù)責(zé)處理所有子鏈上發(fā)生的交易,將其打包成區(qū)塊存儲(chǔ)在子鏈上,并且周期性地向合約提交區(qū)塊,將子鏈上的狀態(tài)區(qū)塊的哈希值提交到主鏈共識(shí)。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:深入理解Plasma(三)Plasma MVP原文已更新,請(qǐng)讀者前往原文閱讀 這一系列文章將圍繞以太坊的二層擴(kuò)容框架 Plasma,介紹其基本運(yùn)行原理,具體操作細(xì)...

    mmy123456 評(píng)論0 收藏0
  • 深入理解Plasma(三)Plasma MVP

    摘要:合約會(huì)處理由子鏈提交的區(qū)塊,并且將區(qū)塊的哈希值存在主鏈上。負(fù)責(zé)處理所有子鏈上發(fā)生的交易,將其打包成區(qū)塊存儲(chǔ)在子鏈上,并且周期性地向合約提交區(qū)塊,將子鏈上的狀態(tài)區(qū)塊的哈希值提交到主鏈共識(shí)。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:深入理解Plasma(三)Plasma MVP原文已更新,請(qǐng)讀者前往原文閱讀 這一系列文章將圍繞以太坊的二層擴(kuò)容框架 Plasma,介紹其基本運(yùn)行原理,具體操作細(xì)...

    guqiu 評(píng)論0 收藏0
  • 深入理解Plasma(四)Plasma Cash

    摘要:稀疏梅克爾樹(shù)在上文中我們已經(jīng)了解到一個(gè)交易的成功的前提是需要發(fā)送方提供關(guān)于一個(gè)的完整交易歷史。因此,中使用了一種稱為稀疏梅克爾樹(shù),的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)交易數(shù)據(jù),能夠在的時(shí)間復(fù)雜度驗(yàn)證一個(gè)交易不存在。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:深入理解Plasma(四)Plasma Cash原文已更新,請(qǐng)讀者前往原文閱讀 這一系列文章將圍繞以太坊的二層擴(kuò)容框架 Plasma,介紹其基本運(yùn)行原理,具...

    godiscoder 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<