Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 11358|Svar: 0

Konti og basisenheder for Ethereum

[Kopier link]
Opslået på 24/02/2018 11.18.33 | | |
I Ethereum-systemet består tilstanden af objekter kaldet "konti" (hver konto består af en 20-byte adresse) og tilstandsovergange, der overfører værdi og information mellem to konti.
En Ethereum-konto består af fire dele:
Et tilfældigt tal, der bestemmer en tæller, som kun kan behandles én gang pr. transaktion
Den aktuelle Ethereum-saldo på kontoen
Kontoens kontraktkode, hvis der er nogen
Lagring af kontoen (tom som standard)
Kort sagt består hver Ethereum-konto af et par offentlige og private nøgler.
Den offentlige nøgle kan forstås som kontoadressen, som kan tilgås af enhver anden konto
En privat nøgle kan forstås som en krypteret adgangskode, og dette par af offentlige og private nøgler udgør tilsammen en unikt identificeret Ethereum-konto.
For eksempel, i den første Ethereum-konto eth.accounts[0], vi etablerede i det forrige afsnit, er adressen 0xbcf5b841303bc08026ce2d3b8f83498ffe42c12f den offentlige nøgle, og den krypterede adgangskode er den private nøgle.
Øg konti
Vi kan indtaste kommandoen personal.newAccount("123") for at oprette en ny konto (bemærk at 123 kan ændres til en hvilken som helst anden adgangskode)

Når Ethereums private kæde miner, vil den udvundne ether blive indsat på den første Ethereum-konto, det vil sige eth.accounts[0], og eth.accounts[1] vil som standard ikke have ether. På nuværende tidspunkt kan vi bruge følgende kommando til at tjekke Ethereum-saldoen i eth.accounts[0].


Sådan konverterer du Ethereum mellem to konti
Som nævnt tidligere er den offentlige nøgle (adresse) for hver konto kernen i alle Ethereum-kontooperationer, men adressestrengen er for lang, så vi bruger acc0/acc1 til at repræsentere konti[0] og [1] henholdsvis, og sætter 0,01 ETH til at blive overført


På nuværende tidspunkt kan vi bruge eth.sendTransaction til at overføre 0,01 ETH fra acc0 til acc1.



En Ethereum-beskyttelsesmekanisme, der automatisk låser konti med jævne mellemrum, hvorefter enhver konvertering af ETH mellem konti vil blive afvist, medmindre kontoen låses op.
På dette tidspunkt skal vi udføre personal.unlockAccount(acc0) og indtaste adgangskoden for at låse acc0 op.


På dette tidspunkt genudfører vi kommandoen eth.sendTransaction({from: acc0, to: acc1, value: amount}), og resultatet er som følger:


Vi kan se, at acc1 på dette tidspunkt har en værdi på 100000000000000000000000000 i stedet for den tidligere 0. Men hvorfor er værdien så stor, når vi åbenlyst vil give 0,01 ether-mønter? Faktisk er det korrekt, vi behøver kun indtaste kommandoen web3.fromWei(10000000000000000000, "ether") for at vide det.

Grundenheden for Ether
Den mindste enhed af Ether-mønt er Wei, som også er standardenheden i kommandolinjen, og derefter én enhed for hver 1000, i den rækkefølge

Kwei (1000 Wei)
mwei (1000 KWei)
Gwei (1000 mwei)
Szabo (1000 Gwei)
Finney (1000 szabo)
Ether (1000 Finney)

Kort sagt er det 1 ETH = 1000000000000000000000000 Wei (derfor overførte vi 0,01 ETH ved den tidligere stop, men resultatet var meget langt)
Hvordan man konverterer mellem ether og wei


Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com