ERC o Ethereum Request for Comments es simplemente una guía o una plantilla que deben seguir todos los tokens basados en Ethereum. Los programadores establecen algunas reglas en estas plantillas o documentos que deben cumplir los tokens basados en Ethereum. Funcionalidades como la transferencia de tokens de una cuenta a otra, para obtener el saldo actual de tokens de una cuenta y el suministro total del token disponible en la red. Los tokens ERC-20 y ERC-721 son los tipos iniciales de estándares de tokens ERC que desempeñan un papel importante en la definición de la funcionalidad del ecosistema Ethereum.
Aquí se tratarán los siguientes temas:
- ¿Cómo se crean los tokens?
- Introducción al token ERC-20.
- Introducción al token ERC-721.
- Token ERC-20 vs Token ERC-721.
Comencemos discutiendo cada uno de estos temas en detalle.
¿Cómo se crean los tokens?
Los tokens existen en la plataforma Ethereum y eso en sí mismo consiste en una string de bloques que es capaz de almacenar transacciones y una máquina virtual que es capaz de ejecutar contratos inteligentes. Nuevamente, es importante tener en cuenta que los tokens viven en la string de bloques de Ethereum. No son independientes y dependen de la string de bloques y la plataforma de Ethereum. La moneda nativa de la red Ethereum es Ether, pero también puede admitir otros tokens y estos pueden funcionar como monedas que pueden representar acciones de una empresa, certificados de oro, etc.
- Los tokens se crean mediante contratos inteligentes que no solo son responsables de crear tokens, sino también de manejar transacciones y realizar un seguimiento de los saldos.
- Para obtener algunos tokens, uno debe enviar Ether al contrato inteligente que luego dará algunos tokens.
- Una vez que se implementa un contrato inteligente, ya no se puede cambiar, por lo que si uno comete un error, no se puede hacer nada al respecto, lo que podría ser bastante catastrófico.
- Imagine un error dentro del código del contrato que hace que las personas pierdan sus tokens o se los roben.
- También hay un problema con la interoperabilidad. Cada contrato de token puede ser completamente diferente del otro, por lo que si uno quiere que el token esté disponible en un intercambio, el intercambio debe escribir un código personalizado que pueda hablar con el contrato y permitir que las personas intercambien.
- Lo mismo ocurre con los proveedores de billeteras. Soportar cientos de tokens sería muy complejo y llevaría mucho tiempo.
- Entonces, en cambio, la comunidad propuso un estándar llamado ERC-20 que significa «Requests de comentarios de Ethereum» y 20 es solo un número que asignaron a una propuesta que crearía alguna estructura en el mundo de los tokens.
Introducción al token ERC-20
ERC-20 es uno de los estándares más importantes para los tokens de Ethereum. ERC-20 se propuso por primera vez en 2015 y se integró en la string de bloques de Ethereum en 2017. Es similar a bitcoin, Litecoin, etc. en muchos aspectos.
- El token representa activos digitales como cupones o incluso cosas de la vida real.
- Se pueden vender, comprar y comercializar y tienen valores que se pueden enviar o recibir.
- Las monedas conocidas como el token de acceso básico (BAT), Augur (REP), Maker (MKR) y la red OMG son estándares ERC-20.
- Los tokens tienen los mismos valores y son reemplazables con otra copia del token. Esto lo hace fungible, es decir, mutable o cambiable o no único.
Antes de que existiera el estándar ERC-20, todos los que querían crear un token tenían que reinventar la rueda, lo que significaba que cada contrato de token era ligeramente diferente y que los intercambios y las billeteras tenían que escribir un código personalizado para respaldar su token. Con ERC-20, este código debe implementarse solo una vez. Es por eso que los intercambios pueden agregar nuevos tokens tan rápido. Es importante tener en cuenta que no existe un «registro central» para los contratos de token, lo que significa que no se garantiza la unicidad de un nombre o símbolo de token en particular.
ER-20 es una representación de algún tipo de activo en la string de bloques de Ethereum y un token es un token ERC-20 que puede representar mucho. Podría representar una moneda (criptomoneda para ser más claros) o cualquier otro tipo de activo.
Funciones de los componentes en los tokens ERC-20:
- transferencia: Toma una cierta cantidad de fichas del suministro total y las transfiere a un usuario.
- transferencia desde: los tokens se transfieren entre dos usuarios que los tienen.
- aprobación: verifica que su contrato puede dar una cierta cantidad de tokens a un usuario.
- asignación: Igual que la aprobación, excepto que verifica que un usuario tenga suficiente saldo para enviar una cierta cantidad de tokens a otra persona.
- saldo de: devuelve cuántos tokens tiene una dirección determinada.
- suministro total: Define el número total de fichas. Cuando se alcanza este límite, el contrato inteligente se niega a crear más tokens.
Estas funciones de código son importantes cuando se trata de la implementación de tokens/usuarios, principalmente para realizar transferencias, otorgar aprobaciones y determinar la cantidad de tokens en circulación, almacenar y devolver saldos.
Inconvenientes del ERC-20:
ERC-20 es solo una guía y las personas son libres de implementar las funciones requeridas como lo deseen. Eso ha llevado a algunos problemas interesantes.
- Por ejemplo, para comprar algunos tokens, uno tiene que enviar algo de Ether al contrato de token, pero algunas personas intentaron enviar sus tokens ERC-20 en su lugar.
- Si el contrato no fue diseñado con esto en mente, resultará en la pérdida de sus tokens.
- Para solucionar esto, la empresa está intentando mejorar los estándares ERC-20 con el estándar ERC-223.
- Esto advierte a los creadores de tokens sobre estos riesgos y ofrece algunas soluciones.
Introducción al token ERC-721
ERC-721 es un token estándar «no fungible». Un token no fungible es el tipo de token que es único. Estos son activos criptográficos en una string de bloques que tiene un código único y metadatos que los diferencian entre sí. Los tokens no fungibles estándar ERC-721 se pueden ver en juegos basados en blockchain donde cada activo es único y los jugadores pueden intercambiarlo y vender o comprar artículos con él. ERC-721 es básicamente una plantilla o una guía que otros desarrolladores aceptan seguir. Es un estándar ampliamente utilizado. Ser un estándar ampliamente utilizado también significa ser compatible con una amplia gama de aplicaciones.
- Son tokens no fungibles.
- ERC721 es más una propuesta de mejora de Ethereum o EIP.
- Uno de los componentes más importantes es la flexibilidad para usarlos en todos los intercambios.
- La principal característica de los tokens ERC-721 es que cada uno es único.
- El valor de los tokens ERC-721 depende de la singularidad y rareza del activo.
- Un NFT no puede reemplazar a otro, debido a las diferencias en los valores.
- Podemos emular artículos coleccionables raros con estos tokens de Ethereum.
Componentes en el token ERC-721:
El ERC721 tiene las siguientes funciones importantes:
- Nombre de funciones.
- Símbolo.
- suministro total.
- equilibrio de.
- propietario de.
- aprobar.
- transferir.
- tomar posesión.
- tokenMetadata.
- tokenOfOwnerByIndex.
Fungible significa intercambiable y reemplazable. Bitcoin es fungible porque cualquier Bitcoin puede reemplazar a cualquier otro Bitcoin. Cada NFT, por otro lado, es completamente único. Un NFT no puede reemplazar a otro, allí un NFT no es fungible. Uno de los ejemplos que utilizan el estándar de tokens no fungibles ERC-721 es el juego Cryptokitties, que es básicamente un juego desarrollado en blockchain que permite a los usuarios vender, comprar y criar gatos virtuales. Los activos comprados con un token no fungible son únicos y solo pertenecen al propietario. No se puede negociar. Los tokens estándar ERC721 se crean de la misma manera que otros tipos de tokens y se pueden crear tantos como desee el usuario, pero la única diferencia es que los tokens tienen un valor único y metadatos únicos.
Token ERC-20 frente a Token ERC-721
A continuación se muestran algunas de las diferencias entre el token ERC-20 y el token ERC-721.
ERC-20 |
ERC-721 |
|
---|---|---|
fungibilidad | En primer lugar, estos tokens son de naturaleza fungible. No hay nada como un tokenId. | Estos tokens son de naturaleza no fungible. Cada NFT tiene una variable uint256 conocida como tokenId. |
Sustitución | Son más fáciles de sustituir. | No hay margen para la sustitución. |
Ejemplos | Tether (USDT), Dai (DAI), Bitcoin, Dogecoin, Bitcoin envuelto (WBTC) | NFT, activos en el juego como dinero o avatares en el juego, e incluso boletos. Uno de los ejemplos más populares de estos tokens es CryptoKitties. El propósito del juego es que los usuarios críen, compren y vendan gatos virtuales. En este juego, el usuario posee completamente un activo; un gato virtual que es único y no se puede compartir con nadie más. |
Divisibilidad | Son divisibles; Los tokens ERC20 se pueden dividir de varias maneras. Incluso es posible compartir el 0,1 % del token. | No son divisibles en absoluto. |
Fluctuación |
|
|
Propiedad | No se pueden asignar funciones especiales de propiedad. | Estos tokens pueden habilitar funciones especiales de propiedad. |
Adopción | Estos tokens se adoptan comúnmente. | Estos tokens tienen niveles limitados de aceptación. |
Coleccionabilidad | Estos tokens no son coleccionables, son intercambiables y representan una sola entidad. | Estos tokens se pueden recolectar como monedas fiduciarias, no son intercambiables y representan una colección de activos. |
Identidad del token | No se requiere verificación KYC. | La verificación KYC está incorporada. |
Valores | En los estándares ERC20, no hay diferencia en los valores. | Los valores de cada ficha son diferentes. |
Desafíos enfrentados | El token ERC20 enfrenta el desafío de perderlos cuando se transfieren a otras billeteras o contratos inteligentes que no admiten tokens ERC20. | El principal desafío de los estándares de token de ERC721 es que la transferencia de numerosos activos puede resultar muy costosa. |