以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > ICP > Info

為 Optimism Rollup Dapp 準備的腳手架_TIM

Author:

Time:1900/1/1 0:00:00

譯文出自:登鏈翻譯計劃

譯者:翻譯小組

校對:Tiny熊

Optimism的OptimisticRollup主網發布在即!我們在熱切的期待中,因此我們為Optimisim的早期參與者準備了一個scaffold-eth的專門分支,腳手架包含以下內容:

運行本地鏈(L1)與OptimisticRollup(L2)。

L1和L2交互

在L1和L2之間移動ETH

在L2部署智能合約

創建自己的ERC20代幣橋接!

這些工作仍在進行中:這是在一個全新的協議上的全新的構建方式,所以預計一切都會發展和變化:),歡迎反饋!

如果你想直奔主題,代碼在這里6。

關于Optimism的Rollup是如何工作的,其他人已經寫了更詳細的。這篇文章的重點是我們可以在樂觀的以太坊上做什么,如何運行和開發...

我們開始吧!

運行一個具有Rollup的本地鏈

你需要安裝Docker!

在本地幾條鏈,讓他們互相交互,不是件容易的事。值得慶幸的是,Optimism團隊提供了一個開箱即用的集成倉庫,包含了運行所需的六個Docker容器。這是local-optimism分支的一部分,作為Git子模塊提供。當你把repo拉下來的時候,你需要啟動&更新子模塊,然后就是一個命令就可以把整個東西創建起來。

cddocker/optimism-integration&&makeup

img啟動并運行

有點像飛船起飛的感覺!

看日志可以很實際的感受到Optimism的工作原理--首先初始化一個L1鏈,并部署Optimism核心合約,然后初始化幾個在L1和L2之間傳遞信息服務,最后啟動L2geth實現。

鏈上分析師:過去 24 小時BTC期貨未平倉合約總額為 44.23 億美元:12月4日消息,21st Paradigm.com聯合創始人、鏈上分析師DylanLeClair發推稱,過去 24 小時內,BTC期貨未平倉合約總額為 44.23 億美元。[2021/12/4 12:50:55]

如果一切順利,我們就可以開始了!

Rollup與本地鏈交互

Optimism實現的真正優勢之一是與EVM的兼容性--在很多方面,它就像改變RPCURL和chainID一樣簡單。

l1Local:{rpc:"http://localhost:9545",chainId:31337}l2Local:{rpc:"http://localhost:9545",chainId:420}l2Kovan:{rpc:"https://kovan.optimism.io",chainId:69}

當然,也有一些需要考慮的差異,這里讓我們邊走邊講。

從用戶和開發者的角度來看,需要考慮的主要問題之一是如何處理L1和L2網絡,哪些要呈現給用戶,以及如何確保錢包連接到正確的網絡。

使用自定義網絡API,可以很好的解決后一個問題(在這個分支中還沒有實現--歡迎PR!)

在這個分支中,我們實例化了兩個provider(提供者)和兩個singer(簽名者),因為我們要支持與本地鏈和Rollup的交互。

1_vF4ynkFGTcdgvDm77hEC3g一個錢包有兩個余額!

在L1和L2之間轉移ETH

本地Rollup和目前在Kovan上的部署不需要任何交易費用,但這將是主網的一個關鍵過渡。我們有一個簡單的OptimisticETHBridge組件,它可以顯示用戶在L1和L2的余額,并允許他們存款到L2或從L2取款。

動態 | Compound 推出為 DeFi 創造盈利模式的復合代幣 dToken:加密借貸平臺 Compound 宣布將于本月推出新的智能合約系統 dTokens,dToken 是基于其代幣化借貸接口 cToken 開發的 Wrapper Token (復合代幣),是基于 Dai 或 USD 計價的穩定幣。 Compound 表示,推出 dToken 是完成未來路線圖上包括增強支付隱私和可拓展解決方案的的重要先決條件,此舉措旨在創造 Compound 的業務模式,以繼續構建將 DeFi 推向主流的創新功能。[2020/2/7]

1_iUEdefxX0UwlELeOwG4GdgL1/L2橋

