Análise de Segurança dos Mecanismos de Consenso no PBFT usando Multichain e PoW usando Ethereum Aplicados em Redes Blockchain Privadas/Consórcio ABSTRACT A considerable number of electronic transaction systems employ clas- sic approaches based on centralized trust mechanisms, not exploit- ing the latest technological advances. Alternatively, the concept of blockchain stands out, elaborated without the need for this centralized trust, but rather dependent on securely chained technologies in which the elements involved can conduct secure negotiations. Blockchain is designed to address security and distributed system issues through the use of encryption, algorithms, P2P networks, and consensus mecha- nisms. This paper presents a Denial of Service (DoS) security analysis of the more traditional Practical Byzantine Fault Tolerance (PBFT) and Proof of Work (PoW) consensus mechanisms available on Multichain and Ethereum solutions based on a private / consortium blockchain scenario. We present our results of a controlled DoS attack, revealing the importance and need for security-related analysis of blockchain implementations of private / consortium blockchains. 1 INTRODUÇÃO O grande volume de transações eletrônicas realizadas é essencial para a execução das relações comerciais. Manter e/ou ampliar a oferta de tecnologias que forneçam maior eficiência e segurança nessas transações é um desafio constante. Soluções sustentadas por paradigmas centralizados são questionadas tanto para ponto único de falhas quanto limitações de escalabilidade, integridade e/ ou confiabilidade. A partir destas preocupações e com desenvolvimento de tecnologias descentralizadas, ocorre um crescente movimento que tem como objetivo elaborar novos conceitos e soluções com abordagens não-centralizadas. Um banco de dados tradicional utiliza uma arquitetura cliente- servidor, em contraste surgiu a tecnologia blockchain com uma abordagem descentralizada, na qual os participantes, estes confiá- veis ou não, calculam, atualizam e mantém novas entradas de dados, que são replicadas em todos os nós do sistema. Estas entradas de dados são chamadas de transações que formam uma espécie de livro razão distribuído, que pode ser acessado por qualquer usuário com objetivo de verificar as validações das transações realizadas [19]. Como forma de garantir estes recursos, o blockchain emprega um conjunto de tecnologias que são conhecidas como: criptografia, al-goritmos, redes Peer-to-Peer (P2P) e mecanismos de consenso [12]. A tecnologia surgiu como solução para problemas de segurança e desempenho dos sistemas distribuídos, utilizando a tecnologia P2P com timestamp e aplicando o mecanismo de consenso Proof of Work (PoW) para comprovar a ordem cronológica das transa- ções. Embora o blockchain tenha sido criado para permitir tran- sações financeiras, e seja comumente associado a esse domínio, outras áreas de aplicação e uso de blockchain estão surgindo com o crescimento da atenção do público em torno da tecnologia [18]. A primeira implementação Bitcoin, aplicando a tecnologia block- chain, foi introduzida em 2008 [15]. Desde então, vários sistemas blockchain, como Ethereum [22], Hyperledger [23] e Multichain [7] emergiram com propostas fora do setor fnanceiro [1]. Com a ver- satilidade de utilização do blockchain, uma das questões geradoras de discussões na utilização da tecnologia é o seu custo computacio- nal, que é considerado alto por utilizar criptografa e mecanismos que geram provas de confabilidade. A partir desta questão foram desenvolvidos outros mecanismos de consenso (Practical Byzan- tine Fault Tolerance (pBFT), Proof of Stake (PoS), Delegated Proof of Stake (DPoS), Leased Proof of Stake (LPoS), Proof of Importance (PoI), Proof of Authority (PoA), Proof of Burn (PoB), Proof of Capacity (PoC) etc.) visando custos computacionais menores ao PoW [8]. Com estas novas possibilidades de aplicações do blockchain, é necessário compreender e identifcar como estes mecanismos de consenso atuam. Outro ponto importante é que a grande maioria dos estudos realizados são direcionados para aplicações do blockchain, mas ainda são escassas as pesquisas sobre ameaças e vulnerabilida- des da tecnologia associada, assim como o impacto na rede em que o blockchain encontra-se inserido. Com esta problemática e com plataformas e mecanismos que viabilizam o uso do blockchain, o presente trabalho visa realizar uma análise com foco na segurança dos mecanismos de consenso PoW e pBFT bem como suas caracte- rísticas e relação destes no uso em instâncias virtuais. Sobretudo, o trabalho aborda a ocorrência de ataques do tipo DoS. O artigo está organizado da seguinte forma. Na Seção 2 é rea- lizada uma breve revisão sobre o blockchain, assim como os seus modelos, versões e mecanismos de consenso. Na Seção 3, são elen- cadas as principais ameaças de segurança associadas ao uso de Guilherme P. Koslovski Universidade do Estado de Santa Catarina (UDESC) - Programa de Pós-Graduação em Computação Aplicada (PPGCA) guilherme.koslovski@udesc.br Charles C. Miers Universidade do Estado de Santa Catarina (UDESC) - Programa de Pós-Graduação em Computação Aplicada (PPGCA) charles.miers@udesc.br João H.F. Battisti Universidade do Estado de Santa Catarina (UDESC) - Programa de Pós-Graduação em Computação Aplicada (PPGCA) joao.battisti@edu.udesc.br Maurício A. Pillon Universidade do Estado de Santa Catarina (UDESC) - Programa de Pós-Graduação em Computação Aplicada (PPGCA) mauricio.pillon@udesc.br