AVALIAÇÃO DA PLATAFORMA ETHEREUM PARA APLICAÇÃO DE BLOCKCHAIN EM SISTEMAS CIBER-FÍSICOS

ABADE, Vinícius1; NETO, Manoel Camillo de Oliveira Penna2;

Resumo

Introdução:Esse projeto envolve a interação entre duas tecnologias emergentes: blockchain e sistemas ciber-físicos. Blockchain é uma plataforma segura na qual operações são transacionadas em uma cadeia de blocos criptografada, permitindo que duas entidades que não se conhecem possam interagir de modo seguro e confiável, enquanto que sistemas ciber-físicos são elementos computacionais que interagem para controlar entidades físicas. Seguindo a premissa de iniciação tecnológica, definiu-se a plataforma Ethereum para ser avaliada como possível solução blockchain para sistemas ciber-físicos, tendo sido escolhida por ter uma camada de computação virtual capaz de processar contratos inteligentes. Contratos inteligentes são programas de computador que executam a partir de condições definidas permitindo a verificação ou a execução de contratos.

Objetivo:Avaliar a viabilidade para desenvolvimento de sistemas ciber-físicos totalmente inseridos na tecnologia blockchain. Para tanto, este trabalho apresenta a especificação e construção de um sistema de controle de irrigação onde os dispositivos são acionados através de contratos inteligentes armazenados na plataforma Ethereum.

Metodologia:O sistema de controle de irrigação é formado por um conjunto de dispositivos, cada um composto por uma válvula solenoide, um sensor de umidade e um controlador. Os dados de controle de irrigação são enviados para o controlador por um contrato inteligente armazenado na blockchain. O usuário parametriza o contrato inteligente a partir de um formulário Web. A comunicação entre o formulário e o contrato inteligente se dá por uma API (Application Programming Interface).

Resultados:Foi definida uma arquitetura de software e de hardware para a execução do projeto, permitindo que um usuário envie uma transação para a blockchain a partir de chamadas de funções estabelecidas no contrato inteligente. Para programar os contratos inteligentes foi usada a linguagem de programação Solidity. Uma dificuldade encontrada é que a linguagem não suporta uma estruturas de dados simples, sendo necessário criar um mapeamento para cada nova dimensão que se deseje trabalhar, o que pode tornar o projeto mais trabalhoso e complexo. Foram usadas duas APIs para conectar o formulário e o contrato inteligente: Web3js e Web3py. Observou-se que as APIs não implementam os métodos da mesma forma para diferentes linguagens, e que os detalhes necessários para utilizar a segunda API aumentam a curva de aprendizagem. Observou-se um tempo de resposta em torno de cinco segundos para a execução dos contratos inteligentes, o que pode não ser adequado para aplicações com requisitos de tempo.

Conclusões:A tecnologia de contratos inteligentes na blockchain ainda tem muito a evoluir, entretanto, como as ferramentas de desenvolvimento da plataforma Ethereum são atualizadas regularmente, elas devem se tornar em pouco tempo mais eficientes e mais fácil de se utilizar. Cocluimos que é possível desenvolver uma aplicação descentralizada para sistemas ciber-físicos baseada em contratos inteligentes armazenados na blockchain. Apesar de o tempo de execução dos contratos inteligentes ainda não ser adequado para atender tipos específicos de aplicações é viável utilizar a tecnologia blockchain da plataforma Ethereum. Para sistemas ciber-físicos que não exigem tempo de resposta imediato, a plataforma se mostrou eficiente, fornecendo a segurança e praticidade necessária.

Palavras-chave:Blockchain. Sistemas ciberfísicos. Internet das coisas

Legendas

    1. Estudante
    2. Orientador