The Tangle Angle: ¿Qué son los contratos inteligentes de IOTA?

IOTA es uno de los proyectos más emocionantes en el espacio con un protocolo subyacente único llamado “IOTA Tangle” o “DAG”. Tangle ha sido diseñado para superar las ineficiencias de la cadena de bloques tradicional y presenta una nueva forma para que un sistema P2P descentralizado llegue a un consenso. IOTA permite micropagos instantáneos sin incurrir en una tarifa, asegurando el cumplimiento de las tareas más pequeñas en la red unificada como quedarse en un etiqueta, cerrar el grifo del baño, etc. Esta función permite la integración de IOTA en el Internet de las cosas mediante la realización de transacciones entre cualquier máquina con Internet o puntos. IOTA aborda los principales problemas inherentes del Internet de las cosas, es decir, la seguridad y la escalabilidad .

La Fundación IOTA

La Fundación IOTA se formó en 2015 como un proyecto sin fines de lucro por cuatro veteranos de la tecnología blockchain: David Sønstebø y Dominik Schiener.

  • David Sønstebø: Describiéndose a sí mismo como un “emprendedor en serie” de tecnologías, Sønstebø está involucrado en Internet de las cosas, tecnologías de contabilidad distribuida / blockchain / enredo, ciudades inteligentes, identidad digital, gobierno electrónico y diseño de hardware innovador. También es el fundador y se desempeña como CEO de una empresa emergente de hardware de IP sigilosa que desarrolla un procesador de energía ultrabaja para Internet de las cosas.
  • Dominik Schiener: Schiener fundó varias empresas antes de IOTA – Finhaus Ltd. en 2015, BitHaus GmbH en 2014 y Fieyy en 2012. Está trabajando en varios proyectos basados en blockchain y contratos inteligentes, especialmente en nuevas soluciones de gobernanza que hacen uso de ambos. , inteligencia colectiva y nuevas tecnologías para crear sistemas más eficientes, económicos y transparentes.

El equipo de IOTA está segregado en grupos de trabajo enfocados en promover y permitir el uso de IOTA en Identity y MyDate; Causas sociales; Cadena de suministro; Movilidad; E-Salud; Fintech; Infraestructura y ciudades inteligentes; I + D; Interoperabilidad; Energía; Industria 4.0; y otros.

Tangle – ¿Cómo funciona?

El enredo de IOTA no tiene bloqueos y cada transacción confirma dos transacciones más antiguas, es decir, para que cada transacción sea aprobada, se basa en una o más transacciones siguientes para suceder (IOTA Tangle necesita dos transacciones principales). Esto forma una estructura arbórea sin fin. A diferencia de Bitcoin o Ethereum, el consenso y la validación los realiza toda la red de participantes activos dando a todos la misma voz en la red con respecto al proceso de realización de transacciones.

El proceso tiene tres pasos:

  • Al principio, un usuario firma las transacciones con una clave privada.
  • Luego, Tangle utiliza el algoritmo Markov Chain Monte Carlo (MCMC) para seleccionar dos transacciones no confirmadas y verificar si estas no producen resultados contradictorios.
  • A continuación, se requiere que el nodo resuelva un rompecabezas criptográfico para validar la transacción. Este paso es similar al de Bitcoin significa algún sistema de consenso de prueba de trabajo.

Una vez completada con éxito, la red acepta la transacción. La ejecución del algoritmo MCMC proporciona información sobre la posibilidad de la transacción que permite el sistema. IOTA ofrece a los comerciantes la libertad de decidir con qué probabilidad quieren comenzar a aceptar pagos. IOTA trabaja con un único nodo administrador llamado Coordinador, que confirma todas las transacciones en un conjunto de hitos publicados. El Coordinador garantiza la seguridad en la etapa inicial de la red a medida que crece. Eventualmente se eliminará cuando la red sea lo suficientemente grande. Además, curiosamente, los tokens de IOTA no se pueden extraer.

Maraña vs Blockchain

