Aprende las buenas prácticas de seguridad en Smart Contracts con este juego

in #spanish5 years ago

“Ethernaut es una de las mejores referencias que he encontrado para aprender las buenas prácticas de desarrollo de smart contract para Ethereum”

Zeppelin Solutions es una compañía de software especializada en ciberseguridad y blockchain. Su enfoque está en construir infraestructura para sistemas descentralizados así como otros servicios como auditorías de cyber-seguridad.

Sus proyectos más conocidos son OpenZeppelin, una librería de código abierto de smart contracts que corren en el blockchain de Ethereum y ZeppelinOS, una plataforma para desarrollar proyectos de smart contracts, realizar upgrades a smart contracts, aumentar la eficiencia de desarrollo con la reutilización de paquetes, entre otras características técnicas.

Zeppelin Solutions ha demostrado ser un índice en la comunidad de desarrolladores de Smart Contracts para Ethereum.

Ethernaut


Ethereum.png
Fuente

Una de las aplicaciones abiertas que posee Zeppelin es Ethernaut, un juego de guerra educativo basado en la librería Web3 y Solidity que interactúa con la EVM a través de la consola del navegador web.
Cada nivel del juego consiste en un Smart Contract que necesita ser hackeado, es decir, se tiene que encontrar la vulnerabilidad y explotarla.

Este juego esta basado en el concepto the OverTheWire, el cual tambien es un juego de guerra en línea para enseñar a los desarrolladores buenas prácticas de seguridad y conceptos relacionados.

¿Cómo Jugarlo?


Para comenzar a jugar primero debemos instalar la extensión MetaMask, un programa de mucha utilidad y bastante seguro para interactuar desde el navegador con aplicaciones descentralizadas de Ethereum.

Instalación de MetaMask: https://metamask.io/

Después elegiremos conectar la extensión a la red de pruebas Ropsten y fondearemos nuestra cuenta ingresando al siguiente sitio.

https://faucet.metamask.io/

Si estamos en la red Ropsten inmediatamente nos aparecerá una página con la opción Request 1 ether from faucet a la cual le daremos click para recibir Ether en esta red.

Posteriormente ingresaremos al sitio https://ethernaut.zeppelin.solutions, aceptaremos el permiso de interacción con MetaMask y abriremos la consola del navegador para comenzar a interactuar con Ethernaut.

En el caso de Google Chrome, presionando CTRL + Shift + i y dando click en Console visualizaremos la consola de desarrollador.

Siguiendo los pasos mencionados veremos en la consola el siguiente mensaje.

¡A jugar!


El primer nivel: 0 - Hello Ethernaut consiste en la serie de instrucciones que hemos mencionado hasta ahora, sin embargo también nos guía generalmente hacia los comandos que tenemos que ejecutar hacer para encontrar la respuesta.

Al encontrar la respuesta tenemos que cargar la instancia del smart contract y si recibimos el siguiente mensaje en la consola significa que hemos resuelto el problema exitosamente y podemos pasar al siguiente nivel.