Hogyan lehet átutalni az Ethereum hálózaton a GETH CLI használatával

Az előző cikkemben megtanultad, hogyan állíthatsz be teljesen szinkronizált blokklánc-csomópontot 10 perc alatt. Itt az ideje megtanulni, hogyan lehet tranzakciót végrehajtani az Ethereum hálózaton a GETH CLI használatával.

Ha ugyanazon az oldalon szeretne lenni, akkor először hajtsa végre az előző cikk összes lépését.

Kész? Tökéletes.

Ezen a ponton tudod:

  • hogyan lehet futtatni egy teljesen szinkronizált Ethereum blokklánc csomópontot
  • hogyan kell rögzíteni GETH console
  • hogyan lehet lekérdezni egy Ethereum-számla egyenlegét
geth attach ipc:/home/enchanter/.gophersland_ethereum_r1/geth.ipc 
eth.getBalance("0xceee57f2b700c2f37d1476a7974965e149fce2d4")
> 7500000000000000000

Azt hiszem, gondolom, de várjon egy percet Lukas ... miért 7.5ETHjelenik meg, mint 7500000000000000000a Geth console?

Ether vs Wei

Az Ethereum virtuális gép nem támogatja a tizedesjegyeket vagy az úszókat. Nyilvánvaló, hogy a pénzügyi számítások egész számban könnyebbek.

Ezért az 1 ETH töredékének elküldéséhez az Ethereum alapítvány úgy döntött, hogy létrehoz egy saját metrikus rendszert, ahol a legkisebb egység 1 Wei, és 1 Ether 1e18 Wei.

De semmi gond, vannak olyan eszközök, amelyek megkönnyíthetik az életedet. Például nagyon ajánlom az Ether to Wei online konvertert:

//etherconverter.online

15 dollár értékű éter elküldéséhez, ahol 1 ETH == 200 dollár (régi szép idők ...), 0,0740 ETH-t küldene egy tranzakcióval, amely a Wei-ben 74000000000000000 legyen.

Online éter-wei konverter:

Az Ethereum metrikus rendszer áttekintése:

A gyakorlat elsajátítja. Küldjünk 74000000000000000 Wei-t (15 USD) egy másik számlára.

Ether küldése egy másik számlára a GETH CLI használatával

Az egyik terminálban ne felejtsen el futtatni egy teljesen szinkronizált blokklánc-csomópontot:

geth --rinkeby --datadir=~/.gophersland_ethereum_r1 --port=30304 --cache=2048 --rpc --rpcport=8546 --rpcapi=eth,web3,net,personal --syncmode=fast

Egy másik terminálban létrehozzuk a második Ethereum számlánkat, pontosan úgy, mint az 1. részben.

ls -la ~/.gophersland_ethereum_r1/keystore/> drwx------ 2 enchanter enchanter 4096 sep 24 15:36 .> drwx------ 4 enchanter enchanter 4096 sep 24 15:26 ..> -rw------- 1 enchanter enchanter 491 sep 24 15:36 
UTC--2018-09-24T13-36-43.069452577Z--ceee57f2b700c2f37d1476a7974965e149fce2d4geth --datadir=~/.gophersland_ethereum_r1 account new> INFO [09-24|15:36:33.566] Maximum peer count ETH=25 LES=0 total=25> Your new account is locked with a password. Please give a password. Do not forget this password.
> Passphrase: > Repeat passphrase: > Address: {7aa4a14286a25e3a275d7a122c23dc3c107a636a}ls -la ~/.gophersland_ethereum_r1/keystore/> drwx------ 2 enchanter enchanter 4096 oct 25 20:14 .> drwx------ 4 enchanter enchanter 4096 oct 25 19:48 ..> -rw------- 1 enchanter enchanter 491 sep 24 15:36 
UTC--2018-09-24T13-36-43.069452577Z--ceee57f2b700c2f37d1476a7974965e149fce2d4

Csatlakoztassuk a Geth konzolt a jelenleg futó blokklánc csomóponthoz, ahogyan azt az előző cikkben tettük, hogy a eth.sendTransactionparancs végrehajtásával 15 dollárt utalhassunk erre az újonnan létrehozott fiókra .

geth attach ipc:/home/enchanter/.gophersland_ethereum_r1/geth.ipc 
eth.sendTransaction({from: "0xceee57f2b700c2f37d1476a7974965e149fce2d4",to: "0x7aa4a14286a25e3a275d7a122c23dc3c107a636a", value: "74000000000000000"})

Hiba: hitelesítés szükséges: jelszó vagy feloldás.

Hibát kellene kapnia. Az Ether küldése ugyanis „tranzakció”, és egy tranzakció megváltoztatja az állapotát, gázba kerül és pénzeket költ. Ami azt jelenti, hogy a kulcstárolóban tárolt privát kulcsunkkal kell aláírni . A kulcs visszafejtéséhez meg kell adnunk egy jelszót, vagy más szavakkal fel kell oldanunk a fiók zárolását.

Hajtsa végre a következő parancsot a fiókjának feloldásához a következő 60-as évekre, és hajtsa végre újra a sendTransaction parancsot.

web3.personal.unlockAccount(web3.personal.listAccounts[0], null, 60) 
eth.sendTransaction({from: "0xceee57f2b700c2f37d1476a7974965e149fce2d4", to: "0x7aa4a14286a25e3a275d7a122c23dc3c107a636a", value: "74000000000000000"})

A jelszót null argumentum helyett második argumentumként is átadhattuk volna. De ez a módszer biztonságosabb, mivel a jelszó csak pufferben van, és nem tárolódik semmilyen naplóban, és nem látható a képernyőn.

Ezúttal a parancs sikeres volt, és a Tranzakció kivonatát visszaadták! Ó igen!

Mivel csatlakozunk a Rinkeby hálózathoz, kihasználhatjuk a Rinkeby GUI explorer előnyeit a tranzakció állapotának, elköltött gáz, gázár stb.

  1. Nyissa meg a felfedezőt
  2. Illessze be a tranzakciós nyugta kivonatát a keresősávba
  3. Kész, 21.000 Gázt költöttünk el (a pénzküldés szabványa), és a Tranzakció sikerült!

Most megkérdezheti mindkét fiók egyenlegét, és láthatja a megváltozott állapotot:

eth.getBalance("0xceee57f2b700c2f37d1476a7974965e149fce2d4") > 7425979000000000000 
eth.getBalance("0x7aa4a14286a25e3a275d7a122c23dc3c107a636a") > 74000000000000000

Úgy működik, mint a karikacsapás.

Gratulálunk! Te:

  • megtanulta a különbséget Ether és Wei között, és hogyan lehet ezeket átalakítani
  • benyújtotta első tranzakcióját a globális Ethereum teszthálózaton, a Rinkeby-n

You can continue expanding your blockchain skills by building one from scratch in Go!"