以太坊入門介紹

在之前比特幣本質(zhì)其實(shí)是UTXO的文章中介紹了比特幣的不是一個(gè)基于賬戶的概念,而且UTXO。但是在以太坊中,就是基于賬戶的概念了。

什么是以太坊

  • 以太坊是一個(gè)開(kāi)源的有智能合約功能的公共區(qū)塊鏈平臺(tái)。
  • 通過(guò)其專用加密貨幣以太幣提供去中心化的虛擬機(jī)(EVM)來(lái)處理點(diǎn)對(duì)點(diǎn)合約。
  • 擁有圖靈完備的計(jì)算機(jī)語(yǔ)言。

和比特幣最大的區(qū)別是什么?
以太坊是基于賬戶,一種是外部賬戶(私鑰控制),另外一種是合約賬戶(合約代碼控制),即智能合約被看成一個(gè)特殊賬戶,用戶可以對(duì)該賬戶進(jìn)行交易,實(shí)現(xiàn)對(duì)該賬戶中的屬性和方法的調(diào)用,而比特幣是基于UTXO,無(wú)賬戶概念。

如下為以太坊框架圖:

智能合約

智能合約并不是什么新的東西,早在1995年律學(xué)者尼克·薩博提出:一個(gè)智能合約是一套以數(shù)字形式定義的承諾(promises) ,包括合約參與方可以在上面執(zhí)行這些承諾的協(xié)議。

例如信用卡自動(dòng)還款功能,其實(shí)也是一個(gè)智能合約,得到用戶的授權(quán)后在指定時(shí)間自動(dòng)執(zhí)行,但是這是中心化的。而區(qū)塊鏈上智能合約一旦寫在鏈上就不能被更改,而且代碼是開(kāi)源的,實(shí)現(xiàn)去中心化。

區(qū)塊鏈中智能合約指是合約賬戶中的代碼,任何人都可以編寫一份合約代碼,并且部署到以太坊。而部署和執(zhí)行智能合約的方法,需要向網(wǎng)絡(luò)支付gas費(fèi)用。

gas

gas可以理解為交易的手續(xù)費(fèi),礦工可以根據(jù)gas的大小選擇打包的交易,而每筆交易都會(huì)包含一個(gè)gas limit(startGas),表示這筆交易最多接受的gas費(fèi)。因?yàn)間as消耗只是一個(gè)大致估算,許多用戶會(huì)支付超額的gas來(lái)保證交易被快速打包,超過(guò)gas limit的部分會(huì)被退回。

  • gas的作用:
    它確保一個(gè)交易支付了適當(dāng)?shù)馁M(fèi)用給以太網(wǎng)絡(luò)。 執(zhí)行的每個(gè)操作(或合同執(zhí)行)交易都要求支付其相應(yīng)的費(fèi)用,這樣才能確保網(wǎng)絡(luò)不會(huì)因?yàn)檫M(jìn)行大量密集的工作而陷入僵局。
  • 為什么比特幣沒(méi)有g(shù)as:
    這是一個(gè)不同于比特幣交易費(fèi)用的策略,比特幣交易費(fèi)用僅基于交易的千字節(jié)大小。 由于Ethereum允許運(yùn)行任意復(fù)雜的計(jì)算機(jī)代碼,所以很短的代碼實(shí)際上可以導(dǎo)致大量的計(jì)算工作正在完成。

gas費(fèi)用 = gasUsed(該交易消耗的gas總數(shù)量) + gasPrice(該交易中單位gas的價(jià)格,一般gwei為單位)

區(qū)塊的gas limit則是單個(gè)區(qū)塊允許最多的總量,用這個(gè)來(lái)決定單個(gè)區(qū)塊能打包多少筆交易。比如有5筆交易的gas limit分別是10、20、30、40、50,而區(qū)塊的gas limit 是100,則礦工可以選擇10、20、30、40打包,也可以選擇10、40、50打包。如果嘗試超過(guò)區(qū)塊的gas limit打包,則會(huì)被網(wǎng)絡(luò)拒絕,提示“交易超過(guò)區(qū)塊gas limit”。

一個(gè)區(qū)塊的gas limit為4712357 gas,則表示一個(gè)區(qū)塊大約打包224筆交易(gas limit 為 21000)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容