麻豆国内精品欧美在线-麻豆国内精品久久久久久-麻豆国产在线观看一区二区-麻豆国产在线观看免费-麻豆国产原创-麻豆国产一区二区在线观看

WebAssembly和區(qū)塊鏈計算的未來區(qū)塊鏈

王林柯 2018-11-10 16:42
分享到:
導(dǎo)讀

WebAssembly和區(qū)塊鏈計算的未來

2013年提出的以太坊的概念成為了區(qū)塊鏈技術(shù)的一個主要擴(kuò)展,將其從一個P2P資金的去中心化結(jié)算層,轉(zhuǎn)變?yōu)橐粋€程序執(zhí)行的無信任層,為應(yīng)用程序和可編程資產(chǎn)開創(chuàng)了一個全新的世界。

把自己概念化為一個“全球計算機(jī)”,以太坊的核心思想是很簡單易懂的:把區(qū)塊鏈技術(shù)的信任最小化的天然屬性應(yīng)用到計算機(jī)程序輸出的共識上。也就是說,開發(fā)者可以部署被稱為“智能合約”的代碼,它是完全確定性的,輸出可以被所有和它進(jìn)行交互的角色所信任。

各種各樣非常好的想法在一開始就被提了出來,包括使用以太坊智能合約創(chuàng)建公平拍賣或者樂透彩票,創(chuàng)建預(yù)測市場,去中心化交易所等等。這些用例中最廣為人知的是創(chuàng)建以太坊可編程token,這是各類公司通過首次代幣發(fā)行籌集資金的一種流行的方式。

以太坊內(nèi)核實現(xiàn)了一個圖靈完備的虛擬機(jī),即以太坊虛擬機(jī)(簡稱EVM)。它定義了一套通用的、確定性的指令,程序可以被編譯成這些指令,并且可以在全世界任何一臺計算機(jī)上運(yùn)行。在EVM上執(zhí)行的每一個操作和程序需要被以太坊網(wǎng)絡(luò)中的每一個全節(jié)點運(yùn)行,意味著這臺“世界計算機(jī)”需要有一種內(nèi)建的機(jī)制來制止惡意占用(spam)攻擊。為解決這個問題,EVM實現(xiàn)了gas(油費(fèi))的概念,可以理解為在這臺全球計算機(jī)上運(yùn)行每個基本操作需要消耗的“燃料”,這是需要預(yù)付的。

區(qū)塊鏈計算機(jī)是確定性的

圖靈完備意味著你可以在以太坊虛擬機(jī)上編寫和運(yùn)行任何你能想到的程序,只要你能為它的所有執(zhí)行步驟支付足夠的gas。昂貴的操作,例如訓(xùn)練機(jī)器學(xué)習(xí)算法,由于它的固有限制,在EVM上是完全不可行的。EVM中的每一條指令,被稱為OPCODE,都有一個特定的固定費(fèi)用。每個OPCODE都是確定的,對每個程序的輸出達(dá)成一致意見是在以太坊上達(dá)成全局共識的必要條件。

(以太坊從區(qū)塊創(chuàng)建到交易執(zhí)行的完整系統(tǒng),引用自StackExchange)

通過為opcode設(shè)置固定費(fèi)用,節(jié)點就可以確定執(zhí)行某個特定程序時用戶需要預(yù)付多少費(fèi)用。在這種情況下,gas的概念不僅僅被用于阻止惡意占用攻擊,還是一種確定性的指標(biāo)。例如,一個消耗gas X的程序總是會消耗X,不管是網(wǎng)絡(luò)中的哪個節(jié)點在執(zhí)行它。gas的單價依賴于整個平臺的供求關(guān)系,經(jīng)常會隨著以太坊網(wǎng)絡(luò)的交易負(fù)載量而發(fā)生變化。

EVM是如何設(shè)計的?為什么它是低效的?

l 架構(gòu)尺寸過大

傳統(tǒng)計算機(jī)包含的指令集只接受32位或者64位的輸入。EVM與此不同并且很特殊,它是一臺256位的計算機(jī),故意設(shè)計成這樣是為了更易于處理以太坊的哈希算法,它會明確產(chǎn)生256位的輸出。

然而,實際運(yùn)行EVM程序的計算機(jī)則需要把256位的字拆分成它們的本地架構(gòu)來執(zhí)行智能合約,從而使得整個系統(tǒng)變得非常低效和不實用。

另外,如果你想在以太坊上用它的基本OPCODES實現(xiàn)一個類似于SHA256的復(fù)雜算法,那你就自祈多福吧!為了解決通過指令集運(yùn)行復(fù)雜程序產(chǎn)生的高額gas問題,以太坊引入了預(yù)編譯的概念,把程序編譯進(jìn)EVM并且消耗固定的gas。一個值得關(guān)注的預(yù)編譯是以太坊哈希算法,因為如果在虛擬機(jī)中實現(xiàn)該算法,合約在調(diào)用時將會產(chǎn)生極其昂貴的費(fèi)用。

l 臃腫的預(yù)編譯

