Resumen sobre IOTA Talks – Contratos Inteligentes

278

En el IOTA Talk del pasado viernes, Dominik Schiener hizo un repaso de las últimas novedades anunciadas por la Fundación IOTA. Pasando por el partnership con Horizon hasta los Smart Contracts de IOTA. Esto último ha sido motivo de gran entusiasmo por parte de la comunidad ya que abre horizontes que hasta hace unos años ni siquiera nos imaginabamos. IOTA sigue demostrandonos su gran potencial y presentando posibles soluciones a problemas que poseen las actuales blockchain, como falta de escalabilidad para los Smart Contracts y el IoT o las enormes tarifas que hay que pagar al hacer uso de la red.

Hoy haremos un repaso con algunos de los puntos que Dominik Schiener, Co Fundador de IOTA planteó en la sesión de IOTA Talk respecto de las ventajas de los Smart Contracts de IOTA.

Contratos Inteligentes

Primero, vamos a repasar qué son los Contratos Inteligentes o Smart Contracts. Los Smart Contracts fueron introducidos alrededor del ’95 por Nick Szabo. Por ese tiempo, aún no existía ninguna plataforma creada que pudiera llevar esa idea de quitar intermediarios y toda la burocracia alrededor de los contratos y llevar ese «papeleo» a una plataforma digital que simplificara y descentralizara procesos.

Pero qué es un contrato? Se trata de un acuerdo, oral o escrito, en el que dos o más partes se comprometen a cumplir una serie de condiciones cómo por ejemplo, qué se puede hacer, cómo se puede hacer y qué sucederia ante el cumplimiento o incumplimiento de las condiciones. La redacción de los contratos significan la intervención de un tercero (escribano, notario), estos deben estar sujetos a las leyes del lugar dónde se lleva a cabo y conllevan a gran cantidad de tiempo y trámites burocráticos muy costosos.

Un contrato inteligente (en inglés Smart contract) en este caso, es un programa informático (scripts) que facilita, asegura, hace cumplir y ejecuta acuerdos por sí mismo. Sin necesidad de una tercera parte interviniente. El objetivo es brindar seguridad y reducir costos de transacción asociados a la contratación de terceros y también quitar del medio las distintas interpretaciones de un contrato.

Los Smart Contracts se empezaron a escribir con Blockchain, pero luego Ethereum se enfocó en esto con la idea de presentar un protocolo que dejara de lado los inconvenientes operacionales inherentes a Blockchain. Sería la próxima generación de Blockchain, pero con el correr del tiempo, también comenzaron a presentarse problemas como congesitión en la red y altas tarifas de «gas» (ETH).

Vamos a utilizar el ejemplo que Dom dió en el IOTA Talk:

«Si quiero transferir tokens de una dirección a otra dirección tengo que firmar la transacción (tx) que dice «quiero realizar esta acción que es transferir tokens de la dirección A a la dirección B».
Entonces lo que sucede es que yo envío la transacción, mi nodo realiza el cálculo localmente, valida que todo esté bien, si todo está bien lo transfiere a su par en esta red peer to peer y luego la transacción entra en el pool. En el mempool existen las transacciones que aún no han sido confirmadas por los mineros pero que son transacciones válidas. Dichas transacciones han adjuntado un fee y ahora deben aguardar a que los mineros las confirmen. Si todo va bien, luego de entre 10 o 20 (tiempo estimado que tarda una tx en Ethereum) segundos los mineros van a tomar tu transacción e incluirla en un bloque de la blockchain. El estado de la transacción cambiará y ahora reflejará el cambio de estado que ha sucedido con la transferencia de tokens de A a B»
Todo se ve bien a simple vista, el problema se genera cuando hay muchas transacciones al mismo tiempo en la red ya que las transacciones con un fee más alto serán prioritarias mientras que las que posean un fee más bajo estarán en el pool por un tiempo, hasta ser descartadas. Entonces para que sea aprobada tendrás que emitir la transacción nuevamente pero esta vez con un fee más alto para que pueda ser incluida en un bloque de la blockchain. También la red puede sufrir congestiones ya que si ocurren más transacciones de las que soporta la red, esta retarda el tiempo de respuesta. En estos últimos tiempos el tiempo de confirmación en Ethereum ha llegado a alcanzar 45 minutos debido al aumento de tráfico, lo que lleva a altos costos en las comisiones (fee) de Ethereum.

 

