¿Cómo configurar su propia red privada de Ethereum?

Este artículo se enfoca en discutir los pasos para configurar una red Ethereum privada. Antes de continuar con la guía detallada paso a paso, echemos un vistazo a la definición de las terminologías básicas.

¿Qué es la string de bloques?

  • Blockchain es una string de bloques que contiene toda la información sobre todas las transacciones que tienen lugar en una red de forma encriptada mediante el uso de claves públicas y privadas.
  • La tecnología Blockchain puede fortalecer los servicios básicos que son esenciales en la financiación del comercio. El modelo de string de bloques funciona en un modelo de libro mayor descentralizado, digitalizado y distribuido. Debido a estas propiedades, este es más robusto y seguro que los propietarios centralizados que se utilizan actualmente en el sistema comercial.
  • En los términos más simples, una string de bloques es solo una nueva forma de una base de datos descentralizada.

¿Qué es Ethereum?

Ethereum es un sistema blockchain de código abierto descentralizado que cuenta con su propia criptomoneda que se llama ether (ETH). Es una plataforma que se puede usar para varias Dapps que se pueden implementar mediante el uso de contratos inteligentes.

¿Por qué construir una red Blockchain privada?

  • En una red Ethereum, si los Nodes no están conectados a la red principal, se conoce como red privada de Ethereum.
  • Solo los Nodes con los permisos correctos podrán acceder a esta Blockchain.
  • Privacidad: no desea ingresar datos clave en una red pública, por eso las empresas crean una red privada.
  • Para probar los contratos inteligentes y desarrollar contratos inteligentes.

Pasos para configurar una red privada de Ethereum

A continuación se muestra la guía paso a paso para configurar una red Ethereum privada.

Paso 1: Instale Geth en su sistema

  • Haga clic aquí para ir a la página de descarga oficial de Geth y configurar la descarga de acuerdo con su sistema operativo.

Geth download

  • Al instalar Geth, asegúrese de seleccionar ambas casillas de verificación como se muestra a continuación.

Select checkboxes

  • Después de instalar Geth en su sistema, abra PowerShell o el símbolo del sistema y escriba geth y presione enter, se mostrará el siguiente resultado.

Check geth installation

Paso 2: crea una carpeta para Ethereum privado

  • Cree una carpeta separada para este proyecto. En este caso, la carpeta es MyNetwork.
  • Cree una nueva carpeta dentro de la carpeta MyNetwork para la red privada de Ethereum, ya que mantiene los archivos de la red privada de Ethereum separados de los archivos públicos. En este ejemplo, la carpeta es MyPrivateChain.

Paso 3: crea un bloque Génesis

La string de bloques es un registro digital distribuido en el que todas las transacciones se registran en orden secuencial en forma de bloques. Hay un número ilimitado de bloques, pero siempre hay un bloque separado que dio origen a toda la string, es decir, el bloque génesis.

Genesis Block

Como se ve en el diagrama anterior, podemos ver que blockchain se inicializa con el bloque de génesis.

Para crear una string de bloques privada, se necesita un bloque de génesis. Para hacer esto, cree un archivo de génesis, que es un archivo JSON con los siguientes comandos:

{

     «configuración»:{

        «id de string»: 987,

        «Bloque de hacienda»:0,

        “eip150Block”:0,

        “eip155Bloque”:0,

        “eip158Bloque”:0

    },

    “dificultad”:”0x400″,

    “límite de gas”:”0x8000000″,

    “asignar”:{}

}

Explicación:

  • config: Define la configuración de la string de bloques y determina cómo funcionará la red.
  • chainId: este es el número de string utilizado por varias strings de bloques. El número de la string principal de Ethereum es «1». Se puede usar cualquier número aleatorio, siempre que no coincida con otro número de blockchain.
  • homesteadBlock: Es la primera versión oficial estable del protocolo Ethereum y su valor de atributo es “0”.
  • Se pueden conectar otros protocolos como Byzantium, eip155B y eip158. Para hacer esto, debajo de homesteadBlock agregue el nombre del protocolo con el prefijo Block (por ejemplo, eip158Block) y configure el parámetro «0» para ellos.
  • dificultad: Determina la dificultad de generar bloques. Establézcalo bajo para mantener la complejidad baja y evitar esperar durante las pruebas.
  • gasLimit: El gas es el «combustible» que se utiliza para pagar las tarifas de transacción en la red Ethereum. Cuanta más gasolina esté dispuesto a gastar un usuario, mayor será la prioridad de su transacción en la cola. Se recomienda establecer este valor en un nivel lo suficientemente alto para evitar limitaciones durante las pruebas.
  • alloc: se utiliza para crear una billetera de criptomonedas para nuestra string de bloques privada y llenarla con éter falso. En este caso, esta opción no se utilizará para mostrar cómo iniciar la minería en una string de bloques privada.

