自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何將智能合約遷移到任何EVM?

譯文
區(qū)塊鏈
幾年前以太坊區(qū)塊鏈出現(xiàn)后,由于可以創(chuàng)建智能合約,以太坊區(qū)塊鏈逐漸成為開發(fā)人員和項目用來創(chuàng)建以前不可想象的新平臺和新體驗的入口點,比如視頻游戲和去中心化金融(DeFi)等。

譯者 | 布加迪

審校 | 重樓

幾年前以太坊區(qū)塊鏈出現(xiàn)后,由于可以創(chuàng)建智能合約,以太坊區(qū)塊鏈逐漸成為開發(fā)人員和項目用來創(chuàng)建以前不可想象的新平臺和體驗的入口點,比如視頻游戲去中心化金融DeFi等。起初,以太坊似乎是最好的區(qū)塊鏈,但隨著項目和交易數(shù)量增加,技術(shù)局限性逐漸暴露出來,引發(fā)了對其長期可持續(xù)性的質(zhì)疑。

2016年至2017年期間,隨著比特幣的局限性顯露無遺,一些人和項目開始探索更有效的區(qū)塊鏈的替代想法。這與以太坊作為構(gòu)建去中心化應(yīng)用程序dApps的平臺出現(xiàn)時的情況相似。在這方面,值得注意的動向之一是EOS區(qū)塊鏈的形成。

其他項目(不是完全創(chuàng)新通過修改其他參數(shù)將以太坊結(jié)構(gòu)作為基礎(chǔ),使其成為理論上更快速更便宜的以太坊版本。

即使對于非專業(yè)人士來說,這些區(qū)塊鏈令人難以置信,截然相反的情緒源自技術(shù)視角,它們具有與EVM以太坊虛擬機兼容的優(yōu)勢,實際上允許那些在以太坊上開發(fā)某些產(chǎn)品的人將其移植到這些新的所謂的“與EVM兼容”的區(qū)塊鏈上,沒有太多問題。

與EVM兼容的區(qū)塊鏈

如前所述,這種類型的區(qū)塊鏈允許您使用在以太坊上創(chuàng)建的相同代碼,這里一種專門創(chuàng)建的名為Solidity的語言表示,含有智能合約指令的文件采用“.sol”格式。

因此對于程序員來說,使用相同的文件足以在這些與EVM兼容的區(qū)塊鏈上使用它,甚至不需要修改;這已一再證明是開發(fā)人員和應(yīng)用程序吸引到新區(qū)塊鏈的基本功能和特征。

EOS EVM

到目前為止我們討論了脫胎于以太坊的區(qū)塊鏈,但技術(shù)環(huán)境其實并沒有出現(xiàn)創(chuàng)新。事實上,大多數(shù)與EVM兼容的區(qū)塊鏈幾乎彼此都相同,只是代幣(Token)的名稱發(fā)生了變化。

EOS區(qū)塊鏈本身與以太坊和EVM不兼容,因此必須開發(fā)一種技術(shù)上具有挑戰(zhàn)性的解決方案,以便在其生態(tài)系統(tǒng)內(nèi)模擬EVM。由于兩區(qū)塊鏈的架構(gòu)和共識機制不同,在EOS上模擬EVM需要花很大的精力。

這種模擬允許EOS運行基于以太坊的dApps,并在其生態(tài)系統(tǒng)內(nèi)執(zhí)行以太坊智能合約,從而為開發(fā)人員提供更多選擇。

盡管如此,在技術(shù)嫻熟的EOS程師的幫助下,EOS EVM誕生了,并于4月中旬推出。其他區(qū)塊鏈上的其他EVM相比,EOS EVM展示了其所有技術(shù)力量選擇的數(shù)據(jù)是每秒交換”,比當(dāng)時被認(rèn)為速度最快的EVM(即Solana上的EVM)4倍。

如何將智能合約遷移到EOS EVM?

既然我們已經(jīng)了解了EVM的歷史和功能,現(xiàn)在是時候讓我們動手編寫代碼了,看看如何將我們?yōu)橐蕴换?/span>另一種EVM區(qū)塊鏈創(chuàng)建的代碼遷移到EOS EVM

為了遷移智能合約,我們需要一些支持

  • 加載到我們的MetaMask錢包中的主網(wǎng)或測試網(wǎng)網(wǎng)絡(luò)
  • 智能合約的代碼
  • 支付網(wǎng)絡(luò)費用EOS加密貨幣(這里是測試網(wǎng)水龍頭)