La arquitectura Tangle presenta varias ventajas sobre la tecnología blockchain tradicional: es altamente escalable, descentralizada, de naturaleza modular y gratuita.

  • Altamente escalable: el gráfico acíclico dirigido (DAG) proporciona una solución más descentralizada que blockchain. La validación de transacciones paralelizadas de Tangle permite que la plataforma IOTA maneje una gran cantidad de transacciones que cualquiera de las tecnologías de cadena de bloques de la competencia, lo que significa un rendimiento muy alto y conduce a una verdadera solución de transacciones de máquina a máquina. Esto significa que todos los dispositivos de IoT pagan o realizan transacciones entre sí por servicios prestados en una red extensamente compleja sin la necesidad de un libro de contabilidad digital o un proceso de consenso de libro de contabilidad para ralentizarlos.
  • Sin tarifas por transacciones: Tangle ha eliminado la necesidad de mineros o validadores. En cambio, los usuarios de la red asumen esta tarea de validación a través de la computación, lo que lleva a cero tarifas de transacción para intercambios de pequeño valor. Por lo tanto, los ecosistemas basados ​​en IoT de IOTA pueden manejar grandes volúmenes de micro y nano transacciones sin preocuparse por las tarifas altas o la imprevisibilidad de las tarifas.
  • Compatible con IoT: IOTA Tangle está diseñado y optimizado teniendo en cuenta la limitación de los dispositivos IoT. Como estos dispositivos participarán activamente en la validación de las transacciones de la red, los dispositivos IoT deben manejar el cliente IOTA.
  • Tolerante a particiones: en una cadena de bloques, todos los usuarios deben sincronizar para cada transacción. Por otro lado, en IOTA, existen múltiples enredos en numerosos clústeres desconectados, lo que le permite realizar transacciones asincrónicas fuera de línea. Esto funciona perfectamente para dispositivos IoT ya que la asincronicidad es necesaria para sus operaciones.
  • Seguridad: aunque blockchain ha conquistado el mundo de la tecnología, con la eventual introducción de la computación cuántica, su dependencia de la criptografía puede convertirse en un problema. La computación cuántica permitirá a los piratas informáticos lanzar ataques de fuerza bruta contra aplicaciones basadas en blockchain. Aquí es donde Tangle puede brillar, ya que utiliza un algoritmo resistente a los cuánticos llamado Winternitz One-Time Signature Scheme, que proporciona una seguridad inherente mucho mejor contra esta amenaza.

Mecanismo de consenso de IOTA

El mecanismo de consenso de IOTA solía basarse en un coordinador centralizado que se aseguraba de que nadie se portara mal en el ecosistema. La idea era que los nodos honestos recogieran transacciones que aún no se hayan validado y las atacaran a Tangle. Desde entonces, IOTA ha descentralizado a su coordinador con el protocolo Coordicide. Si bien esto es muy admirable, IOTA tuvo que dar un paso más para garantizar que el proceso de consenso sea lo más fluido posible.

Votación de Shimmer

  • El consenso de Shimmer solo se preocupa por la opinión de un subconjunto de nodos de centros comerciales. Su propósito principal no es cambiar la opinión de la supermayoría.
  • Los nodos no necesitan votar en cada transacción. Solo se requieren votos para resolver conflictos.
  • Si un nodo recibe dos subenredos diferentes simultáneamente, rechazará el voto a la vez y decidirá sobre un “único superviviente”.
  • Si el nodo viola esta regla, será castigado con la eliminación permanente de la red.

Mecanismos alternativos de consenso

IOTA también busca integrar los siguientes mecanismos de consenso:

  • Consenso celular.
  • Consenso probabilístico rápido.

Consenso celular

  • Este proceso parece un autómata celular en el que los nodos individuales actúan como células que regularmente toman nota del comportamiento de sus vecinos.
  • Los nodos ajustan su opinión personal según el estado de su vecino.

Ventajas:

  • La implementación es sencilla y asincrónica.
  • Es muy resistente a los vectores de ataque y la sobrecarga de sus mensajes es muy eficiente.

Desventaja:

  • Si bien no hay duda de sus capacidades, el mayor problema con el consenso celular es su naturaleza caótica y compleja. Debe probarse a fondo en una red de prueba antes de la implementación de la red principal.

