Contratos inteligentes Signum
¿Qué es un contrato inteligente?
Un contrato inteligente es un protocolo informático que facilita, verifica y hace cumplir la negociación y el cumplimiento de un acuerdo, un concepto propuesto por primera vez por Nick Szabo en 1996.
Esta tecnología implica preestablecer términos que ambas partes de un contrato deben cumplir. Elimina procesalmente ciertos roles que de otra manera podrían requerir los servicios de representantes legales, notarios o albaceas. Por esta razón, los contratos inteligentes son una tecnología disruptiva para la futura economía digital.
Los contratos inteligentes preestablecen términos que ambas partes de un contrato deben cumplir. Eliminan de manera procedimental ciertas funciones que los representantes legales, notarios o albaceas de otro modo podrían tener que desempeñar. Por esta razón, los contratos inteligentes son una tecnología disruptiva para las futuras economías digitales.
En 2018, un Senado de Estados Unidos el informe decía: “. . . el concepto tiene sus raíces en el derecho contractual básico. Por lo general, el sistema judicial resuelve disputas contractuales y aplica términos, pero también es común tener otro método de arbitraje, especialmente para las transacciones internacionales. Con los contratos inteligentes, un programa hace cumplir los términos del contrato que están integrados en el código.
Proyecto | Pequeño | Medio | Grande | |
Paginas | 2 | 4 | 10 | |
Pasos | 20 | 40 | 10,000 | |
Llamadas a API | 5 | 10 | 1,000 | |
Configuración | 0.0147 | 0.0294 | 0.0735 | |
Por transacción | 0.05145 | 0.1029 | 14.7 | |
Por 100 ejecuciones | 5.145 | 10.29 | 1,470 |
Cuotas de inscripción
.000735 Signa por contrato
Tarifas de página
.000735 Signa por página de código cumplido (hasta 20 páginas por contrato). Cada página puede contener hasta 256 bytes.
Tarifas de paso
.000735 Signa para cada operación hasta un máximo de 1,000,000 por contrato por bloque. Para los pasos en exceso, el estado se almacena y la ejecución se reanuda en el siguiente bloque.
Contratos inteligentes Signum:
Signum agregó contratos inteligentes Turing-complete a su blockchain 2014 en forma de transacciones automatizadas (AT) según lo propuesto e implementado por CIYAM. La cadena de bloques de Signum es una base de datos distribuida (libro mayor público) cuya consistencia y validez está asegurada por los mineros y verificada por la mayoría de los nodos de la red participantes. Estos nodos ejecutan el código del contrato y los resultados están sujetos al mismo proceso de verificación que cualquier otra transacción en la red.
Como formalismo completo de Turing, los AT son poderosos (expresividad) y peligrosos (verificabilidad). Debido a la expresividad, el potencial para aplicaciones avanzadas es ilimitado. Sin embargo, deben diseñarse con cuidado para evitar situaciones como la debacle de DAO que llevó a la división entre Ethereum y Ethereum Classic.
Signum fue la primera criptomoneda en implementar un sistema de contrato inteligente basado en blockchain completo de Turing en un entorno en vivo. En enero de 2015, inició la primera lotería descentralizada del mundo, el primer programa que se ejecuta en una cadena de bloques de manera descentralizada y sin confianza. En esta implementación temprana, la creación (o programación) de contratos inteligentes requería escribir un código de bytes (tipo ensamblador) y realizar pruebas en la cadena, lo que dificultaba el desarrollo.
Los contratos inteligentes de Signum tienen las características únicas de poder autoejecutarse y ejecutarse en momentos establecidos. La mayoría de las implementaciones de contratos inteligentes solo pueden reaccionar a las transacciones que reciben.
En 2019, BlockTalk se creó para hacer que los contratos inteligentes en la cadena de bloques Signum sean más accesibles para los desarrolladores. Permitió escribir, depurar e implementar contratos inteligentes utilizando Java y un editor de texto simple o IDE preferido. Desde 2019, el desarrollo de esta plataforma ha continuado dando como resultado un producto avanzado denominado Signum SmartJ. Esta plataforma de contratos inteligentes, y otras que se están desarrollando para lenguajes de programación adicionales, se complementan con TestNet permanente de Signum.
Conceptos básicos del contrato inteligente de Signum:
Los contratos inteligentes autónomos de Signum ejecutan los términos de un contrato en función de declaraciones if-then-else. La programación se sigue siempre y la ejecución es imparable. Una tarea se ejecuta si se cumplen determinadas condiciones y no se ejecuta si no se cumplen. Proporcionan una forma transparente y sin conflictos de intercambiar dinero, propiedades, acciones o cualquier cosa de valor, evitando la necesidad de servicios de terceros.
Los contratos inteligentes permiten la negociación y el acuerdo del código de un contrato por adelantado y la confianza de que se completará según lo solicitado si se conecta a la red. Una vez enviado a la red, no se puede modificar. La ejecución del código es pública y verificable.
Si se implementan correctamente, los contratos inteligentes de Signum pueden proporcionar un alto grado de autonomía individual y eficiencia. No es necesario depender de terceros que pueden introducir el riesgo de manipulación en el proceso. Debido a que la ejecución del contrato se gestiona automáticamente, también existe un importante ahorro de tiempo para la mayoría de los procesos comerciales.
Muchos riesgos se mitigan cuando se utilizan contratos inteligentes de Signum. Por ejemplo, los documentos se vuelven inmutables cuando se duplican muchas veces en un libro mayor compartido. Esto también eliminó el riesgo de que se pudieran perder los documentos.
Más información:
Para obtener más información sobre los contratos inteligentes de Signum, revise la documentación proporcionada por CIYAM.
Ejemplo de contrato inteligente de Signum:
Hay muchos casos de uso para contratos inteligentes basados en blockchain. Este ejemplo establece un precio inicial en un contrato inteligente programado para operar como una subasta descentralizada.
- El contrato inteligente acepta ofertas en forma de transacciones totalmente financiadas.
- Cada vez que el contrato inteligente recibe una oferta mayor, la transacción anterior se reembolsa automáticamente.
- A la altura del bloque especificada, se finaliza el ganador de la subasta.
- Dependiendo del tipo de propiedad, la distribución de la propiedad también puede automatizarse mediante el contrato inteligente.
Este ejemplo ilustra varias formas en que una subasta basada en contratos inteligentes tiene una ventaja sobre una subasta tradicional. En una subasta estándar, es posible que el mejor postor no pueda completar la compra. Esto representa un riesgo significativo para la operación de subasta, ya que es posible que el segundo mejor postor ya no esté disponible y que sea necesaria otra subasta.
El contrato inteligente elimina este riesgo al aceptar solo transacciones totalmente financiadas en lugar de ofertas que pueden o no financiarse después de que se completa una subasta tradicional.
El postor puede estar seguro de que las ofertas no ganadoras serán devueltas porque el código del contrato inteligente está disponible públicamente para su verificación.
Ejemplos de casos de uso adicionales para contratos inteligentes descentralizados incluyen transacciones atómicas entre cadenas, crowdfunding, juegos descentralizados y muchas otras aplicaciones. Muchos ejemplos ya se están ejecutando en la red Signum, como:
- BTDEX: una criptomoneda descentralizada que se basa en los contratos inteligentes de Signum.
- Cryptoball: un juego divertido desarrollado para mostrar contratos inteligentes autónomos en funcionamiento en Signum Network.
- dAPPOSITORY: un escaparate en línea para aplicaciones que opera utilizando los contratos inteligentes de Signum.
Signum SmartJ
Signum SmartJ is una plataforma para escribir contratos inteligentes basados en Java para que se ejecuten en la cadena de bloques Signum. Consta de los siguientes componentes clave:
- Contract.java: una clase abstracta de Java que define la API básica disponible para contratos
- Emulador: una cadena de bloques emulada y su respectiva interfaz de usuario
- Compilador : un sistema para convertir el código de bytes de Java en un código de bytes de Signum AT que puede ejecutarse en la cadena de bloques de Signum
Ejemplos de contratos
Las muestras se pueden encontrar en el carpeta de origen de muestras .
Mejora de sodio
El hard-fork de SODIUM (Signum Node versión 2.5 y superior) permitió que se ejecutaran contratos inteligentes mucho más potentes en la cadena de bloques de Signum, para obtener más información, consulte CIP20 .
Cuenta de depósito de garantía
La cuenta interna de AT (transacción automatizada) y de depósito en garantía ejecuta transacciones automatizadas y pagos de depósito en garantía. Como intermediario interno, no puede ser el remitente o el destinatario de una transacción. La cuenta tiene el ID numérico 0 y una dirección Signum S-2222-2222-2222-22222.
Nota: Si el saldo de esta cuenta se muestra en un explorador de bloques, es solo la interpretación del explorador de bloques del estado intermedio. Los saldos mostrados no afectan la oferta total de Signum.