如何部署?

要部署智能合約,即將代碼加載到區(qū)塊鏈上,我們基本上有兩種方法

  • 使用IDE,比如Remix
  • 從命令行使用Hardhat

1. 使用Remix IDE進(jìn)行部署

人人都可以上手的一種快捷方法就是使用Remix,此后我們將部署智能合約。

首先,確保我們的MetaMask錢包在EOS EVM、測試網(wǎng)或主網(wǎng)上是活躍的,然后連接到Remix web界面,在這里創(chuàng)建一個新文件,給它個名字和.sol擴(kuò)展名

圖1圖1

在空文件中,我們將粘貼代碼;或者如果我們有多個智能合約,可以從我們的PC上傳文件。

此時,選擇我們想要上傳到區(qū)塊鏈的.sol文件,然后移動到Solidity Compiler菜單

圖2圖2

在這里,我們不需要做任何其他事情,只需按下藍(lán)色按鈕,等待操作成功只需查看綠色號):

圖3圖3

部署到區(qū)塊鏈的最后一步中,瀏覽“Deploy & Run Transactions”菜單。在“Environment部分中,選擇“Inject Provider – MetaMask選項。這個選擇會自動考慮EOS EVM無論您選擇的是測試網(wǎng)還是主網(wǎng)?,F(xiàn)在點擊“Deploy按鈕,繼續(xù)下一步。出現(xiàn)提示,您需要確認(rèn)使用您的MetaMask錢包進(jìn)行交易

圖4圖4

就這樣,在不到5分鐘的時間里,我們已經(jīng)將智能合約遷移到EOS EVM。

2. 使用Hardhat進(jìn)行部署

如果我們使用Hardhat開發(fā)dApp,將以下網(wǎng)絡(luò)添加到“hardhat.config.js配置文件中就足夠了

圖5圖5

然后運行命令部署請記住,我們應(yīng)該在用于支付交易成本地址上有一些EOS):

  • 針對EOS EVM主網(wǎng),npx hardhat運行scripts/deploy.js--network eosevm
  • 針對EOS EVM測試網(wǎng),npx hardhat運行scripts/deploy.js--network eosevm_testnet

最后,如果在使用dApp時出現(xiàn)任何錯誤,尤其是附有消息gas required exceeded allowance錯誤32603 - MetaMask -RPC Error: Internal JSON-RPC錯誤

圖6圖6

它不依賴EOS EVM的問題,而是來自MetaMask的問題,建議使用另一個瀏覽器并重新執(zhí)行交易,沒有問題地加以處理。

結(jié)語

總之,由于這些簡單的操作,我們不僅可以使用自己的舊代碼,還可以使用高性能的EVM,而最終用戶不必安裝任何其他東西,因為它足以添加新的網(wǎng)絡(luò)和相關(guān)的加密貨幣

原文標(biāo)題:How to migrate smart contracts to any EVM,作者:Alfredo de Candia

責(zé)任編輯:華軒 來源: 51CTO
相關(guān)推薦

2020-01-13 15:22:42

ERP云平臺遷移

2017-10-16 00:17:56

云計算信息管理遷移

2021-01-28 09:00:00

SQL數(shù)據(jù)庫NoSQL

2012-08-24 09:07:25

IBMdW

2012-10-29 09:27:16

2015-03-20 13:40:17

2011-09-07 09:30:57

服務(wù)器虛擬機

2020-12-08 10:01:48

DropboxNginxEnvoy

2021-07-13 09:45:48

CentOSAlmaLinux命令

2022-03-04 18:14:26

CentOSLinux

2020-06-18 10:12:42

云計算云安全數(shù)據(jù)

2010-08-12 15:10:17

Flex4

2019-07-02 13:52:04

云計算數(shù)據(jù)中心IT

2012-08-11 21:43:11

2015-09-11 10:36:46

虛擬化業(yè)務(wù)運維

2010-08-09 12:47:00

Flex4beta

2022-08-29 14:14:22

云計算云遷移數(shù)據(jù)分析

2016-12-12 19:16:43

數(shù)據(jù)云端

2022-05-05 11:39:07

智能技術(shù)智能建筑

2013-10-09 09:35:49

數(shù)據(jù)中心遷移虛擬化
點贊
收藏

51CTO技術(shù)棧公眾號