Merkle Tree e Raiz da Merkle na Blockchain

PrincipianteNov 21, 2022
A Merkle tree é uma estrutura usada para verificar e manter a integridade dos dados de forma eficaz e eficiente num conjunto. A verificação das transações na rede vai exigir muito espaço e poder de processamento. Ao construir uma merkle tree e gerar uma raiz de mercle, as transações podem ser verificadas sem necessariamente passar por milhares de transações na rede.
Merkle Tree e Raiz da Merkle na Blockchain

A blockchain é um registo descentralizado para registar dados. É a tecnologia por trás das criptomoedas. Ao contrário de um registo manual, a blockchain é imutável, qualquer registo na blockchain é final e não pode ser corrompido. Entre as características que contribuem para a singularidade da blockchain estão a merkle tree e a raiz da merkle.

A árvore Merkle é parte integrante da cadeia de blocos. Ajuda a verificar eficazmente as transações e a manter a integridade da informação armazenada na blockchain. Numa rede descentralizada como a Bitcoin, em que todos têm uma cópia dos dados da rede, é necessário verificar se esses dados são válidos para garantir a consistência. Vamos dar uma olhadela para como a árvore da mercle e a raiz da merkle são aplicáveis na cadeia de blocos.

O que é uma Merkle Tree?

A Merkle tree é uma estrutura usada para verificar e manter a integridade dos dados de forma eficaz e eficiente num conjunto. Consiste em vários hashes de transações dispostos numa estrutura tipo árvore. As funções Hash são utilizadas na blockchain para representar os detalhes da transação de forma simples e consistente. Em outras palavras, o hashing é pegar numa entrada de qualquer comprimento e devolver uma saída de comprimento fixo. O uso de funções hash para representar informações facilita o manuseio eficiente de grandes quantidades de informações.

A Árvore Merkle foi desenvolvida em 1980 por um professor de Stanford, Ralph Merkle. Apresentou a tecnologia no seu papel sobre assinaturas digitais intitulada “Uma assinatura digital certificada”. As Merkle Trees são principalmente utilizadas em redes ponto a ponto (P2P) onde a informação é partilhada e validada de forma independente. A Merkle tree é muito utilizada em criptomoedas como a Bitcoin para verificar a validade das transações.

A blockchain como o nome indica é composta de blocos ligados entre si. Cada bloco é capaz de alojar milhares de dados transacionais. A verificação das transações na rede vai exigir muito espaço e poder de processamento. Mas com o auxílio de uma merkle tree, as transações podem ser verificadas sem necessariamente passar por milhares de transações na rede.

As transações são agrupadas em pares e o hash de cada par é encontrado e armazenado no nó pai. Os nós pais também estão emparelhados e o seu hash é encontrado e armazenado um nível acima. A tendência continua até chegarmos à raiz do hash tree. Em resumo, existem três tipos de nós na árvore merkle.

  1. Nó de folha: cada transação num bloco tem o seu valor de hash. Este valor do hash é armazenado no nó da folha.
  2. Nó não-folha: Este nó é composto de valores hash de diferentes nós foliares. É o intermediário entre o nó foliar e o nó da raiz.
  3. Nó raiz: Esta é a raiz da árvore da mercê e contém um único hash que representa todas as transações num bloco que é armazenado no cabeçalho do bloco.

Com a estrutura acima, a verificação exigirá apenas a verificação do cabeçalho do bloco em vez do sistema inteiro. Diz-se que a Merkle tree é binária. Isso significa para a construção adequada da merkle tree, o número de nós foliares deve ser par. Mas numa situação em que temos um número ímpar de nós foliares, o último é duplicado para ser uniforme.

O que é uma Raiz Merkle?

A raiz da mercê é o hash de todos os hashes de transações na merkle tree. Quando as transações foram emparelhadas com êxito e haxixe, o resultado é a merkle root. Uma alteração em quaisquer dados vai levar a uma mudança na raiz da merkle. Então a raiz da merkle garante que nenhum dado na rede é alterado.

Como funciona a Merkle Tree?

A Merkle tree quebra os dados em massa em unidades menores que podem ser manuseadas facilmente. Combina todos os dados transacionais num bloco para produzir uma única impressão digital. Portanto, verificar transações torna-se mais fácil e rápido.

A Merkle Tree é formada por combinar e hashing de diferentes pares de nós. O resultado é a raiz da merkle. A estrutura de uma mercana corre de baixo para cima (raiz para folhas). Diferentes transações dos nós foliares são emparelhadas para formar os nós não foliares até chegarmos ao nó raiz.