Consenso probabilístico rápido (FPC)

  • FPC es similar a Cellular, pero la única diferencia es que en lugar de ser un sistema asincrónico, el proceso de votación ocurre en múltiples rondas.
  • En cada ronda, un nodo elige aleatoriamente algunos de sus nodos pares y les pide que den su opinión actual sobre una consulta en particular.
  • Luego, el nodo crea su vista basada en la mayoría de las respuestas que recibe del resto de la red.
  • El nodo cambia continuamente su vista en función de la mayoría que recibe en las rondas posteriores.
  • Después de que el nodo no cambia su estado después de un cierto número de rondas de votación

Ventaja:

  • El sistema utiliza un umbral no fijo para su mayoría. Una secuencia numérica aleatoria descentralizada deriva este umbral. Hacer que el umbral no sea fijo asegura que los atacantes no usen armas nucleares en el algoritmo para retrasar el consenso.
  • El consenso está garantizado en un pequeño número de rondas y con un pequeño conjunto de nodos compatibles con la filosofía de votación de Shimmer.

Colaboraciones y proyectos de IOTA

La Fundación IOTA ha establecido una colaboración con Volkswagen e Innogy para desarrollar CarPass, una tecnología basada en IOTA que ofrece características como pistas de auditoría seguras, identidades digitales y redes de carga para automóviles.

Con Microsoft, Deutsche Telekom, Fujitsu y Samsung, la Fundación abrió un mercado de datos utilizando la tecnología IOTA. La Fundación IOTA también es miembro fundador de Trusted IOT Alliance, que incluye cuatro firmas Bosch, ConsenSys, USbank y Cisco. Según la publicación de IOTA en Twitter, Porsche Digital Labs e IOTA trabajarán juntos en un proyecto iniciado por Startup Autobahn llamado Programa 4.

En septiembre, la plataforma de procesadores CognIOTA (CPU) anunció IOTA como su instrumento de pago. La plataforma permite a los usuarios alquilar sus CPU inactivas para que otros en la red las utilicen en tiempo real.

El MAM (mensajes autenticados enmascarados) de IOTA ya se está utilizando en el kit de desarrollador Bosch XDK IoT y en RuuviTag, una baliza de sensor de código abierto de Ruuvi Labs. Ejemplos de estos son estaciones meteorológicas portátiles, balizas de proximidad Eddystone, localizadores de vehículos y aplicaciones similares que informan de forma segura datos de telemetría o reciben instrucciones. El 29 de mayo de 2018, IOTA lanzó Trinity Wallet, accesible tanto desde el escritorio como desde el dispositivo móvil.

¿IOTA podrá realizar contratos inteligentes?

Las principales propiedades de la maraña, principalmente escalabilidad, alto rendimiento y transacciones sin comisiones, se prestan orgánicamente a varias verticales como la cadena de suministro, las ciudades inteligentes, el IoT industrial, etc. Para que todo esto sea una realidad, IOTA debe tener funcionalidades de contrato inteligente. Entonces, antes de continuar, entendamos qué es un contrato inteligente.

¿Qué es un contrato inteligente?

Piense en cómo era un contrato y qué es. Es un acuerdo legalmente vinculante entre dos personas, en el que una de las partes proporciona un servicio, mientras que la otra les paga por él. Todo esto es supervisado por un tercero, como un abogado. El tercero se asegura de que nadie viole los términos del contrato.

El problema aquí es obvio. ¿Cómo puede asegurarse de que la supervisión de un tercero haga bien su trabajo? Afortunadamente, los contratos inteligentes nos permiten crear un sistema en el que podemos negar la necesidad de un tercero. Nick Szabo conceptualizó por primera vez la idea, y son una lista de instrucciones deterministas que son automatizadas y autoejecutadas. Los contratos inteligentes funcionan con una filosofía de “SI ES ESTO ENTONCES”.

  • SI: Se cumple la condición.
  • ESTO: La acción se ejecuta.
  • ENTONCES: Se comprueba la siguiente condición.

Cada línea de código del contrato inteligente se ejecuta de forma secuencial.

¿Son los contratos inteligentes en IOTA capa-1 o capa-2?

Layer-1 y Layer-2 son términos que se utilizan para describir funciones que están dentro y fuera de la cadena, respectivamente.

Contratos inteligentes de capa 1
Protocolos como Ethereum utilizan contratos inteligentes de capa 1. El código del contrato es ejecutado y validado por todos los nodos de la red.

Ventajas:

  • Cuanto mayor sea la red, mayor será la seguridad del contrato inteligente.
  • No es necesario que proporcione una firma para transferir tokens desde su cuenta.