存款是指在L1ETHGateway合約上調用_payable_deposit函數,存入你想存入的數量。該合約作為Optimism初始化的一部分進行部署,在本地設置上的部署地址總是相同的,但在Kovan上是不同的。

在Optimism上,沒有原生的ETH,ETH只是一個ERC20的代幣,提現是轉入到ERC20合約中。

awaitl2Tx(L2ETHGatewayContract.withdraw(parseEther(values.amount.toString())))

該組件還為L1和L2內置了簡單的Send功能。

Optimism團隊短期內正在研究的難題:

目前L2還不支持用{value}發送的交易,所以我們實例化一個ethers.js合約,并調用transfer。

目前在L2上實現的geth版本并不像在L1上那樣拋出transactionResponse,需要wait()等待transactionReceipt。在scaffold-eth中,這意味著要給我們的Transactorhelper增加一行。

result=awaitsigner.sendTransaction(tx);awaitresult.wait()

動態 | Gavin Wood 稱波卡實驗網絡Kusama最快在下周切換為 PoS 共識:波卡 Polkadot 聯合創始人 Gavin Wood 宣布,波卡實驗網絡 Kusama 已更新為 PrePoS 版本,節點需要將 Polkadot 升級為最新的 0.6.3 版本,其中將包含最新 1005 版本的 Kusama CC2 網絡。Kusama 在這次升級中新增一個密碼學工具 SECP256k1 曲線,也就是比特幣和以太坊使用的那種曲線,而在這之前 Kusama 僅支持兩類密碼學方案,分別是 Ed25519 和 Ristretto。如果網絡運行順利,Wood 認為 Kusama 有希望在下周切換為 PoS 共識,一開始有 50 個驗證節點,之后會增加為 100 個節點甚至更多。[2019/10/26]

在Optimism上進行部署合約。

Optimism的主要關注點之一是轉移性,從EVM到OVM。因此,我們只需要做一些小的改動,就可以使我們的現有scaffold-eth上的合約在L2上可行--我們只需要在我們的hardhat配置中導入Optimism編譯器17,然后使用Optimismethersvariant來部署我們的合約。

const{l2ethers}=require("hardhat");...contractArtifacts=awaitl2ethers.getContractFactory(contractName,signerProvider);constdeployed=awaitcontractArtifacts.deploy(...contractArgs,overrides);awaitdeployed.deployTransaction.wait()

請注意前面提到的wait()!

有一些細微的差別--我們不能使用內置的Hardhat網絡,必須實例化我們自己的提供者和簽名者。

動態 | Makerdao Q3 動能報告:Dai 月平均復合增長率為 27%:Makerdao 公布第三季度 Dai 數據動能報告,該報告概述了 2019 年 7 月至 10 月時間段內 Dai 采用的關鍵指標。該報道顯示,在過去四個月中,Dai 活動數據增長了三倍多,9 月收發 Dai 的獨立地址超過 66,000 個。上一份 Dai 的數據報告顯示,5 月 Dai 達到歷史最高記錄,即 16,000 個活動地址。此外,另一個重要的采用指標至少擁有一個 Dai 的地址數量顯示,Dai 正在穩定增長,其平均每月復合增長率為 27%。Dai 使用在 8 月份達到峰值,其中 Dai 的使用地址超過 109,000 個,此次高峰是由于 Coinbase Earn 推出的 Dai 活動所致,從活躍的智能合約數據來看,Coinbase 此次活動至少向 Maker Protocol 引入了 76,000 名新用戶,僅在 8 月就有 43,000 人。在目前流通中約 8000 萬 Dai 中,一半以上由私人用戶錢包直接持有,20%的 Dai 存放在去中心化應用中,7%存放在(可識別的)多簽名錢包中,6%托管在加密貨幣交易所中。 值得注意的是,借貸協議 Compound 幾乎存儲了 15%的 Dai,Compound 流動性池擁有將近 1200 萬 Dai,大約是 6 月份的 6 倍。[2019/10/9]

