Ethereum-järjestelmässä tila koostuu objekteista, joita kutsutaan "tileille" (jokainen tili koostuu 20 tavun osoitteesta) ja tilasiirtymistä, jotka siirtävät arvoa ja tietoa kahden tilin välillä. Ethereum-tili koostuu neljästä osasta: Satunnaisluku, joka määrittää laskurin, jota voidaan käsitellä vain kerran per tapahtuma Tilin nykyinen Ethereum-saldo Tilin sopimuskoodi, jos sellainen on Tilin tallennustila (oletuksena tyhjä) Yksinkertaisesti sanottuna jokainen Ethereum-tili koostuu kahdesta julkisesta ja yksityisestä avaimesta. Julkinen avain voidaan ymmärtää tilin osoitteena, johon voi päästä millä tahansa muulla tilillä Yksityistä avainta voidaan ymmärtää salatuksi salasanaksi, ja nämä julkiset ja yksityiset avaimet muodostavat yhdessä yksilöllisesti tunnistetun Ethereum-tilin. Esimerkiksi ensimmäisessä Ethereum-tilissä eth.accounts[0], jonka määritimme edellisessä osiossa, osoite 0xbcf5b841303bc08026ce2d3b8f83498ffe42c12f on julkinen avain ja salattu salasana on yksityinen avain. Lisätilejä Voimme syöttää komennon personal.newAccount("123") luodaksemme uuden tilin (huomaa, että 123 voidaan vaihtaa mihin tahansa muuhun salasanaan)
Kun Ethereumin yksityinen ketju louhii, louhittu eetteri talletetaan ensimmäiselle Ethereum-tilille, eli eth.accounts[0], ja eth.accounts[1] ei automaattisesti käytä eetteriä. Tällä hetkellä voimme käyttää seuraavaa komentoa tarkistaaksemme Ethereum-saldon eth.accountsissa[0].
Kuinka muuntaa Ethereum kahden tilin välillä Kuten aiemmin mainittiin, jokaisen tilin julkinen avain (osoite) on kaikkien Ethereum-tilitoimintojen ydin, mutta osoitemerkkijono on liian pitkä, joten käytämme acc0/acc1 tilejä[0] ja [1] ja asetamme siirrettäväksi 0,01 ETH:n
Tällä hetkellä voimme käyttää eth.sendTransactionia siirtääksemme 0,01 ETH acc0:sta acc1:een.
Ethereum-suojausmekanismi, joka lukitsee tilit automaattisesti silloin tällöin, jolloin kaikki ETH:n muunnos tilien välillä hylätään, ellei tiliä avata. Tällä hetkellä meidän täytyy suorittaa personal.unlockAccount(acc0) ja syöttää salasana acc0:n avaamiseksi.
Tässä vaiheessa suoritamme uudelleen komennon eth.sendTransaction({from: acc0, to: acc1, value: amount}), ja tulos on seuraava:
Näemme, että tällä hetkellä acc1:n arvo on 100000000000000000000000000000000, kun aiempi nolla on arvo. Mutta miksi arvo on niin suuri, kun haluamme selvästi antaa 0,01 eetterikolikkoa? Itse asiassa se on totta, riittää, että syötämme komento web3.fromWei(10000000000000000000000000, "ether") tietääksemme.
Eetterin perusyksikkö
Pienin yksikkö Ether-kolikossa on Wei, joka on myös komentorivin oletusyksikkö, ja sitten yksi yksikkö jokaista 1000:ta kohden, tässä järjestyksessä
kwei (1000 Wei) mwei (1000 KWei) Gwei (1000 MWEI) szabo (1000 gwei) Finney (1000 szabo) Ether (1000 Finney) Yksinkertaisesti sanottuna, se on 1 ETH = 10000000000000000000000 Wei (siksi siirsimme 0,01 ETH edellisessä pysäytyksessä, mutta tulos oli hyvin pitkä) Kuinka muuntaa eetterin ja wein välillä
|