預(yù)編譯帶來的問題是它會不斷增加虛擬機(jī)的臃腫度和復(fù)雜度,而不能解決核心問題:當(dāng)前指令集和規(guī)范的低效而粗劣的設(shè)計。

如果我們能夠定義一種新的規(guī)范和指令集,不需要預(yù)編譯這些復(fù)雜程序,而只需要通過基本指令就可以高效實現(xiàn)呢?

走進(jìn)WebAssembly

WebAssembly是由W3C開發(fā)的一個高效輕量級指令集標(biāo)準(zhǔn),被譽(yù)為網(wǎng)絡(luò)和高性能的顛覆者,支持跨瀏覽器執(zhí)行。這意味著我們可以把包括C/C , Go, Rust等在內(nèi)的不同編程語言編譯成統(tǒng)一的標(biāo)準(zhǔn)格式,并將其作為JavaScript的替代品以近乎原生代碼的效率在瀏覽器中運(yùn)行。WebAssembly,或者簡稱為WASM,是內(nèi)存安全、平臺獨(dú)立的,可以完美高效地映射到所有類型的CPU架構(gòu)上。

這和區(qū)塊鏈有什么關(guān)系?

不依賴于EVM,現(xiàn)在我們有了一套優(yōu)秀并且高效的指令集,可以編譯各種類型的語言,并且有信心它們可以在不同類型的平臺上執(zhí)行且具有同等的性能 - 這對于去中心化應(yīng)用來說是非常理想的!更進(jìn)一步,通過去除浮點運(yùn)算指令,WASM指令集可以很容易地變成確定性指令集,從而很適合作為EVM的替代品。

EWASM團(tuán)隊已經(jīng)著手在以太坊上集成WebAssembly,從而保證以太坊2.0的執(zhí)行層更加高效、簡單,適合作為完全的去中心化計算平臺。https://github.com/ewasm

WASM已經(jīng)被許多其他項目接納為標(biāo)準(zhǔn),包括Dfinity和EOS都使用它來強(qiáng)化它們的執(zhí)行層。

Web的性能和智能合約平臺執(zhí)行層的未來一片光明。不僅dApp會具有更高的性能,集成WASM也可以讓那些熟悉Rust和Go之類的主流語言的魯棒性的人更容易進(jìn)行智能合約的開發(fā),而不是需要學(xué)習(xí)solidity的各種細(xì)節(jié)才能在以太坊上開發(fā)有用的應(yīng)用程序。

------

風(fēng)險警示:藍(lán)狐筆記所有文章都不構(gòu)成投資推薦,投資有風(fēng)險,投資應(yīng)該考慮個人風(fēng)險承受能力,建議對項目進(jìn)行深入考察,慎重做好自己的投資決策。

執(zhí)行 EVM 程序 指令集 計算機(jī)
分享到:

1.TMT觀察網(wǎng)遵循行業(yè)規(guī)范,任何轉(zhuǎn)載的稿件都會明確標(biāo)注作者和來源;
2.TMT觀察網(wǎng)的原創(chuàng)文章,請轉(zhuǎn)載時務(wù)必注明文章作者和"來源:TMT觀察網(wǎng)",不尊重原創(chuàng)的行為TMT觀察網(wǎng)或?qū)⒆肪控?zé)任;
3.作者投稿可能會經(jīng)TMT觀察網(wǎng)編輯修改或補(bǔ)充。


主站蜘蛛池模板: 亚洲国产精品综合久久网络 | 日韩精品一区二区三区中文字幕 | 精品无人区一区二区三区 | 国产一区二区在线免费观看 | 妹妹骑上来蹭着蹭着就射了 | 国产一区二区免费福利片 | 韩国甜性涩爱免费观看 | 互换身体全集免费观看 | 亚洲人成网站在线观看青青 | 九九精品免视看国产成人 | 亚洲精品午夜久久aaa级久久久 | 忘忧草秋观看未满十八 | 欧美久久一区二区三区 | 欧美gay xxxx| 欧美一级高清片免费一级 | 卫生间被教官做好爽HH视频 | 高清国语自产拍免费视频国产 | 97超pen个人视频公开视频视 | 国产精品nv在线观看 | 国产福利视频一区二区微拍视频 | 91麻豆精东果冻天美传媒老狼 | 四虎精品视频在线永久免费观看 | 女同学用白丝脚玩我的故事 | 91香蕉视频在线观看 | 国产精品亚洲专区一区 | 国产综合久久 | 被巨大黑人的翻白眼 | 齐天大性之七仙女欲春迅雷链接 | x8x8在线观看| 扒开老师挠尿口到崩溃刑罚 | 欧美日本一区视频免费 | 精品国产自在现线拍国语 | julia ann黑人巨大 | 精品夜夜澡人妻无码AV蜜桃 | 亚洲偷窥图区色 | 人人爱天天做夜夜爽88 | 亚洲福利一区二区精品秒拍 | 日本手机在线视频 | 大胆国模一区二区三区伊人 | 3x免费高清视频 | 欧美办公室激情videos高清 |