¿Qué es un contrato inteligente de criptomonedas?

Un contrato inteligente o contrato independiente, es un programa o código informático cuya ejecución no requiere la intervención de un tercero de confianza. En el contexto de Blockchain, es un programa que se activa automáticamente en una red distribuida cuando se cumplen ciertas condiciones en el libro mayor compartido.

Los contratos inteligentes fueron conceptualizados por Nick Szabo a partir de 1994, pero no fue hasta 2009 y Bitcoin para ver su primera implementación en un sistema viable. Estos contratos autónomos ahora se implementan ampliamente en la plataforma especializada Ethereum, lanzada en 2015 para este propósito.

que es un contrato inteligente de criptomonedas

Origen de los contratos inteligentes

El concepto de contrato inteligente fue formalizado por el informático, abogado y criptógrafo estadounidense Nick Szabo. En su primer escrito público sobre el tema en 1994, lo describió como «un protocolo de transacción computarizado que ejecuta los términos de un contrato»

El término «contrato inteligente», acuñado por el propio Szabo, es un poco confuso, porque un contrato inteligente no es realmente inteligente , ni realmente un contrato en el sentido legal , sino que es un programa que se ejecuta en condiciones simples.

Szabo ha dado forma a esta expresión para la comunicación: la palabra inteligente en inglés se usa regularmente para presionar el lado inteligente y evolutivo de una nueva tecnología, por tanto, un teléfono multifunción se denomina smartphone tanto en inglés como en español.

Aunque atrajo la atención de muchos cypherpunks en la década de 1990, el concepto de contrato inteligente no se implementó porque no había tecnología en ese momento para implementarlo de una manera suficientemente robusta.

No fue hasta la aparición de la tecnología Blockchain con la aparición de Bitcoin en 2009 que realmente se implementó la idea: aunque su capacidad para gestionar contratos era limitada, esta última sí constituye un sistema monetario programable.

La verdadera revolución llega en 2015 con el lanzamiento de Ethereum, que hace posible crear contratos independientes más complejos, en particular mediante el uso de un lenguaje de programación específico llamado Solidity. Este último permite a los desarrolladores escribir procesos sofisticados en un corto período de tiempo.

Leer  Bifurcaciones de Bitcoin: Guía completa para principiantes

Esta aparición ha permitido que aparezcan muchas otras plataformas basadas en el mismo modelo, como Tezos, Cardano, EOS, NEO o TRON. El auge de estos protocolos ha permitido que renazca la idea del contrato inteligente para automatizar y mejorar muchos procesos.

Un contrato inteligente elimina la necesidad de que un intermediario, y por lo tanto un tercero de confianza,  lleve a cabo determinadas cláusulas previstas en el contrato.

¿Qué lenguaje de programación utiliza?

Cada Blockchain para gestionar contratos autónomos tiene lo que se llama una máquina virtual (máquina virtual), que opera simultáneamente en cada computadora de la red que interpreta las diferentes transacciones.

Por tanto, los contratos son interpretados de la misma forma por todos los nodos y por tanto es necesario disponer de un lenguaje para comunicarlos entre las distintas máquinas.

Como dijimos anteriormente, los primeros contratos se implementaron en la cadena de bloques de Bitcoin. Esto podría hacerse porque Bitcoin es un sistema de moneda programable en el que todas las transacciones son contratos gracias a un lenguaje, simplemente llamado Script, una moneda de Bitcoin se puede bloquear bajo ciertas condiciones predefinidas. Normalmente, la mayoría de los fondos se bloquean en una dirección mediante un script como:

No obstante, la máquina virtual de Bitcoin no es Turing-complete y está deliberadamente limitada a operaciones de procedimiento. Por ejemplo, es imposible hacer bucles y practicar la recursividad con el lenguaje Script. Ésta es la razón por la que se creó Ethereum, para constituir una computadora global versátil y descentralizada que permita ejecutar una variedad extrema de contratos autónomos.

Se ha pensado que la máquina virtual Ethereum (Ethereum Virtual Machine o EVM) está cerca de Turing-complete, es posible realizar bucles y recursividad, pero está limitado por un sistema de gas para hacer que un contrato no pueda durar para siempre y paralizar el red.

Se basa en un código de bytes similar al Script de Bitcoin. Sin embargo, la mayoría de los contratos generalmente están escritos en un lenguaje de nivel superior, que se compila en un código de bytes, lo que facilita enormemente la tarea del desarrollador.

Leer  ¿Por qué comprar Bitcoin y otras criptomonedas?