我們不需要對合約做任何修改,盡管可能不一定是這樣,例如對.balance的調用會在編譯時拋出一個錯誤。一般來說,編譯器的錯誤對追蹤問題都很有幫助。

我們確實做了一些改動,在Optimism上出塊時間block.timestamp確實存在,但卻是對L1時間的引用。有兩件動作會更新了L2上的時間:從L1到L2的橋接信息,以及按設定頻率(心跳)定期更新L2時間。

1_dCfswNwv6CKF4PXboiR_Hg

這確實給處理L2上的時間時產生了一些有趣的挑戰,因為獲取的block.timestamp總是過去的。以后還會有更多的思考...

動態 | 昨日ETH新韭菜占比為 39.87%:Searchain.io“新韭菜指數”:昨日ETH新韭菜占比為 39.87%,較前日有所下降,下降了3.13%,與上月同期相比上漲了0.53%。[2018/11/24]

在一個非常實際的問題上,這意味著在本地開發中,你需要定期在本地鏈上進行交易,以保持你的L2時間的更新!

在Optimism的橋接:古英語ERC20

雖然對于很多使用場景來說,使用他人部署的ETH橋和代幣橋可以滿足大部分L1到L2橋接的需求,但我們也想了解如何將自己的L1ERC20轉移到L2,以及如何返回。

幸運的是,Optimism團隊在他們合約包提供了一些參考合約,再加上有用的教程,所以我們能夠把它們拉到我們的分支中,我們將部署三個合約:

ERC20.sol:在L1上,這是真理之源----一個簡單的ERC20實現,有一個mint(value)函數,允許任何人自己鑄造一些代幣。

L1ERC20Gateway.sol:也是在L1上,這允許我們向L2存款,同時鎖定代幣。

L2DepositedERC20.sol:該合約部署在L2上,它也是一個ERC20的實現,當新的代幣從L1存入時,它就將其鑄成新的代幣,當它們被提取時,就將其銷毀。

部署順序很重要,因為L1ERC20Gateway需要知道ERC20地址和L2DepositedERC20地址,然后需要通過init()與L1ERC20Gateway地址激活L2DepositedERC20合約,完成連接。我們部署的合約分別與L1Messenger和L2Messenger進行通信,以進行存款和提款。

部署完成后,我們就可以測試橋接功能了,可以在前端應用中測試,也可以在直接在部署腳本中測試。

l2l1橋接測試

L1ERC20Gateway必須經過批準才能轉移代幣,才能啟動整個事情。

目前有在進行一個想法,希望有一個通用的用于ERC20代幣的橋接,這樣的橋接在生產中可能不需要,但它仍然是一個有益的概念驗證,以方便本地開發。

下一步

顯然,下一步的關鍵是上測試網local-optimism分支包含了去Kovan部署Optimism的配置選項,就像更新App.js中的selectedNetwork,以及從Hardhat部署時的defaultNetwork或--network參數一樣簡單。

但更大的問題是,在Optimism上構建什么!

我們將在未來幾周內發布更多的試運行、概念驗證,甚至可能是成熟的產品。歡迎關注。

如果你還沒有-獲取分支,那就趕快嘗試一下吧。

非常感謝來自Optimism的Ben和Kevin的有益回答,以及__AustinGriffith的幫助、努力和支持!

本翻譯由CellNetwork贊助支持。

來源:https://azfuller20.medium.com/optimism-scaffold-eth-draft-b76d3e6849e8

參考資料

登鏈翻譯計劃:https://github.com/lbc-team/Pioneer

翻譯小組:https://learnblockchain.cn/people/412

Tiny熊:https://learnblockchain.cn/people/15

Optimism的OptimisticRollup:https://optimism.io/

scaffold-eth:https://github.com/austintgriffith/scaffold-eth/tree/local-optimism

代碼在這里:https://github.com/austintgriffith/scaffold-eth/tree/local-optimism

Optimism的Rollup是如何工作的:https://research.paradigm.xyz/optimism

Docker:https://www.docker.com/products/docker-desktop

開箱即用的集成倉庫:https://github.com/ethereum-optimism/optimism-integration

