CASE STUDY ON BLOCKCHAIN FOR DATA PRIVACY
REGISTRO DOI: 10.69849/revistaft/ra10202411122228
Fabio Zenatti Ferrenha 1
Orientador: Felipe Diniz Dallilo 2
Coorientadora: Fabiana Florian 3
Resumo
O avanço da tecnologia blockchain introduz uma nova visão para a proteção e privacidade de dados, superando de maneira inovadora as restrições dos sistemas centralizados. Este estudo analisa o uso da blockchain para garantir a privacidade dos dados, diante dos desafios de segurança e confiabilidade em sistemas digitais. O trabalho se baseia em uma revisão bibliográfica e no desenvolvimento de uma prova de conceito, utilizando a linguagem Python e a biblioteca Web3.py para interagir com a rede Ethereum por meio de contratos inteligentes. A execução do contrato inteligente ocorreu na rede de testes Sepolia, com o auxílio do Remix IDE, MetaMask e Infura, assegurando uma metodologia prática para a validação dos conceitos abordados.
Os resultados da prova de conceito mostram que o uso de blockchain proporciona um ambiente seguro e transparente para o armazenamento e acesso de dados, reduzindo vulnerabilidades e restaurando a confiança dos usuários. Assim, o estudo destaca o potencial da tecnologia blockchain de se tornar uma solução eficiente na proteção da privacidade em sistemas de dados descentralizados.
Palavras-chave: Blockchain, Privacidade de dados, Rede descentralizada, Transparência
Abstract
The advancement of blockchain technology introduces a new perspective on data protection and privacy, effectively overcoming the limitations of centralized systems. This work analyzes the application of blockchain in ensuring data privacy amidst the security and reliability challenges present in digital systems. This study is based on a comprehensive literature review and the development of a proof of concept using Python and the Web3.py library to interact with the Ethereum network through smart contracts. The smart contract execution took place on the Sepolia test network, utilizing Remix IDE, MetaMask, and Infura, ensuring a practical methodology for validating the discussed concepts.
The proof of concept results demonstrate that the use of blockchain provides a secure and transparent environment for data storage and access, reducing vulnerabilities and restoring users’ trust. Consequently, the study highlights the potential of blockchain technology to become an efficient solution for protecting privacy in decentralized data systems.
Keywords: Blockchain, Data Privacy, Decentralized network, Transparency
1 INTRODUÇÃO
O blockchain, como o próprio nome indica, estabelece um sistema de confiança descentralizado por meio de uma “cadeia de blocos”, onde a integridade dos dados é garantida por meio de um consenso distribuído. Esse sistema permite transações financeiras seguras entre indivíduos que não possuem uma relação de confiança entre si, com segurança garantida por ambas as partes (NAKAMOTO, 2008).
Blockchain possui o potencial de revolucionar a forma como os dados são armazenados e compartilhados, oferecendo segurança, transparência e controle aos usuários. Diante das constantes violações de privacidade e vazamentos de dados, tornou-se de suma importância explorar novas abordagens que possam garantir a integridade e a confidencialidade das informações (NAKAMOTO, 2008; TASSOTTI 2016).
Nos últimos anos, o blockchain vem ganhando destaque e se consolidando em diversas áreas. A crescente popularidade da tecnologia se deve à sua capacidade de oferecer um sistema seguro e transparente de registro de transações, além de proporcionar descentralização, o que reduz a dependência de intermediários e a vulnerabilidade a fraudes. Esse movimento é impulsionado pela busca por alternativas aos modelos centralizados, cada vez mais questionados em razão de violações de dados e escândalos de privacidade (WORLD ECONOMIC FORUM, 2018).
Há uma dificuldade em garantir a privacidade dos dados, especialmente em sistemas centralizados suscetíveis a ataques cibernéticos. A tecnologia blockchain, por ser descentralizada e imutável, pode oferecer uma solução viável para mitigar esses desafios, protegendo a privacidade dos usuários enquanto dá visibilidade aos mesmos.
Além disso, as atuais soluções de proteção de dados muitas vezes enfrentam desafios relacionados à confiança e transparência. Atualmente a falta de confiança nas instituições devido a violações e vazamentos de dados se tornou muito comum, nesse sentido, o intuito desta pesquisa é que blockchain, ao oferecer um sistema transparente e confiável de armazenamento e compartilhamento de dados, pode não apenas proteger a privacidade dos usuários, mas também reconstruir a confiança em sistemas digitais, induzindo uma maior adoção e uso responsável da tecnologia (BIRCH, 2014).
Este trabalho tem como objetivo principal avaliar como a tecnologia blockchain pode ser aplicada para melhorar a privacidade dos dados, para isto foi realizada uma pesquisa bibliográfica em conjunto com desenvolvimento de uma prova de conceito demonstrando funcionamento e implementação. Utilizando Python como linguagem principal, usando da biblioteca Web3.py para desenvolvimento com Ethereum e Visual Studio Code como ferramenta para desenvolvimento e avaliação.
2 REVISÃO BIBLIOGRÁFICA
Nesta seção, serão abordados alguns conceitos fundamentais para o entendimento da tecnologia blockchain como descentralização e imutabilidade, além de aprofundar na ideia de privacidade de dados e as ferramentas que foram utilizadas ao longo do trabalho.
2.1 BLOCKCHAIN:
É um mecanismo de banco de dados avançado que permite o compartilhamento transparente de informações na rede de uma empresa. Um banco de dados blockchain armazena dados em blocos interligados em uma cadeia. Os dados são cronologicamente consistentes porque não é possível excluir nem modificar a cadeia sem o consenso da rede (AMAZON, 2024).
A blockchain é um livro-razão digital distribuído que registra transações de forma imutável e transparente. É um sistema de transações eletrônicas que permite transações diretas entre usuários, sem intermediários. Suas características principais são a descentralização e a imutabilidade.
“A inovação proporcionada por Satoshi é a ideia de combinar um consenso simples protocolo descentralizado, baseado em nós que combinam transações em um “bloco” a cada dez minutos, criando um blockchain cada vez maior, com prova de trabalho como um mecanismo através do qual os nós ganham o direito de participar do sistema.” (BUTERIN, 2014)
Livro de razão digital também conhecido como “ledger” digital, é um registro eletrônico que armazena e mantém um registro de transações financeiras ou de outros tipos de atividades. É uma base de dados digital que mantém um histórico cronológico de todas as transações realizadas, facilitando a auditoria, a transparência e a confiabilidade das informações registradas (HYPERLEDGER, 2020).
Alguns dos fundamentos principais do blockchain são respectivamente: descentralização e escalabilidade.
A descentralização é uma propriedade que consiste em que todos os participantes da rede tenham acesso e visibilidade dos dados, assim não mantendo um ponto único de controle. A imutabilidade na blockchain significa que uma vez que uma transação é registrada em um bloco e adicionada à cadeia de blocos, ela não pode ser alterada ou removida sem o consenso da maioria da rede.
A escalabilidade é a capacidade de um sistema ou rede de crescer e lidar com um aumento na carga de trabalho. O que se torna uma questão crucial envolvendo a blockchain, devido à natureza distribuída e aumento contínuo de transações, pois cada “nó” (computador na rede, que realiza validação da transação) necessita possuir uma cópia idêntica de todos os dados existentes na rede, causando dificuldades em questão de custo de armazenamento. Além disso, a adição de um novo nó pode aumentar tanto a questão de armazenamento quanto de processamento (POSITIVO 2017).
Para a execução de operações automatizadas na blockchain, são utilizados os contratos inteligentes que são programas autônomos que funcionam na blockchain programados para funcionar automaticamente quando certas condições são atendidas, são escritas em linguagens específicas para blockchain como Solidity para Ethereum ou Chaincode para Fabric. Esses contratos são executados em todos os nós da rede garantindo que a execução seja transparente e descentralizada.
Contratos inteligentes podem ser usados para uma ampla gama de finalidades, como transações financeiras, autenticação, identidade digital e execução de contratos legais, entre outros. Esses contratos são fundamentais para o funcionamento ideal da blockchain, pois contêm as execuções necessárias que atendem às necessidades do produto, incluindo regras e validações essenciais (TOTVS 2024).
2.2 PRIVACIDADE DE DADOS
Como o nome sugere, é a capacidade de conter, manipular e utilizar dados sem o risco de vazamento ou reconhecimento terceiro deles, além de garantir sua integridade e veracidade, existem diversas técnicas e maneiras para alcançar esse objetivo, como por exemplo a criptografia de chave pública.
A criptografia de chave pública é um recurso de segurança para identificar de forma exclusiva os participantes em uma rede blockchain. Esse mecanismo gera dois conjuntos de chaves para os membros de uma rede. Uma chave é a chave pública, comum a todos os participantes da rede. A outra é uma chave privada, que é exclusiva de cada membro. As chaves públicas e privadas trabalham juntas para desbloquear os dados no ledger (IBM, 2024).
2.3 FERRAMENTAS DE DESENVOLVIMENTO
Algumas das principais ferramentas de desenvolvimento deste trabalho foram: Pyhton 3, Web3.py, Remix, Infura, MetaMask e SepholiaETH.
O Python 3 foi escolhido como linguagem principal para o desenvolvimento devido a sua facilidade e legibilidade, tornando simples de ser entendido e analisado, possui uma grande quantidade de bibliotecas e frameworks para trabalho com blockchain, além de possuir uma comunidade ativa que oferece suporte constante e documentação total.
A Web3.py é uma implementação em Python da API Web3 para Ethereum, que fornece uma maneira simples e fácil de enviar transações e acessar dados na blockchain Ethereum. Com a Web3.py, é possível escrever aplicativos blockchain complexos usando Python, aproveitando ao máximo a facilidade de uso dos recursos disponibilizados (THE ETHEREUM FOUNDATION 2024).
O Remix é uma IDE na web que é amplamente utilizado para escrever, compilar e testar contratos inteligentes em Solidity, a linguagem de programação usada na plataforma Ethereum.
O Infura é um serviço de infraestrutura de blockchain que fornece acesso a “nós” Ethereum remotos para desenvolvedores. Ele oferece uma maneira fácil de interagir com a rede Ethereum sem a necessidade de configurar e manter um nó Ethereum local. O Infura permite que os desenvolvedores se conectem à rede Ethereum, enviem transações, consultem dados de contratos inteligentes e implantem contratos.
O MetaMask é uma carteira digital que permite aos usuários gerenciarem suas contas Ethereum e enviar transações. Além de ser um gerenciador de chaves e um provedor de identidade, é amplamente utilizado como uma ponte para interações seguras com contratos inteligentes na rede Ethereum (RENWICK, 2024).
SepholiaETH é uma rede de teste baseada em Ethereum usada para experimentos e validação de contratos inteligentes antes da implantação na rede principal. Ela foi escolhida nesse trabalho por ser uma opção segura e eficiente para testes, executando transações e implantação do contrato sem custos reais.
3 DESENVOLVIMENTO
Neste capítulo, será apresentada a implementação prática da prova de conceito que utiliza a tecnologia blockchain, para isso foi dividido em 3 etapas principais. Primeiramente, o Subtópico 3.1 aborda a implementação do contrato inteligente, utilizando a linguagem Solidity, em conjunto com o deploy pelo Remix, detalhando os principais aspectos de sua construção e execução. Em seguida, no Subtópico 3.2, é descrito o processo de criação da URL de conexão para a rede Sepolia, por meio da qual a aplicação poderá interagir com a blockchain. Epor último o Subtópico 3.3 apresenta a integração da aplicação com a rede Sepolia, permitindo a execução e a validação do contrato inteligente em um ambiente controlado.
3.1 Implementação do Contrato Inteligente Solidity
Foi utilizado o Remix para desenvolvimento e implantação do contrato inteligente no ambiente de testes, interligado à carteira digital MetaMask.
O contrato inteligente feito em Solidity denominado “DataStorage.sol” foi desenvolvido para fazer 2 operações, setData e getData responsáveis por salvar e resgatar respectivamente um texto recebido por parâmetro.
Figura 1 – Desenvolvimento do Contrato Inteligente
Fonte: (De autoria própria 2024)
A Figura 1 apresenta o código do contrato inteligente “DataStorage.sol” desenvolvido em Solidity. Este contrato contém duas funções principais: setData, que permite salvar um texto passado como parâmetro, e getData, que retorna o último texto salvo. A função setData armazena o valor em uma variável, persistindo-o na blockchain, enquanto a função getData recupera esse valor para exibição.
Seguindo no Remix foi utilizada a ferramenta de compilação para a geração do ABI (Application Binary Interface) do contrato, responsável por identificar para o código responsável da integração, quais as funções e parâmetros disponibilizados pelo contrato.
A Figura 2 abaixo apresenta uma captura de tela da interface do Remix, destacando os botões de compilação e de cópia do ABI (Application Binary Interface) do contrato inteligente. A ferramenta de compilação, quando acionada, gera o ABI que fornece uma descrição das funções e parâmetros disponíveis no contrato, permitindo que a aplicação identifique como se comunicar corretamente com ele.
Figura 2 – Compilação do Contrato e geração do ABI
Fonte: (De autoria própria 2024)
Com o contrato compilado sem erros, foi feita a subida do contrato na rede Sepolia com os recursos da carteira digital via MetaMask. Nessa etapa podemos escolher a quantidade de “Gas” (considerado como sendo o preço de uma transação) a ser gasto para a tentativa de implantação do contrato.
Assim como Figura 3 abaixo, apresenta a interface do Remix na seção de deploy do contrato inteligente, evidenciando a configuração para a implantação na rede de testes Sepolia. A figura destaca a opção de usar a carteira digital MetaMask para autenticar e executar a transação. É possível observar a quantidade de “Gas” estimada, que representa o custo da transação. A IDE fornece uma estimativa do valor de Gas necessário para a implantação do contrato, que é crucial para garantir que a transação seja processada com sucesso na blockchain.
Figura 3 – Deploy do contrato na rede de testes Sepolia
Fonte: (De autoria própria 2024)
Em seguida na tela do Remix após a implantação com sucesso do contrato inteligente, é gerado o “Contract Address”, que é um hash exclusivo que referência o contrato na blockchain, utilizado para que a aplicação faça a comunicação com o contrato conforme mostrado na figura abaixo.
Figura 4 – Contrato implantado com sucesso e Contract Address
Fonte: (De autoria própria 2024)
3.2 Criação da URL de conexão Sepolia
Abaixo a figura 5 apresenta a tela do menu do site da Infura, onde é possível visualizar a “chave” privada para conexão com a rede Sepolia, juntamente com a URL de conexão. A partir da metade, a chave foi censurada para proteger a segurança da aplicação e a integridade da conexão com a blockchain, pois a exposição de chaves privadas pode permitir que terceiros acessem a conta associada, comprometam transações e causem danos significativos.
Figura 5 – Disponibilização da “chave” infura
Fonte: (De autoria própria 2024)
3.3 Implementação da integração com a rede Sepolia
O desenvolvimento foi realizado totalmente em Python 3, possuindo como maior relevância a biblioteca Web3, uma biblioteca especializada com transações na rede Ethereum.
Primeiramente na figura abaixo temos a importação das bibliotecas que serão usadas no decorrer do projeto, Web3 como já explicado posteriormente sendo especializada em operações e transações na rede Ethereum e json sendo uma biblioteca básica de controle de arquivos de extensão JSON (.Json).
Figura 6 – Importação de bibliotecas
Fonte: (De autoria própria 2024)
Temos então a conexão com a rede Sepolia por meio da chave gerada anteriormente utilizando da biblioteca Web3 conforme a figura.
Figura 7 – Conexão com rede Sepolia
Fonte: (De autoria própria 2024)
Seguindo conforme figura 8 temos a conexão da biblioteca com o contrato, primeiro definindo as variáveis com as informações que foram adquiridas anteriormente, como o Contract Address e ABI do contrato, em seguida criando a instância do contrato utilizando essas informações.
Figura 8 – Integração do contrato
Fonte: (De autoria própria 2024)
É possível ver que o ABI se trata de um JSON conforme formatado na figura 9 que será interpretado pelo contrato de maneira dinâmica, para definir os métodos que foram disponibilizados pelo contrato, nele se faz referência a: entradas, tipos, nomenclatura e saídas.
Figura 9 – Json do ABI de maneira estruturada
Fonte: (De autoria própria 2024)
Para realizar transações em uma rede Blockchain é necessária uma assinatura digital que faz referência ao responsável pela transação, também sendo quem sustenta os custos dela por meio do “Gás” (preço da transação). Nesse cenário será utilizado uma carteira digital gerada por meio do MetaMask, nesse caso as informações necessárias para assinar uma transação são o “Address” e “Private Key”, sendo respectivamente o endereço público e uma chave de segurança única por conta conforma mostrado na figura 10. A “Private Key” foi censurada na imagem, pois é uma informação sensível que, se exposta, permitiria o acesso não autorizado à conta e aos fundos associados.
Figura 10 – Dados do responsável pela transação
Fonte: (De autoria própria 2024)
Seguinte as definições das bibliotecas e dos dados temos a criação do primeiro método, que será responsável por realizar a ação de “setData” definida no contrato.
Figura 11 – Declaração da função set_data
Fonte: (De autoria própria 2024)
Para tal temos a seguinte ordem no código:
1. Obter o Nonce da conta: nonce é a informação que diz respeito ao número de transações realizadas pela conta, o que impede duplicidade de transações e evita problema na ordem de processamento de transações;
2. Construir a transação: para a construção da transação temos 4 informações chave
a. ChainId: Sendo o Id da rede que estamos usando, no caso rede Sepolia é 11155111;
b. Gas: Assim como definido anteriormente, é o custo da transação, sendo esse custo relativo, podendo ter o valor alterado por diversas razões como quantidade de transações na rede, prioridade da transação, ou o GasPrice;
c. GasPrice: É o valor que indica quanto um usuário está disposto a pagar por unidade de gas para que uma transação seja processada. Esse valor é expresso em wei, a menor unidade de Ethereum (1 Ether = 10¹⁸ wei).
d. Nonce: Como explicado acima se trata do número de transações que o usuário possui;
3. Assinatura da transação com a Private Key da conta, garantindo a segurança e rastreabilidade;
4. Enviar a transação para processamento, retornando a Hash que representa a transação para acompanhamento;
5. Aguardar o recibo da transação com um resumo das informações atreladas a mesma;
E por último na figura 12 temos o método responsável por realizar a ação de getData do contrato, ao contrário do setData a ação de consultar uma informação não faz nenhum tipo de alteração na blockchain por isso não requer Gas para operar.
Figura 12 – Declaração da função get_data
Fonte: (De autoria própria 2024)
4 RESULTADOS
Neste capítulo serão mostrados os resultados da execução do contrato inteligente na rede de testes Ethereum. Utilizando do método set_data, foi salvo um texto no contrato, gerando um recibo com detalhes da transação, como o hash, o gás utilizado e o endereço da conta responsável. Utilizando o hash, a transação foi vista no explorador Etherscan, que revelou a confirmação distribuída típica do blockchain. Em seguida, o método get_data foi executado, retornando o texto salvo, validando o funcionamento da blockchain.
Agora com todo o código preparado e os métodos definidos foi feita a execução do código para visualizar o funcionamento da rede Ethereum.
Inicialmente foi executado o método “set_data” para salvar uma “string” no contrato, e analisar o retorno do “recibo” da transação conforme mostrado na figura 13.
Figura 13 – Execução do método set_data
Fonte: (De autoria própria 2024)
O recibo da transação conforme mostrado na figura 14 se trata de um objeto complexo com diversas informações chaves de tudo que ocorreu na transação, porém sem nenhum tipo de informação que possa ser prejudicial ao emissor, inicialmente ele é retornado como um grande texto aparentemente desorganizado.
Figura 14 – Resultado no prompt de comando
Fonte: (De autoria própria 2024)
Organizando esse resultado se tem o que é considerado como o recibo de uma transação, contendo um resumo geral dela, como o Hash da transação, a quantidade de gas usado, o Address da conta que realizou a transação (From) como mostrado na figura 15 abaixo.
Figura 15 – Recibo estruturado
Fonte: (De autoria própria 2024)
Com a informação do Hash da transação, é possível utilizar “Exploradores de Blockchain” para visualizar graficamente a transação e detalhes sobre ela.
Nesse caso foi utilizado o “Etherscan” para consultar, um detalhe muito interessante que se pode ver é a natureza distribuída do blockchain como é mostrado na propriedade “Block” que mostra qual o bloco que iniciou a transação e quantos blocos confirmaram a mesma conforme ilustrado na figura 16.
Figura 16 – Transação no explorador de blocos
Fonte: (De autoria própria 2024)
Com o sucesso na transação seguindo o fluxo do contrato o texto “Hello, Blockchain!” está salvo dentro da variável “data” contido no contrato. Assim foi executado em seguida o método “get_data”, retornando o texto persistido na primeira transação conforme a execução na figura 17 e o retorno na figura 18.
Figura 17 – Execução do método get_Data
Fonte: (De autoria própria 2024)
Figura 18 – Retorno do método get_data
Fonte: (De autoria própria 2024)
5 CONCLUSÃO
Depois de examinar o funcionamento do blockchain, podemos concluir e validar sua habilidade para gerir transações de maneira segura e transparente, assegurando a privacidade dos dados de forma aberta e com consenso distribuído. O estudo mostrou que a tecnologia blockchain, graças à sua estrutura descentralizada, proporciona uma solução revolucionária para salvaguardar a integridade e a confidencialidade das informações, dispensando a presença de intermediários centralizados.
A demonstração do conceito, que consistiu na criação e implementação de um contrato inteligente na rede de testes Sepolia, confirmou a utilidade prática da tecnologia. No entanto, a pesquisa também identificou limitações, tais como os custos relacionados às transações (gás), problemas de escalabilidade e a complexidade de implementação, que ainda constituem obstáculos para sua adoção em larga escala.
Assim, embora enfrente barreiras tecnológicas e financeiras para se tornar uma solução amplamente viável, o blockchain se destaca como uma ferramenta poderosa para a proteção da privacidade e segurança da informação. É esperado que, com avanços futuros, a tecnologia evolua, superando limitações atuais e se consolidando como um recurso essencial em cenários que demandam alta confiabilidade e proteção de dados.
REFERÊNCIAS BIBLIOGRÁFICAS
AGUIAR, E. J. (2021). Um framework baseado em blockchain para preservar a privacidade no compartilhamento de dados de saúde [Dissertação de mestrado, Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo]. Repositório Digital de Teses e Dissertações da USP. Disponível em: https://doi.org/10.11606/D.55.2021.tde-16022021 152627 Acesso em: 21 abr. 2024.
AMAZON. O que é a tecnologia blockchain?. Disponível em: https://aws.amazon.com/pt/what-is/blockchain/?aws-products-all.sort. Acesso em: 03 jun. 2024.
BIRCH, D. G. W. Identity is the New Money. Copyright © 2014 David G. W. Birch. Publicado por London Publishing Partnership. Disponível em: https://londonpublishingpartnership.co.uk/edd0dae8-4c22-4641-b96e-936c4ebd4f8b/. Acesso em: 21 abr. 2024.
BUTERIN, VITALIK. A next-generation smart contract and decentralized application platform. Publicado por White Paper. Disponível em: https://finpedia.vn/wp content/uploads/2022/02/Ethereum_white_paper a_next_generation_smart_contract_and_decentralized_application_platform-vitalik buterin.pdf. Acesso em: 04 jun. 2024.
HYPERLEDGER. Hyperledger Fabric Documentation: Ledger. Disponível em: https://hyperledger-fabric.readthedocs.io/pt/latest/ledger/ledger.html. Acesso em: 25 out. 2024.
IBM. Criptografia de Chave Pública. Disponível em: https://www.ibm.com/docs/pt-br/integration-bus/10.1?topic=overview-public-key-cryptography. Acesso em: 25 out. 2024.
NAKAMOTO, SATOSHI. Bitcoin: A Peer-to-Peer Electronic Cash System. Disponível em: https://www.bitcoin.org. Acesso em: 21 de abr de 2024.
ORACLE BRASIL. O que é Segurança de Dados? Disponível em: https://www.oracle.com/br/security/database-security/what-is-data-security/. Acesso em: 22 abr. 2024.
PONTES, F. (2018, September 6). Entendendo como funciona uma Blockchain com Python. Medium. https://medium.com/@felipemfp/entendendo-como-funciona-uma-blockchain-com python-4e5a66f09e16. Acesso em: 21 abr. 2024.
POSITIVO. O que é escalabilidade? Conheça a fórmula de crescimento das empresas. Disponível em: https://www.meupositivo.com.br/panoramapositivo/escalabilidade/. Acesso em: 25 out. 2024.
RENWICK, Oliver. O que é MetaMask?. Última atualização em 30 de out. de 2024. Disponível em: https://support.metamask.io/pt-br/getting-started/getting-started-with-metamask/. Acesso em: 31 out. 2024.
SCIENCE, DIGITAL; van Rossum, Joris (2017). Blockchain for Research. Digital Science. Report. Disponível em: https://doi.org/10.6084/m9.figshare.5607778.v1. Acesso em: 21 abr. 2024.
THE ETHEREUM FOUNDATION. Web3.py Documentation. 2016-2024. Disponível em: https://web3py.readthedocs.io/en/stable/. Acesso em: 31 out. 2024.
TOTVS. Smart Contracts: agilidade e segurança com tecnologia de ponta. 2024. Disponível em: https://www.totvs.com/blog/gestao-juridica/smart-contracts/. Acesso em: 25 out. 2024.
WORLD ECONOMIC FORUM. Blockchain Beyond the Hype: A Practical Framework for Business Leaders. Mulligan, Catherine; Scott, Jennifer Zhu; Warren, Sheila; Rangaswami, JP. Genebra: World Economic Forum, 2018. Disponível em: https://www3.weforum.org/docs/48423_Whether_Blockchain_WP.pdf. Acesso em: 28 out. 2024.
1 Graduando do Curso de Sistemas de Informação 2024 da Universidade de Araraquara- UNIARA. Araraquara SP. E-mail: fabiozf3108@gmail.com
2 Orientador. Docente Curso de Sistemas de Informação 2024 da Universidade de Araraquara- UNIARA. Araraquara-SP. E-mail: fddallilo@uniara.edu.br
3 Coorientador. Docente Curso de Sistemas de Informação 2024 da Universidade de Araraquara- UNIARA. Araraquara-SP. E-mail: fflorian@uniara.edu.br