Para ter uma compreensão mais clara de uma Merkle tree, considere um bloco com 8 transações diferentes, T1, T2, T3, T4, T5, T6, T7 e T8. Cada transação é hashed para produzir H1, H2, H3, H4, H5, H6, H7 e H8. Os hashes são então emparelhados e dobrados de novo para dar H (12), H (34), H (56) e (H78). O resultado é emparelhado uma vez mais e hashed para dar H (1234) e H (5678). Um passo mais adiante renderá o H (12345678) como a raiz da merkle. O diagrama abaixo representa uma árvore merkle construída a partir de 8 transações diferentes num bloco.

A explicação acima dá-lhe uma visão do conceito de uma merkle tree, embora seja mais complicado do que o que temos. A raiz da mescla gerada no final é armazenada no cabeçalho do bloco e usada durante o processo de mineração. Por exemplo na rede Bitcoin, o cabeçalho do bloco é hashed em vez de lidar com transações separadas. Com a raiz da mescla presente no cabeçalho do bloco, qualquer alteração nos dados iniciais será facilmente detectada. Isso torna todo o sistema inviolável.

Vantagens da Merkle Tree

Usar a Árvore da Merkle e as raízes das Merkle na blockchain oferece tantas vantagens. Entre eles destacam-se:

Processo eficiente de verificação de dados

A Merkle Tree fornece um meio eficiente de verificar transações sem consumir muita energia de processamento.

Menos capacidade de memória

A verificação das transações usando uma árvore merkle não exige o download da blockchain inteira. Portanto, a computação exige menos espaço em comparação com outras estruturas de dados.

Transações rápidas

À medida que as transações são emparelhadas e é produzido um único hash, a transferência de informações pela rede torna-se mais rápida. Essa é uma das principais razões pelas quais a transferência das criptomoedas é muito rápida.

Detecção de adulteração

A Merkle tree permite detetar quando uma transação foi adulterada. Quando uma transação é hashed e armazenada na blockchain, uma mudança na informação inicial também vai causar uma mudança no hash. Isso pode ser detectado comparando o hash atual com o hash armazenado no cabeçalho do bloco.

Porque são as Merkle Trees e as Raízes Merkle Essenciais na Blockchain

A blockchain consiste em cadeias de blocos. Um único bloco pode conter milhares de transações diferentes. O hash raiz obtido no fim da Merkle tree resume todas as transações contidas nesse bloco. Isso torna o processo de verificação eficiente e qualquer alteração será facilmente detetada.

Numa situação em que a árvore merkle não é usada, todos os nós da rede terão a sua cópia do livro. A validação de transações nesse sistema exige passar por todas as cópias do nó e compará-las. Comparar diferentes versões do livro-razão vai exigir muito poder de computação e espaço de memória. Mas com a ajuda de uma árvore merkle, este processo é contornado e a verificação é possível usando o mínimo de poder de computação.

Aplicações das Árvores Merkle e das Raízes de Merkle na Blockchain

As árvores Merkle e as raízes das Merkle são muito importantes na cadeia de blocos. Na rede Bitcoin e outras criptomoedas, são essenciais no processo de mineração e verificação.

Minerar

A Merkle tree é parte integrante da rede Bitcoin. Para verificar transações e adicionar novos blocos, os mineiros na rede têm a tarefa de fazer hashing de dados para gerar uma saída que adira a condições específicas. Isso pode custar triliões de tentativas antes de encontrar uma saída válida. Para fazer isso, os mineiros adivinham números aleatórios para obter uma saída.

O processo de mineração é mais fácil e eficiente usando o hash da raiz. Tudo o que é necessário é construir uma merkle tree adequada usando as diferentes transações. Em seguida, coloque o hash da raiz no cabeçalho do bloco. Então, durante a mineração, só precisa hash o cabeçalho do bloco em vez do bloco inteiro.

Verificação

Quando executar um nó num dispositivo com poder de processamento limitado. Vai ser impossível baixar e hash todas as transações num bloco. O que é necessário aqui é uma prova da Merkle (uma prova de que uma transação específica está presente num bloco). Isso reduz o número de hashing a ser feito, portanto as transações podem ser verificadas usando o dispositivo.

Conclusão

As árvores mercantes e as raízes das merkle foram concebidas para melhorar a verificação de dados na blockchain. Estas ferramentas ajudam a garantir a validade das transações sem a necessidade de descarregar a rede inteira. São o cérebro por trás das carteiras móveis hoje. Os utilizadores podem interagir com a blockchain sem a necessidade de ter uma cópia inteira do livro.

Autor: Unique
Tradutor(a): Yuler
Revisor(es): Matheus, Edward, Joyce, Ashley
* As informações não se destinam a ser e não constituem aconselhamento financeiro ou qualquer outra recomendação de qualquer tipo oferecido ou endossado pela Gate.io.
* Este artigo não pode ser reproduzido, transmitido ou copiado sem fazer referência à Gate.io. A violação é uma violação da Lei de Direitos de Autor e pode estar sujeita a ações legais.

Merkle Tree e Raiz da Merkle na Blockchain