Desventajas:

  • El mayor problema con los contratos inteligentes de capa 1 es que no son muy escalables, ya que la mayoría de los nodos deben ejecutarlos.
  • Las interacciones dentro de los contratos están sujetas a tarifas de transacción de red volátiles. Además, estas tarifas son proporcionales al precio del token subyacente.
  • Los contratos inteligentes de capa 1 también tienden a inflar la cadena de bloques. Entonces, si una dApp se vuelve popular, la demanda puede retrasar las transacciones de rutina dentro de la red.

Contratos inteligentes de capa 2

Por otro lado, tenemos contratos inteligentes fuera de la cadena que se ejecutan sobre la cadena de bloques subyacente. Un comité elegido por el propietario completa el contrato. El comité es un subconjunto de todos los nodos de la red.

Ventajas:

  • El costo general de una interacción de contrato inteligente no está vinculado a la volatilidad del activo subyacente.
  • El contrato no hincha la cadena de bloques principal.
  • Dado que una gran mayoría de los nodos no necesita aprobar el contrato, es mucho más escalable.

Desventajas:

  • Dado que el contrato no se ejecuta dentro de la cadena de bloques, deberá firmar cada transacción.
  • No tan descentralizado como la opción de capa 1.

¿Cómo funcionan los contratos inteligentes en IOTA?

IOTA utiliza contratos inteligentes de capa 2, que actúan como “máquinas de estado inmutables”. ¿Qué significa eso exactamente? Bueno, echemos un vistazo:

  • La inmutabilidad significa que cada vez que se agregan algunos datos dentro de la maraña de IOTA, no se pueden manipular. Tangle también proporciona transparencia total y un seguimiento de auditoría completo de sus transacciones.
  • El estado de un contrato inteligente incluye datos como saldos de cuentas, datos de entrada y cambios realizados en el caso de un contrato inteligente a lo largo del tiempo. Cada transición de estado realizada en Tangle se considera una actualización de estado.

¿Por qué los contratos inteligentes de IOTA son de capa 2?

Como se mencionó anteriormente, el principal problema con los contratos inteligentes de capa 1, como en Ethereum, es su grave falta de escalabilidad. Cada interacción de contrato inteligente es como una transacción típica de blockchain que debe ser aprobada por la mayoría de los nodos de la red. Esto crea un cuello de botella masivo en todo el proceso. A medida que la red aumenta de tamaño con el tiempo, retrasará aún más el proceso.

Junto con eso, también existe un problema de costos. No solo tiene que pagar las tarifas de transacción, sino que también deberá pagar las “tarifas del gas” para mantener el contrato en funcionamiento. Cada línea de código cuesta una cierta cantidad de poder computacional minero, llamado “gas”. Como tal, la ejecución de estos contratos puede resultar costosa, lo que puede impedir que los desarrolladores ingresen al espacio.

Esta es la razón principal por la que los contratos inteligentes de IOTA son protocolos de capa 2. Todos los contratos inteligentes de IOTA pueden ejecutarse en un entorno localizado sin obligar a toda la red a resolver miles de millones de transacciones diferentes todos los días. Otro aspecto interesante de esta propiedad es que permitirá a IOTA integrar la fragmentación en el futuro sin esfuerzo.

Contratos inteligentes en IOTA: los componentes

Ahora, echemos un vistazo a los diferentes componentes que componen un contrato inteligente de IOTA.

1 El propietario

Al igual que con cualquier protocolo, cada contrato inteligente tiene un propietario. El propietario puede ser una sola entidad o un grupo de personas.

El propietario se encarga de:

  • Crear el código subyacente y enviarlo a la red para su validación.
  • No están a cargo de ejecutar el contrato.
  • Selección del comité encargado de la ejecución del contrato. El comité consta de nodos específicos a los que se designa un contrato particular para su implementación.
  • Decidir cuántos nodos en el protocolo necesitan validar una transacción de contrato para que pase. Este número también se conoce como “quórum”.
  • Definición de parámetros generales de configuración del contrato inteligente.

Los propietarios deben decidir cómo personalizar sus contratos inteligentes, según su función y propósito. P.ej. Un contrato inteligente que maneja un contrato de juego, que hace microtransacciones, necesita solo unos pocos nodos en el comité.

