O que é o blockchain?

Concluído

O blockchain é uma tecnologia de manutenção de registros e de aplicação de contrato que usa criptografia para tornar difícil alterar o histórico anterior. Ele permite que os participantes compartilhem fluxos de trabalho por meio do acompanhamento das alterações em um razão compartilhado.

No cenário do sorvete, como fazemos para descobrir que há algum problema de qualidade ou de segurança alimentar causado pelo armazenamento em temperatura inadequada durante o transporte? Precisamos acompanhar a parte responsável e a temperatura e manter um log das alterações.

Por que não usar um banco de dados centralizado?

Poderíamos usar um banco de dados centralizado que todos os participantes usariam para controlar as remessas. Em muitos cenários, um banco de dados centralizado é a solução correta. Suponha que temos um banco de dados centralizado que armazena detalhes sobre a remessa e sobre quem é o responsável atualmente. Em nosso cenário, poderíamos ter o fazendeiro, o transportador, a fábrica e o varejista usando o mesmo banco de dados centralizado.

A farm, factory, shipper, and a shop use a single centralized database.

A vantagem de um banco de dados centralizado é que é fácil controlar o acesso e a consistência. Todos estão usando o mesmo banco de dados e há uma autoridade confiável que controla o acesso. Como há apenas um banco de dados, todos os participantes estão usando o mesmo conjunto de dados. Todos os participantes precisam confiar que o banco de dados está correto e, por extensão, eles precisam confiar no proprietário do banco de dados para não modificar os dados históricos por qualquer motivo.

E se nosso cenário não permitir uma autoridade central confiável? E se nenhuma empresa quiser ser responsável por hospedar um banco de dados centralizado? Talvez os requisitos para a integração do sistema com cada sistema participante não possam ser atendidos.

Banco de dados distribuído

E se cada participante puder ter uma cópia própria do banco de dados? Um banco de dados distribuído usa várias cópias de um banco de dados e as alterações são sincronizadas. Em nosso cenário, poderíamos ter o fazendeiro, o transportador, a fábrica e o varejista usando o próprio banco de dados distribuído.

A farm, factory, shipper, and a shop each use their own distributed database. The database changes are synchronized between copies.

A vantagem do banco de dados distribuído é que cada participante tem uma cópia do banco de dados. Na maioria dos casos, é mais fácil controlar o acesso e integrar seus sistemas e processos em sua cópia de um banco de dados. No entanto, a sincronização de alterações em cada banco de dados é necessária. Lidar com falhas e conflitos pode adicionar complexidade e problemas de integridade de dados.

Razão distribuído

A tecnologia blockchain é conhecida como um Razão distribuído. Assim como um livro contábil, o Razão distribuído é um histórico de transações. Cada transação no razão afeta o estado final.

As redes de blockchain distribuídas entre os participantes são chamadas de rede do consórcio. A rede do consórcio fornece a cada parceiro visibilidade sobre toda transação que ocorre na rede.

A farm, factory, shipper, and a shop each use their own distributed ledger. Transactions are sent to all nodes in the network.

O blockchain usa regras de consenso para garantir que os dados sejam consistentes entre os nós. Ele também usa criptografia para permitir que os participantes confiem nos dados. Especificamente, ele impede que qualquer participante individual ou que a minoria dos participantes modifique o histórico. Como o blockchain é descentralizado, as soluções que podem usar um banco de dados descentralizado funcionam melhor. Por exemplo, você tem a necessidade de dar suporte a várias empresas sem nenhuma autoridade central devido ao custo, controle ou por ser um ponto único de falha.