Renuncia de responsabilidad: Las opiniones aquí expresadas son propias del autor y no representan necesariamente las opiniones de Cointelegraph.com

Hoy en día, cualquiera puede crear un contrato inteligente basado en la Blockchain de Ethereum y lanzar sus propios tokens. Hasta hace poco, la implementación de una determinada moneda fue encomendada exclusivamente al programador de esa moneda, y tenía más bien un carácter experimental a menudo acompañado por una serie de problemas conexos, incluida la congelación de los fondos de los inversores, el jaqueo de contratos o el funcionamiento de la red imprevisible.

En esta atmósfera del “salvaje oeste”, nuevos protocolos Ethereum están creándose, que están diseñadas para corregir los errores de las versiones anteriores. Quizás uno de ellos reemplazará la ERC20 al final del año, lo que hace el trabajo con la blockchain incluso más fiable y simple para los usuarios.

ERC20: El rey de dApps

La lógica fácil de usar y la estructura simplificada convirtieron al Ethereum en un marco muy demandado, con casi el 83 por ciento de proyectos eligiendo la blockchain Ethereum para las estructuras subyacentes.

Fuente de la imagen: ICOWatchList

Más de una docena de tokens importantes se basan en el estándar ERC20, y alrededor de 400 nuevas monedas son emitidas cada día. Si bien estas cifras pueden parecer irreales, la calificación de Coinmarketcap y el Gráfico de Tokens Ethereum demuestran que la capitalización total del mercado de dichos tokens es de alrededor de $52,6 mil millones. Además, este proceso parece estar totalmente incontrolado, ya que no existe legislación para regular la frecuencia o el iniciador de la cuestión.

Fuente de la imagen: Ethplorer

Puedes ver las referencias a "ERC20" al leer información sobre Ethereum (ETH). El ERC20 es un estándar que es el más común y más ampliamente utilizado dentro de la plataforma Ethereum. Wikipedia le da al estándar la siguiente definición:

ERC significa, por sus siglas en inglés, Solicitud Ethereum de Comentario, y 20 es el número que se asignó a esta solicitud.

El estándar ERC20 fue introducido en 2015. Aunque inicialmente solo vio uso activo por parte de los programadores, la norma ha ganado una adopción generalizada en solo dos años. El estándar describe las normas para la creación y operación de monedas desarrolladas sobre su base. Estas especificaciones son una solución innovadora en la criptoindustria, ya que hasta entonces no había normas de programación unificadas, y resolvió el problema principal de los creadores de nuevos tokens.

La cuestión es que todas las monedas emitidas antes de la introducción de esta norma fueron completamente únicas, lo cual complicó en sobremanera la labor de intercambios, billeteras y otras aplicaciones utilizadas para interactuar con nuevos tokens. Cada vez los desarrolladores habían tenido que cambiar o agregar una capa a su software, de modo que la nueva moneda podría trabajar de forma estable y ser compatible con su sistema.

En 2017, el estándar ERC20 comenzó a usarse en cualquier lugar gracias a la uniformidad del código y la integración simplificada con diferentes aplicaciones y plataformas. Activó el crecimiento explosivo de las ofertas de moneda inicial (ICO) de las empresas, que ahora tienen las herramientas necesarias para entrar en los intercambios y superar los problemas de liquidez.

Fuente de la imagen: Smith&Crown

Inmediatamente después de la aplicación del ERC20, el número de arranques de las ICO en el mercado de criptomonedas aumentó sustancialmente con casi 86 000 tokens emitidos para mayo de 2018. No sorprendentemente, los proyectos ya no necesitaban inventar sus propias especificaciones y reglas para la emisión y operación de los tokens, o para desarrollar normas para su compatibilidad con blockchain separadas. Todo esto ya ha sido descrito en la introducción del estándar ERC20, con seis funciones principales:

  • Cantidad total de monedas;
  • número de monedas en la balanza de una dirección específica;
  • funciones para transferir los tokens de la dirección principal a la dirección del usuario individual o ICO participante;
  • funciones para transferir tokens entre los usuarios;
  • funciones para controlar la cantidad residual de tokens en un contrato inteligente con la capacidad para retirar fondos;
  • funciones asegurando que el remitente tiene suficientes tokens para completar la transacción en el momento del envío.

Contratos inteligentes: el nacimiento de una nueva economía

