El sector blockchain está ganando una atención significativa con los desarrollos en curso en blockchain, Bitcoin, Ethereum, criptomonedas e ICOs. Esto me impulsó a escribir este tutorial, el primero de una serie diseñada para ayudar a las personas a comprender cómo utilizar la tecnología blockchain y las criptomonedas para crear aplicaciones impactantes.
En este tutorial, mi objetivo es guiarte a través de todo el proceso, desde configurar tu cuenta hasta emitir tu primer token en la red de prueba de Ethereum mediante un solo contrato inteligente y Metamask. Este token funcionará como un token ERC20 estándar en la red de prueba de Ethereum, equipado con características principales que pueden servir como una base versátil para aplicaciones más complejas más allá de simples transferencias.
En 2015, el desarrollador alemán Fabian Vogelsteller contribuyó a la historia de Ethereum al comentar en la página de GitHub del proyecto. Este fue su comentario número 20, durante el cual mencionó por primera vez ERC-20. A medida que Ethereum se expandía rápidamente, se introdujo ERC-20 como solución a los desafíos de escalabilidad de la red.
La reconocimiento formal y la adopción de ERC-20 como una Propuesta de Mejora de Ethereum (EIP-20), co-redactada por Vogelsteller y el co-fundador de Ethereum Vitalik Buterin, ocurrió a finales de 2017.
Antes del estándar ERC-20, los creadores de tokens tenían que empezar desde cero, lo que llevaba a inconsistencias entre diferentes tokens. Los desarrolladores necesitaban entender completamente el código del contrato inteligente de otros tokens debido a la ausencia de una estructura estandarizada, lo que complicaba las cosas para las carteras y los intercambios que tenían que revisar el código de cada token para brindar soporte. Agregar nuevos tokens a las aplicaciones se convirtió en una tarea compleja.
Con la introducción del estándar ERC-20, sus características estandarizadas, interoperabilidad y transferibilidad han permitido a las carteras y los intercambios integrar múltiples tokens y facilitar los intercambios entre ellos fácilmente. Los contratos inteligentes empleados en los tokens ERC-20 pueden ejecutar y hacer cumplir automáticamente transacciones financieras complejas, lo cual es esencial para las plataformas DeFi. En estas plataformas, los tokens pueden representar varios instrumentos financieros, como préstamos o acciones en pools de liquidez.
El estándar ERC-20 especifica seis funciones obligatorias y tres opcionales que los contratos inteligentes deben implementar.
Aquí están las funciones requeridas y sus descripciones:
totalSupply: Un método que define el suministro total de tokens; si se alcanza este límite, el contrato inteligente no creará nuevos tokens.- balanceOf: Un método que devuelve la cantidad de tokens que tiene una dirección de billetera específica.- transferir: Un método que deduce una cantidad especificada de tokens del suministro total y los asigna al usuario.- transferFrom: Un método alternativo para transferir tokens entre usuarios.- aprobar: Un método para verificar si el contrato inteligente permite que se asignen cierta cantidad de tokens a un usuario, considerando el suministro total.- asignación: Similar al método de aprobación, pero verifica si un usuario tiene suficiente saldo para enviar una cantidad específica de tokens a otro usuario.Además de las funciones esenciales mencionadas anteriormente, hay funciones opcionales adicionales que pueden mejorar la usabilidad del token:
nombre: Un método que devuelve el nombre del token.- símbolo: Un método que devuelve el símbolo del token.- decimales: Un método que indica la cantidad de lugares decimales para el token. Esto define la unidad más pequeña del token. Por ejemplo, si un token ERC-20 tiene un valor de decimales de 6, significa que el token se puede dividir hasta seis lugares decimales.Si estás familiarizado con la programación orientada a objetos, puedes pensar en ERC-20 como una interfaz. Para hacer que tu token sea un token ERC-20, debes implementar la interfaz ERC-20, lo cual requiere que incluyas estas seis funciones esenciales. Básicamente, la interfaz ERC-20 sirve como una plantilla, y cualquier contrato que pretenda ser clasificado como un token ERC-20 debe diseñar e implementar sus funciones utilizando esta plantilla.
Para mayor facilidad y seguridad, utilizaremos el OpenZeppelin ERC-20contrato para crear nuestro token en esta guía. Con OpenZeppelin, no necesitamos escribir la interfaz completa de ERC-20; simplemente importamos el contrato de la biblioteca y utilizamos sus funciones. En este caso, emitiremos 1 millón de tokens ERC-20 llamados MNT.
A continuación, dirígete a la Ethereum RemixIDE (el entorno de desarrollo integrado para Ethereum que admite el lenguaje de programación Solidity) y crear un nuevo archivo Solidity, como - MyNewToken.sol.

