Prévia do material em texto
Segurança do sistema blockchain BL O CK CH A IN T EC H N O LO G IE S - B TE 58 0 - 1 .5 Segurança do sistema blockchain • 2/15 Objetivos de Aprendizagem • Compreender a arquitetura do blockchain • Compreender as camadas de segurança do blockchain • Conhecer os desafios relacionados à segurança Segurança do sistema blockchain Conteúdo organizado por Valéria Feitosa de Moura do livro Blockchain Revolution: como a tecnologia por trás do Bitcoin está mudando o dinheiro, os negócios e o mundo, 1° Edição, publicado em 2016 por Tapscott, D e Tapscott, A. https://player.vimeo.com/video/651550751 Segurança do sistema blockchain • 3/15 Introdução Durante nossas aulas foi possível compreender de forma abrangente como o blockchain funciona e quais são seus princípios. Por diversas vezes a questão da segurança do sistema foi apresentada como uma vantagem. Mas como essa segurança é garantida? Essa aula é dedicada a nos aprofundarmos nesse tema. Relembrando como o blockchain funciona Conforme já discutimos, o blockchain é uma forma de tecnologia que combina compartilhamento de arquivos ponto a ponto e criptografia. Os sistemas de informação na sociedade moderna são distribuídos intactos e a estrutura de rede da própria Internet é um sistema distribuído. Nas redes distribuídas os dados e recursos de computador a serem usados em tarefas operacionais são distribuídos em vários nós de hardware ou dispositivos de computador. São muitos computadores trabalhando juntos para uma meta comum. Já nas redes centralizadas, todos os recursos, servidores e as variáveis são armazenadas em um único hardware de computador, exigindo que todos os outros sistemas se conectem a ele para acessar esses recursos. Embora este modelo dê um pouco mais de controle em termos de administração, tem sido criticado por não ser transparente, rigoroso e não inclusivo. Além disso, os servidores centralizados são alvos de violação de dados de alto risco, pois os invasores não esperam apenas obter todas as informações de que precisam invadindo um nó único, mas também é eficaz em termos de tempo e custo da perspectiva de um invasor. A Figura 1 ilustra os sistemas centralizados, descentralizados e distribuídos (Morabito, 2017). Segurança do sistema blockchain • 4/15 Figura 1 – Tipos de sistemas Saiba Mais Um hash é a sequência de letras e números que identifica cada registro no blockchain. Cada alteração no registro gera um hash completamente novo. Fonte: Morabito, 2017 O blockchain é um livro-razão distribuído de blocos que contém transações válidas que foram executadas em uma rede. Cada bloco contém um carimbo de data / hora de criação e um hash que o vincula ao bloco anterior. A ligação contínua de blocos forma uma cadeia. Cada ponto em uma rede ponto a ponto descentralizada tem uma cópia da versão mais recente do livro de transações. Os sistemas Blockchain têm um algoritmo para pontuar diferentes versões do livro de transações, de forma que a versão de maior pontuação tenha precedência. Os pares na rede sempre mantêm a versão de pontuação mais alta (que eles conhecem atualmente) e sobrescrevem sua versão antiga quando uma nova versão tem uma pontuação mais alta. Cada bloco é identificado com um hash de chave usando um algoritmo de criptografia hash. Ele também tem uma referência ao bloco anterior denominado Bloco-pai. Em teoria, o blockchain se comporta como bancos de dados convencionais, exceto que as informações armazenadas são visíveis publicamente, mas acessíveis apenas de forma privada (Morabito, 2017). Segurança do sistema blockchain • 5/15 Arquitetura do blockchain Distribuição de dados e estrutura de blocos A distribuição de dados em um sistema blockchain é feita usando uma arquitetura ponto a ponto. Nesse tipo de arquitetura, cada ponto tem uma versão completa dos dados e os dados são replicados muitas vezes, um por par. Cada atualização cria uma cadeia de comunicação entre pares; no entanto, cada par é independente de outros pares e pode continuar a operar sozinho. Mais importante ainda, de uma perspectiva de segurança, dada a natureza dessa rede, a ausência de um servidor central torna difícil para a rede experimentar ataques de hacker (Morabito, 2017). Um bloco, é uma estrutura de dados que registra as transações a serem incluídas em um livro-razão público. Ele é composto por um cabeçalho, que contém metadados dos detalhes do bloco, uma lista de transações válidas, o hash da chave do bloco anterior e seu próprio hash (Morabito, 2017). Se um bloco for alterado, o hash desse bloco muda e os hashes correspondentes de todos os outros blocos na cadeia também mudam. Esse modelo em cascata de hashes garante que um bloco não possa ser modificado sem que haja uma mudança em pelo menos 80% dos blocos da cadeia. A grande computação necessária para um recálculo de cada bloco na cadeia torna o blockchain imutável, que é um fator importante da segurança do blockchain. Parece que quanto mais blocos são adicionados a uma cadeia, mais segura ela se torna, pois se torna difícil alterar (Morabito, 2017). Camadas de segurança A segurança e a privacidade em uma rede blockchain são implementadas por meio da utilização de camadas: consenso, mineração, propagação e imutabilidade. • Consenso: o algoritmo de consenso permite que os usuários atualizem transações com segurança usando regras pré-definidas, onde os direitos para transições de estado são distribuídos a todos os nós em uma rede descentralizada com segurança. O consenso fornece um protocolo pelo qual novos blocos podem ser adicionados ao livro-razão (Morabito, 2017). Segurança do sistema blockchain • 6/15 • Mineração: refere-se à computação distribuída realizada em cada bloco de dados em uma cadeia que permite a criação e adição de novos blocos para a cadeia. Além da criação de novos blocos, as mineradoras também atendem aos seguintes propósitos: proteger o blockchain contra uso fraudulento ou não verificado, fornecer poder de processamento para a rede e validar novas transações e adicioná-los a um livro-razão global. A mineração garante a confiança, assegurando que computação suficiente seja dedicada à criação de cada bloco (Morabito, 2017). • Propagação e imutabilidade da informação: propagação é a distribuição de uma transação ou bloco em toda a rede. É como uma transmissão ou modelo de replicação. O nó 1 pode enviar uma mensagem ou transação para o nó 2, que pode ser qualquer um dos outros nós da rede. O nó 1 não precisa ser diretamente conectado ao nó 2. Qualquer nó de rede que recebe uma nova transação ou mensagem encaminha para todos os outros nós da rede à qual está conectado diretamente, assim propagando a nova transação em todos os nós da rede. O termo “imutável” significa que algo não pode ser alterado ao longo do tempo ou os valores permanecem os mesmos durante um período específico de tempo. No contexto das cadeias de blocos, os dados já gravados não podem ser alterados por nenhuma pessoa, mesmo um administrador. O processo de uma única reescrita exigiria um consenso de cada membro da cadeia (Morabito, 2017). Segurança do sistema blockchain • 7/15 Desafios de segurança do Blockchain Assim como qualquer outra tecnologia, o blochcain não está livre de críticas e desafios a serem superados. A seguir vamos conhecer alguns desses pontos. Distribuído ou Replicado? Uma das principais críticas dos engenheiros à infraestrutura do blockchain é o problema de replicação e duplicação. Um sistema distribuído depende de dois processos, sobretudo para garantir a consistência entre todos os membros participantes da rede: replicação e duplicação. A duplicação procura em todos os nós por mudanças em um arquivo compartilhado; já a replicação, reconhece um nó como mestre e atualiza todos os outros nós com referência a esse nó. O processo de replicação foi criticado como sendo excessivamente complexo, computacionalmente intensivo e demorado. Porém,no contexto do blockchain, apesar do processo de duplicação resolver a questão da replicação, por ser menos complexo e demorado, ele volta à ideia de bancos de dados centrais, mas disfarçados, pois ele identifica um nó como sendo mestre (Morabito, 2017). https://player.vimeo.com/video/651551527 Segurança do sistema blockchain • 8/15 Monopólio de Mineiros O processo de mineração é executado e gerenciado por participantes de um grupo. Embora o sistema assuma um modelo descentralizado onde os participantes são desconhecidos uns dos outros, pesquisadores têm argumentado sobre a possibilidade de monopolização da mineração e a criação de grandes grupos de mineiros maliciosos que cooperam entre si. Além disso, contribuições recentes de pesquisa industrial mostraram que a rede blockchain não é totalmente compatível com incentivos. Isso quer dizer que, apesar da rede criar um incentivo para que os mineiros sigam os protocolos estabelecidos, trabalhando assim com a suposição de que seriam honestos ou aceitariam tais incentivos, é possível que existam os mineiros egoístas que possuam grande porcentagem do poder computacional, e que com o passar do tempo outros indivíduos podem optar por se juntar a esse pequeno grupo, que, porventura, pode vir a se tornar a maioria (Morabito, 2017). Gasto duplo Um gasto duplo é uma situação em que os nós tentam criar várias transações no mesmo produto ou crédito, ele pode ser intencional ou não. Quando vários nós são coproprietários das mesmas saídas, no entanto, apenas uma transação pode ser válida. Em um ataque intencional de gasto duplo, um invasor pode transferir uma saída para a vítima apenas para criar outra transação com a mesma saída de volta para si mesmo. Por padrão, um nó considera a primeira transação válida quando duas transações conflitantes são vistas. No entanto, a ordem em que as transações se propagam pode não ser a mesma para todos os nós (Morabito, 2017). Segurança do sistema blockchain • 9/15 Consenso sem permissão versus consenso permitido Em um consenso sem permissão, a fim de contribuir para o processamento de transações e voto, uma pessoa não precisa de um relacionamento prévio com o livro- razão e cada voto não depende de alguma identidade anterior para o titular do voto dentro do livro-razão. Em um consenso permitido, apenas aqueles já validados e reconhecidos no livro-razão têm permissão para participar dos processos de validação de transações dentro da cadeia. Embora ambos os modelos tenham seus prós e contras, o consenso permitido opera um modelo fechado onde apenas os participantes têm permissão para tomar decisões sobre o que acontece dentro da cadeia (Morabito, 2017). Saiba Mais Uma das críticas ao blockchain também se refere ao alto consumo de energia elétrica. Veja essa reportagem: https://www.youtube.com/ watch?v=lV5cXmGpxEA. Acesso em 28 ago. 2021. Em Resumo Nessa aula você aprendeu que a distribuição de dados em um sistema blockchain é feita usando uma arquitetura ponto a ponto. Nesse tipo de arquitetura, cada ponto tem uma versão completa dos dados e os dados são replicados muitas vezes, um por par. Aprendeu também que um bloco, é uma estrutura de dados que registra as transações a serem incluídas em um livro-razão público. Ainda focado na estrutura de segurança do blockchain, você aprendeu que a segurança e a privacidade em uma rede blockchain são implementadas por meio da utilização de camadas: consenso, mineração, propagação e imutabilidade. Por fim, você compreendeu que existem críticas ao sistema de segurança do blockchain e que elas estão relacionadas aos processos de distribuição e replicação, à possibilidade de monopólio de mineiros, ao gasto duplo e ao sistema de consenso. https://www.youtube.com/watch?v=lV5cXmGpxEA https://www.youtube.com/watch?v=lV5cXmGpxEA Segurança do sistema blockchain • 10/15 Na ponta da língua https://player.vimeo.com/video/651551953 Segurança do sistema blockchain • 11/15 Referências Bibliográficas Tapscott, D. & Tapscott, A. (2016). Blockchain revolution: como a tecnologia por trás do Bitcoin está mudando o dinheiro, os negócios e o mundo. São Paulo: SENAI- SP editora, 1° Edição, ISBN: 978-8583937890. Morabito, Vicenzo. (2017). Business Innovation Blockchain: The B3 Perspective. Editora Springer Nature, 1° Edição, ISBN: 978-3319839523. Im ag en s: Sh utt er st oc k LIVRO DE REFERÊNCIA: Blockchain Revolution: como a tecnologia por trás do Bitcoin está mudando o dinheiro Don Tapscott e Alex Tapscott SENAI - SP editora