Blockchain é basicamente uma rede de transações distribuída e praticamente imutável. Ok, fala português Pablo! Tá bom, eu explicarei melhor, mas antes vejamos um pouco de história.
Bitcoins, onde tudo começou
A primeira vez que se ouviu falar em blockchain foi em 2008 num artigo publicado pelo japonês Satoshi Nakamoto intitulado de "Bitcoin: A Peer-to-Peer Electronic Cash System". Uma curiosidade é que pouco se sabe sobre Satoshi, inclusive se ele realmente é japonês ou não. Sua identidade continuou desconhecida mesmo depois que ele parou de contribuir com o projeto em 2010 e mesmo o projeto tendo evoluído bastante desde a criação, toda a base tecnológica utilizada ainda é a que foi criada por ele.
A ideia de Satoshi era que transações financeiras pudessem ser realizadas no mundo todo sem a necessidade de se ter um intermediador. Esse intermediador é uma pessoa ou organização que comprova a autenticidade da transação e impede que uma mesma transação seja executada duas vezes.
Imagine uma situação em que você precisa enviar dinheiro para um amigo digitalmente. Atualmente, como você faz isso? Transferindo online da sua conta para a dele ou indo em um caixa eletrônico e depositando, certo? Nesse caso, quem está com o dinheiro e autenticando todas as transações é o seu banco e o dele. Os bancos são os intermediadores, que vão garantir que o seu dinheiro seja transferido para o seu amigo. E qual o problema de se ter um intermediador? Bom, é difícil encontrar alguém que faça alguma coisa de graça, né? E se tratando de bancos, então, é taxa atrás de taxa e elas, muitas vezes, são altas.
Para que se conseguisse retirar esses intermediadores, era preciso alguma tecnologia que fizesse o mesmo que eles, isto é, enviar e garantir a autenticidade de uma transação, neste caso financeira. E foi exatamente isso que Satoshi conseguiu ao criar as cryptocurrencies, dando origem aos bitcoins (assunto para outra hora) e consequentemente a blockchain, que utiliza a magia tecnologia das redes distribuídas para autenticar e enviar as transações ao redor do mundo.
A rede blockchain
A rede blockchain tem a característica de ser distribuída, isto é, tudo que é feito nessa rede é replicado para todos os usuários, sendo os nós dela. Como todo nó recebe uma réplica de cada transação realizada, não é preciso que se tenham intermediadores, uma vez que ela só se tornará autêntica depois que todos a validarem.
Se compararmos com os outros dois tipos de redes, a centralizada e a descentralizada, como podemos observar na imagem abaixo, a primeira tem um ponto único de encontro de todos nós e a segunda tem pontos de encontros que se interligam por grupos de nós.
Dessa maneira, a primeira tem um intermediador que recebe todas as transações e distribui e a segunda tem vários intermediadores, responsáveis por distribuir em seus grupos. Isso nos mostra outra característica importante de redes distribuídas, elas não tem ponto único de falha. Essa característica as tornam bastante robustas e mais seguras à perda de dados.
Blocos de transações transparentes e seguros
Todas as transações que acontecem na rede são armazenadas em blocos de dados, onde o próximo bloco a ser criado tem uma ligação direta com o último, formando uma cadeia de blocos, ou como todos a chamam, blockchain.
Fonte: http://marketbusinessnews.com/microsoft-blockchain-technology-digital-identities/174266
Cada novo bloco que será adicionado na cadeia ganha um identificador único que serve como validador daquele bloco. Esse identificador é totalmente encriptado, sendo gerado utilizando informações do bloco anterior e das transações, aguardando para entrar em um bloco. O problema é que gerar um novo bloco significa resolver um problema matemático que necessita de um grande poder computacional e para isso, os computadores da rede ficam disputando para ver quem resolverá tal problema primeiro e gerar um novo bloco. Uma vez que um nó "encontra" um novo bloco, ele o manda para toda a rede validar e assim que isso acontece, esse novo bloco é adicionado a blockchain e replicado em questões de segundos para toda a rede.
No blockchain original do bitcoin, um bloco armazena até 1 megabyte de dados, e por isso a quantidade de transações por bloco depende da quantidade de informação sendo transitada e do volume de operações em um determinado período.
Para realizar transações na rede, um usuário tem que ter um código único de identificação, sendo o seu endereço, e somente isso. Cada transação contém o endereço de origem, de destino, um código único de identificação daquela transação e uma descrição do que está sendo transferido. Todas essas informações estão disponíveis publicamente para todos os usuários da rede consultarem a qualquer momento, característica que torna o blockchain totalmente transparente, mas que ainda traz privacidade, uma vez que o usuário só precisa de seu identificador único e nenhum outro dado cadastral para operar na rede.
Uma cadeia "inquebrável"
Mas Pablo, se tudo está visível e acessível para todos, o que impede que algum nó mal-intencionado, saia alterando transações por aí? Sabe aquela identificação única que cada bloco recebe ao ser criado e que depende de informações do bloco anterior que eu falei? Então, se qualquer bloco for alterado, isso imediatamente invalidará o próximo, que invalidará o próximo, e o próximo, invalidando toda a cadeia a partir dali.
Isso significa que, não seria suficiente apenas subir um novo bloco na cadeia, pois a rede iria invalidá-lo, por diferir do já autenticado. Para que alguém conseguisse alterar uma transação num bloco, o mesmo teria que reescrever todos os blocos a partir dali, gerando e subindo um novo blockchain na rede, que continuamente está descobrindo novos blocos. Fazer isso é praticamente impossível, pois o poder computacional necessário seria absurdo. Para se ter ideia, o poder computacional necessário para se conseguir encontrar um novo bloco é o de 12 bilhões de notebooks convencionais, imagina para reescrever toda a cadeia antes que um novo bloco seja descoberto!
Além disso, ainda temos o poder computacional que seria necessário para descriptografar as transações num bloco, o que já seria algo quase impossível.
O futuro no presente
Atualmente a tecnologia do blockchain é mais utilizada nas muitas redes de moedas digitais, sendo a dos bitcoins a mais famosa e utilizada. Esse mercado já soma quase 100 bilhões de dólares em ativos gerados através destas moedas.
Apesar de se ter popularizado dessa maneira, um blockchain pode ser utilizada para muitas outras operações como, por exemplo, autenticação de direitos autorais ou de propriedade, famosos NFTs. Isso é possível porque a tecnologia é programável, sendo possível integrá-la com módulos que podem servir como contratos inteligentes. No futuro, os cartórios poderão utilizar blockchain para validar que uma casa pertence realmente ao proprietário, sem papel, burocracia ou falsificação. É um futuro promissor, não?