Contratos inteligentes de Ethereum: mar y cerdos

Contratos inteligentes de Ethereum: mar y cerdos

Entre las criptomonedas modernas, no hay muchas que hayan aportado una innovación real. Pero Ethereum es sin duda uno de ellos.

La aparición de Ethereum en el mercado de las criptomonedas estuvo acompañada de una gran fanfarria, se enumeraron las ventajas del nuevo sistema y los contratos inteligentes ocuparon el primer lugar entre ellas. 

No es que esto fuera algo nunca antes visto. La idea de los contratos inteligentes fue expresada en 1994 por Nick Szabo. Sin embargo, la implementación práctica de estas ideas sólo fue posible con la llegada de una implementación viable de la tecnología blockchain. Sin embargo, incluso la definición dada a los contratos inteligentes en Wikipedia es notablemente diferente de lo que realmente son los contratos inteligentes en Ethereum.

¿Cuál es la diferencia? 

Para empezar, como esperamos de una tecnología llamada contrato inteligente (“smart Agreement”), como mínimo es un acuerdo (un contrato), es decir, algo que tiene fuerza legal. Con "inteligente" es un poco más complicado, pero también es lógico suponer que se trata, como mínimo, de una tecnología en la que el contrato en sí no es sólo un registro, sino que tiene algún tipo de funciones intelectuales. Como ejemplo, se da una situación en la que el cumplimiento de las condiciones descritas en el contrato Samrt desencadena automáticamente la transferencia de dinero. 

En la práctica, al menos en el contexto de Ethereum, esto no es del todo cierto. Y para ser más precisos, esto no es cierto en absoluto. 

Primero, digamos adiós inmediatamente a la palabra "contrato": es obvio que los contratos inteligentes de Ethereum no tienen ni pueden tener fuerza legal. Y no sólo porque ni un solo notario o tribunal los reconoce. Y por su propia naturaleza.

Sí, la tecnología blockchain es un almacenamiento de datos casi ideal que los protege perfectamente contra pérdidas y distorsiones. Incluso en la cadena de bloques de bitcoin, puede guardar el texto del acuerdo y permanecerá sin cambios y disponible durante toda la existencia de esta cadena de bloques.  

Sin embargo, lo que comúnmente se llama contrato en Ethereum no es un acuerdo entre entidades. Y un cierto conjunto de código de programa. Si miras más de cerca a Ethereum, especialmente a cómo lo posicionan los propios desarrolladores, no es una criptomoneda en su forma pura. Los propios desarrolladores llaman a Ethereum "una máquina virtual distribuida basada en la tecnología blockchain". Incluso la definición de Ethereum en Wikipedia suena así:

una plataforma para crear servicios en línea descentralizados basados ​​en blockchain (Đapps, aplicaciones descentralizadas, aplicaciones descentralizadas), que funciona sobre la base de contratos inteligentes...

Busque la palabra “criptomoneda” aquí. Por eso, estas aplicaciones suelen denominarse contratos inteligentes. A menudo hay confusión y malentendidos en Internet sobre cuál es la diferencia entre estos conceptos, pero en aras de la simplicidad no entraré en los detalles del funcionamiento de la EVM (Ethereum Virtual Machine).

Un contrato inteligente es precisamente una aplicación para Ethereum: Đapps. Estos son pequeños programas escritos por los desarrolladores en la cadena de bloques en forma del llamado código de bytes. El lenguaje de programación más común diseñado específicamente para Ethereum es Solidity, un desarrollo del extendido JavaScript con una serie de limitaciones y características de sintaxis importantes. 

Para limitar la carga y evitar que desarrolladores sin escrúpulos utilicen demasiados recursos de la red, la ejecución de un contrato inteligente requiere el uso de gas, una especie de moneda interna. A continuación he dado un ejemplo típico de un contacto inteligente.


¿Por qué “El mar y los cerdos”? Porque la cobaya no tiene nada que ver con el mar ni con los cerdos...


contrato Mortal {
    propietario de la dirección;
    función Mortal() { propietario = mensaje.remitente; }
    función matar() { if (msg.sender == propietario) selfdestruct(propietario); }
}

contrato Greeter es Mortal {
    saludo de cadena;
    función Saludador (cadena _saludo) público {
        saludo = _saludo;
    }
    función saludar() retornos constantes (cadena) {
        devolver el saludo;
    }
}

Leer también

12018-04-22

Todo sobre la estrategia “Comprar y Mantener” en el mercado de las criptomonedas

En nuestra revisión tocaremos las características generales de este tipo de inversión. Le asesoraremos sobre cómo elegir el monto correcto de inversión y cuándo puede esperar obtener ganancias.

Educación
02018-07-08

¿Cuánto puede ganar un inversor novato con el trading? Tercera parte. Comercio

Continuamos la serie de publicaciones sobre trading para comprender en la práctica cuánto puede ganar un inversor novato utilizando únicamente las previsiones publicadas en nuestro sitio web. Para entender lo útiles que son, decidimos realizar un experimento y simular una situación en la que una persona que solo sabe de trading y necesita "comprar más barato y vender más caro" intenta obtener ingresos adicionales en su tiempo libre en el trabajo invirtiendo parte de sus fondos e...

Comercio, Educación

Últimos artículos de la sección Educación

Último vídeo del canal.