Cómo configurar un nodo privado Ethereum

Esta es una discusión sobre cómo configurar su propio nodo privado Ethereum. Un nodo privado es muy útil para probar opciones de configuración, código de contrato inteligente y, en general, jugar con el entorno blockchain..

Ethereum es actualmente la plataforma blockchain más popular para casos de uso de lógica de contabilidad distribuida y criptomonedas en varios dominios.

Cómo configurar un nodo privado Ethereum

Esto se prueba en el siguiente sistema operativo, pero los pasos son igualmente válidos para MacOS y Windows para configurar un nodo privado de Ethereum

Plataforma: Ubuntu 64 Bit 16.04 / 16.10. (Memoria de 4 Gig, Intel 2 Ghz)

Software de nodo: Parity 1.5.9

Aunque el software de nodo ethereum más popular es su cliente Go (Geth), el cliente Parity, desarrollado en el lenguaje Rust, permite un modo de configuración adicional para ejecutar una instancia de ethereum. Puede descargar Parity para nuestra plataforma desde Parity.io

Para el sistema operativo Ubuntu, la descarga es un paquete debian que se puede instalar desde el centro de software con un doble clic. Al instalarlo, debería estar disponible como un comando de entorno:

G50-70: ~ $ paridad -v

(esto imprimirá toda la información de los parámetros de configuración).

Parity usa el archivo toml para configurar el proceso cuando comienza la paridad. Hay un conjunto de parámetros listo para usar que ejecuta el nodo ethereum de paridad en modo de desarrollo.

G50-70: ~ $ parity – cadena de desarrollo

Esto iniciará el nodo de desarrollo de ethereum en su máquina con parámetros predeterminados regulares. Es posible personalizar los parámetros usando un archivo toml (idioma toml). El archivo toml predeterminado en la página ethcore github está obsoleto, tendríamos que comentar un montón de parámetros.

Puedes copiar el archivo desde aquí.

Los parámetros básicos son

cadena = "dev"

ruta_base = "/ ruta / al / directorio / vacío"

db_path = "/ ruta / al / directorio / vacío"

keys_path = "// ruta / al directorio / seguro /"

identidad = ""

#light = false

[cuenta]

desbloquear = [""]

contraseña = ["/pathsafe/password.file"]

Con estos parámetros, la cadena de bloques se creará en base_path durante el procesamiento..

El nodo se puede iniciar con el toml personalizado. (Asumiendo que está en el mismo camino)

G50-70: ~ $ parity – config dev.toml

donde dev.toml es el archivo de parámetros ubicado en el mismo directorio.

El análisis de parámetros individuales con valores predeterminados se enumera aquí: paridad toml

También puedes usar el generador de configuración herramienta para generar este archivo. La instancia de paridad también se puede personalizar con parámetros de línea de comando con nombres idénticos a los parámetros de toml.

Especificaciones de la cadena:

Ejecutar una instancia local es una elección que hemos tomado, podríamos conectarnos alternativamente a mainnet (predeterminado) o testnet (entorno de prueba público). Estas opciones y un par de otros parámetros del especificaciones de la cadena.

Una elección importante a tomar como especificación de cadena es cuál es el modo de confirmación. Parity ofrece múltiples modos que utilizan la especificación del “motor” para configurar una cadena de Prueba de trabajo o Prueba de autoridad. Entraremos en el parámetro del motor en secciones posteriores. Por ahora, se nombran especificaciones importantes de la cadena. params, génesis, cuentas.

El nombre es cualquier frase que quiera darle a su cadena, los parámetros tienen algunos valores máximos, genesis tiene algunas compensaciones de fase de génesis. Las cuentas tienen la configuración de cuenta específica con la que comienza la cadena. Creará una cuenta en la siguiente sección. En el parámetro de la cuenta, puede agregar el saldo de ether inicial que desea dar a su cuenta con la configuración específica de la cuenta.

