Recentemente reli os fundamentos do blockchain e percebi que muitos não entendem exatamente como funciona a verificação da integridade dos dados nas criptomoedas. Tudo se resume a uma estrutura elegante, que foi criada por Ralph Merkle no início dos anos 80.



Imagine que você está baixando um arquivo enorme, digamos, 50 gigabytes. Normalmente, os desenvolvedores fornecem um hash desse arquivo para que você possa verificar se fez o download do arquivo correto. Mas se o arquivo for corrompido durante o download, você precisa começar tudo de novo. É aí que entra a árvore de Merkle - um sistema que divide um grande volume de dados em pedaços e cria uma representação compacta de todo o arquivo.

Como isso funciona? Vamos pegar um arquivo dividido em oito partes (chamaremos de A, B, C, D, E, F, G, H). Cada parte passa por uma função de hash, obtendo oito hashes. Depois, pegamos cada par de hashes, combinamos e hashamos novamente. Assim, obtemos quatro hashes. Repetimos o processo - ficamos com dois hashes. Hashamos esses dois juntos e obtemos o hash final da raiz de Merkle. Essa estrutura se assemelha a uma árvore invertida, com as folhas na parte inferior e uma única raiz no topo.

O que há de interessante nisso? Se pelo menos um bit de dado for alterado, a raiz de Merkle se tornará completamente diferente. Isso nos dá uma maneira poderosa de verificar - um único hash representa todos os dados. E se algo estiver errado, podemos rapidamente identificar qual fragmento está corrompido, sem precisar verificar tudo de uma vez.

Agora, sobre o blockchain. Bitcoin e outras criptomoedas usam árvores de Merkle em cada bloco. Imagine o bloco como um recipiente com milhares de transações. Em vez de hashificar todas as transações toda vez, os mineradores calculam a raiz de Merkle uma única vez e a colocam no cabeçalho do bloco. Durante a mineração, só é necessário hashificar o cabeçalho compacto, e não todo o bloco com milhares de transações. Isso economiza uma quantidade enorme de recursos computacionais.

Tem também uma vantagem adicional - a verificação simplificada de pagamentos. Se você usa um cliente leve no smartphone, não precisa baixar toda a blockchain. Você pode solicitar uma prova de Merkle - uma prova especial que mostra que sua transação realmente está no bloco. Para isso, são necessários apenas alguns hashes, não todos os dados.

Enfim, a árvore de Merkle é uma das tecnologias que tornam o blockchain praticamente viável. Sem ela, os blocos seriam muito maiores, a rede mais lenta, e clientes leves não conseguiriam verificar transações. Essa estrutura de dados simples, mas genial, está na base da criptografia do blockchain.
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • Comentário
  • Repostar
  • Compartilhar
Comentário
Adicionar um comentário
Adicionar um comentário
Sem comentários
  • Fixado