El secreto principal del éxito del estándar ERC20 es la introducción de contratos inteligentes. Aunque los principios básicos de los contratos inteligentes ya han sido implementados en el blockchain Bitcoin, sus capacidades eran muy limitadas y no eran adecuadas para crear tokens para dApps individuales. Por eso Ethereum puede considerarse como la primera plataforma que desarrolló plenamente la noción de los contratos inteligente y lo aplicó.

Fuente de la imagen: Openxcell.com

La idea principal del contrato inteligente es el siguiente: cuando un usuario envía tokens a la dirección del destinatario, el balance de la dirección del remitente disminuye mientras aumenta la misma cantidad del destinatario. ¿Qué es lo especial de esto? Técnicamente no se envía nada a nadie. De hecho, el contrato inteligente está informado sobre los cambios en el balance del propietario para una determinada cantidad de tokens. Como resultado, los tokens desaparecen de la billetera del remitente, apareciendo en la dirección del destinatario. Gracias a este sistema, los nodos de la red ya no necesitan comprobar constantemente con la base de datos. Todo lo que tienen que hacer ahora es verificar la precisión de los términos del contrato, ya que las partes (el remitente y el receptor) interactúan exclusivamente mediante contratos inteligentes.

Pidiendo cambios

Debido a que el estándar ERC20 fue la primera versión del protocolo basado en Ethereum, se han revelado a lo largo del tiempo una serie de problemas y deficiencias. Por ejemplo, los usuarios accidentalmente enviaban tokens a la dirección de un contrato inteligente, y revertir la transacción era imposible. Esto es debido al hecho de que la implementación estándar del token ERC20 implica dos maneras de transferir tokens:

  • la función de transferencia, que permite enviar tokens desde una dirección a otra;
  • una combinación de funciones (aprobar + transferFrom) para enviar tokens a un contrato inteligente.

Cabe señalar que el procesamiento de eventos es conocido y una práctica habitual en la programación. Por lo tanto, la transferencia de fondos en la red Ethereum funciona de esta manera: la transferencia se procesa con la posibilidad de detectar errores. En este caso, la transacción se considera completada solo tras el éxito de la transferencia de fondos y en la ausencia de errores. De lo contrario, el contrato inteligente cancela la transacción. Si envías ETH a un contrato inteligente que no trabaja con él, este procesamiento de evento ayudará a evitar la pérdida de fondos, ya que esta transacción será rechazada en el lado del destinatario.

Según el estándar ERC20, las transmisiones de token deben considerarse como un evento, pero la función de transferencia no permite procesar esta transacción, porque simplemente aumenta el saldo del receptor sin ningún control previo. Esto puede llevar a un problema cuando el contrato no reconoce la transacción si el destinatario es un contrato inteligente y los tokens son enviados utilizando la función "transferencia". Esto provoca un comportamiento inesperado de la función de transferencia y conduce a un resultado impredecible, es decir, pueden perderse tokens y congelarse permanentemente.

¿Cómo resolvieron este problema los creadores de Ethereum? La respuesta fue simple: los desarrolladores introdujeron las funciones aprobación y transferFrom, dando al usuario el derecho de permitir que el contrato inteligente retire sus fondos cuando se envía una transacción. Los errores ya han sido excluidos.

Cabe destacar que los propios desarrolladores no consideran esto un error:

Esto no es una falla, sino un error del usuario. No se trata de una falla o vulnerabilidad, es una característica del diseño del estándar ERC20.

Sin embargo, este problema persiste, con más de $4 millones perdidos por participantes de ICOs durante el último año. Un ejemplo significativo es el contrato inteligente de la venta de tokens EOS que ha recibido aproximadamente $2,1 millones de los usuarios que no pudieron recuperar sus fondos.

Entre otros contratos que se embolsaron los fondos de los inversionistas, están los pertenecientes a Tronix ($400 000, Golem y ZRX) a más de $200 000 cada uno, y OmiseGo teniendo más de $150 000 congelados hasta la fecha. Parece que los nuevos usuarios no están aprendiendo de los errores ajenos.


ERC223: Corrección de errores de ERC20

Creador: Dexaran

Tipo: token estándar

Para resolver la vulnerabilidad de la primera versión del protocolo Ethereum, un usuario llamado Dexaran desarrolló el estándar ERC223, lo que obligó al estándar ERC20 a comportarse de la misma manera que cuando se transfieren ETH a contratos inteligentes. Ahora, en caso de un error en la función de transferencia, cuando el contrato inteligente no admite esta criptomoneda, la transacción se cancela. Para ello, se han introducido dos nuevas funciones:

  • La función de transferencia en sustitución de la antigua transferencia y transferFrom;
  • la función tokenFallBack para el destino contrato inteligente, que determina el tipo de monedas enviadas.

