• <option id="cacee"><noscript id="cacee"></noscript></option>
  • <table id="cacee"><noscript id="cacee"></noscript></table>
  • <td id="cacee"></td>
  • <option id="cacee"></option>
  • <table id="cacee"></table>
  • <option id="cacee"><option id="cacee"></option></option>
  • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
    <option id="cacee"><option id="cacee"></option></option>
     找回密碼
     立即注冊

    掃一掃,登錄網站

    首頁 百科 查看內容
    • 4157
    • 1
    • 分享到

    導致以太坊延遲硬分叉的EIP 1283到底是什么?

    2019-1-28 10:16

    來源: DVPNET

    EIP的全稱是Ethereum Improvement Proposals(以太坊改進提案),任何人都可以上去提一些對以太坊的改進提案,不過必須得嚴謹、正式,以太坊君士坦丁堡這次漏洞就是由一個EIP引起的,這個EIP的編號是1283。EIP 1283使以太坊虛擬機使執行智能合約的引擎更高效,并降低在以太坊上運行智能合約的成本。

    該提案是針對SSTORE操作碼的,該操作碼主要用于合約持久化存儲數據,EIP1283為SSTORE操作碼設計了更加合理的gas收費方式。

    詳情地址如下:

    https://eips.ethereum.org/EIPS/eip-1283

    為什么需要EIP 1283?

    EIP-1283提案由Wei Tang(@sorpass)于2018年8月1日創建,作為EIP-1087和EIP-1153的替代方案。EIP-1087由Nick Johnson創建,主要是改變EVM SSTORE運行gas費用收取方式,減少過多的gas費用成本;EIP-1153由Alexey Akhunov創建,相比EIP-1087更加便宜,gas費用計算規則更加簡單。EIP-1283提出了在SSTORE上進行gas計量的方案,為數據存儲的變化引進更加合理公平的定價方案。

    其中定義了三個概念:

    存儲槽的原始值(original):在當前事務發生回滾(revert)后會存在的值叫原始值。
    存儲槽的當前值(current):在使用SSTORE操作碼之前存在的值叫當前值。
    存儲槽的新值(new):在使用SSTORE操作碼之后存在的值叫新值。

    然后以這三個概念為基礎,設計了如下處理邏輯:

    導致以太坊延遲硬分叉的EIP


    如果當前值等于新值(這是無操作),則扣除200 gas。

    如果當前值不等于新值

    如果原始值等于當前值(此存儲槽未被當前執行上下文更改)

    如果原始值為 0,則扣除20000 gas。

    否則,扣除5000 gas。如果新值為 0,則在退款計數器中增加15000 gas(退款計數器中記錄的gas會退還給用戶)。

    如果原始值不等于當前值(代表此存儲槽”臟”了),則扣除200 gas。

    如果原始值不為0

    如果當前值為 0(也表示新值不為0),請從退款計數器中減少15000 gas。

    如果新值為 0(也表示當前值不為0),請向退款計數器中增加15000 gas。

    如果原始值等于新值(此存儲槽已重置)

    如果原始值為 0,則將退款計數器中增加19800 gas。

    否則,則在退款計數器中增加4800 gas。

    根據如上的邏輯可以發現,當使用SSTORE操作碼的時候如果不改變任何值的時候,只消耗 200 gas。如果改變了值最終又重置為0的話也只消耗20000 + 200 – 19800 = 400 gas。

    而在之前EIP 1087的邏輯中如果使用SSTORE操作碼改變了值最終又重置為0的話需要消耗20000 + 5000 – 10000 = 15000 gas。

    顯然EIP 1283的處理邏輯比EIP 1087更加合理,也更加便宜,但是問題就在這里。

    版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。
    標簽: EIP1283 以太坊
    相關新聞
    發表評論

    請先 注冊/登錄 后參與評論

      回頂部
    • <option id="cacee"><noscript id="cacee"></noscript></option>
    • <table id="cacee"><noscript id="cacee"></noscript></table>
    • <td id="cacee"></td>
    • <option id="cacee"></option>
    • <table id="cacee"></table>
    • <option id="cacee"><option id="cacee"></option></option>
    • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
      <option id="cacee"><option id="cacee"></option></option>
      妖精视频