Skip to content

daminnock/ChainSentinel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

image

ChainSentinel es un SCADA basado en la tecnología blockchain que permite el monitoreo y control remoto de procesos industriales.

Problema

Los sistemas SCADA reciben información sobre eventos, estados y mediciones que ocurren dentro de un sistema industrial. Actualmente implementan una arquitectura donde la información se almacena en hasta dos servidores que están localizados en dos lugares distintos para dar redundancia.

image

Los registros y la disponibilidad del SCADA suelen ser críticos en cualquier industria y son un blanco de ataque para hackers de sombrero negro.

En algunos casos, la vida de las personas depende de forma muy sensible en sistemas controlados por SCADAs como sucede en los sistemas de suministro eléctrico. En este segmento de la indsutria los estados dan concesiones a las empresas para que provean esos servicios y no hay razón para que la información esté disponible para cada individuo.

También existe un interés en el acceso libre y seguro a información de la red eléctrica bajo el moderno concepto de las smart grids, donde un individuo puede proveer energía a la red y ganar dinero por ello.

Demos

Web Demo

Video introductorio

Solución

ChainSentinel permite crear una plataforma basada en la seguridad del concepto de blockchain para almacenar registros históricos de interés en la blockchain y conocer el estado de los sistemas.

image

¿Cómo funciona?

Te invito a revisar nuestro documento que iremos actualizando durante el desarrollo.

Tecnologías utilizadas

  • Solidity
  • HardHat
  • Push
  • OpenZeppelin

Equipo

Damián Ariel Minnock

Byron Ballesteros

Francisco Sanchez

Cesar Augusto Galeano Torres

Diego Hermida

License: MIT

Como hacer test del Smart Contract con hardhat

From terminal navigate to the path where everything is going to be saved and get files from repository

git clone https://github.com/daminnock/ChainSentinel.git

Then install hardhat

npm init
npm install --save hardhat
npm install --save-dev @nomicfoundation/hardhat-toolbox
npx hardhat

In SCADA.js there is code to test the Smart Contract. With hardhat ready you should execute:

npx hardhat test

Como desplegar y probar el smart contract

Previous commands related to hardhat should be executed. Also:

In terminal install dotenv and lite-server:

npm install dotenv --save
npm i -g lite-server 

Create a .env file where you should declare 2 variables:

Go to alchemy. Log in. Obtain url from there. Declare variable in .env something like:

STAGING_ALCHEMY_KEY = https://eth-goerli.g.alchemy.com/v2/zaraza-z4r4z4-2r424

Obtain token private key from metamask. Get sure to select Goerli.

PRIVATE_KEY = 123a456b.....789xyz

npx hardhat compile
npx hardhat run scripts/deploy.js --network goerli

Then you will get an output in terminal like: SCADA deployed to: 0xABCDE1234567890ABCDE1234567890ABCDE12345 You need to copy that address to index.html in var CONTRACT_ADDRESS Then execute lite-server

cd src/
lite-server

About

Project repository for the first descentralized SCADA.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published