Muy a menudo los nuevos estándares son propuestos por tokens. Como regla general, son examinados cuidadosamente por la criptocomunidad y desarrolladores blockchain. Algunos de ellos, no muy conocidos, todavía tienen un potencial de reemplazar el ERC20.

ERC721: CryptoKitties y otras colecciones

Creador: Dieter Shirley

Tipo: token coleccionable

Los tokens creados con la ayuda del estándar ERC20 son intercambiables. En otras palabras, cada token es el mismo que el otro. Si uno lo está considerando una moneda, esta propiedad es necesaria, a la vez que desde el punto de vista de que las "criptomonedas coleccionables" como un token no encajan en absoluto.

Gracias al ERC721, cada token es único. Mike Raitsyn, co-fundador de la plataforma SnowFox, que ayudó a los proyectos con la emisión de más de 30 tokens, incluyendo ERC721, ve el potencial en este tipo de protocolo:

“Combinado con soluciones de escala de la Capa 2 (reparto, Plazma y canales estatales) obtenemos el último vehículo para poner cada activo significativo en una blockchain pública (o híbrido si te place) con el 100 por ciento de la inmutabilidad y seguridad”.

Los desarrolladores del juego online “asesino de Ethereum” CryptoKitties fueron unos de los primeros en usar este estándar. Se basa en el uso de atributos únicos: edad, color, raza. La mezcla de algunos atributos puede ser increíblemente rara, haciendo un kitten muy caro. No es de extrañar que esta idea fue recogida por otros proyectos de entretenimiento como CryptoPets, CryptoPuppies, e incluso CryptoPunks.

ERC827: Nuevo ERC20

Creador: Augusto Lemble

Tipo: token estándar

ERC827 es una de las últimas versiones de los protocolos Ethereum y fue llamado por el periodista blockchain Dariusz R Jakubowski "un nuevo ERC20”. A diferencia de su predecesor, este estándar puede transferir no solo el costo, sino también los datos de la transacción. Los desarrolladores se las arreglaron para agregar esta función útil en un fragmento de código relativamente pequeño con un tamaño de menos de 100 líneas. Esta funcionalidad amplía los horizontes del uso de la red Ethereum a escala nacional y permite mover datos de todo el mundo en cuestión de segundos. Además, esta norma permite comprobar una transacción por un tercero, por ejemplo, un agente o corredor de seguros, sin acceso a una clave privada. La seguridad y la fiabilidad de la blockchain al mismo tiempo están inalteradas.

ERC948: Paraíso para empresarios B2C

Creador: Kevin Owocki

Tipo: token para suscripción

El modelo de "suscripción" se ha vuelto muy popular en el mundo digital, atrayendo a más de 11 millones de clientes solo el año pasado. Un estudio de la compañía McKinsey mostró que el 15 por ciento de todos los compradores se han suscrito al e-commerce en 2017.

El protocolo CEI948ofrece a los desarrolladores una oportunidad para construir una plataforma donde las empresas pueden aprovechar un modelo económico que ha demostrado su utilidad en la venta minorista y la industria del software en la década pasada. Además, el modelo de suscripción puede ganar una mayor difusión en 2018 uniendo proyectos blockchain con sus clientes.

ERC884: "Lista blanca" para los inversores

Creador: Dave Sag

Tipo: token estándar

Basado en el proyecto de ley 2017, la Ley de Corporación General de Delaware (DGCL) oficialmente permitió el uso de blockchains para registrar accionistas. El ERC884 fue creado para activos liberados por cualquier empresa pública o privada en Delaware, y contiene varios complementos más allá de las capacidades del ERC20 Esto incluye el requerimiento de identificación y la lista de los propietarios de tokens como parte integral del propio token.

Evolución de los protocolos

La creciente competencia entre las criptomonedas principales impulsa la evolución en el desarrollo de nuevos protocolos. Cada nuevo token Ethereum estándar ofrece un conjunto de funciones más avanzadas que destaca de las existentes. La introducción de estos nuevos estándares permite a los desarrolladores resolver el atraso de la vulnerabilidad, el abuso o la ineficiencia, y da nacimiento a dApps blockchain más maduras. La oportunidad ha llegado para que el 2018 vea los nuevos protocolos, y solo el tiempo dirá si la industria será testigo de ERC20000 u otras herramientas innovadoras que surjan como consecuencia de la carrera de armamentos entre Ethereum y EOS.