Ej. 7: Contratos Inteligentes

Llegados a este punto, me gustaría hablar un poco de los Smart Contract o Contratos Inteligentes.  Llevan ya tiempo incluidos en NXT y creo que está bien dejar de manifiesto que esto es así, y explicar como funcionan.   Hay mucho mito con ellos, y no es para tanto, la verdad…  Por supuesto, en ARDOR también estarán.  Lo primero que vamos a hacer para familiarizarnos con este concepto es ver un ejemplo de un contrato normal, y después apoyándonos en éste, describiremos lo que es un Smart Contract.   Luego ya cada uno podrá darle a la manivela de su imaginación e idear cómo y para que hacerlos…

El contrato que vamos a mostrar se trata de un ejemplo básico, sin afán de añadir cláusulas legales que no tienen interés en lo que queremos describir.  La idea como siempre es comprender de lo que hablamos de la manera más simple posible utilizando ejemplos…

Kote y Devan son dos amigos, amantes del rugby, quieren apostar sobre quien ganara un partido del seis naciones entre Escocia e Inglaterra.  Entonces escriben en un papel lo siguiente y lo firman los dos:

A fecha de 07/02/2017 reunidos Kote Reshi, en adelante Kote, y Devan Lochees, en adelante Devan, deciden acordar las siguientes cláusulas:

Cláusula 1:
Kote se compromente a pagar 2.000 NXT a Devan si Inglaterra gana el partido del próximo 14/02/2017 a Escocia.
Cláusula 2:
Devan se compromente a pagar 2.000 NXT a Kote si Escocia gana el partido del próximo 14/02/2017 a Inglaterra.
Cláusula 3:
El pago que deba ser llevado a cabo se realizará antes del día 16/02/2017.

Lo que hemos visto es un documento en el que se acuerdan cosas y obliga legalmente a las personas a realizar acciones estipuladas en cláusulas.  Lo que habitualmente conocemos como un Contrato.

Esto nos servirá sin más dilación para desmitificar qué es un Contrato de los llamados Inteligentes.  Es lo mismo que hemos visto, pero las cláusulas no hace falta escribirlas en ningún sitio, se ejecutan y se asumen de forma automática mediante la acción que realizamos para suscribirlo.  Imaginemos que vamos a comprar un coche financiado y lo compramos suscribiendo uno de esos contratos.  Una de las funcionalidades que tendría el contrato podría ser, por ejemplo, que si no pagamos un plazo, la llave deja de funcionar hasta que lo paguemos.  La cláusula de impago se cumple automáticamente y nosotros la asumimos al comprar el coche, cuando le dimos al botón de Aceptar.   Eso sería un ejemplo de Smart Contract

Veamos ahora como llevar a cabo nuestro contrato del ejemplo con un Smart Contract en NXT.

Basta con el Kote y Devan hagan cada uno de ellos una transferencia de 2.000 NXT de tipo condicionada (Phased Transaction) o también llamada Transacción Inteligente:

Transacción Condicionada

En las Cuentas Fiables, necesarias para aprobar la transacción, añadirán ambos la cuenta de un tercero que puede ser una máquina automática, que en cuanto acaba el partido aprueba la transacción de uno o de otro en función de quien haya ganado la apuesta.

En este caso no habrían firmado ningún documento para su apuesta, pero realizando las Transacciones Condicionadas indicadas habrían suscrito un Contrato Inteligente con cláusulas de ejecución automática, sin haber tenido que ponerlas en ningún sitio escritas.   Es evidente que todo esto deberá apoyarse en legalidad para poderse usar, como es lógico, pero aquí lo que nos interesa por el momento es mostrar la funcionalidad de NXT para emitir Contratos Inteligentes.

Un ejemplo más: imaginemos alguien que crea una web de Subastas apoyándose en ARDOR, puede dedicar una Child Chain para ello si así lo quiere, y hace que cada puja sea una transacción condicionada con la cuenta de un tercero que es el software de esa web, que cuando hay una puja superior cancela la puja anterior, y que cuando termina el tiempo de la susbasta aprueba automáticamente el pago de la Transacción Condicionada de la mayor puja.  Toda persona o máquina que hiciera pujas en esa web estaría suscribiendo un Smart Contract, además los que subastaran artículos en la web también estarían suscribiendo Smart Contracts.   El ganador pagaría automáticamente, y el propietario recibiría el pago en menos de 60 segundos.  La web, por supuesto, tendría que explicar en sus condiciones de uso que se están suscribiendo ese tipo de contratos para dotarse de legalidad.  Esto además podría combinarse con ESCROW, para retener el pago hasta la confirmación del recepcionado de la mercancía por parte del ganador de la subasta, haciendo así la web más confiable, etc…

Como podemos ver, NXT, y por lo tanto ARDOR ya posibilitan hacer Contratos Inteligentes…  Digamos que cuentan con una serie de plantillas o modelos tipo para hacerlos.  Parte de estas plantillas son, por ejemplo, las Transacciones Condicionadas que hemos visto.  Pero hay muchas más…  Lo que decía, de la llave del coche y el impago, podría hacerse apoyados en la tecnología que nos ocupa…  O una casa domótica que no funcionase, si el inquilino no paga, etc, etc… Todo es cuestión de conocer la tecnología y sus posiblidades, luego ya el límite lo pone la imaginación.  Con este blog el objetivo que perseguimos es ese, que se conozcan las posibilidades, y somos muy conscientes de que tenemos lectores con grandes dotes de creatividad…

Fuentes:
http://szabo.best.vwh.net/smart_contracts_idea.html
https://cointelegraph.com/news/nxtardor-platform-to-make-blockchain-cheaper-and-safer
https://es.wikipedia.org/wiki/Contrato_inteligente
http://nxter.org/es/nxt-news-agosto-2016-lego-arcilla/
Publicado en General
3 Comentarios en “Ej. 7: Contratos Inteligentes
  1. Manuel Ruíz dice:

    So requiero elaborar una serie de contratos inteligentes, a dónde puedo acudir

  2. Es un artículo muy simple y bien explicado. Realmente esto con vosotros en que esto va quedarse. Es algo imparable y aquellos que se inicien profesionalmente tendrán una ventaja competitiva.
    Adjunto un artículo complementario.Enhhorabuena
    http://www.gatellasociados.com/smart-contracts/

  3. Vane dice:

    Este artículo está excelente, lo explican perfectamente, me sacaron de varias dudas que tenía. En el sitio web que estoy minando utilizan estos contratos inteligentes pero no me atrevía a usarlos porque no entendía muy bien su función, otra cosa que me animo de Webchain es que si minas con un CPU o con minero ASIC, ambos tienen las mismas posibilidades porque nivelan la dificultad.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*