#2 Transações organizadas e distribuídas
Na semana passada, publiquei um artigo sobre os fundamentos da máquina-estado, seus modelos de representação e os mecanismos de atualização do blockchain.
Como continuação da compreensão sobre os fundamentos da máquina-estado, explicarei sobre o armazenamento das transações e como os dados da rede são distribuídos.
Boa leitura!
Transações Organizadas e Distribuídas
Você provavelmente já deve ter escutado que o blockchain é um livro razão que registra transações de criptomoedas. No entanto, a menos que você tenha experiência na área de contabilidade ou finanças, pode ser difícil compreender exatamente a função de um livro razão.
Então pense em uma planilha que mantenha um registro de todas as transações que ocorrem em uma instituição de forma organizada e sistemática. Um livro razão pode ser comparado a isso, exceto pelo fato de sua estrutura e precisão serem muito mais complexas do que uma simples planilha.
Além de fornecer uma visão detalhada e cronológica das transações que ocorreram ao longo do tempo, um livro razão serve como um registro centralizado de todas as atividades financeiras de uma empresa, incluindo entradas como receitas, despesas, ativos e passivos.
E essencialmente é isso que um blockchain faz, só que de forma descentralizada.
A descentralização significa que em vez de existir uma única autoridade central responsável pela manutenção e controle do livro razão, como nos sistemas tradicionais, o controle é distribuído entre vários participantes da rede.
Mas como essa distribuição acontece?
Para compreender essa dinâmica, vamos voltar um pouco ao conceito máquina-estado.
Em um blockchain, cada participante (conhecido como nó) mantém uma cópia idêntica do estado atual da rede com o objetivo de processar as transações na mesma ordem e alcançar um consenso sobre a integridade das operações realizadas.
Uma maneira eficiente de organizar as transações para que possam ser processadas simultaneamente é agrupá-las em blocos.
Quando as transações são submetidas para inclusão em um bloco, elas devem passar por um processo chamado validação, que será discutido na camada de consenso. Mas o importante aqui é que durante esse processo, várias etapas são executadas para garantir a autenticidade das transações, e uma dessas etapas inclui a verificação da assinatura digital.
A assinatura digital é uma medida de segurança, na qual, quando um usuário envia uma transação, ela é assinada digitalmente como garantia de que o usuário realmente concorda com a transação.
Até agora parece simples, né? No entanto, as coisas se complicam quando percebemos que um bloco não é composto apenas de transações.
Isso porque, para garantir a integridade e a imutabilidade de um blockchain, cada bloco deve ser atribuído um hash criptográfico único.
Um hash criptográfico funciona como uma espécie de impressão digital que garante que qualquer modificação nos dados de um bloco seja detectada imediatamente. Além disso, para preservar a conexão sequencial entre todos os blocos da cadeia, esse hash é incorporado ao próximo bloco. Assim, esses hashes se tornam o elemento fundamental que mantém uma blockchain segura.
Geralmente, a estrutura de dados do bloco contém o conjunto de transações verificadas, o hash fazendo referência ao bloco anterior, o carimbo de data/hora e a raiz Merkle (um resumo de todas as transações dentro do bloco).
Agora sim! Transações verificadas, blocos criados e protegidos pelo hash, chegou o momento de distribuí-los para todos os nós da rede.
A distribuição ocorre através da comunicação ponto a ponto (P2P) entre os nós, onde cada nó está conectado uns aos outros, formando uma rede descentralizada.
Os nós podem encontrar-se e conectar-se por meio de diferentes métodos, como listas de nós conhecidos, protocolo de descoberta de pontos ou conexões diretas.
Esses meios de comunicação ponto a ponto garantem que as transações e os blocos sejam propagados pela rede de forma eficiente, mantendo todos os nós atualizados com o estado atual do blockchain.
Para alcançar um acordo sobre o estado da rede, os nós devem participar de um protocolo de consenso. Com isso, chegamos na quarta camada da estrutura.
Até a próxima newsletter!