Desmistificando a Segurança no Blockchain e entendendo o Potencial
Umas das notícias que vem fazendo mais barulho no 2017 são os ataques cibernéticos. Somente neste ano, já houveram 7 ataques em grande escala. Desde o “Wannacry” (o famoso ransomeware), o vazamento de 198 milhões de dados pessoais de votantes americanos, até o ataque de Denial of Service, que deixou sites como Twitter, Netflix, Paypal, Reddit e Airbnb fora do ar, a segurança é uma preocupação imediata. Ainda, as tendências de ataques irão aumentar: só no ransomware, o crime lucrou 638 milhões de dólares no ano passado.
As tendências são de ataques em redes de IoT, aumento no Phishing/ Whaling, ataques nos processos de negócios para facilitar operações criminais e uso Machine Learning. Sim, os criminosos estão começando a utilizar algoritmos de IA para almejar e atacar indivíduos com alta declaração de renda.
Uma questão que levanta cada vez mais interesse (assim como dúvidas) em relação a Blockchain é a sua proposta de valor e a exposição em relação a ações criminosas.
Tenho ouvido muitas preocupações, dúvidas e mitos neste âmbito pelo que, antes de abordar o potencial, vou primeiro esclarecer como Blockchain endereçada a questão da segurança.
Vamos entender como opera, diferenciando redes públicas (permisionless) de privadas (permissioned) e esclarecendo prós e contras de cada uma.
Segurança e estabilidade transacional
Em redes permissionadas/privadas (onde os participantes se conhecem), uma das primeiras decisões a tomar em relação a segurança é definir a arquitetura de nós na rede. No ledger (livro razão), são escritas somente transações autorizadas. Esta autorização se dá mediante uma validação conjunta: o Consenso. Cada nó possui uma cópia exata do ledger, que será atualizado e replicado com transações válidas. Os operadores de um Blockchain privado irão controlar quem pode executar o que nos nós, assim como as conexões entre eles. Para validar se um nó encontrasse “vivo”, o mesmo deverá manter um certo número de conexões ativas. Um nó que restringe a transmissão de informações, ou transmite informações incorretas, deve ser identificado e contornado para manter a integridade do sistema. Isto é implícito do consenso. Para de evitar o travamento do consenso (devido a um nó desligado), devem ser aplicadas políticas de alta disponibilidade de operação consensual. Como vemos, em redes privadas, o escopo está bem definido.
Agora, para redes públicas, o processo de consenso é atingido em lapsos aproximados de 10 minutos, que é o tempo médio para que um nó seja escolhido como o líder validador (responsável de atualizar o ledger). Esta prática é conhecida como mineração e tem levantado uma preocupação válida: uma transação não pode ser considerada segura até atingir um bom nível de profundidade dentro do ledger. Somente após de algumas horas, podemos falar que a transação está completamente validada. Até lá, a transação pode ser "negada" ao inserir uma nova versão da última atualização (operação também conhecida como fork). Com transações que estão muito “arraigadas” dentro do ledger, fazer um fork demandaria um alto custo em termos computacionais e geraria uma dualidade económica. Mas já houve um caso específico de um fork em transações "arraigadas" que gerou 2 versões de cripto-moedas de uma mesma fábrica.
Hoje, esta política poderia ser contornada com diferentes estratégias de algoritmos consensuais do tipo “prova de investimento” (proof of stake), que determina que quem investe a maior quantidade de bens dentro do Blockchain, terá o direito de minerar o proporcional do investido.
Como vimos, em redes permissionadas, não há esta exposição já que não há necessidade de mineração.
Privacidade e segurança dos bens
No Blockchain, a confidencialidade é garantida pela criptografia, que utiliza uma estrutura de chaves públicas e privadas. A PKI (public key infrastructure) é composta de pares de chaves públicas e privadas para garantir que somente participantes envolvidos em uma transação visualizarão a informação. Quando um remitente envia um dado para um destinatário, o remitente utilizara a chave pública do destinatário para encriptar o dado. Somente o destinatário, com a chave privada que lhe corresponde, poderá des-encriptar a informação.
Blockchain também garante a unicidade e a “não obstrução” da informação, graças a geração de uma chave hash, própria do set de informação já criptografada.
Adicionalmente, Blockchain garante a veracidade do remitente mediante uma assinatura digital. Para gerar esta assinatura, Blockchain adiciona uma chave privada própria do emissor (criptografia simétrica) no dado original, executa o hashing da informação criptografada e a re-encripta com a chave pública do receptor. Mediante este processo, o dado é assinado digitalmente pelo emissor (certificado auto assinado).
Para que alguém não autorizado consiga quebrar esta arquitetura de segurança, deverá investir uma capacidade computacional de um supercomputador, que consumira 263 Terawatts por hora (TWh) e contar com 1 bilhão de bilhão de anos de tempo livre!
Diferentes especulações relacionadas a computação quântica vem se levantando, mas também se estão considerando ledgers quânticos para evitar que, num futuro, processadores quânticos consigam quebrar algoritmos criptográficos.
Esta política é válida tanto para redes permissionadas como públicas.
Para redes públicas, o detentor da chave privada é o responsável pela mesma. Frente uma perda, extravio ou roubo, o responsável não terá mais acesso aos bens.
Assim, se estima que existam 950 milhões de dólares em bitcoins resultantes de chaves perdidas.
Em redes permissionadas, a regra é a mesma, mas a operação pode ser mais controlada. Deve ser parte do escopo de implementação, a definição de uma estratégia em conjunto com o operador do Blockchain para contornar este problema ou contar com elementos alternativos.
O fato é, que para toda rede, seja pública ou permissionada, todas as ferramentas para garantir a segurança estão disponíveis, até a integração com outras ferramentas. Lembrando que Blockchain é código aberto, o principal diferencial que garantira a privacidade é a estratégia.
Como Blockchain pode mudar a Internet
Agora que entendemos como funciona a operação do Blockchain em questão de segurança. Ficam claros os benefícios para redes permissionadas graças o controle que podemos aplicar, mas será que Blockchain pode auxiliar a evitar ataques na internet e nas redes públicas?
Vamos ver como Blockchain pode trazer um valor agregado para a problemática citada na introdução.
1. Proteção de Domínios
O ataque de “Denial of Service” contra os principais Domain Name Services (DNS) ocorrido no 2016, nos ensinou o fácil que é concentrar um ataque numa única infraestrutura. Blockchain pode armazenar as entradas de DNS e melhorar a segurança. O atacante não poderá concentrar suas forças em adulterar um sistema só. Pela própria estrutura do Blockchain, o hacker deveria obstruir todos os nós no mesmo momento, fazendo exatamente a mesma alteração. Ainda deveria enganar o algoritmo de consenso. Isso não é possível em termos humanos nem computacionais.
Blockchain também aumentara a auditoria de operação de registros de DNS, removendo possíveis manipulações de serviços de DNS que possam adulterar cobranças.
2. Descentralização de autoridades certificadoras
Outra opção interessante é oferecer serviços descentralizados de hashes para certificados concedidos ou revogados. Esta opção oferecerá a os usuários, a verificação de certificados de autenticidade de maneira decentralizada e transparente. Este mesmo conceito pode ser aplicado em chaves públicas, onde um serviço distribuído de gestão de chaves poderá armazena-las e validá-las, diminuindo a propagação de falsas chaves por atacantes.
3. Proteção de integridade da informação
Keyless Signature Structure (KSI) é um projeto que tem como objetivo gerar hashes de arquivos ou dados, e armazená-los no Blockchain. Assim, o sistema origem poderá comparar o hash do arquivo na hora que precise ser validado e o autenticará no Blockchain. Qualquer manipulação de dados será facilmente detectada já que o hash poderá existir em milhares de nós.
Conclusão
Hoje, cada vez mais, estamos ouvindo notícias de ataques cibernéticos. Pode nos fazer sentir expostos, ou inseguros de fazer download, de instalar arquivos ou de abrir e-mails, mesmo com todas as proteções aplicadas. Até perece que os criminosos estão ganhando terreno. Mas com a promessa de segurança, alta disponibilidade e transparência que Blockchain traz, é válido o ditado: “um dia é o da caça, mas o seguinte será do caçador. ”
Por Bernardo de Souza Madeira – Especialista em Blockchain da Interchains
Comments