La mayoría de las ICOs se basan en ethereum como plataforma, y más específicamente en los contratos inteligentes del ethereum. Las participaciones de los proyectos ICO se suelen vender por ETH o BTC, y se adjudican en forma de tokens (también conocidos como tokens ERC-20).
Por lo tanto, aunque estamos acostumbrados a ver y tratar con tokens ERC-20, pocas personas saben exactamente qué son, cómo funcionan o incluso qué significa ERC-20. (Si se lo está preguntando, ERC significa Ethereum Request Comment, y 20 es el número arbitrario asignado a la propuesta).
Fundamentos del ERC-20
Como su nombre indica, la moneda nativa del blockchain del ethereum es el ether (BITFINEX: ETH/USD.BITFINEX). Pero los tokens ERC-20 también actúan como monedas en ethereum. El ethereum es el corazón y la mente de los tokens ERC-20. Su blockchain procesa sus transacciones y su máquina virtual ejecuta sus contratos inteligentes.
Ethereum.org describe el mecanismo de las ICOs de la siguiente manera:
- Los clientes pagan el contrato inteligente (el robot está en el centro).
- El robot envía el dinero al propietario del contrato.
- El robot devuelve los tokens ICO del propietario a los clientes.
Recuerde que estos tokens no son independientes. Residen en el blockchain del ethereum y dependen de su capacidad de computación distribuida.
Riesgos de los contratos inteligentes
Aunque los contratos inteligentes son muy eficientes, conllevan ciertos riesgos. Por ejemplo, un contrato inteligente no puede ser cambiado una vez que es iniciado por los desarrolladores de la ICO. Si un contrato inteligente contiene errores o vulnerabilidades, usted podría fácilmente perder sus fondos, tokens o ambos.
Cosas por el estilo han ocurrido con frecuencia a lo largo de la historia del ethereum. El ejemplo más notable fue el pirateo del DAO de 55 millones de dólares, y su corrección requirió una bifurcación de la red ethereum (que es como se creó el Ethereum Classic).
¿Por qué es necesaria la norma ERC-20?
Antes de la aparición de la norma ERC-20, existían muchos problemas de compatibilidad entre las distintas formas de tokens del ethereum. Cada token tenía un contrato inteligente completamente único.
En otras palabras, tenía que escribir un código completamente nuevo para cada cambio o cartera, para poder alojar un nuevo token. Y apoyar el creciente conjunto de tokens se estaba volviendo excesivamente problemático y consumía mucho tiempo.
Como solución, la industria inventó un protocolo estándar para todos los tokens, ahora conocido como ERC-20.
El estándar token ERC-20 tiene seis parámetros obligatorios para cualquier contrato inteligente, más tres opcionales (¡pero recomendados!). Opcionalmente, puede establecer el número máximo de decimales que soporta un token. A modo de comparación, el bitcoin permite ocho números después del punto decimal, así como su símbolo (normalmente un código de 3 ó 4 dígitos) y su nombre. (¡Así que elija algo inspirador!)
Las seis funciones obligatorias se refieren al número y la transferencia de tokens. Los dos primeros se utilizan para asignar el estado inicial de la distribución de tokens:
- La función totalSupply del token debe ser fijada. Una vez alcanzado el máximo, el contrato inteligente no podrá crear más tokens.
- La función balance0f asigna un número inicial de tokens a cualquier dirección, normalmente los propietarios del ICO.
También se necesitan dos métodos de transferencia para la distribución adicional a los usuarios y el envío de tokens entre usuarios. Son vitales para las funciones del mercado secundario:
- La función transfer mueve tokens desde el suministro total a cualquier usuario individual que compre durante la fase ICO.
- La función transferFrom es utilizada para enviar tokens de una persona a otra.
Se necesitan dos funciones más para verificar las dos funciones anteriores:
- La función approve verifica que un contrato inteligente pueda distribuir tokens, basándose en el suministro restante.
- Por último, la función allowance se asegura de que una dirección tenga suficiente saldo para enviar tokens a otra dirección.
Estos 6 sencillos pasos han permitido a los proveedores de carteras e intercambios crear una única base de códigos que puede interactuar con cualquier contrato inteligente ERC-20.
Aplicaciones de los tokens ERC-20
Los tokens ERC-20 tienen muchos usos. Por ejemplo, pueden actuar como participaciones de proyectos, certificados de propiedad de activos, puntos de lealtad o incluso simples criptomonedas. También es posible que los tokens ERC-20 cumplan simultáneamente varias de estas funciones.
Creación del token ERC-20
Todos los tokens son creados por contratos inteligentes. Estos contratos inteligentes gestionan las transacciones del token y dan cuenta del saldo de cada titular del token. Por ejemplo, la página CoinCreator de CoinLaunch le permite crear fácilmente sus propios tokens ERC-20.
Mientras un ICO está activa, usted debe recibir los tokens de la ICO al tipo de cambio acordado, si envía fondos en criptomonedas y sus datos (lo más importante, su dirección postal) a su contrato inteligente.
Problemas con los tokens ERC-20
El protocolo ERC-20 por sí solo no siempre es suficiente para los propósitos de un token. No es más que un estándar para crear tokens basados en ethereum, y no asegura tokens útiles, valiosos o incluso funcionales.
Un token puede personalizarse aún más, siempre y cuando cumpla con los requisitos básicos del ERC-20. Una desventaja de la norma ERC-20 es que hace que el despliegue de un token sea trivial a nivel técnico. Como resultado, muchos equipos que de otro modo habrían sido incapaces de lanzar una ICO han podido hacerlo.
El gran número de tokens lanzados (¡47.454 y contando!) conduce a una abundancia de tokens muy similares, lo que hace que el proceso de selección sea más difícil y confuso para los posibles inversores.
Otro problema es que algunos proyectos implementan las directrices de manera idiosincrásica, lo que crea más confusión sobre la forma en que operan sus tokens. Por ejemplo, a veces se envían tokens a los contratos inteligentes de otras ICOs. Si ese contrato no ha permitido este tipo de token, entonces los tokens se perderán. A finales de 2017, más de 3 millones de dólares se perdieron de esta manera. La propuesta ERC-223 pretende contrarrestar este defecto.
Conclusión
La creación del estándar token ERC-20 ha acelerado el crecimiento en todo el espacio de las ICOs mediante la estandarización de funciones que facilitan el desarrollo de tokens por parte de los proyectos. El protocolo también ha traído consigo una mayor sinergia entre los proyectos de las ICOs, los intercambios y los proveedores de carteras. Como respuesta a problemas y vulnerabilidades comunes en los tokens de las ICOs, el protocolo ERC-20 probablemente se mejorará y ampliará en el futuro.