El más extendido es el lenguaje Solidity, un lenguaje inspirado en JavaScript, creado en 2014 por iniciativa de Gavin Wood y actualizado regularmente desde entonces.

Bitcoin y Ethereum no son los únicos protocolos que admiten contratos inteligentes: casi todos los sistemas de criptomonedas tienen capacidades de programación, con la excepción de algunos sistemas como Monero.

¿Para qué sirven los contratos inteligentes?

Si bien aún no se ha explotado en todo su potencial, los contratos independientes son útiles para todo tipo de cosas. Los usos actuales son múltiples y diversos, pero la mayor parte del tiempo estarán más cerca del ámbito financiero.

A continuación, se muestran algunos ejemplos de aplicaciones de contratos inteligentes:

  • Las cuentas multifirma:

Permiten la creación de cuentas conjuntas que requieren múltiples firmas para realizar transferencias.

  • Los canales de pago

Que brindan a ambos usuarios la oportunidad de realizarles micro pagos. Estos son los canales en los que se basa Lightning Network.

  • La representación de activos en una cadena de bloques mediante un token:

Esto se llama tokenización, esto puede afectar a bienes fungibles (como monedas estables que están respaldadas por monedas fiduciarias) así como a bienes no fungibles (como el ejemplo de bienes raíces con RealT).

  • La recaudación de fondos

Que se basa principalmente en token pre-digital con utilidad futura. Hablamos de Oferta Inicial de Monedas (ICO), Oferta de Intercambio Inicial (IEO) u Oferta de Token de Seguridad (STO) dependiendo del contexto y la naturaleza del token.

  • El intercambio descentralizado de criptoactivos

Esto puede afectar a criptomonedas ubicadas en diferentes cadenas (a través de intercambios atómicos) o criptomonedas ubicadas en el mismo canal (Uniswap, Kyber Network, Binance DEX, etc.)

¿Cuáles son los riesgos?

Como en todo en TI, el principal riesgo de los contratos inteligentes es el riesgo de piratería .Dado que el código se publica en el canal, un hacker puede identificar sus debilidades y explotarlas. Esto ya ha sucedido varias veces en Ethereum, y esto por cantidades extremadamente altas: el caso más conocido es el pirateo del contrato de TheDAO el 17 de junio de 2016, que permitió a alguien incautar 3, 6 millones de ethers o más de 150 millones de dólares en el tiempo.

Leer  ¿Qué es una bifurcación de una criptomoneda?

Este caso llevó a la división entre Ethereum (ETH) y Ethereum Classic (ETC), Ethereum de hecho eligió cancelar la transferencia para reembolsar a los inversores de TheDAO, mientras que Ethereum Classic prefirió seguir el principio de inmutabilidad.

Así, antes de proceder con el despliegue en la red, es necesario asegurarse de que todo funciona bien en el código que hemos escrito, porque es imposible (en principio) modificar o detener un contrato si no lo hacemos.

Hay formas de mitigar el riesgo de piratería, que incluyen:

  • El uso de estándares verificados y probados por la comunidad, por ejemplo, el estándar ERC-20 que se usa ampliamente para crear nuevos tokens en Ethereum.
  • El uso de auditorías por firmas especializadas.

¿Qué valor legal tienen los contratos inteligentes?

Un error común que cometen muchos novatos es creer que un contrato inteligente es un contrato en el sentido legal. Sin embargo, éste no es el caso, se trata simplemente de programas informáticos que se ejecutan en sistemas distribuidos, que aplican cláusulas previamente definidas, de ahí la analogía con los contratos.

Los contratos inteligentes actualmente no tienen valor legal. Si de alguna manera los fondos de su contrato son desviados por un pirata informático, no hay recurso porque no se considera robo.

Sin embargo, es posible que en el futuro (y con la maduración de los distintos protocolos criptoeconómicos) los sistemas legales reconozcan la validez de la información ubicada en determinados canales. En realidad, la idea no es adaptar las diferentes Blockchain al sistema legal existente, sino basar finalmente todo el sistema legal en estas Blockchain. Además, incluso si los sistemas de gobernanza de las cadenas de bloques a veces pueden reparar una falla como fue el caso del pirateo de TheDAO que se canceló en Ethereum, debe tenerse en cuenta que tales medidas solo pueden tomar lugar cuando la seguridad de la cadena está en participación (aquí el 4,5% de los éteres robados).

Deja un comentario

Tu dirección de correo electrónico no será publicada.

Scroll al inicio