Private-Blockchain
如何在 Parity 鏈規範中指定 eip100?
在 Parity 鏈規範文件中,如何包含 EIP100?
我在這裡的預設文件中沒有看到它要複製: https ://github.com/paritytech/parity/blob/master/ethcore/res/ethereum/foundation.json
我想我只是添加:
“eip100Transition”:
還是eip100dTransition?帶“d”?
有人可以確認嗎?
似乎是Parity 中的eip100bTransition。有關在程式碼中實現計算的位置,請參見此處。
parity/ethcore/src/ethereum/ethash.rs第 369 行:
let (increment_divisor, threshold) = if header.number() < self.ethash_params.eip100b_transition { (self.ethash_params.difficulty_increment_divisor, 1) } else if parent_has_uncles { (self.ethash_params.metropolis_difficulty_increment_divisor, 2) } else { (self.ethash_params.metropolis_difficulty_increment_divisor, 1) };
對於公共網路,
eipxxx
聲明採用以下形式(例如):"eip140Transition": 4370000, "eip211Transition": 4370000, "eip214Transition": 4370000, "eip658Transition": 4370000,
也就是說,您聲明轉換和發生轉換的塊。(區塊 4370000 相當於拜占庭硬分叉。)
然後在程式碼中,您可以
eipxxx
在條件中使用來執行轉換後將更改的程式碼路徑(通過與目前塊編號進行比較)。回到
eip100Transition
。首先,我不清楚EIP-100 的程式碼實際上是否已經完成/送出。eip100Transition
在 Parity 或 Geth 程式碼庫中的任何地方都沒有使用。其次,在一個沒有公網硬分叉的私有網路中,不需要包含 EIP 轉換。您可以只定義程式碼的行為方式您希望它的行為方式。另外,我相信將
eipxxx
條目設置為0
將使您的鏈像過渡已經發生一樣工作。(即轉換“發生”在塊 0,因此所有後續塊都在轉換之後考慮。)