Erstellen Sie vorfinanzierte Konten auf einer Test-Blockchain

Ich möchte eine Test-Blockchain erstellen, um herumzuspielen.
Wenn ich test-rpc versuche, sind bereits zehn Konten erstellt, aber kein Guthaben – wie kann ich Guthaben generieren? kann ich eine genesis.json importieren?

Mein zweiter Ansatz ist zu verwenden

geth init '/my-path/genesis.json' 

Ich habe einige Konten mit https://iancoleman.io/bip39/ erstellt und einige Gelder mit alloc in genesis.json hinzugefügt:

{
  "config": {
        "chainId": 0,
        "homesteadBlock": 0,
        "eip155Block": 0,
        "eip158Block": 0
    },
  "alloc": {
  "0xFf0333b3Cfa24652646eA24fe98a54f0f1001849": {"balance": "111111111"},
  "0xFEfaf15eEc2D3F06958043acA3aF3766745358aB": {"balance": "111111111"},
  "0xFf0333b3Cfa24652646eA24fe98a54f0f1001849": {"balance": "78111111111"},
  "0xb0A7C9Fa07Be78cBf2F3a5b1A87Cd87BBA72A1Ed": {"balance": "977111111111"},
  "0x4eD82D45102cB38cf8c7b4261675b2FEB577063e": {"balance": "324111111111"},
  "0x46347159a3497d3AC1948D44294268C1E3a3A321": {"balance": "2345234111111111"},
  "0x8a58Cc8EeACeFA52f6f70C4F116F57291438F2dB": {"balance": "224111111111"},
  "0x1a4Ec59De4d833e06dfA1700E8611D4B3a4B4EBd": {"balance": "2424111111111"},
  "0x124BC9eBd0447F5e594F871691415a212A5EcA63": {"balance": "2222244222222222"}
},
  "coinbase"   : "0x0000000000000000000000000000000000000000",
  "difficulty" : "0x20000",
  "extraData"  : "",
  "gasLimit"   : "0x2fefd8",
  "nonce"      : "0x000005678000042",
  "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "timestamp"  : "0x00"
}

Das Problem ist, dass ich diese Konten mit privaten Schlüsseln manuell zum Geth "Wallet" hinzufügen muss.
Was wäre eine gute automatische Lösung für die Wallet-Erstellung in Geth, damit ich sofort damit beginnen kann, Ether in meiner neuen Testumgebung zu bewegen?

Wahrscheinlich können Sie Konten im Voraus mit erstellengeth --datadir "your_directory" account new

Antworten (1)

Sie können die Konten mit Geth erstellen, bevor Sie die Kette mit dem Genesis-Block initialisieren.

geth --datadir <DATADIR> account new

Die Keystores werden in gespeichert<DATADIR>/keystore

Du würdest:

  1. Konten erstellen
  2. Fügen Sie die Konten zu genesis.json hinzu
  3. Blockchain initieren/starten

Wenn Sie die Blockchain von Grund auf neu starten müssen, können Sie den Keystore-Ordner in Ihrer behalten <DATADIR>, sodass Sie das Konto nicht erneut erstellen müssen.