MVM Blockchain

Información general

  • Universidad: Universidad EAFIT
  • Programa: Ingeniería de Sistemas
  • Semestre: Séptimo
  • Nombre del proyecto: MVM Blockchain
  • Integrantes:
    • Maria Clara Sanchez Villegas – msanch60@eafit.edu.co
    • Diego Antonio Fonseca Guzman – dfonseca@eafit.edu.co
    • Juan Esteban Fonseca Palacio – jfonsec1@eafit.edu.co
    • Mateo Agudelo Toro – magude29@eafit.edu.co

Problema

Actualmente para los participantes del Mercado Eléctrico Mayorista Colombiano (MEMC) es imposible conocer con precisión la información técnica de la infraestructura eléctrica involucrada. Si bien esta información es proporcionada por los respectivos dueños, suele ser inconsistente, lo cual destruye su valor.

Solución

MVM Blockchain permite tanto a los agentes del MEMC como a la entidad reguladora (XM) conocer en forma clara, transparente y confiable toda la información técnica relevante que se maneja en este mercado. Al resolver este problema de manera directa se logra solucionar otros problemas de forma indirecta como la planeación de infraestructura eléctrica y la validación de contratos por parte de XM.

Innovación

La forma como se logra esto es mediante el uso de la tecnología blockchain para guardar registro de la información, haciendo que se almacene de una forma que garantice su trazabilidad. Esto permite a todos los participantes saber con certeza los datos, pues en caso de que sean inconsistentes la entidad reguladora tiene los argumentos suficientes para tomar acciones.

Diferenciadores

El producto nace a partir de una herramienta existente desarrollada por la empresa MVM Ingeniería de Software llamada Paratec (proveniente de parámetros técnicos). Básicamente esta herramienta permite lo mismo que la nuestra, es decir, declarar información sobre la infraestructura involucrada en el MEMC, pero debido a las tecnologías que utiliza le es imposible garantizar la fiabilidad de los datos que almacena. MVM Blockchain es una prueba de concepto que busca demostrar el uso de la tecnología blockchain para resolver este problema. En el momento no existe una herramienta con estas características para el MEMC.

Producto

Consiste principalmente de tres partes:

  • La blockchain que almacena las declaraciones de parámetros técnicos referentes a infraestructura del MEMC con los respectivos permisos, smart contracts y demás. Debido a nuestra situación particular fue necesario hacer uso de una blockchain permisionada, particularmente Hyperledger Fabric. Para hacer su construcción un poco más amigable utilizamos la herramienta Hyperledger Composer. Disponible en https://github.com/mariacho/mvm-blockchain
  • Un middleware que media la interacción de los usuarios con la blockchain. Existe principalmente como medida de seguridad. Se desarrolló utilizando Node.js, principalmente Express, Passport y Request. También existe una base de datos MongoDB para el manejo de credenciales. Disponible en https://github.com/agudelotmateo/mvm-blockchain-server
  • Un front end que permite al administrador manejar las credenciales y a los participantes hacer uso del servicio. Se hizo utilizando Angular y está disponible en https://github.com/agudelotmateo/mvm-blockchain-front-end

El proyecto se encuentra publicado en http://mvmblockchain.dis.eafit.edu.co/. Está alojado en una máquina del DCA donde corren todos los componentes anteriormente mencionados. Adicionalmente, mediante Jenkins se hace integración continua tanto del middleware como del front end de la aplicación. Todo esto, desde la integración continua hasta el funcionamiento mismo de la aplicación, es posible gracias a Nginx funcionando como proxy inverso.