Despliegue y Verificación de Smart Contracts en Etherscan

Clase 22 de 24Curso de Dapps: Introducción al Desarrollo de Aplicaciones Descentralizadas

Resumen

¿Cómo desplegar y verificar un contrato inteligente en una red de prueba?

El despliegue y verificación de un contrato inteligente son pasos fundamentales para garantizar su funcionamiento y seguridad. Vamos a guiarte a través de este proceso usando Etherscan y Hardhat, herramientas esenciales para los desarrolladores en el ecosistema Ethereum.

¿Cómo ajustar el script de deploy?

Para iniciar, deberás hacer pequeños ajustes en tu script de despliegue. Si tu contrato tiene un parámetro como max supply que ya definiste, asegúrate de configurarlo correctamente en el script. Para un ejemplo como PlatziPons, si decidiste un máximo de 10,000, asegúrate de incluir esta cantidad en el script. Una vez hecho esto, ejecuta el script en la red Rinkabyte con el siguiente comando:

npx hardhat run scripts --network rinkeby

Asegúrate de estar conectado a la red adecuada y monitorea el proceso, ya que puede demorar un poco hasta que el contrato sea procesado por el bloque.

¿Cómo utilizar Etherscan para verificar el contrato?

Una vez que el contrato está desplegado, el siguiente paso es verificarlo usando Etherscan. Esto permite crear una interfaz de usuario que facilita su interacción sin desarrollar una interfaz gráfica.

  1. Dirígete a la sección "Verificar y Publicar" en Etherscan.
  2. Selecciona la versión del compilador que usaste, por ejemplo, 0.8.4.
  3. Añade una licencia, como MIT, para facilitar el proceso.
  4. Copia el código del contrato aplanado en Solidity y pégalo en Etherscan.

Usa el siguiente comando en Hardhat para generar un archivo con el contrato aplanado:

npx hardhat flatten > flattened.sol

Antes de subir el archivo, elimina las múltiples etiquetas de licencia para evitar errores. Usa herramientas de reemplazo para facilitar este paso.

¿Cómo interactuar con el contrato verificado?

Una vez verificado el contrato, puedes inspeccionar y manipularlo. Etherscan proporciona dos interfaces:

  • ReadContract: para consultar datos como el nombre del token.
  • WriteContract: permite realizar acciones que modifican el estado del contrato.

Conectando Web3 con Metamask

Para escribir en el contrato, como hacer una transacción, necesitas conectar Web3, generalmente mediante Metamask. Autoriza la conexión y ejecuta acciones como mintear (mint) nuevos tokens. Se te pedirá confirmación, y tras un tiempo, la transacción se completará.

Mantener la transparencia en tus contratos y permitir que otros inspecionen su código aumenta la confianza en tus desarrollos. Te invitamos a que sigas explorando más sobre cómo publicar y visualizar tokens en el Marketplace para sacar el máximo provecho de tus proyectos blockchain. ¡Atrévete a seguir aprendiendo y elevando tus habilidades al siguiente nivel!