Git子模塊:https://git-scm.com/book/en/v2/Git-Tools-Submodules

Optimism核心合約:https://community.optimism.io/docs/protocol/protocol.html#system-overview

一些需要考慮的差異:https://community.optimism.io/docs/protocol/evm-comparison.html#behavioral-differences

自定義網絡API:https://learnblockchain.cn/article/2223

provider(提供者):https://docs.ethers.io/v5/api/providers/

singer(簽名者):https://docs.ethers.io/v5/api/signer/

預部署地址:https://community.optimism.io/docs/protocol/protocol.html#predeployed-contracts

Optimism編譯器:https://hardhat.org/plugins/eth-optimism-plugins-hardhat-compiler.html

Optimismethersvariant:https://hardhat.org/plugins/eth-optimism-plugins-hardhat-ethers.html

合約包:https://www.npmjs.com/package/@eth-optimism/contracts

有用的教程:https://github.com/ethereum-optimism/optimism-tutorial/tree/deposit-withdrawal

部署腳本:https://github.com/austintgriffith/scaffold-eth/blob/local-optimism/packages/hardhat/scripts/oe-deploy.js

通用的用于ERC20代幣的橋接:https://github.com/ethereum-optimism/contracts/pull/257

獲取分支:https://github.com/austintgriffith/scaffold-eth/tree/local-optimism

AustinGriffith:https://twitter.com/austingriffith

CellNetwork:https://www.cellnetwork.io/?utm_souce=learnblockchain

免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。

本文來源于非小號媒體平臺:

登鏈社區

現已在非小號資訊平臺發布105篇作品,

非小號開放平臺歡迎幣圈作者入駐

入駐指南:

/apply_guide/

本文網址:

/news/9788536.html

免責聲明:

1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險

2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場

上一篇:

盤點零知識證明代表性項目:如何影響和塑造區塊鏈生態系統?

Tags:TIMTIMIPTIMIStime幣上哪個交易所了TimicoinOptimism DogeMISO幣

ICP
SmartKey (SKEY)上線慶典:參與交易競賽,瓜分65,000 SKEY,連接區塊鏈和我們的現實世界!_KEY

為了慶祝SmartKey(SKEY)在庫幣重磅上線,庫幣和SKEY團隊將提供65,000SKEY豪華大獎池.

1900/1/1 0:00:00
Gavin Wood:波卡是創新引擎 而不是平臺_VIN

最近在OutlierVentures播客節目中,主持人JamieBurke對話了波卡創始人GavinWood。PolkaWorld將播客內容進行了翻譯和整理,并分成多篇文章發布,本文是第一篇.

1900/1/1 0:00:00
關于WBF暫時關閉XDC充提的公告_USD

尊敬的用戶: 因節點升級,WBF暫時關閉XDC的充提幣,具體恢復充提時間,將另行公告通知,為您帶來不便,盡請諒解.

1900/1/1 0:00:00
億和論幣:比特幣多空千點來回拉升,以太坊區間震蕩來回擼幣_IMC

比特幣行情分析 復盤一下走勢,這個是很有必要,大家自己沒事也看看,對自己行情的判斷會有幫助,昨日晚間持續震蕩下行,在觸及底部支撐后隨后迅速反彈,最高點直接來到了60128.21位置.

1900/1/1 0:00:00
星球日報 | VanEck比特幣ETF申請已開啟45天審查期;億邦國際宣布完成6nm比特幣礦機芯片設計(3月19日)_區塊鏈

頭條 VanEck比特幣ETF申請已開啟45天審查期美國證券交易委員會公布VanEck比特幣ETF申請19b-4表格,SEC現在有45天的時間批準或拒絕該申請或延長審查期限.

1900/1/1 0:00:00
Gate.io Startup首發項目???Taraxa (TARA)認購結果及上線交易公告_GATE

1.關于首發項目???Taraxa(TARA)認購結果Gate.ioStartup首發項目???Taraxa代幣TARA于2021年03月20日12:00開始認購下單,6小時內下單同等對待.

1900/1/1 0:00:00
ads