Creando tokens Ethereum

0
1047

Índice

  1. Introducción
  2. Creando mis propios Tokens
  3. Desplegando el código a través de MetaMask
  4. Comprobando que se ha ejecutado correctamente
  5. Enviando tokens entre cuentas
  6. Conclusión

Introducción

Vamos a crear nuestros propios tokens Ethereum ERC20 en una red de pruebas.

He empezado una cadena de tutoriales sobre criptomonedas que pedéis seguir aquí:

Cómo comprar e invertir criptomonedas en Binance: https://www.adictosaltrabajo.com/2022/01/14/como-comprar-e-invertir-criptomonedas-en-binance/

Entendiendo las criptomonedas: https://www.adictosaltrabajo.com/2022/01/24/entendiendo-las-criptomonedas/

Votación con contratos inteligentes en Remix: https://www.adictosaltrabajo.com/2022/01/31/votacion-con-contratos-inteligentes-en-remix/

Usando la wallet MetaMask y la red local Ganache: https://www.adictosaltrabajo.com/2022/02/09/usando-la-wallet-metamask-y-la-red-local-ganache/

Compilación y despliegue de contratos inteligentes con Truffle y Ganache: https://www.adictosaltrabajo.com/2022/02/16/compilacion-y-despliegue-de-contratos-inteligentes-con-truffle-y-ganache/

Uno de los recursos que he empezado a seguir es https://cryptozombies.io/es/ que te va enseñando como ir trabajando con la tecnología. Pero en paralelo quiero ir haciendo pruebas complementarias.

Una de esas pruebas es crear mis propios tokens y he encontrado este tutorial «How To Create Your Own Ethereum Token In An Hour (ERC20 + Verified)» que voy a tratar de reproducir.

https://steemit.com/ethereum/@maxnachamkin/how-to-create-your-own-ethereum-token-in-an-hour-erc20-verified

La cosa parece fácil y básicamente los pasos son:

  • Usar el contrato creado por https://github.com/ConsenSys/Token-Factory para crear tu propio token (simplemente cambiando el valor de unas pocas variables).
  • Compilarlo en Remix.
  • Desplegarlo desde Remix en la red de pruebas usando tu monedero con contexto inyectado por MetaMask.

Como siempre con criptomonedas te entretienes un rato hasta que consigues que funcionen las cosas y hay que hacer alguna cosita más de la que encuentras en artículos más antiguos.

Creando mis propios Tokens

Lo primero que hacemos es localizar la fuente de https://github.com/ConsenSys/Token-Factory 

Este es el fichero fuente original de HumanStandardToken.sol

Compilamos y, antes de hacer deploy, desplegamos para poder introducir los valores al constructor: cantidad de tokens, nombre, decimales y símbolo.

Hasta aquí ha ido todo bien, la única pega es que el código es antiguo y hay un montón de advertencias a corregir o actualizar.

Comprobado que nos ha funcionado, ahora vamos a intentar desplegarlo en una red de pruebas.

Para ello, necesitamos un contexto de aplicación distribuida, por lo que podemos usar nuestro monedero MetaMask.

Desplegando el código a través de MetaMask

Aunque ya lo hemos hecho antes, lo voy a reproducir desde el principio. 

Nos vamos a descargar en chrome y el pluggin de MetaMask.

Podemos crear una cuenta o reciclar una antigua. 

Si tenemos nuestra fase secreta podemos importarla.

Ya podemos ver nuestra cuenta en la red de pruebas de Ropsten (recordad que si no veis las redes de prueba tenéis que ir a los settings a activar que se vean).

Ahora vamos a utilizar el contexto inyectado por MetaMask. Vamos a deploy en Remix.

Introducimos la contraseña de nuestra cuenta MetaMask.

De primeras vamos a hacer un pequeño cambio en el código para anular el constructor e inicializar las variables a nuestros valores deseados.

Pulsamos la opción de deploy

Este es el fichero HumanStandardToken.sol

Ahora el fichero Token.sol (que no he tocado).

Y el fichero StandardToken.sol

Este es el fichero ABI que se genera para interactuar programáticamente con la aplicación (eso lo haremos en otro momento).

Al desplegar con MetaMask podemos elegir la cuenta.

Nos confirma la operación.

No informa que vamos a lanzar un contrato con la cuenta 1 y el coste estimado en gas.

Comprobando que se ha ejecutado correctamente

Podemos verificar que se ha ejecutado correctamente porque nos responderá a las interacciones con los botones.

Podemos ir a MetaMask para comprobar la actividad (hay que esperar un poquito e incluso refrescar).

Podemos saltar a Etherscan (ver Block explorer) para ver el contrato.

En MetaMask es muy posible que no se vean los tokens en la cuenta. Hay que pinchar un enlace de Import token.

Con el identificador del contrato, del token y decimales podemos visualizarlos.

Aparece que tengo un token (novatada de los decimales).

Enviando tokens entre cuentas

Puedo crear o importar una segunda cuenta para hacer la transferencia.

Y podemos transferir de una cuenta a otra.

Y ver el resultado de la transacción.

En Etherscan podemos ver todas las transacciones.

Y si no nos aparecen en nuestra cuenta utilizar la información del contrato para importarlo, tal como hicimos la primera vez.

Y comprobamos en MetaMask el resultado.

Conclusión

Bueno, ya hemos conseguido generar unos tokens básicos y transferirlos.

A todos los efectos hemos creado una especie de “moneda” dentro de la red de pruebas Ethereum. 

Ahora tendremos que investigar un poquito más para utilizar otros tipos de tokens o colecciones de tokens diferenciados o NFT, si queremos usarlos para asociarlos a activos concretos.

Dejar respuesta

Please enter your comment!
Please enter your name here