A l’anterior Tutorial Ethereum sobre tòfona , heu après sobre Truffle Suite i heu desenvolupat un Ethereum DApp. Per desenvolupar una aplicació ethereum complexa, voldreu executar-la en una xarxa privada per veure com funciona abans de desplegar-la. Per tant, en aquest tutorial de la xarxa privada Ethereum, aprendreu a crear un fitxer Xarxa privada Ethereum i com fer una transacció entre dos comptes.
T’interessa el desenvolupament d’Ethereum? Mireu el Live .
Tutorial sobre xarxa privada Ethereum
Aquests són els temes que tractaré en aquest tutorial:
- Què és la xarxa privada Ethereum?
- Per què s’utilitza la xarxa privada Ethereum?
- Funcions de la xarxa privada Ethereum
- Instal·lació d’Ethereum a Ubuntu
- Demostració: creant una xarxa privada Ethereum i realitzant una transacció
Què és la xarxa privada Ethereum?
Una xarxa privada Ethereum és una cadena de blocs totalment privada que s’aïlla de la xarxa principal Ethereum. La xarxa privada Ethereum és creada principalment per organitzacions per restringir els permisos de lectura de Blockchain. Només els nodes amb els permisos adequats podran accedir a aquest Blockchain. Els nodes d’aquesta xarxa no estan connectats als nodes principals de la xarxa i el seu abast es limita només a aquesta cadena de blocs privada.
Per què s’utilitza la xarxa privada Ethereum?
Les xarxes privades d’Ethereum les utilitzen les organitzacions per emmagatzemar dades privades que no haurien de ser visibles per a persones alienes a la seva organització. Ethereum Private Network també s’utilitza per provar i experimentar el Blockchain si algú no vol utilitzar les xarxes de proves públiques.
Funcions de la xarxa privada Ethereum
Com es va esmentar a la secció anterior, Ethereum Private Network s’utilitza amb finalitats de prova. Però, per què algú es molestaria en crear una nova xarxa quan ja hi ha disponibles xarxes de proves públiques? Bé, Ethereum Private Network té el seu propi conjunt de funcions, tal i com es mostra a continuació:
- Actua com a base de dades distribuïda
- El blockchain de la xarxa privada Ethereum pot contenir dades privades (perquè la xarxa no és pública)
- L’accés es pot basar en permisos
- Fer transaccions pot ser gratuït
- Els comptes es poden assignar amb ètersper nosaltres mateixos que ni tan sols requereix comprar èters virtuals
Seguim endavant, anem a la part pràctica d’aquest tutorial d’Ethereum Private Network.
Instal·lació d’Ethereum a Ubuntu
Per crear una xarxa privada Ethereum, primer hem d’instal·lar Ethereum al nostre sistema. En aquesta secció del tutorial de la xarxa privada Ethereum, aprendreu a instal·lar Ethereum a Ubuntu.
com imprimir matriu en php
Per instal·lar Ethereum, executeu les ordres següents en un terminal:
$ sudo apt-get install software-properties-common $ sudo add-apt-repository -y ppa: ethereum / ethereum $ sudo apt-get update $ sudo apt-get install ethereum
Fet! Això instal·larà Ethereum al vostre sistema.
Comencem per la creació de xarxes privades.
Demostració: creant una xarxa privada Ethereum i realitzant una transacció
En aquest tutorial sobre la xarxa privada d’Ethereum, enviarem ètersd'un compte a un altre i, per tant, necessitem comptes. Vegem ara com crear comptes per al nostre Blockchain.
Creació de comptes per a la xarxa privada Ethereum
Abans de crear comptes nous, creem un directori nou per al nostre lloc de treball. Consulteu les ordres següents per fer-ho:
$ mkdir private-ethereum $ cd private-ethereum
Per fer una transacció, necessitem almenys dos comptes: un receptor i un remitent.
Per crear dos comptes, executeu l'ordre següent dues vegades:
$ geth --datadir ./datadir compte nou
Introduïu el fitxer frase de contrasenya per a cada compte quan se li demani. No oblideu aquesta frase de pas.
Quan aquestes ordres s'executin correctament, es crearan dos comptes i l'adreça del compte es mostrarà a la pantalla.
Deseu aquestes adreces en algun lloc perquè les utilitzarem més endavant.
Creació del fitxer Genesis
Un fitxer Genesis conté les propietats que defineixen Blockchain. Un fitxer Genesis és el punt de partida de Blockchain i, per tant, és obligatori crear el fitxer Genesis per crear un Blockchain. Ara, creem el Gènesidossier.
En primer lloc, creeu un fitxer anomenat genesis.json
$ nano genesis.json
I ara copieu i enganxeu el següent codi en aquest fitxer:
{'config': {'chainId': 2019, 'homesteadBlock': 0, 'eip155Block': 0, 'eip158Block': 0, 'byzantiumBlock': 0}, 'difficult': '400', 'gasLimit': ' 2000000 ',' alloc ': {' 82c440bba462220c9b54600e584373014706c177 ': {' balance ':' 100000000000000000000000 '},' 9db5b590fdecc10cdb04b85a3503e94e61b207ca ': {' balance '00 '00 '00 '
Nota: Al codi anterior, substituïu l'adreça que hi ha a sota assign secció amb l'adreça dels comptes que heu creat al pas anterior.
implementació de llista enllaçada al c
Deseu-lo i sortiu.
Permeteu-me explicar el contingut del fitxer Genesis en breu:
chainId - Aquest és el número d'identificació de la cadena que s'utilitza per distingir entre Blockchains
homesteadBlock, eip155Block, eip158Block, byzantiumBlock - aquestes propietats estan relacionades amb el forcat i la versió de cadenes. No els necessitem per al nostre tutorial, així que definim-los a 0.
dificultat - Aquest número decideix la dificultat que tindran els blocs. Per a les xarxes privades, és bo establir un nombre inferior, ja que us permet extraure blocs ràpidament, cosa que provoca transaccions ràpides.
gasLimit - Aquest nombre és la quantitat total de gas que es pot utilitzar a cada bloc. No volem que la nostra xarxa arribi al límit, de manera que hem establert aquest nivell tan alt.
assign - Aquesta part s'utilitza per assignar èters a comptes ja creats.
El fitxer Genesis està llest. Ara, és hora d’iniciar Blockchain.
Instanciar el directori de dades
Abans d’iniciar Blockchain, hem d’instanciar el directori de dades. El Directori de dades és el directori on s’emmagatzemen les dades relacionades amb Blockchain. Per crear una instància del directori de dades, executeu l'ordre següent:
$ geth --datadir ./myDataDir init ./genesis.json
Si es realitza una instància correcta, hauríeu de veure el resultat següent:
Amb el Directori de dades instantani, ara podem iniciar el Blockchain.
Començar Ethereum Private Blockchain
Per iniciar el Blockchain, executeu l'ordre següent:
$ geth --datadir ./myDataDir --networkid 1114 console 2 >> Eth.log
Fet! La vostra cadena de blocs Ethereum privada està en funcionament.
A l'ordre anterior, estem enviant tots els registres en un fitxer separat anomenat Eth.log . Geth crearà automàticament un fitxer nou si no es troba.
La sortida d’aquest codi hauria de ser semblant a això:
Ara, hem entrat al geth consola on podem executar ordres per al nostre Blockchain.
Lectura de registres
A la secció anterior, he esmentat que estem emmagatzemant els registres en un altre fitxer. En aquesta secció, us explicaré com llegir els registres d’aquest fitxer.
Llegirem els registres des d’un terminal independent, de manera que primer obrim un nou terminal. Primer,canvieu al fitxer private-ethereum directori i, a continuació, executeu l'ordre següent per llegir els registres:
$ tail -f Eth.log
Ara podeu veure els registres al terminal. Aquests registres s’actualitzen dinàmicament cada vegada que hi ha alguna activitat al Blockchain.
Importació de comptes a xarxa privada
Recordeu que vam crear dos comptes per fer transaccions. Però no hem afegit aquests comptes a la nostra xarxa. Per tant, en aquesta secció del tutorial d’Ethereum Private Network, us explicaré com importar els comptes.
Quan creem un compte, totes les dades del compte s’emmagatzemen en un fitxer UTC dossier al directori esmentat durant la creació del compte (ruta: ./datadir/keystore ). Per importar els comptes, hem de copiar aquests fitxers i enganxar-los al fitxer botiga de claus al directori de dades(Camí: ./myDataDir/keystore )
Això és tot! Els comptes s’importen. Senzill, oi? Per verificar la importació, executarem l'ordre següent a geth consola.
> eth.accounts
Es mostrarà una llista de tots els comptes disponibles.
Per comprovar el saldo d’aquests comptes, utilitzarem l’ordre següent:
> web3.fromWei (eth.getBalance (), 'ether')
Estem preparats amb tot el necessari per fer una transacció. Per què esperar? Fem-ho!
Fer una transacció
En aquest tutorial sobre la xarxa privada Ethereum, us enviarem alguns ètersd'un compte a un altre.
La sintaxi per enviar èters és la següent:
> eth.sendTransaction ({de: ”adreça”, a: ”adreça”, valor: web3.toWei (quantitat, 'ether')})
Enviarem 1.000 èters del compte 1 al compte 2 mitjançant l'ordre següent:
lògica difusa en intel·ligència artificial
> eth.sendTransaction ({from: eth.accounts [0], to: eth.accounts [1], value: web3.toWei (1000, 'ether')})
No va funcionar? No us preocupeu. No va funcionar també per a mi. Això es deu al fet que el compte està bloquejat de manera predeterminada i no permet transaccions.
Per tant, primer hem de desbloquejar el compte del remitent. Recordeu la frase de contrasenya que vau utilitzar durant la creació del compte? Bé, heu de fer-ho, perquè ho haureu d’utilitzar per desbloquejar el compte. Desbloquejarem el compte amb l'ordre següent:
personal.unlockAccount (eth.accounts [0], '')
Ara enviarem ètersamb èxit:
> eth.sendTransaction ({from: eth.accounts [0], to: eth.accounts [1], value: web3.toWei (1000, 'ether')})
Això hauria de retornar un identificador de transacció.
Fet! Heu fet una transacció amb èxit.
Per verificar la transacció, comprovem el saldo dels dos comptes.
> web3.fromWei (eth.getBalance ('0x82c440bba462220c9b54600e584373014706c177'), 'ether')
> web3.fromWei (eth.getBalance ('0x9db5b590fdecc10cdb04b85a3503e94e61b207ca'), 'ether')
Visca! Podem veure que 1000 èterss'han enviat d'un compte a un altre.
Enhorabona! Heu creat una xarxa privada Ethereum i heu fet una transacció. Espero que aquest tutorial d’Ethereum Private Network sigui informatiu i us ajudi a entendre sobre Ethereum Private Network. Ara, continueu i proveu d’experimentar amb la xarxa privada acabada de crear.
Tens alguna pregunta? Envieu-lo a i ens posarem en contacte amb vosaltres.
Si voleu aprendre Blockchain i construir una carrera en tecnologies Blockchain, consulteu el nostre que inclou formació en viu dirigida per un instructor i experiència en projectes reals. Aquesta formació us ajudarà a entendre què és Blockchain d’una manera exhaustiva i us ajudarà a dominar el tema.