Los investigadores Juan Boubeta-Puig y Jesús Rosa-Bilbao, del grupo UCASE de Ingeniería del Software (TIC-025) de la Universidad de Cádiz, junto al investigador Jan Mendling, del Institute for Information Business de la Universidad de Economía y Empresa de Viena (Austria), han desarrollado un pionero software dirigido por modelos, denominado CEPchain, que permite el modelado gráfico e intuitivo de contratos inteligentes dirigidos por eventos, la transformación automática de los contratos modelados a código, y su despliegue y ejecución en una red blockchain (conjunto de tecnologías que permiten la transferencia de un valor o activo de un lugar a otro, sin intervención de terceros).
Según informa la Universidad en nota de prensa, los resultados de esta investigación se han publicado en el artículo científico (en acceso abierto) CEPchain: A graphical model-driven solution for integrating complex event processing and blockchain en la prestigiosa revista internacional Expert Systems with Applications, con un factor de impacto de 6,954 y clasificada en el primer cuartil, según el índice JCR 2020.
Un contrato inteligente es un código informático con cláusulas que permiten validar el cumplimiento de las condiciones acordadas entre dos o más activos digitales en una red de cadenas de valores, sin necesidad de una autoridad central de confianza. La blockchain o “cadena de bloques” es una base de datos distribuida y segura que puede ser aplicada en todo tipo de transacciones. Esta tecnología ha protagonizado una nueva revolución industrial, conocida como el internet del valor, “facilitando que el valor (archivos, títulos, registros de temperatura, entre otros) sea compartido digitalmente y de forma descentralizada, inmutable, confiable, transparente y trazable”, en palabras de Juan Boubeta.
Contratos inteligentes
Sin embargo, la implementación de estos contratos inteligentes “no está al alcance de cualquier desarrollador software, y menos aún de los expertos en el dominio, puesto que se requiere disponer de conocimientos avanzados en los lenguajes de programación soportados por las plataformas blockchain” existentes en la actualidad. Sus autores han señalado que “los errores de programación introducidos en un contrato podrían conllevar enormes pérdidas económicas”.
Una de las principales novedades de la solución software CEPchain es que estos contratos pueden ser creados sin saber programarlos a través de su definición gráfica, la transformación automática de los modelos de contrato a código, así como su despliegue en una blockchain en tiempo de ejecución.
Asimismo, “estos contratos pueden ser invocados automáticamente desde fuera de la cadena de bloques por parte de un motor de procesamiento de eventos complejos (Complex Event Processing, CEP). Un motor CEP es un software que permite analizar y correlacionar grandes cantidades de datos (big data) con el propósito de detectar en tiempo real situaciones de interés para un dominio particular”, según ha afirmado el investigador de la UCA. Para ello, es necesario implementar los patrones de eventos, donde se definan las condiciones que deben cumplirse para detectar dichas situaciones. Por tanto, “cuando se satisfagan las condiciones de un patrón modelado con este software, se invocarán automáticamente las funciones del contrato inteligente vinculadas a dicho patrón”.
Viabilidad
Para demostrar su viabilidad, CEPchain ha sido aplicado a un caso de estudio sobre la logística de transporte de vacunas que requiere una cadena de frío ininterrumpida. Gracias a los patrones de eventos modelados gráficamente, este software ha sido capaz de detectar automáticamente y en tiempo real cuándo las vacunas han estado sometidas a temperaturas superiores o inferiores a las recomendadas por la Organización Mundial de la Salud, así como registrar automáticamente en la propia blockchain las alertas de rotura de cadena de frío. De este modo, Juan Boubeta ha afirmado que “el suministro de vacunas se ha convertido en un proceso transparente y trazable para cualquier usuario, ya sea un operador logístico, personal sanitario o, incluso, un ciudadano”.
Los resultados demuestran que CEPchain puede usarse en diversos dominios de aplicación sin necesidad de contar con expertos en lenguajes de programación de contratos inteligentes ni de patrones de eventos. Se trata, por tanto, de una contribución científica, tecnológica e innovadora que simplifica la integración de las tecnologías de vanguardia CEP y blockchain al ocultar los detalles de implementación a los usuarios finales.
Esta colaboración internacional se materializó en el año 2020 durante la estancia de investigación de tres meses que el profesor titular del departamento de Ingeniería Informática de la UCA, Juan Boubeta-Puig, realizó con el catedrático Jan Mendling en la Vienna University of Economics and Business (Viena) y que fue subvencionada por el Ministerio de Ciencia e Innovación a través del programa Estancias de movilidad en el extranjero José Castillejo para jóvenes doctores.