等離子以太坊虛擬機(jī)的研究探討
韓國(guó)Onther有限責(zé)任公司的三位開發(fā)者發(fā)表了一篇關(guān)于等離子以太坊虛擬機(jī)(EVM,使用了256比特長(zhǎng)度的機(jī)器碼,是一種基于堆棧的虛擬機(jī),用于執(zhí)行以太坊智能合約)的研究論文,這是一個(gè)能夠兼容智能合同的等離子版本??雌饋硎遣皇欠浅8叽笊??但其中依舊存在一些安全問題。
等離子MVP(最低運(yùn)行的等離字體),是Joseph Poon和Vitalik Buterin首次在2017年的工作文稿中提出的等離子體概念時(shí),最引人注目和受到議論最多的內(nèi)容。在那篇文稿中,它被稱為激勵(lì)和強(qiáng)制執(zhí)行智能合同的框架,甚至能夠成為世界各地大量分散的金融應(yīng)用的代表。等離子MVP還沒有在主鏈上推出,如果推出的話,MVP將為數(shù)字資產(chǎn)的傳輸提供(相對(duì)較高的)可伸縮性。但也僅限于此。文稿中也并沒有提到有關(guān)EDCC(智能合約)的說法。
最近由Onther有限責(zé)任公司的Carl Park、Aiden Park和Kevin Jeong發(fā)表了一篇題為等離子以太坊虛擬機(jī)的研究論文,這篇論文試圖探索執(zhí)行以太坊虛擬機(jī)的完整的計(jì)算能力,向Poon(閃電網(wǎng)絡(luò)公司的創(chuàng)始人)的愿景致敬。如果成功的話,一個(gè)兼容以太坊虛擬機(jī)的等離子鏈將允許智能合約的應(yīng)用,允許現(xiàn)有客戶端運(yùn)行該鏈,并使以太坊開發(fā)工具可供使用。
然而等離子以太坊虛擬機(jī)還處于早期階段。目前還不清楚浪費(fèi)了多少時(shí)間和精力在最近發(fā)表的那些研究論文中。但作者明確指出,在被認(rèn)為有足夠的可行性進(jìn)行測(cè)試之前,必須解決安全問題和技術(shù)挑戰(zhàn)。
首先,開發(fā)人員指出,在他們當(dāng)前的模型下,當(dāng)?shù)入x子體操作人員不讓塊終止工作時(shí),可能會(huì)存在一種已知的攻擊。他們提出使用一種稱為加密經(jīng)濟(jì)簽名聚合體技術(shù)(CAS)解決這一問題,但他們也注意到了這還不夠,因此邀請(qǐng)廣大網(wǎng)友討論這個(gè)問題。
一位全棧(全棧工程師是指掌握多種技能,并能利用多種技能獨(dú)立完成產(chǎn)品的人。也叫全端工程師,同時(shí)具備前端和后臺(tái)能力,英文Full Stack engineer。)網(wǎng)站和以太坊的開發(fā)人員李玄斤對(duì)等離子以太坊虛擬機(jī)研究發(fā)表了評(píng)論,并回應(yīng)了作者的擔(dān)憂。
這位有關(guān)等離子以太坊虛擬機(jī)的作者建議,如果鏈運(yùn)行于拜占庭容錯(cuò)共識(shí)機(jī)制(是由萊斯利·蘭伯特提出的點(diǎn)對(duì)點(diǎn)通信中的基本問題。含義是在存在消息丟失的不可靠信道上試圖通過消息傳遞的方式達(dá)到一致性是不可能的。因此對(duì)一致性的研究一般假設(shè)信道是可靠的,或不存在本問題。),就沒有必要考慮這種攻擊,因?yàn)橹辽儆幸粋€(gè)真實(shí)的節(jié)點(diǎn)可以提供其他節(jié)點(diǎn)保留的數(shù)據(jù),這是解決這個(gè)問題的一種更簡(jiǎn)單的方法。
Kelcin Fichter,一位OmiseGO公司(一個(gè)即將國(guó)內(nèi)上市的區(qū)塊鏈項(xiàng)目)的等離子MVP的編碼員,他運(yùn)用了另外一種思維。最基本的思想是,他質(zhì)疑等離子體以太坊虛擬機(jī)是否能夠有效地運(yùn)行智能合約,或者至少是某些類型的智能合約。他解釋了他的質(zhì)疑:
“以太坊合同通常沒有明確的總體所有者,盡管合同的個(gè)別組成部分可能有。這意味著將收益公正地分配給那些退出項(xiàng)目的用戶不是一件簡(jiǎn)單的事。許多網(wǎng)絡(luò)參與者也可以修改合同。請(qǐng)記住,能否有效地進(jìn)行狀態(tài)轉(zhuǎn)換對(duì)這些退出項(xiàng)目的用戶至關(guān)重要?!?/p>
他繼續(xù)說:“我們主要想用合理的所有權(quán)模式將這些合同分解成明確的組成部分。在組成的部分不能明確所有權(quán)的情況下,就不可能去協(xié)調(diào)合同的內(nèi)容?!?/p>
當(dāng)然,解決這些問題需要時(shí)間。
OmiseGO公司大約在同一時(shí)間開始實(shí)施。盡管MVP在規(guī)約首次發(fā)布時(shí)相對(duì)可行,但自1月份以來,已經(jīng)有271次提交申請(qǐng)(對(duì)代碼的公開更改)和90次對(duì)GitHub(是一個(gè)面向開源及私有軟件項(xiàng)目的托管平臺(tái),因?yàn)橹恢С謌it 作為唯一的版本庫(kù)格式進(jìn)行托管,故名gitHub。)的拉取請(qǐng)求(比如你在Github上fork了一個(gè)代碼庫(kù)。那么你就可以獨(dú)立修改這份代碼。這個(gè)時(shí)候所有的修改都是提交到你自己的倉(cāng)庫(kù)里的。如果你想把代碼合并到你fork的那個(gè)原始代碼中,你就需要發(fā)送一個(gè)pull request請(qǐng)求。原始代碼庫(kù)的創(chuàng)建者會(huì)收到這個(gè)請(qǐng)求,然后決定是否把你的代碼合并到他自己的代碼里。)。而且站點(diǎn)中仍然沒有明確的主鏈實(shí)現(xiàn)日期。
同時(shí),以太坊虛擬機(jī)支持的等離子體的規(guī)范是不完整的,因此還有許多問題留給社區(qū)發(fā)燒友們(尤其是應(yīng)該使用什么共識(shí)機(jī)制),以太坊虛擬機(jī)來臨的日子已經(jīng)在倒計(jì)時(shí)了。誠(chéng)然,轉(zhuǎn)向eWASM(是一項(xiàng)由Mozilla、谷歌、微軟及蘋果聯(lián)合開發(fā)的項(xiàng)目,致力于為各種語言定義一種二進(jìn)制形式的編譯目標(biāo)格式,并設(shè)計(jì)一種可與當(dāng)前的Web平臺(tái)集成并在Web環(huán)境中執(zhí)行的方案,最終實(shí)現(xiàn)在各類平臺(tái)上以接近原生的速度調(diào)用常見的硬件功能。)仍然是一種出路,但現(xiàn)有客戶群已經(jīng)在磨拳擦掌了。我們只需要等待,看看等離子體以太坊虛擬機(jī)什么時(shí)候能夠敲響啟動(dòng)的鐘聲。