Puede encontrar una herramienta para generar especificaciones de cadena aquí. El archivo utilizado para esta demostración puede ser

visto desde aquí.

Crear una cuenta:

Antes de comenzar la cadena, necesitamos crear una cuenta que forme nuestra base de monedas. En caso de que comencemos a minar en producción, esta cuenta recibirá las recompensas de éter..

G50-70: ~ $ cuenta de paridad nueva – cadena chain_spec.json – ruta de claves dev_chain / signer

Chain_spec.json es el archivo de especificaciones de la cadena y dev_chain / signer es la ruta a sus claves privadas, consúltelas en el archivo toml. Se le pedirá una contraseña, una vez que la escriba, recibirá una cuenta recién creada.

Una vez creada la cuenta, agréguela al archivo chain_spec en el elemento de cuentas. Agrega esto :

"faa6848230f35ea54e38b089699d9532f004865b": { "equilibrio":

"1606938044258990275541962092341162602522202993782792835301376" })

reemplace “faa …” con su cuenta menos el 0x.

También debe reemplazar los siguientes parámetros en su archivo toml:

desbloquear = ["faa6848230f35ea54e38b089699d9532f004865b"]

contraseña = ["safe / password.file"]

(reemplace “faa con su cuenta y cree un archivo password.file en un directorio” seguro “con el

contraseña de la cuenta.)

Una vez que tenga la cuenta configurada correctamente, puede ejecutar la instancia:

paridad – config dev.toml – cadena chain_spec.json ui

Debería ver el siguiente resultado:

2017-04-20 22:57:39 paridad INFO principal :: ejecutar Paridad inicial / v1.5.3-beta- 82e33fa-20170220 / x86_64- linux-

gnu / rustc1.15.1

2017-04-20 22:57:39 paridad INFO principal :: ejecutar la configuración de la base de datos de estado: rápido

2017-04-20 22:57:39 paridad INFO principal :: ejecutar Modo de funcionamiento: activo

2017-04-20 22:57:39 INFO principal ethcore :: servicio configurado para DevelopmentChain usando InstantSeal

motor

2017-04-20 22:57:40 minero INFO hipercliente Tasa de conversión actualizada a Ξ1 = US $ 48,05 (2477578000

wei / gas)

2017-04-20 22:57:40 IO Worker # 3 INFO ethcore_network :: host NAT asignado a una dirección externa

172.30.0.82:43801

2017-04-20 22:57:40 IO Worker # 3 INFO network URL del nodo público:

enode: // f4af9bd554ac11acc2341e7b3fc013590cf9a0545b41e7d440d7beefebd7551d8cdb685d32f7eeae02a

[email protected]: 43801 + 639762017-04- 20 23:01:08 IO

Trabajador # 1 INFO importación Sincronización # 0 48d7… 8e3e 0 blk / s 0 tx / s 0 Mgas / s 0+ 0 Qed # 0

0/0/25 pares 7 KiB db 7 KiB cadena 0 bytes cola 448 bytes sincronización

2017-04- 20 23:01:13 IO Worker # 2 INFO importación Sincronización # 0 48d7… 8e3e 0 blk / s 0 tx / s 0 Mgas / s

0+ 0 Qed # 0 0 / 0/25 pares 7 KiB db 7 KiB cadena 0 bytes cola 448 bytes sincronización

Ahora tu cadena ha comenzado. Esta cadena está configurada para utilizar el motor InstancSeal para que no cree bloques adicionales cuando no hay transacciones.

Puedes cargar la billetera aquí

Esta interfaz de usuario de billetera debería iniciarse automáticamente si su navegador predeterminado está configurado): http://127.0.0.1:8180/#/accounts/

Puede confirmar JSON RPC aquí http: // localhost: 8545 /

(Esto le mostrará algo como HTTP no está permitido error, pero eso es lo esperado)

Los siguientes pasos son crear un contrato inteligente en esta instancia y probarlo usando un arnés de prueba html web3.js.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me