Ethereum se distinguió desde sus inicios por su capacidad de ejecutar contratos inteligentes, que pueden definirse como acuerdos capaces de cumplirse de forma automática una vez que las partes han establecido los términos.
De la amplia variedad de usos que tienen los contratos inteligentes que pueden crearse en Ethereum, hay una categorĂa de estos diseñados para intercambiar activos digitales, denominados tokens de Ethereum, de manera segura. En otra palabras, un token de Ethereum puede definirse de manera básica como un activo digital que corre en la plataforma Ethereum, se beneficia de esa infraestructura, -pues no requiere una blockchain propia y cualquier proyecto puede adoptar su uso- y al mismo tiempo refuerza el ecosistema de Ethereum al impulsar la demanda de ether, la moneda nativa de Ethereum, que se requiere para ejecutar los contratos inteligentes.
El primer estándar para un token de ethereum se llevĂł a cabo con una ERC, (Ethereum Request for Comments) o solicitud de comentarios a los desarrolladores de Ethereum, que es el primer paso para la definiciĂłn de este tipo de criptoactivo. Las ERC son un mecanismo de consulta propio de las comunidades de software abierto. En el caso de Ethereum, la solicitud fue discutida por los desarrolladores y posteriormente convertida en un estándar del software, de manera que cualquier aplicaciĂłn, incluso otros contratos inteligentes, pudieran interactuar entre sĂ, intercambiando el valor del token.
Estándar necesario
La propuesta ERC20, introducida en noviembre de 2015, describe la interfaz de un token con el contrato inteligente, a través de las funciones estándar que ese token puede realizar dentro del contrato. Entre esas funciones están la siguientes: obtener el número total de tokens emitidos, transferir el token, aprobar el gasto del token y obtener el saldo de la cuenta.
Pueden definirse tokens con diferentes propĂłsitos, pero si estos se ajustan a lo especificado a ERC20, esos tokens interactĂşan de la misma manera con otros contratos inteligentes y con las aplicaciones descentralizadas o Dapps.
Esto llevó a un uso muy extendido del estándar, especialmente cuando comenzaban a surgir muchas ofertas iniciales de moneda o ICO para la recaudación de fondos. Básicamente, los tokens ERC20 permiten lanzar un proyecto, una vez que se ha desarrollado un token para un fin determinado, sin tener blockchain propia.
Independientemente de otras funciones del token, o de las especificidades de los contratos inteligentes, el hecho de usar las
especificaciones ERC20 aseguraba la transferencia de valor. En la actualidad, según Etherscan, hay más de 90.000 contratos que usan tokens ERC20.
ERC20 presentó algunas limitaciones con la función de transferencia pues hay dos tipos de destinatarios: o se transfiere hacia un contrato o hacia una dirección externa. Los comandos usados en cada caso son diferentes, y cuando se usa el comando inadecuado, los tokens quedan «congelados» dentro del contrato y se pierden.
Esto no ha impedido que los ERC20 sigan usándose ampliamente, aunque han surgidos otras propuestas ERC, como la ERC223, cuya transferencia al contrato consumirĂa menos gas y están diseñados para evitar pĂ©rdidas accidentales, y la ERC777, -en borrador ambas- que posee especificaciones que en teorĂa superan esas limitaciones. En la propuesta ERC777, por ejemplo, se resuelve la limitaciĂłn de transferencia mencionada del estándar ERC20, con nuevos atributos para decidir cuándo debe notificar a los contratos o cuando a las direcciones regulares sobre el envĂo de tokens.
Otra propuesta basada en la ERC20, el ERC621, permite aumentar o disminuir el total de tokens emitidos pues en el caso de la ERC20 esta cantidad no se puede modificar. Esto se logra agregando dos nuevas funciones para aumentar o disminuir el número máximo de tokens a emitir.
Entre los tokens ERC20 más populares están Augur, Golem, EOS y TRON, por mencionar sólo algunos. Los impulsores de los dos últimos decidieron migrar los tokens respectivos hacia una red propia.
Los coleccionables
La idea de un token coleccionable, no puede realizarse con el estándar ERC20, pues bajo este estándar todos los tokens son idĂ©nticos. Esto llevĂł al desarrollo de los NFT (Non Fungible Tokens) o tokens Ăşnicos, bajo el estándar ERC721. Fungible es sinĂłnimo de consumible; un token fungible es idĂ©ntico a otro, sustituible por este. En cambio, los tokens ERC721 son Ăşnicos y son indivisibles, de allĂ su caracterizaciĂłn como ‘no fungibles’.
El juego CryptoKitties, basado en tokens ERC721, lanzado en octubre de 2017, tuvo una aceptaciĂłn casi instantánea y masiva. PermitĂa adquirir, criar y posteriormente buscarle pareja a gatos con caracterĂsticas Ăşnicas. El dĂa del lanzamiento oficial, el 2 de diciembre de 2017, el primer gato de la serie, Genesis, fue vendido por 247 ETH ($117.000) ese dĂa. Los usuarios cuentan con una amplia paleta de caracterĂsticas o “atributos gatunos” (un genoma de 256 bits) que pueden pasar o no a la siguiente generaciĂłn. La poblaciĂłn total de CryptoKitties no puede superar los 4 millones de felinos.
El Ă©xito de este enfoque de personajes o partes coleccionables se basa en la tendencia muy arraigada en algunas personas de coleccionar objetos fĂsicos, tendencia que ahora se extiende a objetos digitales o virtuales. Si bien no todos los tokens coleccionables están necesariamente ligados a la red Ethereum -los exitosos Rarepepes habitan en la red Bitcoin- el estándar ERC721 se usa en más de 500 Dapps, segĂşn la lista de aplicaciones distribuidas de DappRadar.
El gran éxito de Cryptokitties dio lugar a numerosos juegos bajo la forma de aplicaciones descentralizadas sobre Ethereum entre ellos, Etherbots, un juego con robots que incluye la novedad de que se va armando pieza a pieza. Cada una de estas es un token ERC721. Algo interesante de este juego es que los robots se enfrentan en batalla, lo cual enriquece el aspecto económico del juego.
Acciones en la blockchain
La modificaciĂłn del tĂtulo 8 del estatuto de la ley Nro. 69 del estado de Delaware, para permitir el uso de blockchain en los registros de acciones corporativas, permitiĂł crear un token comercializable compatible con el ERC20, donde cada token representa una acciĂłn de la compañia. Dicho token, llamado token DGCL (Ley General de Corporaciones de Delaware), proviene de la propuesta EIP 884.
Este token DGCL agrega a las especificaciones ERC20, las siguientes:
- El token cubre las funciones de reportes exigidos por la ley.
- Los dueños de los tokens deben verificar su identidad
- Cada token debe corresponder a una sola acciĂłn
- Hay un mecanismo para cancelar los tokens cuando un cliente pierde la llave privada y re-emitir los tokens y enviarlos a una nueva direcciĂłn.
Pagos por subscripciĂłn
Como se aprecia en el caso del token DGCL, hay aplicaciones importantes que no pueden ser manejadas por los tokens ERC20 y por eso se procede a crear una extensiĂłn del mismo con funciones adicionales.
Un reto interesante aparece con los pagos de servicios por subscripciĂłn y los intentos para implementar este tipo de pagos en un contrato con tokens ERC20 no resulta satisfactorio. Por eso se ha lanzado la propuesta ERC948, especĂficamente para atender las particularidades de las subscripciones.
En un pago por subscripciĂłn un contrato inteligente debe determinar el retiro de cierta cantidad de tokens de los usuarios Ăşnicamente cuando corresponda la realizaciĂłn del pago, sin que sea necesaria la aprobaciĂłn del cliente cada vez que este procedimiento se lleve a cabo. Una vez fijado el monto del pago se retirarĂan los tokens correspondientes del monedero cada cierto perĂodo de tiempo, hasta que Ă©l usuario cancele la suscripciĂłn. Esta propuesta fue publicada por Consensys Media.
La creaciĂłn y adaptaciĂłn de los diversos tokens ERC permite crear aplicaciones distribuidas en muchos campos de actividad, lo cual conduce a la tokenizaciĂłn de un nĂşmero creciente de actividades. Por ejemplo, Fabian Vogelsteller, el co-desarrollador del ERC20, junto al creador de Ethereum Vitalik Buterin, ha propuesto otro estándar, el ERC725 que permitirĂa verificar la identidad Ăşnica de personas y máquinas a travĂ©s de la red Ethereum.
Las diferentes propuestas de tokens sobre Ethereum estimulan no sĂłlo la creaciĂłn de aplicaciones descentralizadas dirigidas a diferentes áreas de actividad, tambiĂ©n extienden el alcance de la tecnologĂa blockchain más allá de un mero soporte para la creaciĂłn de criptomonedas, con aportes significativos en seguridad, transparencia e irrefutabilidad.
Imagen destacada por alswart / stock.adobe.com
5