2 Incentivos económicos y sociales

Después de leer la sección anterior, una pregunta bastante válida para hacer aquí es: ¿Por qué los nodos de IOTA deberían molestarse en ser parte de un comité para su contrato? ¿Qué tienen que ganar? Después de todo, se supone que las transacciones de IOTA son gratuitas, ¿verdad? Bueno … no tanto.

Resulta que puede integrar ciertos incentivos económicos y sociales en sus contratos en beneficio de su comité. Primero, veamos algunos incentivos financieros.

  • Los propietarios pueden cobrar una tarifa en sus contratos inteligentes de IOTA para cubrir los costos operativos. Esto básicamente actúa como una recompensa.
  • Tanto el propietario como el comité pueden recibir estas recompensas. El propietario puede negociar con los nodos del comité para decidir cómo se distribuye la recompensa.

Junto con el aspecto económico, los comités tienen la oportunidad de ganar algunos puntos sociales y construir una buena reputación.

  • Los propietarios de contratos inteligentes solo querrán elegir nodos que tengan una buena reputación e historial de trabajo.
  • Esto solo incentivará a los nodos del comité a hacer todo lo que esté a su alcance para brindar el mejor servicio posible.

3 Comité y Quórum

El comité posee la dirección del contrato inteligente y contiene los tokens IOTA bloqueados. Estos tokens están abiertos solo a un quórum de nodos de comité que deben cooperar para mover estos tokens. IOTA garantiza que los nodos tengan la misma propiedad sobre estos tokens debido al esquema de firma Boneh-Lynn-Shacham (BLS). Esto asegura que el quórum debe producir una firma válida con su clave secreta para actualizar el estado del contrato y mover los fondos bloqueados en el contrato.

¿Cómo codificar contratos inteligentes IOTA?

El código subyacente de los contratos inteligentes en IOTA es el lenguaje WebAssembly (WASM). Estos contratos se ejecutan en la Máquina Virtual (VM). Aquí hay algunas cosas que debe tener en cuenta cuando cree estos contratos.

  • El programa toma dos transacciones como entrada: transacción de solicitud y transacción de estado actual.
  • La siguiente transacción tiene que hacer referencia a la transacción de solicitud y la transacción de estado anterior para crear un enlace.
  • Esta vinculación le permite construir de manera determinista una cadena de cambios de estado que se activa mediante funciones de entrada.
  • Tangle almacena el hash del programa, haciéndolo inmutable. Cualquier cambio realizado en el código cambiará el hash, lo que desencadena un efecto de bola de nieve.

Después del coordicidio, IOTA disfrutará de una implementación completa de contratos inteligentes. Implementará el modelo UTXO (hecho famoso por Bitcoin) para transacciones de valor.

Conclusión

IOTA tiene una de las tecnologías subyacentes más atractivas del espacio. Es literalmente diferente a cualquier otro proyecto que existe, y la arquitectura enredada debe estudiarse en profundidad. Aprender a crear contratos inteligentes IOTA lo ayudará a interactuar con él en un nivel muy profundo. Han hecho algunas asociaciones interesantes en los últimos tiempos y tienen un equipo excelente. Con la implementación de Coordicide, IOTA ha logrado integrar una descentralización más profunda en su protocolo. Esté atento a este proyecto.

Mientras tanto, ¿por qué no echas un vistazo a algunos de los cursos que tenemos sobre Ivan en Tech Academy? Tenemos varios cursos acreditados de alto valor sobre blockchain y criptomonedas que han sido creados por nuestros entrenadores internos y expertos de la industria. Además, el extenso blog de Ivan on Tech Academy desglosa todo, desde las ventajas de DeFi, cómo aumentar el salario de su desarrollador, comprender el cripto staking o saber cómo elegir la escuela de blockchain adecuada. Si quieres aprender a codificar juegos de blockchain o aprender sobre la tecnología en sí, ¡no busques más!

CriptoMundo

CriptoMundo.com es un medio digital independiente que difunde noticias y contenido sobre criptomonedas y tendencias emergentes de tecnologías financieras. Ofrece noticias, guías, artículos de opinión y gráficos en tiempo real.

Monedas

Bitcoin

Ethereum