Seguramente si estas leyendo esto y has intentado indagar un poco en el desarrollo de smart contracts de EVM estés usando Remix o al menos sepas que herramienta es. En este post vamos a centrarnos en aquellas herramientas y librerías que son básicas para desarrollar en este entorno, en concreto Solidity, que cada vez parece que tiene mas auge.
Remix es un IDE online todoterreno que para salir del apuro nos puede venir muy bien. El único problema que tiene podría decirse que es muy básico, tiene bugs y no es del todo estable. Es por esto por lo que comenzamos la sección con el framework mas extendido en el desarrollo de smart contracts: Hardhat
1. Hardhat
Hardhat genera un entorno perfecto para hacer precisamente eso que tanto necesitan los contratos inteligentes: tests unitarios. Haciendo uso de una librería ya muy conocida como es ethers, podemos simular el comportamiento de todas y cada una de las funciones para poder comprobar si el comportamiento es el correcto, cuanto gas puede usar una transacción o incluso cómo de exhaustivo está siendo mi test. Cuenta con una amplia comunidad de desarrolladores y tiene plugins para todas las funcionalidades que a uno se le puedan ocurrir.
Todos sabemos como de importante es la seguridad en los smart contracts. Podemos hacer pruebas de prácticamente todo pero puede que haya ciertos detalles que se nos escapen. Ya sea por falta de conocimientos o simplemente porque no hemos caído en ello. Es aquí donde entra Mythril.
2. Mythril
Mythril es una herramienta encargada de auditar el bytecode generado a la hora de compilar lenguaje EVM compatible (no solamente Solidity). Tiene una amplia gama de vulnerabilidades de las que se puede aprender en este sector tan de nicho como es la ciberseguridad en smart contracts.
Muchas veces, cuando queremos saber que ha pasado con nuestros fondos o como los maneja un protocolo vamos a etherscan y damos mil clicks hasta encontrar que paso finalmente. En lo que viene siendo análisis forense Phalcon cumple con creces su propósito
3. Phalcon
Phalcon permite ver de un solo vistazo como se ha movido un balance de una dirección a otra. Haciendo así que el análisis de hackeos, flujos de balance de protocolos De-Fi como Uniswap sean mucho mas intuitivos.
Además de Hardhat hay otros ecosistemas que pueden sernos de utilidad y así ya de paso practicamos Solidity. Este es el caso de Foundry
4. Foundry
Además de Hardhat hay otros ecosistemas que pueden sernos de utilidad y así ya de paso practicamos Solidity. Este es el caso de Foundry
Foundry es una herramienta que nos permite hacer tests usando únicamente Solidity además de hacer llamadas a la blockchain directamente desde la consola. Los automatismos que vienen con Foundry hacen que tenga una integracion total con editores de texto como VSCode o incluso Hardhat.