Por favor, pegue el siguiente código en su nuevo script de Solidity:
// SPDX-License-Identifier: MIT pragma solidez ^0.8.20;
import “@openzeppelin/contratos/token/ERC20/ERC20.sol";
contrato MyNewToken es ERC20 { constructor() ERC20("MyNewToken", "MNT") { _mint(msg.sender, 1000000 * (10 **uint256(decimales()))); } }

Esto es lo que hace el código:
El comentario SPDX-License-Identifier indica la licencia bajo la cual se libera el contrato.
La directiva Pragma especifica la versión del compilador que se utilizará.
El contrato ERC20 se importa de OpenZeppelin y sirve como base para su token.
MyNewToken es el nombre de su contrato, que hereda del contrato ERC20.
la función constructora inicializa su token con el nombre (“MyNewToken”) y el símbolo (“MNT”).
La función _mint dentro del constructor crea el suministro inicial de tokens. En este caso, se acuñan 1 millón de tokens y se asignan a la dirección que implementa el contrato. El número total de tokens se ajusta según el valor de decimales, que por defecto es 18 en la implementación de OpenZeppelin.
Como importamos el contrato inteligente ERC20 de OpenZeppelin y el contrato MyNewToken hereda de él, no es necesario definir todas las funciones nosotros mismos. Todas las funciones definidas en el contrato ERC20 están incluidas en el contrato MyNewToken. Si desea ver una versión más detallada del código completo de ERC-20, puede consultar este archivo.
Ahora, tómate un tiempo para personalizar el contrato inteligente para satisfacer tus necesidades. También puedes cambiar el nombre y el símbolo del token modificando esta sección: ERC20("MiNuevoToken","MNT").
Paso 1: Haz clic en el botón Compilador de Solidity. Verifica la versión del compilador y asegúrate de que se haya seleccionado el contrato correcto. Dado que tu contrato inteligente incluye la línea pragma solidity ^0.8.20;, la versión del compilador debe ser al menos 0.8.20. A continuación, haz clic en el botón Compilar MyNewToken.sol. Si todo es exitoso, verás una marca de verificación verde en el botón de compilación.
Compilar el Contrato Inteligente
Compilación exitosa (marca de verificación verde)
Paso 2: NaviGate a la pestaña Deploy & Run Transactions. En la sección Environment, elija la opción Injected Provider para el despliegue. Antes de continuar, asegúrese de que su MetaMask esté configurado en la red de prueba Sepolia y que haya seleccionado el contrato MyNewToken para el despliegue. Finalmente, haga clic en el botón Deploy para desplegar su contrato.
Elija el proveedor inyectado como su billetera Web3 local (MetaMask)
Conecta tu monedero Web3
Confirmar Despliegue del Contrato y Elegir la Red (Esta es una Red de Prueba)
Si no estás seguro de cómo cambiar de red, abre la extensión de MetaMask, haz clic en el selector de red en la esquina superior izquierda y elige Sepolia. Si no está visible, asegúrate de que la opción "Mostrar redes de prueba" esté habilitada. Para obtener instrucciones sobre cómo agregar la URL de RPC de QuickNode a MetaMask, por favor consulta el Guía de QuickNode.

¡Felicidades! ¡Tu contrato de token ha sido desplegado exitosamente en la red de prueba Sepolia de Ethereum y oficialmente eres dueño de tu primer token!
* La información no pretende ser ni constituye un consejo financiero ni ninguna otra recomendación de ningún tipo ofrecida o respaldada por Gate.
* Este artículo no se puede reproducir, transmitir ni copiar sin hacer referencia a Gate. La contravención es una infracción de la Ley de derechos de autor y puede estar sujeta a acciones legales.





