Urko Larrañaga Piedra Head of Blockchain

Cómo arrancar y testear tu propia Blockchain con Ganache

El siguiente post tiene como objetivo explicar el framework Ganache, herramienta para la simulación y testeo de Blockchain, además de presentar cómo utilizarlo.

En el artículo anterior, explicábamos como desarrollar y desplegar nuestro propio Smart Contract vía Remix. En las siguientes líneas profundizaremos en otra herramienta muy utilizada dentro del entorno Blockchain con la que podremos por ejemplo, ejecutar nuestros tests y evaluar su impacto o inspeccionar el estado de la red, entre otras cosas. A continuación, te presentamos cuáles son sus funciones principales, el modo de uso y qué pasos seguir para ponerlo en marcha.

Funcionalidades de Ganache

Una vez descargada esta herramienta, tan solo se requiere de un Click para la puesta en marcha de una cadena de bloques de Ethereum en nuestra máquina local. Estas son las funcionalidades que nos ofrece:

  • Generación de 10 cuentas para interactuar con nuestra cadena de bloques. Por cada una de ellas, se crean su clave privada y su dirección de Ethereum. También muestran el saldo y las transacciones de cada una.
  • Explorador de bloques y transacciones.
  • Logs que nos permiten ver en detalle el funcionamiento de nuestro sistema.

En la imagen anterior podemos observar que la herramienta, en su menú superior, nos muestra información sobre el identificador de nuestra red y el endpoint del servidor RPC, que nos permitirán conectarnos a dicha herramienta. Asimismo, se podrán comprobar también el precio y el límite de Gas establecido.

Para conocer la definición de conceptos técnicos como Gas, os recomiendo consultar nuestro Glosario.

Pasos a seguir

Una vez desarrollado nuestro Smart Contract, no nos quedaría más que desplegarlo en la correspondiente cadena de bloques, en este caso en la que ofrece Ganache, realizado en este caso vía Remix. A continuación, explicamos los pasos a seguir para poder interactuar y demostrar el funcionamiento de esta herramienta.

  1. Seleccionar la pestaña “Run” de Remix.
  2. Seleccionar entorno de trabajo Ganache. Para ello, tendremos que elegir la opción “Web3 Provider” del desplegable “Environment”. Nos solicitará un endpoint, por lo que, en este caso copiaremos el del servidor RPC de dicho framework (http://127.0.0.1:7545).
  3. Comparar si las cuentas que se nos muestran en Remix y en dicho simulador coinciden, para comprobar que todo ha ido bien.
  4. Una vez conectados, tendremos que proceder a desplegar nuestro Smart Contract (lo cual se explica en el post anterior). Tras ello, podremos realizar las correspondientes pruebas vía Remix.
  5. Posteriormente, no nos quedará más que explorar la información que nos muestra la herramienta que nos ocupa.

Análisis

En caso de que hayamos seguido el post anterior y el actual, una vez abierto este framework, nos encontraremos con un bloque y una transacción. A continuación, explicamos la información que se nos muestra.

  • Bloque: En este apartado, se pueden consultar la fecha en la que fue minado, el número de transacciones que recoge y el Gas utilizado. Si accedemos a su detalle podremos visualizar también el Hash del bloque y la dirección de Ethereum que realizo la transacción.
  • Transacción: Aquí podrás ver el Hash de la transacción, la dirección de Ethereum que ejecuto, el tipo de transacción y el Gas utilizado. En este caso, como la transacción consiste en el despliegue de un Smart Contract, también se nos mostrará su dirección.

En el siguiente post técnico, procederemos a explicar cómo poner en marcha nuestra propia Blockchain privada de Ethereum.