Share this article

EVM 2.0: Inside the Race to Replace the Heart of Ethereum

Ang virtual machine na nagbibigay-daan sa Ethereum na kalkulahin ang lahat sa isang desentralisadong paraan ay nakakakuha ng isang napakalaking overhaul.

Nasa puso ng Ethereum ang isang virtual na computer.

Naka-imbak sa libu-libong node na bumubuo sa platform, ang Ethereum virtual machine, o EVM, ay may pananagutan sa pagsasagawa ng hindi mabilang na mga token, dapps, DAO at mga digital na kuting kung saan binubuo ang blockchain.

Story continues
Don't miss another story.Subscribe to the Crypto for Advisors Newsletter today. See all newsletters

Ito ay isang makina kung saan gumagana ang kabuuan ng Ethereum , at nagsasalita ito sa isang wikang pinangalanang "EVM bytecode" — hilaw, 256- BIT mga string ng impormasyon na maaaring maghatid ng anumang naiisip na equation (sa kondisyon na ito ay nasa loob ng limitasyon na ipinataw sa sarili ng platform, GAS).

Mukhang malakas at mahalaga ha? Isang bagay na hindi dapat guluhin ng sobra?

Gayunpaman, ang mahalagang bahagi ng imprastraktura ng ethereum ay naghahanda para sa isang kumpletong muling pagsulat.

"Gagawin ko ang kaso na T napakalaking halaga ng pag-iisip ng disenyo na inilagay dito sa simula," sinabi ni Lane Rettig, isang developer ng Ethereum , sa CoinDesk tungkol sa EVM. "Ito ay tulad ng isang tool - isang swiss army knife ang paraan na ilalarawan ko ito - ito ay gumagawa ng isang grupo ng mga bagay ngunit hindi kapani-paniwalang mahusay."

Dahil dito, ang kasalukuyang EVM ay papalitan ng bagong virtual machine na tinatawag na eWASM.

Ang EWASM ay bersyon lang ng ethereum ng WASM (na nangangahulugang WebAssembly) code, na ginawa ng World Wide Web Consortium (W3C), ang team ng mga developer na responsable sa pagpapanatili at pag-standardize ng web.

"Maraming mataas na bayad, napakaraming inhinyero, at maraming libu-libong propesyonal na oras ng inhinyero na napunta sa konsepto ng [WASM] construction set - kumpara sa EVM," sabi ni Rettig, na nag-aambag sa pagbuo ng eWASM.

Sa katunayan, ang eWASM ay magbibigay-daan sa mga developer na mag-code sa maraming programming language — hindi lang sa ethereum-specific na wika, Solidity — at sinasabing may kasamang host ng mga pagpapahusay sa performance.

At nangunguna sa pagtitiwala sa desisyon, sasali ang Ethereum sa ilang kakumpitensya, kabilang ang EOS, TRON at Cardano, na bawat isa ay nag-deploy (o nagpaplanong mag-deploy) ng mga virtual machine na partikular sa proyekto upang pangasiwaan ang desentralisadong pagtutuos gamit ang WASM code.

Para sa Ethereum, nakatakdang isagawa ang switch kasama ng ilang iba pang update na binansagan na ngayong "Shasper," na kinabibilangan ng scaling solution sharding at mining rewrite Casper, sa susunod na ilang taon. At habang ang isang eksaktong timeline para sa switch ay T naayos, ang eWASM development ay gumagawa ng mabilis na pag-unlad, at naghahanda sa paglulunsad ng testnet nito sa Devcon 4, ang Ethereum developer conference, sa Prague sa Oktubre.

Sa pagsasalita sa desisyon na palitan ang umiiral na makina, nagbubuod si Rettig:

" Nasa punto na ang Ethereum kung saan ito ay lumilipat mula sa isang clunky homebrew custom build job na aming sinasakyan sa paligid ng aming FARM patungo sa isang tunay na karerahan na maaari naming dalhin sa highway at buksan."

Isang 'warty' na paraan

Ang pinagbabatayan ng switch ay ang pagsasakatuparan na habang ang EVM ay isang makabagong Technology — sa unang pagkakataon, nagbibigay ng solusyon sa desentralisadong pagtutuos ng paglaban sa pag-atake — hindi ito kasinglinis hangga't maaari.

Halimbawa, karamihan sa mga developer ng dapps ay nagprograma sa Solidity ng ethereum, isang mataas na antas ng programming language na awtomatikong nagko-compile sa isang EVM bytecode compatible form.

Dahil umaasa ang EVM sa "napakalaki, malawak na mga tagubilin," sabi ni Rettig, kahit na ang pinakamaliit na uri ng pagkalkula, gaya ng pangunahing aritmetika, ay kailangang i-convert sa 256- BIT na mga string – isang kumplikadong proseso para sa simpleng matematika – para maproseso ng EVM ang mga ito.

ONE lamang ito sa ilang mga operasyong naka-built in sa system code na ipinaglalaban ni Rettig na T dapat naroroon. Kasama sa isa pa ang sikat na hash function na SHA-3.

Dahil dito, inilalarawan ni Rettig ang EVM bilang "warty."

At si Nick Johnson, isang Ethereum CORE developer, ay sumang-ayon, na nagsasabi sa CoinDesk na nang siya ay sumali sa Ethereum, ito ay agad na malinaw sa kanya na ang EVM ay binuo ng mga developer na may malalim na pag-unawa sa computer science, ngunit walang gaanong karanasan sa pagbuo ng malawak na magagamit na mga produkto.

Bilang isang tool, binigyang-diin ni Johnson, ang EVM ay "na-optimize para sa teoretikal na kadalisayan, sa halip na praktikal na paggamit."

"Mayroon itong napakalaking mga rehistro, ngunit lahat sila ay pareho, at ito ay napaka-internal na pare-pareho at iba pa," sabi niya, "ngunit hindi ito itinayo gamit ang real-world na pagpapatupad sa isip."

'Mas malapit sa metal'

Ang WASM code, sa kabilang banda, ay binuo na nasa isip ang produksyon.

Para sa ONE, sinabi ni Rettig, ito ay binuo "mas malapit sa metal," ibig sabihin na ang code na pinapatakbo nito ay malapit sa aktwal na mga tagubilin sa hardware, kaya mas kaunting pagsisikap na ginugol sa pagsasalin ng iba't ibang coding logics.

"Ang mga tagubilin ay napakalapit na ginagaya ang aktwal na mga tagubilin sa hardware," patuloy ni Rettig. "Maaaring direktang imapa ng mga tagubiling ito ang isa-sa-isa sa mga tagubiling pinapatakbo ng aktwal na mga device, upang maaari kang, sa teorya, makakuha ng medyo kapana-panabik na mga pagpapabuti sa pagganap."

Halimbawa, ang mga developer na bumubuo sa Ethereum ay makakapag-code gamit ang maraming wika - anuman ang pinaka komportable nila - kasama ang mga may karagdagang benepisyo sa seguridad.

Ang isa pang pangunahing bentahe — na sinabi ni Rettig na binanggit ng ilang developer bilang "pangunahing motibasyon sa likod ng eWASM" — ay ang potensyal nitong alisin ang tinatawag na "precompile."

Dahil ang EVM ay binubuo ng mahirap gamitin na code, ang ilang partikular na operasyon ay kailangang itayo sa loob ng system — kung hindi, ang mga operasyon ay lalampas sa mga GAS na nauugnay sa kanila. Tinatawag na mga precompile, upang gawing available ang mga naturang operasyon sa isang network, kinakailangan ang isang system-wide upgrade, o hard fork; at ang mga naturang pag-upgrade ay napatunayang mapanganib at kumplikadong i-orkestrate.

Sa eWASM, gayunpaman, pinaninindigan ng mga developer na ang mga operasyon ay maaaring isulat lamang bilang mga matalinong kontrata at i-deploy, na laktawan ang hard fork scenario.