PrincipianteNov 21, 2022
A Merkle tree é uma estrutura usada para verificar e manter a integridade dos dados de forma eficaz e eficiente num conjunto. A verificação das transações na rede vai exigir muito espaço e poder de processamento. Ao construir uma merkle tree e gerar uma raiz de mercle, as transações podem ser verificadas sem necessariamente passar por milhares de transações na rede.
Merkle Tree e Raiz da Merkle na Blockchain

A blockchain é um registo descentralizado para registar dados. É a tecnologia por trás das criptomoedas. Ao contrário de um registo manual, a blockchain é imutável, qualquer registo na blockchain é final e não pode ser corrompido. Entre as características que contribuem para a singularidade da blockchain estão a merkle tree e a raiz da merkle.

A árvore Merkle é parte integrante da cadeia de blocos. Ajuda a verificar eficazmente as transações e a manter a integridade da informação armazenada na blockchain. Numa rede descentralizada como a Bitcoin, em que todos têm uma cópia dos dados da rede, é necessário verificar se esses dados são válidos para garantir a consistência. Vamos dar uma olhadela para como a árvore da mercle e a raiz da merkle são aplicáveis na cadeia de blocos.

O que é uma Merkle Tree?

A Merkle tree é uma estrutura usada para verificar e manter a integridade dos dados de forma eficaz e eficiente num conjunto. Consiste em vários hashes de transações dispostos numa estrutura tipo árvore. As funções Hash são utilizadas na blockchain para representar os detalhes da transação de forma simples e consistente. Em outras palavras, o hashing é pegar numa entrada de qualquer comprimento e devolver uma saída de comprimento fixo. O uso de funções hash para representar informações facilita o manuseio eficiente de grandes quantidades de informações.

A Árvore Merkle foi desenvolvida em 1980 por um professor de Stanford, Ralph Merkle. Apresentou a tecnologia no seu papel sobre assinaturas digitais intitulada “Uma assinatura digital certificada”. As Merkle Trees são principalmente utilizadas em redes ponto a ponto (P2P) onde a informação é partilhada e validada de forma independente. A Merkle tree é muito utilizada em criptomoedas como a Bitcoin para verificar a validade das transações.

A blockchain como o nome indica é composta de blocos ligados entre si. Cada bloco é capaz de alojar milhares de dados transacionais. A verificação das transações na rede vai exigir muito espaço e poder de processamento. Mas com o auxílio de uma merkle tree, as transações podem ser verificadas sem necessariamente passar por milhares de transações na rede.

As transações são agrupadas em pares e o hash de cada par é encontrado e armazenado no nó pai. Os nós pais também estão emparelhados e o seu hash é encontrado e armazenado um nível acima. A tendência continua até chegarmos à raiz do hash tree. Em resumo, existem três tipos de nós na árvore merkle.

  1. Nó de folha: cada transação num bloco tem o seu valor de hash. Este valor do hash é armazenado no nó da folha.
  2. Nó não-folha: Este nó é composto de valores hash de diferentes nós foliares. É o intermediário entre o nó foliar e o nó da raiz.
  3. Nó raiz: Esta é a raiz da árvore da mercê e contém um único hash que representa todas as transações num bloco que é armazenado no cabeçalho do bloco.

Com a estrutura acima, a verificação exigirá apenas a verificação do cabeçalho do bloco em vez do sistema inteiro. Diz-se que a Merkle tree é binária. Isso significa para a construção adequada da merkle tree, o número de nós foliares deve ser par. Mas numa situação em que temos um número ímpar de nós foliares, o último é duplicado para ser uniforme.

O que é uma Raiz Merkle?

A raiz da mercê é o hash de todos os hashes de transações na merkle tree. Quando as transações foram emparelhadas com êxito e haxixe, o resultado é a merkle root. Uma alteração em quaisquer dados vai levar a uma mudança na raiz da merkle. Então a raiz da merkle garante que nenhum dado na rede é alterado.

Como funciona a Merkle Tree?

A Merkle tree quebra os dados em massa em unidades menores que podem ser manuseadas facilmente. Combina todos os dados transacionais num bloco para produzir uma única impressão digital. Portanto, verificar transações torna-se mais fácil e rápido.

A Merkle Tree é formada por combinar e hashing de diferentes pares de nós. O resultado é a raiz da merkle. A estrutura de uma mercana corre de baixo para cima (raiz para folhas). Diferentes transações dos nós foliares são emparelhadas para formar os nós não foliares até chegarmos ao nó raiz.