Image of transaction gas infographic

Por que utilizar IOTA como plataforma para los Smart Contracts

En blockchain los bloques son secuenciales, el proceso de verificación que requiere cada bloque, debe completarse antes de seguir con el siguiente. A medida que se crean nuevos registros, estos son primeramente verificados y validados por los nodos de la red y luego añadidos a un nuevo bloque que se enlaza a la cadena. Si la cantidad o volumen de transacciones recibidas es muy grande, se van a ir acumulando y provocando una congestión en la red hasta que puedan ser procesadas. Este problema es inherente a la cantidad de transacciones que se realizan hoy en día y exponen el problema de «cuello de botella». En pocas palabras, en un escenario en el que millones de transacciones requieran de procesamiento simultaneo no podrán ser llevadas de manera óptima utilizando blockchain porque no escala horizontalmente.

En IOTA la estructura es totalmente diferente. Todo sucede a través de una arquitectura DAG – Grafo Acíclica Dirigida (Directed Acyclic Graph), en la que no hablamos de bloques secuenciales si no de una red de transacciones conectadas entre sí. A esta red la llamamos Tangle:

 

Algunos Highlights tomados de la charla:

  • IOTA se está construyendo con la visión de ser una arquitectura modular. Siempre mantendrá el foco en hacer que las transacciones ya sean maquina a máquina, humano a máquina sean en una red segura, escalable y descentralizada.

 

  • Gracias a esta arquitectura modular, podemos empezar a crear nuevos casos de uso que aprovechen el IOTA Tangle o que se basen en él como solución de capa 2.

 

  • Podemos crear Smart contracts sobre la Tangle en la que un Smart Contract utiliza la arquitectura paralela de IOTA para crear su propia Blockchain.

 

  • Imagina crear blockchains sobre la red de IOTA: Todo pude correr en paralelo en vez de en una cadena secuencial. Se pueden tener muchas Ethereum chains corriendo sobre IOTA. Multiples smart contracts pueden ser ejecutados al mismo tiempo sin tener que esperar la confirmación de transacciones previas.

 

  • Sería el equivalente a correr multiples cadenas de Ethereum encima de la red de IOTA. Se aprovecha la característa feeless de la red de IOTA, por lo tanto no deberían pagar fees a mineros. «Aunque – aclaró Dom – probablemente haya que pagar algun tipo de fee por la ejecución del smart pero será algo de lo que hablaremos más adelante.»

 

  • Estamos también asegurando el «estado» en la Tangle de IOTA lo cual lo convierte en verificable al 100 por ciento y tambien lo hace inmutable.

 

  • En los Contratos Inteligentes, todo se trata de llegar a un consenso. Si realizo una transacción de A a B tenemos que llegar a un consenso acerca de si esa transacción cumple los requisitos para ser validada, es por eso que Ethereum, utiliza mineros. Estos mineros actuan como validadores.
    «Con los IOTA Smart Contracts le permitiremos al desarrollador del contrato inteligente decidir quién va a ser el «comité» que va a asegurar el consenso del contrato inteligente.»
  • También dijo que los Smart Contracts de IOTA contarán con un Mercado abierto y público para los validadores que van a asegurar estos Contratos Inteligentes. «Nos estamos centrando en la construcción de un nuevo entorno que es totalmente flexible en el que el desarrollador puede decidir cuál es el mejor entorno para que pueda elegir qué nivel de seguridad que necesita, la configuración del validador, cuál será la estructura de las fees, cuánto debe ser pagado al validador.»

Aseguró también que en la Fundación «Estamos muy entusiasmados con esto porque puede resolver los cuellos de botella que tienen las blockchain actuales y además es una arquitectura completamente nueva que asegura que IOTA se está expandiendo a nuevos ecosistemas y trayendo nuevos casos de uso a nuestro ecosistema».

Pensamientos finales:

IOTA se prepara para entregar un protocolo novedoso dentro de las de las DLT’S. Este repaso es solo el comienzo de una serie de novedades respecto del uso de los Smart Contracts de IOTA y todo lo que podremos hacer con ellos.

Por qué las personas elegirían seguir pagando fees altisimos y esperando largo tiempo por la confirmación de una transacción teniendo a IOTA?

Yo hace años no lo hago. 😉

 

 

 

 

 

Comentarios

comentarios

pasarela de pagos con criptomonedas