"Sa eWASM, ito ay sapat na mahusay sa paggawa ng mga bagay sa pag-compute na karamihan sa mga precompile na iyon ay maaaring alisin at mapalitan ng mga kontrata lamang ng eWASM," sabi ni Johnson.

Sirang puso

Gayunpaman, tulad ng anumang malaking pagbabago sa isang desentralisadong ecosystem, ang pagtulak na tanggalin ang EVM ay walang mga kritiko nito.

Para sa ONE, ang Ethereum CORE developer na si Greg Colvin, na nakatuon sa pangangalaga ng EVM sa loob ng maraming taon, ay nag-aatubili na pabayaan ang lumang code.

Si Colvin ay nagdidisenyo ng isang bagong pinahusay na bersyon ng EVM code mismo, na pinangalanang EVM 1.5, na orihinal na nilayon na maging kinabukasan ng Ethereum virtual machine. Gayunpaman, nang walang babala, ang kanyang pagpopondo ay pinutol ng non-profit na Ethereum Foundation.

"I was pissed," Colvin, who helped form the Konseho ng Ethereum Magicians, isang grupo ng talakayan na nakatuon sa pagpapalawak ng teknikal na kasanayan ng Ethereum, pagkatapos ng karanasan, sinabi sa CoinDesk. "I was like wait a minute, you wo T pay me $8.40 an hour kapag binawasan mo na ang mga oras ko sa 20 from 35, kaya bakit ko ginagawa ito. At pagkatapos ay sa natitirang bahagi ng taon hindi ko na kayang magboluntaryo ng oras."

Gayunpaman, ang dahilan ni Colvin sa pagsalungat sa aWASM ay T lamang pagmamalaki.

Ayon sa kanya, may mga teknikal na isyu din sa eWASM. Halimbawa, dahil pinapayagan ng eWASM ang maramihang suporta sa wika, lubos na umaasa ang code sa tinatawag na "mga compiler" — isang bagay na pinananatili ni Colvin ay maaaring isang punto ng pagkabigo para sa mga umaatake.

Hindi rin siya kumbinsido na maaaring palitan ng mga eWASM smart contract ang pangangailangan para sa mga precompile.

Dagdag pa, si Colvin ay may karagdagang mga kritiko na nakatuon sa disenyo na kahit na sinasang-ayunan ni Rettig. Ayon sa parehong mga developer, para sa ilang kadahilanan mas hindi mahusay na teknolohiya ang kadalasang nananalo. Kunin ang Javascript bilang halimbawa, na ONE sa pinakamalawak na ginagamit na mga programming language, ngunit kilala sa pagiging partikular na pangit.

"Mukhang may pattern sa Technology at computer science kung saan ang mga bagay na may pinakamagandang disenyo, hindi lamang hindi sila WIN, ngunit mukhang hindi sila masyadong mahusay," Rettig argued.

Hindi sa banggitin, ayon kay Colvin, para sa lahat ng gawaing pag-unlad sa likod ng WASM, ang code ay medyo hindi pa nasusubukan sa ligaw.

Sinabi ni Colvin sa CoinDesk:

"T ko naintindihan kung bakit gusto naming maging maagang mga gumagamit ng isang eksperimento, noong kami ay maagang nag-adopt ng sarili naming eksperimento."

Unpredictability

Bukod sa mga salungatan, lumalakas ang eWASM sa maraming developer ng Ethereum .

Sa katunayan, ang pagpaplano ng plano ay i-deploy ito bilang isang testnet bago ang Ethereum developer conference, Devcon4, sa Nobyembre.

Gayunpaman, T iyon nangangahulugan na ang bagong virtual machine ay mai-deploy anumang oras sa lalong madaling panahon.

Dahil ilalabas muna ang eWASM sa isang shard, o isang sidechain, bago palitan ang EVM mismo, ang paglulunsad ng eWASM ay malapit na nauugnay sa pag-upgrade ng Shasper. At sa mga tuntunin ng timing, nangangahulugan iyon na ang mga developer ay kailangang dumalo sa pananaliksik na nagpapatibay sa mga pagbabagong iyon, bago lumipat sa eWASM.