Este archivo se puede crear utilizando cualquier editor de texto y guardar el archivo con la extensión JSON en la carpeta MyNetwork.

Paso 4: Ejecute el archivo de génesis

Abra cmd o PowerShell en modo administrador, ingrese el siguiente comando:

geth –identity “yourIdentity” init \path_to_folder\CustomGenesis.json –datadir \path_to_data_directory\MyPrivateChain

Parámetros-
ruta_a_la_carpeta- Ubicación del archivo de Génesis.
path_to_data_directory- Ubicación de la carpeta en la que se almacenarán los datos de nuestra string privada.

El comando anterior le indica a Geth que use el archivo CustomGenesis.json.

Después de ejecutar el comando anterior, Geth se conecta al archivo de Génesis y se ve así:

excute genesis

Paso 5: Inicializar la red privada

Inicie la red privada en la que varios Nodes pueden agregar nuevos bloques para esto tenemos que ejecutar el comando-

geth –datadir \ruta_a_su_directorio_de_datos\MyPrivateChain –networkid 8080

Initialize private network

El comando también tiene el identificador 8080 . Debe ser reemplazado por un número arbitrario que no sea igual al identificador de las redes ya creadas, por ejemplo, el identificador de la red principal Ethereum (“networkid = 1”). Después de ejecutar con éxito el comando, podemos ver esto:

output

Nota:

El texto resaltado es la dirección del archivo geth.ipc, búsquelo en su consola y cópielo para usarlo en el siguiente paso.

Cada vez que sea necesario acceder a la string de la red privada, será necesario ejecutar comandos en la consola que inicien una conexión con el archivo de Génesis y la red privada.

Ahora está lista una string de bloques personal y una red Ethereum privada.

Paso 6: Cree una cuenta de propiedad externa (EOA)

La cuenta de propiedad externa (EOA) tiene las siguientes características:

  • Controlado por una parte o persona externa.
  • Se accede a través de Claves privadas.
  • Contiene equilibrio de éter.
  • Puede enviar transacciones, así como ‘activar’ cuentas de contrato.

Los pasos para crear EOA son:

Para administrar la red blockchain, se necesita EOA. Para crearlo, ejecute Geth en dos ventanas. En la segunda consola de la ventana, ingrese el siguiente comando:

geth adjuntar \ruta_a_su_directorio_de_datos\SU_CARPETA\geth.ipc

o

geth adjuntar \\.\tubería\geth.ipc

Esto conectará la segunda ventana al terminal de la primera ventana. El terminal mostrará lo siguiente:

Output

Crea una cuenta usando el comando-

personal.nuevaCuenta()

Después de ejecutar este comando, ingrese Frase de contraseña y obtendrá su número de cuenta y guardará este número para uso futuro.

save account number

Para verificar el estado del saldo de la cuenta, ejecute el siguiente comando:

ether balance

Se puede ver en la captura de pantalla anterior que muestra saldo cero. Esto se debe a que al iniciar una red privada en el archivo de génesis, no especificamos nada en el atributo alloc.

Paso 7: Minar nuestra string privada de Ethereum

Si minamos en la string principal de Ethereum, requerirá equipos costosos con procesadores gráficos potentes. Por lo general, los ASIC se usan para esto, pero en nuestra string no se requiere un alto rendimiento y podemos comenzar a minar usando el siguiente comando:

minero.start()

miner.start()

Si el estado del saldo se verifica después de un par de segundos, la cuenta se repone con éter falso. Después de eso, uno puede dejar de minar usando el siguiente comando:

minero.stop()

miner.stop()

Publicación traducida automáticamente

Artículo escrito por kamalsagar316 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *