¿Qué son y cómo funcionan los Contratos inteligentes?
índice
¿Qué son y cómo funcionan los Contratos inteligentes?
Contratos inteligentes (en inglés “Smart contracts”) es un código informático que cumple automáticamente las condiciones según los parámetros especificados, utilizando la cadena de bloques como base de datos.
La red que procesa los contratos inteligentes consta de muchos nodos y no tiene un solo centro. Está protegido criptográficamente para que no se sobrescriba o elimine.
La mayoría de los contratos inteligentes en la actualidad procesan la cadena de bloques de Ethereum. Su máquina virtual (EVM) ejecuta el código por una pequeña tarifa (esto evita un ataque de spam en la red). Para escribir código en la red Ethereum, se utiliza un lenguaje especial de contratos inteligentes Solidity. Su sintaxis es similar a Python y JavaScript.
Hay docenas de diferentes lenguajes y soluciones para contratos inteligentes, en su mayoría de código abierto.
¿Qué son los contratos inteligentes?
Características clave de los contratos inteligentes:
- Su estado se autoverifica automáticamente.
- El hecho de cumplir con todas las reglas establecidas es fijo y provoca la autoejecución del código.
- Una vez que las condiciones se transmiten a la red, ya no es posible reprogramarlas.
¿Cómo funcionan los contratos inteligentes?
Demos un ejemplo del principio de la lógica básica de los contratos inteligentes.
Imagine que un producto debe ser entregado en su almacén. Al recibirlo, se escanea, se realiza un registro en la cadena de bloques y comienzan a ejecutarse los contratos inteligentes: el pago al proveedor se transfiere automáticamente, se verifica la autenticidad del lote de acuerdo con la etiqueta del fabricante de la fábrica, se realizan registros para impuestos. informes, el producto aparece instantáneamente en el estante virtual de la tienda en línea.
Dicha base de datos no se puede falsificar y los contratos inteligentes no se pueden cambiar. La capitalización de Ethereum ya supera los $ 100 mil millones, mientras que la red literalmente no pertenece a nadie. Esto elimina por completo la posibilidad de corrupción de los empleados, e incluso las pequeñas empresas utilizan la tecnología global de forma gratuita, pagando solo una tarifa de mantenimiento de la red, que es la misma para todos (además, se trabaja constantemente para reducir el costo de las transacciones).
Para ir más allá de la red e interactuar con los datos del entorno, se han desarrollado sistemas de oráculos descentralizados. Una de las cadenas de bloques líderes, Chainlink, permite que los contratos inteligentes reciban datos de la web clásica.
Si hay confianza en la fuente de datos, los contratos inteligentes se pueden ejecutar en función de las condiciones climáticas, las cotizaciones bursátiles y las noticias.
Un ejemplo básico de la implementación de la tecnología Oracle son los mercados de predicción. ¿Qué equipo de fútbol ganará el próximo partido: Chelsea o Barcelona? El contrato inteligente contiene la fecha del evento y la hora en que necesita verificar el resultado. El oráculo visita las páginas de 10 publicaciones deportivas mundiales (para la confiabilidad del resultado), extrae la puntuación y los detalles del partido. Los jugadores hicieron apuestas y el contrato inteligente les pagó automáticamente las ganancias de acuerdo con las probabilidades.
La comunidad puede llevar a cabo el desarrollo de dicho mercado de predicción, por lo que no hay necesidad de una casa de apuestas centralizada. La revisión del código del contrato por parte de los desarrolladores interesados permitirá a los usuarios asegurarse de que esté libre de errores. La red Ethereum solo cobrará una tarifa por usar sus recursos informáticos.
Un contrato inteligente no solo puede ejecutar, sino también detener la ejecución de ciertos comandos y penalizar a los participantes si no se cumplen las condiciones.
Historia de los contratos inteligentes
En 1994, el criptógrafo informático Nick Szabo acuñó el término «contrato inteligente» cuando era estudiante en la Universidad de Washington.
En su opinión, en comparación con un contrato en papel convencional, un contrato «inteligente» debe ser programable y de varios pasos. La comprobación y ejecución se realizan automáticamente, según parámetros predeterminados. Se excluye el uso de inteligencia artificial, porque es impredecible.
Para facilitar la explicación, Nick Szabo comparó dicho contrato con una máquina de refrescos. Cuando el usuario satisface la solicitud de la máquina (colocando un billete en el aceptador de billetes), dispensa una lata de bebida al usuario.
Otra rama de los orígenes va al concepto de Jan Grieg y Gary Holland – «Contratos ricardianos». Lo esbozaron en 1996 como parte de su trabajo sobre el sistema de pago de Ricardo. Como estaba previsto, los «contratos ricardianos» crearon un puente entre los contratos tradicionales y el código, con una serie de propiedades:
- Emisor ofrece contrato a tenedores.
- Los derechos pertenecen a los titulares y son gestionados por el emisor.
- Fácil de leer por la gente.
- Fácil de leer por programas, se puede extraer.
- Dotado de una firma digital.
- Contiene claves e información sobre el servidor.
- Asociado con un identificador seguro único.
Posteriormente, en 1998, el término se usó para describir objetos en la capa de servicio de gestión de derechos de The Stanford Infobus (un proyecto de la Biblioteca Digital de Stanford).
Vitalik Buterin estableció el comienzo del uso generalizado de contratos inteligentes en 2015, con el lanzamiento de la red Ethereum. Esta tecnología se ha convertido en el sello distintivo de la nueva cadena de bloques, otorgándole una significativa superioridad funcional sobre la primera criptomoneda global, Bitcoin.
Características técnicas
No es fácil actualizar y cambiar los términos del contrato. Lo que lo protege de la edición también crea dificultades. En los contratos tradicionales, las partes pueden acordar mutuamente cambiar los parámetros de la transacción y hacer una modificación.
La inmutabilidad de la cadena de bloques no implica compromisos. Para integrar completamente los contratos inteligentes en el entorno empresarial, los desarrolladores deberán adaptar la ejecución del código a las condiciones reales de cambio constante.
Los contratos inteligentes pueden ser públicos o privados
Si una empresa tiene la intención de utilizar contratos inteligentes en un área con datos confidenciales, se pueden cifrar para que solo las personas autorizadas puedan acceder. Lo mismo se aplica a los servidores de los que el oráculo extrae datos: los detalles no deben filtrarse en la cadena de bloques pública.
Los contratos inteligentes públicos siempre tendrán prioridad, porque una gran audiencia puede auditar el código fuente de manera imparcial. Por supuesto, esto está plagado del hecho de que la posibilidad de explotar un error aumenta, si se descubre.
Esto sucedió en junio de 2016. El fondo de capital de riesgo descentralizado DAO contenía una serie de vulnerabilidades en el contrato inteligente. Los piratas informáticos utilizaron la ejecución de código recursivo múltiple y agotaron las reservas de contratos más allá de sus propios saldos. El volumen de la pérdida fue de 3,6 millones de ETH. La comunidad decidió hacer una bifurcación dura y retrocedió toda la red hasta el punto en que se usó el exploit. Luego se dividió en Ethereum Classic y la actual y moderna cadena de bloques Ethereum.
La tecnología de contrato inteligente no pertenece a una empresa o criptomoneda específica. Además de Ethereum, se utiliza en plataformas como Cardano, Solana, NEM, EOS y muchas otras.
Pros y contras
La tecnología joven se usa libremente en Internet. Esta forma de gestión garantiza un desarrollo rápido, no hay monopolio. Pero no todas las empresas o startups utilizan contratos inteligentes con el debido cuidado.
Problemas de los contratos inteligentes
- La falta de regulación gubernamental convierte a un grupo de usuarios vulnerable que quiere obtener un ingreso especulativo rápido sin entrar en los detalles de nuevos proyectos.
- Las cadenas de bloques tienen como objetivo escalar (por ejemplo, Ethereum 2.0 implementa cadenas de fragmentos y abandona la Prueba de trabajo), pero aún tiene dificultades para procesar una gran cantidad de transacciones. Las comisiones pueden alcanzar valores máximos, la red no siempre puede proporcionar la flexibilidad y el rendimiento necesarios.
- El uso de oráculos amplía las posibilidades, pero supone una amenaza para el funcionamiento descentralizado de los contratos inteligentes. Aunque los ecosistemas están trabajando constantemente en amenazas potenciales, deberían volverse menos evidentes en el futuro.
- El desarrollo de contratos inteligentes lo llevan a cabo personas con diferentes niveles de competencia. Los errores de los programadores pueden abrir vulnerabilidades, y la incapacidad de lanzar rápidamente un parche y cambiar el código del contrato complica el proceso de corregir los exploits encontrados.
Ventajas
- Confiabilidad e inmutabilidad, que está garantizada por una cadena de bloques criptográficamente fuerte; su poder de cómputo supera al de las empresas privadas.
- Transparencia de las acciones y al mismo tiempo privacidad de los usuarios.
- Automatización completa con protección contra ataques centralizados.
- Reducción de costes en diversas infraestructuras al eliminar intermediarios de la cadena por innecesarios.
- Alta velocidad de procesamiento con la ayuda de algoritmos matemáticos, en comparación con la burocracia clásica en papel.
Forma parte de estos grupos: