Árvores de Merkle
Na criptografia e ciência da computação, árvores de dispersão ou árvores de Merkle são um tipo de estrutura de dados que contém uma árvore de informações resumidas sobre um pedaço maior de dados - por exemplo, um arquivo - usado para verificar seu conteúdo. Árvores de Merkle são uma extensão das listas de dispersão, que por sua vez são uma extensão de Hash. Árvores de Merkle nas quais a função de dispersão subjacente é Tiger são freqüentemente chamadas de árvores de Tiger ou árvores de dispersão de Tiger.
Usos
Árvores de Merkle podem ser usadas para proteger qualquer tipo de dados armazenados, manuseados e transferidos dentro e entre computadores. Atualmente, o principal uso de árvores de Merkle é para certificar-se que blocos de dados recebidos de outros pares em uma rede ponto-a-ponto são recebidos intactos e inalterados, e até mesmo para verificar se os outros pares não mentem e enviam blocos falsos. Sugestões foram feitas para o uso de árvores de Merkle em sistemas de computação confiável. Sun Microsystems tem usado árvores de dispersão no sistema de arquivos ZFS.[1] Árvores de Merkle são usadas no protocolo Google Wave[2], sistema de controle de versão distribuído Git e em sistema de backup tarsnap.
Referências
- Merkle tree patent 4,309,569 (em inglês) – Explica tanto a estrutura da árvore de dispersão quanto seu uso para o manuseio de muitas assinaturas descartáveis.
- Tree Hash EXchange format (THEX) (em inglês) – Uma descrição detalhada de árvores de Tiger.
- Efficient Use of Merkle Trees (em inglês) – RSA Data Security, Inc. Explicação do propósito original das árvores de Merkle: lidar com muitas assinaturas descartáveis de Lamport.
- ↑ Jeff Bonwick's Blog ZFS End-to-End Data Integrity
- ↑ Google Wave Federation Protocol Wave Protocol Verification Paper