Go-Ethereum

golang - alloc 大偉量地址

  • May 16, 2021

我正在為我自己的案例修改 puppeth genesis 嚮導文件。我希望能夠將 Wei 中的預設金額分配給幾個選定的地址..

我在弄清楚如何為這些使用者設置數字格式時遇到了一些麻煩,我想分配 50000000000000000000000000 但不斷收到很多錯誤,數字太大等。有人知道解決方法嗎?原來的功能是這樣的

genesis.Alloc[*addy] = core.GenesisAccount{ Balance: new(big.Int).Lsh(big.NewInt(1), 256-7), // 2^256 / 128 (allow many pre-funds without balance overflows) }

這是設置大整數的範例:

package main

import (
   "fmt"
   "math/big"
)

func main() {
   value := new(big.Int)
   value.SetString("50000000000000000000000000", 10)
   fmt.Println(value) // 50000000000000000000000000

   // your example generates the incorrect value
   fmt.Println(new(big.Int).Lsh(big.NewInt(1), 256-7)) // 904625697166532776746648320380374280103671755200316906558262375061821325312
}

puppeth根據邏輯為所有帳戶生成靜態餘額。為了滿足您的需求,您需要在生成後手動更改 genesispuppeth文件

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