O que é um blockchain?
Se você tem assistido as notícias ultimamente, você pode ter ouvido algo chamado blockchain. É um conceito que torna os dados ultra-seguros para usos específicos. Você provavelmente já ouviu isso em conexão com o Bitcoin, mas tem aplicativos muito além das criptocorrências favoritas de todos. Aqui está uma explicação rápida de como funciona.
Tudo começa com criptografia
Para entender blockchains, você precisa entender a criptografia. A ideia da criptografia é muito mais antiga que os computadores: significa apenas reorganizar as informações de forma que você precise de uma chave específica para compreendê-las. O simples decodificador de anel de brinquedo que você encontrou na sua caixa de cereal Kix é uma forma da criptografia mais básica - criar uma chave (também conhecida como cifra) que substitui uma letra por um número, passar sua mensagem pela chave e dar a chave para outra pessoa. Qualquer um que encontrar a mensagem sem a chave não poderá lê-la, a menos que seja "quebrada". Os militares usaram criptografia mais complexa muito antes dos computadores (a Enigma Machine codificou e decodificou mensagens durante a Segunda Guerra Mundial, por exemplo).
A criptografia moderna, no entanto, é totalmente digital. Os computadores de hoje usam métodos de criptografia que são tão complexos e seguros que seria impossível quebrá-los com uma simples matemática feita por humanos. A tecnologia de criptografia de computador não é perfeita, no entanto; ele ainda pode ser "quebrado" se pessoas suficientemente inteligentes atacarem o algoritmo e os dados ainda estiverem vulneráveis se alguém, além do proprietário, encontrar a chave. Mas até mesmo a criptografia em nível de consumidor, como a criptografia AES de 128 bits que agora é padrão no iPhone e no Android, é suficiente para manter os dados bloqueados longe do FBI..
O Blockchain é um ledger de dados colaborativo e seguro
A criptografia é normalmente usada para bloquear arquivos, para que eles possam ser acessados apenas por pessoas específicas. Mas e se você tiver informações que precisam ser vistas por todos - como, por exemplo, as informações contábeis de uma agência do governo que precisa ser pública por lei - e que ainda precisam ser seguras? Lá, você tem um problema: quanto mais pessoas puderem ver e editar as informações, menos seguras serão..
Os blockchains foram desenvolvidos para atender às necessidades de segurança dessas situações específicas. Em um blockchain, toda vez que as informações são acessadas e atualizadas, a alteração é registrada e verificada e, em seguida, vedada por criptografia, não podendo ser editada novamente. O conjunto de alterações é salvo e adicionado ao registro total. Da próxima vez que alguém fizer alterações, ele começará tudo de novo, preservando as informações em um novo “bloco” criptografado e anexado ao bloco anterior (portanto, “cadeia de blocos”). Esse processo de repetição conecta a primeira versão do conjunto de informações com a mais recente, para que todos possam ver todas as alterações já feitas, mas só podem contribuir e editar a versão mais recente.
Essa ideia é resistente às metáforas, mas imagine que você esteja em um grupo de dez pessoas reunindo um conjunto LEGO. Você só pode adicionar uma peça de cada vez e nunca poderá remover nenhuma peça. Cada membro do grupo deve concordar especificamente onde a próxima parte vai. Dessa forma, você pode ver todas as peças a qualquer momento - desde a primeira peça do projeto -, mas só é possível modificar a última peça..
Para algo um pouco mais relevante, imagine um documento colaborativo, como uma planilha no Google Docs ou no Office 365. Todos que têm acesso ao documento podem editá-lo e, toda vez que o fazem, a alteração é salva e registrada como uma nova planilha, então bloqueado no histórico do documento. Assim, você pode voltar, passo a passo, pelas alterações feitas, mas só pode adicionar informações à versão mais recente, não modificar as versões anteriores da planilha que já foram bloqueadas.
Como você provavelmente já ouviu falar, essa ideia de um “livro de registros” seguro e constantemente atualizado está sendo aplicada principalmente aos dados financeiros, onde faz mais sentido. Moedas digitais distribuídas como o Bitcoin são o uso mais comum de blockchains - na verdade, o primeiro foi feito para o Bitcoin e a ideia se espalhou a partir daí.
As coisas técnicas: passo a passo, bloco por bloco
Como tudo isso realmente funciona em um computador? É uma combinação de criptografia e rede peer-to-peer.
Você pode estar familiarizado com o compartilhamento de arquivos peer-to-peer: serviços como o BitTorrent, que permitem aos usuários fazer upload e download de arquivos digitais de vários locais de forma mais eficiente do que a partir de uma única conexão. Imagine os "arquivos" como os dados principais em um blockchain e o processo de download como a criptografia que o mantém atualizado e seguro.
Ou, para voltar ao nosso exemplo do Google Docs acima: imagine que o documento colaborativo em que você está trabalhando não esteja armazenado em um servidor. Em vez disso, está no computador de cada indivíduo, que está constantemente checando e atualizando um ao outro para se certificar de que ninguém modificou os registros anteriores. Isso faz com que seja "descentralizado".
Essa é a idéia central por trás do blockchain: são dados criptográficos que são continuamente acessados e protegidos ao mesmo tempo, sem qualquer servidor ou armazenamento centralizado, com um registro de alterações que se incorpora a cada nova versão dos dados..
Portanto, temos três elementos a considerar neste relacionamento. Um, a rede de usuários ponto-a-ponto que armazena todas as cópias do registro blockchain. Dois, os dados que esses usuários adicionam ao último “bloco” de informações, permitindo que ele seja atualizado e adicionado ao registro total. Três, as sequências criptológicas que os usuários geram para concordar com o último bloco, encaixando-o na sequência de dados que formam o registro..
É aquele último pedaço que é o molho secreto no sanduíche blockchain. Usando criptografia digital, cada usuário contribui com o poder de seu computador para ajudar a resolver alguns desses problemas matemáticos super-complexos que mantêm o registro seguro. Essas soluções extremamente complexas - conhecidas como "hash" - resolvem partes centrais dos dados do registro, como se a conta adicionasse ou subtraísse dinheiro em um livro contábil e de onde esse dinheiro fosse ou viesse. Quanto mais densos forem os dados, mais complexa será a criptografia e mais capacidade de processamento será necessária para resolvê-la. (A propósito, a ideia de mineração em Bitcoin entra em ação.)
Então, para resumir, podemos pensar que um blockchain é um dado que é:
- Constantemente atualizado. Os usuários do Blockchain podem acessar os dados a qualquer momento e adicionar informações ao mais novo bloco.
- Distribuído. Cópias dos dados de blockchain são armazenadas e protegidas por cada usuário, e todos devem concordar com novas adições.
- Verificado. Ambas as mudanças para novos blocos e cópias de blocos antigos devem ser acordadas por todos os usuários através de verificação criptográfica..
- Seguro. Adulterar os dados antigos e alterar o método de proteger novos dados é impedido tanto pelo método criptográfico quanto pelo armazenamento não centralizado dos próprios dados..
E acredite ou não, fica ainda mais complicado do que isso… mas essa é a ideia básica.
O Blockchain em ação: mostre-me o dinheiro (digital)!
Então, vamos considerar um exemplo de como isso se aplica a uma criptomoeda como o Bitcoin. Digamos que você tenha um Bitcoin e queira gastá-lo em um carro novo. (Ou uma bicicleta, ou uma casa, ou uma ilha pequena a média - por mais que um Bitcoin valha a pena esta semana.) Você se conecta ao blockchain descentralizado do Bitcoin com o seu software, e envia sua solicitação para transferir seu Bitcoin para o vendedor do carro. Sua transação é então transmitida para o sistema.
Cada pessoa no sistema pode vê-lo, mas sua identidade e a identidade do vendedor são apenas assinaturas temporárias, minúsculos elementos dos enormes problemas de matemática que formam o coração da criptografia digital. Esses valores são conectados à equação blockchain e o problema em si é "resolvido" pelos membros na rede peer-to-peer gerando hashes de criptografia.
Depois que a transação é verificada, um Bitcoin é movido de você para o vendedor e registrado no último bloco da cadeia. O bloco está terminado, selado e protegido com criptografia. A próxima série de transações começa e o blockchain cresce mais, contendo um registro completo de todas as transações sempre que é atualizado.
Agora, quando você pensa em um blockchain como "seguro", é importante entender o contexto. Transações individuais são seguras, e o registro total é seguro, desde que os métodos usados para proteger a criptografia permaneçam “não quebrados”. (E lembre-se, este material é realmente difícil de quebrar o próprio FBI não pode fazê-lo com meros recursos de computação sozinho.) Mas o elo mais fraco no blockchain é, bem, você, o usuário.
Se você permitir que outra pessoa use sua chave pessoal para acessar a cadeia, ou se a encontrarem simplesmente invadindo seu computador, ela poderá acrescentar ao blockchain com suas informações, e não há como detê-las. É assim que o Bitcoin é “roubado” em ataques altamente divulgados nos principais mercados: as empresas que estavam operando os mercados, e não o blockchain do Bitcoin em si, estavam comprometidas. E como os Bitcoins roubados são transferidos para usuários anônimos, através de um processo que é verificado pelo blockchain e gravado para sempre, não há como encontrar o invasor ou recuperar o bitcoin.
O que mais pode bloquear?
A tecnologia Blockchain começou com o Bitcoin, mas é uma ideia tão importante que não ficou lá por muito tempo. Um sistema que é constantemente atualizado, acessível a qualquer pessoa, verificado por uma rede não centralizada e incrivelmente seguro, possui muitos aplicativos diferentes. Instituições financeiras como o JP Morgan Chase e a Bolsa de Valores da Austrália estão desenvolvendo sistemas blockchain para proteger e distribuir dados financeiros (para dinheiro convencional, não para criptomoedas como o Bitcoin). A fundação Bill & Melinda Gates espera usar os sistemas blockchain para fornecer serviços bancários gratuitos e distribuídos a bilhões de pessoas que não podem pagar uma conta bancária normal..
As ferramentas de código aberto, como o Hyperledger, estão tentando disponibilizar técnicas de blockchain para uma gama maior de pessoas, em alguns casos, sem precisar da quantidade monstruosa de capacidade de processamento necessária para proteger outros designs. Sistemas de trabalho colaborativo podem ser verificados e registrados com técnicas de blockchain. Praticamente qualquer coisa que precise ser gravada, acessada e atualizada constantemente pode ser usada da mesma maneira.
Crédito da imagem: a posteriori / Shutterstock, Lewis Tse Pui Lung / Shutterstock, Zack Copley