百科知識

當前位置: 首頁 > 百科知識

百科知識

解讀:什么是gas費用?為什么需要gas?

2024-10-18 01:29:49 來源:互聯(lián)網(wǎng)

Gas是我們在Filecoin中經(jīng)常聽到的詞,Gas譯為“汽油費”,Gas最初是在以太坊區(qū)塊鏈上實現(xiàn)的,用于衡量消息消耗的計算和存儲資源。

什么是gas?

Gas是我們在Filecoin中經(jīng)常聽到的詞,Gas譯為“汽油費”,Gas最初是在以太坊區(qū)塊鏈上實現(xiàn)的,用于衡量消息消耗的計算和存儲資源。

從歷史上看,在其他區(qū)塊鏈中,節(jié)點參與者以本機貨幣指定GasFee,然后根據(jù)消息消耗的天然氣量向生產(chǎn)節(jié)點參與者的區(qū)塊支付優(yōu)先費用。

所以,這個名字本身并不是偶然選定的。gas其實類似于汽油,后者作為汽車的能量保證汽車可以正常行駛,以太坊網(wǎng)絡上的gas為交易行為進行“加油”,并允許用戶執(zhí)行不同的操作。

在以太坊區(qū)塊鏈上的每一個操作,或者準確地說在以太坊虛擬機(EVM)上的每一個操作都有一個相對應的gas成本。例如:將兩個數(shù)字相加要花費3個gas;獲取賬戶余額會花費400個gas;發(fā)送一筆交易花費21000個gas。

智能合約通常包括多個操作,這些操作加起來甚至可以花費數(shù)十萬gas。

有趣的是,gas價格本身并不能告訴我們在某筆交易中需要支付多少錢。要計算交易費用,我們必須將gas的乘以gas價格。

gas的價格單位為gwei,,gwei的單位比ether要小,1 gwei等于0.000000001 ETH。我們可以把它們之間的關系看成是美分和美元。

例如,假設我們想發(fā)送一筆簡單的以太坊交易,如果ETH的價格為1800美元。大多數(shù)流行的以太坊錢包(如Metamask)會估算必要的gas價格,并允許我們在快速、中等和慢速交易確認速度之間進行選擇。讓我們假設如果我們想在一分鐘內(nèi)確認我們的交易,錢包估計gas價格將設置為100gwei。

我們現(xiàn)在可以快速計算出,這樣一筆交易我們需要支付3.78美元。我們將發(fā)送一筆交易的gas成本(2.1萬gas)和gas價格(100gwei)相乘,就等于2100000 gwei,也就是0.0021 ETH。在ETH價格為1800美元時,這筆交易的手續(xù)費是3.78美元。

我們?yōu)槭裁葱枰猤as

前段時間報道filecoin產(chǎn)生高額gas費的報道相信大家應該有所關注,為了更好的解釋gas,我們需要首先理解為什么gas會存在。

任意的一條消息都需被礦工打包上鏈和銷毀,存儲礦工自己會設定一個標準的GAS費用的價格。GAS費會由高到低進行標價,標價低的消息有可能不會被打包,GAS費用高的消息將會被優(yōu)先打包,所以GAS費用是一個市場行為。

當消息出現(xiàn)擁堵的時候,GAS費用會水漲船高,如果不及時處理擁堵的消息就會出現(xiàn)掉算力的情況,如果連續(xù)2天算力沒有恢復,那就會受到非常嚴厲的懲罰。

如果沒有gas,用戶就可以執(zhí)行一個永遠不會停止的程序,其中的原因可能是代碼有問題,也可能是有人作惡。為了防止這種情況發(fā)生,以太坊引入了與每個操作相關的gas成本,這將防止程序處于永遠運行的狀態(tài),最終使整個網(wǎng)絡陷入停滯狀態(tài)。

除了gas價格,每筆交易也有一個gas限制,它必須等于或高于成功執(zhí)行特定交易所需的預期gas數(shù)量。

以太坊虛擬機在執(zhí)行事務中的每個操作之前,會檢查是否有足夠的剩余空間用于該操作。如果剩余的gas不夠,則使用“out of gas”來還原整個交易,并回滾所有狀態(tài)。即使交易失敗,用戶仍將為礦工已完成的工作量支付交易費用。這也是為了避免人們發(fā)起對網(wǎng)絡的惡意攻擊。

如果交易消耗的gas比最初預期的少,那么剩余的gas被轉(zhuǎn)換為ETH并退還給發(fā)送者。

同樣重要的是,以太坊上的所有操作都要有正確的gas成本;否則,它可能成為另一個攻擊目標。其中一起攻擊發(fā)生在2016年,這導致以太坊網(wǎng)絡的硬分叉,最終系統(tǒng)重新對某些簡單的操作進行了定價。

來源:金色財經(jīng)

上一篇:英鎊人民幣匯率今日匯率是多少 英鎊兌人民幣匯率最新(11/23)
下一篇:什么是22K金

熱門文章