Mining

如何驗證礦工使用的氣體?

  • October 4, 2016

使用的氣體越多,礦工獲得的利潤就越多。所以礦工可以簡單地說交易用完了gas,甚至沒有執行交易和更新狀態。

JITVM 優化了字節碼,因此執行交易所需的氣體更少。但這對礦工有什麼好處?較少的操作將導致較少的利潤。

另一個節點如何驗證使用的氣體是否正確?

正如您所描述的,礦工很可能會作弊。但是,當這個作弊礦工將其區塊發送到網路時,正常節點將驗證該區塊。特別是他們將重新執行這些操作。如果他們發現欺詐,節點將拒絕該塊。

JITVM、AFAIK 只是為了減輕在 EVM 上執行程式碼的負擔。這並不意味著重新定價操作碼的 gas 成本。

EVM 是否在其主循環中檢查執行合約可能消耗多少氣體:

EVM 的內部結構非常簡單;它有一個執行循環,它將嘗試在目前程序計數器(簡稱 PC)處執行指令。在這個循環中,為每條指令計算 Gas,必要時擴展記憶體,如果前導碼成功則執行指令

來源:https ://blog.ethereum.org/2016/06/02/go-ethereums-jit-evm/

引用自:https://ethereum.stackexchange.com/questions/8999