Para ter uma compreensão mais clara de uma Merkle tree, considere um bloco com 8 transações diferentes, T1, T2, T3, T4, T5, T6, T7 e T8. Cada transação é hashed para produzir H1, H2, H3, H4, H5, H6, H7 e H8. Os hashes são então emparelhados e dobrados de novo para dar H (12), H (34), H (56) e (H78). O resultado é emparelhado uma vez mais e hashed para dar H (1234) e H (5678). Um passo mais adiante renderá o H (12345678) como a raiz da merkle. O diagrama abaixo representa uma árvore merkle construída a partir de 8 transações diferentes num bloco.

A explicação acima dá-lhe uma visão do conceito de uma merkle tree, embora seja mais complicado do que o que temos. A raiz da mescla gerada no final é armazenada no cabeçalho do bloco e usada durante o processo de mineração. Por exemplo na rede Bitcoin, o cabeçalho do bloco é hashed em vez de lidar com transações separadas. Com a raiz da mescla presente no cabeçalho do bloco, qualquer alteração nos dados iniciais será facilmente detectada. Isso torna todo o sistema inviolável.

Vantagens da Merkle Tree

Usar a Árvore da Merkle e as raízes das Merkle na blockchain oferece tantas vantagens. Entre eles destacam-se:

Processo eficiente de verificação de dados

A Merkle Tree fornece um meio eficiente de verificar transações sem consumir muita energia de processamento.

Menos capacidade de memória

A verificação das transações usando uma árvore merkle não exige o download da blockchain inteira. Portanto, a computação exige menos espaço em comparação com outras estruturas de dados.

Transações rápidas

À medida que as transações são emparelhadas e é produzido um único hash, a transferência de informações pela rede torna-se mais rápida. Essa é uma das principais razões pelas quais a transferência das criptomoedas é muito rápida.

Detecção de adulteração

A Merkle tree permite detetar quando uma transação foi adulterada. Quando uma transação é hashed e armazenada na blockchain, uma mudança na informação inicial também vai causar uma mudança no hash. Isso pode ser detectado comparando o hash atual com o hash armazenado no cabeçalho do bloco.

Porque são as Merkle Trees e as Raízes Merkle Essenciais na Blockchain

A blockchain consiste em cadeias de blocos. Um único bloco pode conter milhares de transações diferentes. O hash raiz obtido no fim da Merkle tree resume todas as transações contidas nesse bloco. Isso torna o processo de verificação eficiente e qualquer alteração será facilmente detetada.

Numa situação em que a árvore merkle não é usada, todos os nós da rede terão a sua cópia do livro. A validação de transações nesse sistema exige passar por todas as cópias do nó e compará-las. Comparar diferentes versões do livro-razão vai exigir muito poder de computação e espaço de memória. Mas com a ajuda de uma árvore merkle, este processo é contornado e a verificação é possível usando o mínimo de poder de computação.

Aplicações das Árvores Merkle e das Raízes de Merkle na Blockchain

As árvores Merkle e as raízes das Merkle são muito importantes na cadeia de blocos. Na rede Bitcoin e outras criptomoedas, são essenciais no processo de mineração e verificação.

Minerar

A Merkle tree é parte integrante da rede Bitcoin. Para verificar transações e adicionar novos blocos, os mineiros na rede têm a tarefa de fazer hashing de dados para gerar uma saída que adira a condições específicas. Isso pode custar triliões de tentativas antes de encontrar uma saída válida. Para fazer isso, os mineiros adivinham números aleatórios para obter uma saída.

O processo de mineração é mais fácil e eficiente usando o hash da raiz. Tudo o que é necessário é construir uma merkle tree adequada usando as diferentes transações. Em seguida, coloque o hash da raiz no cabeçalho do bloco. Então, durante a mineração, só precisa hash o cabeçalho do bloco em vez do bloco inteiro.

Verificação

Quando executar um nó num dispositivo com poder de processamento limitado. Vai ser impossível baixar e hash todas as transações num bloco. O que é necessário aqui é uma prova da Merkle (uma prova de que uma transação específica está presente num bloco). Isso reduz o número de hashing a ser feito, portanto as transações podem ser verificadas usando o dispositivo.

Conclusão

As árvores mercantes e as raízes das merkle foram concebidas para melhorar a verificação de dados na blockchain. Estas ferramentas ajudam a garantir a validade das transações sem a necessidade de descarregar a rede inteira. São o cérebro por trás das carteiras móveis hoje. Os utilizadores podem interagir com a blockchain sem a necessidade de ter uma cópia inteira do livro.

Autor: Unique
Tradutor(a): Yuler
Revisor(es): Matheus, Edward, Joyce, Ashley
* As informações não se destinam a ser e não constituem aconselhamento financeiro ou qualquer outra recomendação de qualquer tipo oferecido ou endossado pela Gate.io.
* Este artigo não pode ser reproduzido, transmitido ou copiado sem fazer referência à Gate.io. A violação é uma violação da Lei de Direitos de Autor e pode estar sujeita a ações legais.
Comece agora
Registe-se e ganhe um cupão de
100 USD
!