Sa kasamaang palad, ang pag-unlad ng naturang pananaliksik ay maaaring hindi mahuhulaan.

Sa katunayan, ang kalabuan na kasangkot sa mga pag-upgrade ng code ng ganitong uri ay pinagmumulan ng kalituhan para sa isang malawak na grupo ng mga developer ng Ethereum na nagtatayo sa platform.

"Kung ikaw ay nasa proseso ng pagbuo ng isang bagong kliyente mayroong maraming pagkalito: Dapat ba akong magtayo ng eWASM? Dapat ba akong magtayo ng EVM? Dapat ko bang itayo ang dalawa? Dapat ba akong gumawa ng iba pa," sinabi ni Rettig sa CoinDesk.

Ang kakulangan ng kalinawan ay ONE sa mga pangunahing pagkabigo para kay Colvin, dahil pagdating sa kasalukuyang EVM, may ilang mga isyu sa pagganap na madaling pagbutihin, ngunit ang mga iyon ay na-side-barred ng biglaang pagbabago sa roadmap.

"Ito ay isang pagkabigo sa akin sa loob ng ilang sandali, ang eWASM ay malinaw na nasa abot-tanaw, ngunit walang masyadong maraming mga mapagkukunan EVM 1.5 ay nasa NEAR abot-tanaw. At ngayon, ito ay magagawa pa rin, ngunit ito ay itinulak, isang buong taon ay nasayang," sinabi ni Colvin sa CoinDesk.

Mas marami, mas masaya?

Gayunpaman, parehong inamin nina Rettig at Colvin na ang kawalan ng katiyakan na ito ay bahagi lamang ng pag-aambag sa isang open-source na proyekto nang walang anumang sentral na pamumuno.

"Napakahalaga ng aspeto ng komunidad. Kung ito ay isang kumpanya ay matagal na akong nawala," sinabi ni Colvin sa CoinDesk.

Dagdag pa, QUICK na nakipagtalo si Rettig na pagdating sa mga pagpapabuti ng Ethereum , walang nasasayang na trabaho.

Sa katunayan, nagpatuloy siya, dahil sa likas na katangian ng pag-upgrade ng sharding — na naghahati sa Ethereum sa mas maliit, mas mapapamahalaang mga tipak — sa kalaunan ay maaaring suportahan ang maraming virtual machine sa Ethereum.

Sa isang na-update Ethereum, sinabi ni Rettig, "Walang iisang Ethereum, walang iisang roadmap, walang iisang awtoridad, ito ay isang komunidad, ito ay isang pamilya ng mga teknolohiya, at hindi ako naniniwala na ang hinaharap ay ONE chain lamang upang pamunuan silang lahat."

Alinsunod dito, magbubukas din ang eWASM ng mga bagong antas ng interoperability. Para sa ONE, ito ay binuo sa isang wika na na-standardize para sa World Wide Web, kaya ang pagdaragdag ng in-browser na suporta para sa isang Ethereum light client ay magiging walang halaga.

At maaari itong magbigay daan para sa hindi natuklasang interoperability sa pagitan ng iba't ibang mga blockchain.

"Marahil mayroon kang quadratic sharding dito, at Plasma dito, at maaaring nagsasapawan ang mga ito sa mga lugar, at marahil mayroon tayong Dfinity chain na nakikipag-usap sa isang Ethereum chain na nakikipag-usap sa Bitcoin sa pamamagitan ng Cosmos at Polkadot," sabi ni Rettig, na nagmumungkahi:

"T lang namin alam, kaya T masyadong mahuli sa opisyal na canonical roadmap, anuman iyon."

Puso ng papel larawan sa pamamagitan ng Shutterstock

Rachel-Rose O'Leary

Si Rachel-Rose O'Leary ay isang coder at manunulat sa Dark Renaissance Technologies. Siya ang nangungunang tech writer para sa CoinDesk 2017-2018, na sumasaklaw sa Privacy tech at Ethereum. Siya ay may background sa digital na sining at pilosopiya, at nagsusulat tungkol sa Crypto mula noong 2015.

Rachel-Rose O'Leary