FACTOID # 74: More than a third of the time, Icelanders don't show up for work. Perhaps that's why they're the world's happiest nation.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Hash tree

In computer science, hash trees, also known as Merkle (hash) trees or Tiger tree hashes, are an extension of the simpler concept hash list, which in turn is an extension of the old concept of hashing, for instance, a file. Wikibooks Wikiversity has more about this subject: School of Computer Science Open Directory Project: Computer Science Collection of Computer Science Bibliographies Belief that title science in computer science is inappropriate Categories: Computer science ... In computer science, a hash list can mean any kind of list of hashes. ...

A binary hash tree
A binary hash tree

A hash tree is a tree of hashes where the leaves in the tree are hashes of the data blocks in for instance a file or in a set of files. Nodes further up in the tree are the hashes of their respective children. For instance, in the picture to the right hash 0 is the result of hashing hash 0-0 and then hash 0-1. That is, hash 0 = hash( hash 0-0 | hash 0-1 ). Image File history File links Diagram of a hash tree. ... Image File history File links Diagram of a hash tree. ... In computer science, a binary tree is a tree data structure in which each node has at most two children. ... A hash function is a function that converts an input from a (typically) large domain into an output in a (typically) smaller range (the hash value, often a subset of the integers). ...


Hash trees can be used to protect any kind of data stored, handled and transferred in and between computers. Currently the main use of hash trees is to make sure that data blocks received from other peers in a peer-to-peer network are received undamaged and unaltered, and even to check that the other peers do not lie and send fake blocks. Originally, hash trees were conceived as a method to ensure validity of a set of encryption keys and suggestions have been made to use hash trees in trusted computing systems. A peer-to-peer (or P2P) computer network is a network that relies on the computing power and bandwidth of the participants in the network rather than concentrating it in a relatively few servers. ... A key is a piece of information that controls the operation of a cryptography algorithm. ... Trusted computing refers to a family of specifications from the TCPA with a stated goal of making computers more secure through the use of dedicated hardware. ...


Usually, a cryptographic hash function such as SHA-1 or Tiger is used for the hashing. If the hash tree only needs to protect against unintentional damage, less secure checksums such as CRCs can be used. In cryptography, a cryptographic hash function is a hash function with certain additional security properties to make it suitable for use as a primitive in various information security applications, such as authentication and message integrity. ... The SHA (Secure Hash Algorithm) family is a set of related cryptographic hash functions. ... In cryptography, Tiger is a cryptographic hash function designed by Ross Anderson and Eli Biham in 1996 with a view for efficiency on 64-bit platforms. ... A checksum is a form of redundancy check, a very simple measure for protecting the integrity of data by detecting errors in data that is sent through space (telecommunications) or time (storage). ... A cyclic redundancy check (CRC) is a type of hash function used to produce a checksum, which is a small number of bits, from a large block of data, such as a packet of network traffic or a block of a computer file, in order to detect errors in transmission...


In the top of a hash tree there is a top hash (or root hash or master hash, if you will). Before downloading a file on a p2p network, in most cases the top hash is acquired from a trusted source, for instance a friend or a web site that is known to have good recommendations of files to download. When the top hash is available, the hash tree can be received from any non-trusted source, like any peer in the p2p network. Then, the received hash tree is checked against the trusted top hash, and if the hash tree is damaged or fake, another hash tree from another source will be tried until the program finds one that matches the top hash.


The main difference from a hash list is that one branch of the hash tree can be downloaded at a time and the integrity of each branch can be checked immediately, even though the whole tree is not available yet. This can be an advantage since it is efficient to split files up in very small data blocks so that only small blocks have to be redownloaded if they get damaged. If the hashed file is very big, such a hash tree or hash list becomes fairly big. If it is a tree, one small branch can be downloaded quickly, the integrity of the branch can be checked, and then the downloading of data blocks can start.


There are several additional tricks, benefits and details regarding hash trees.

It has been suggested that Tiger-Tree Hash be merged into this article or section. (Discuss)

Image File history File links Please see the file description page for further information. ... A Tiger-Tree Hash is a type of cryptographic hash function ensuring that smaller parts of a file are both valid and free from corruption. ...

Tiger tree hash

The Tiger tree hash is probably the most widely used form of hash tree. It uses a binary hash tree (two child nodes under each node), usually has a data block size of 1024-bytes and uses the cryptographically secure Tiger hash. This article refers to the unit of binary information. ... In cryptography, Tiger is a cryptographic hash function designed by Ross Anderson and Eli Biham in 1996 with a view for efficiency on 64-bit platforms. ...


Tiger tree hashes are used in the Gnutella2 p2p file sharing protocol and in file sharing applications like Direct Connect, BearShare, Shareaza and DC++. The Gnutella2 peer-to-peer protocol is a reworking of the Gnutella protocol, written mainly by Michael Stokes. ... File sharing is the activity of making files available to other users for download over the Internet, but also over smaller networks. ... It has been suggested that this article or section be merged with NeoModus Direct Connect. ... BearShare is a popular closed source Gnutella client software package from a company called Free Peers, Inc. ... Shareaza is a Windows–based peer-to-peer client which supports the Gnutella, Gnutella2, EDonkey Network, and BitTorrent network protocols and which can handle magnet links, ed2k links, Piolet links, and the now deprecated Gnutella links. ... DC++ is an open-source, peer-to-peer file-sharing client that can be used to connect to the Direct Connect network. ...


See also

In computer science, a hash list can mean any kind of list of hashes. ... In cryptography, a cryptographic hash function is a hash function with certain additional security properties to make it suitable for use as a primitive in various information security applications, such as authentication and message integrity. ... In computer science, a binary tree is a tree data structure in which each node has at most two children. ... In computer science, a tree is a widely-used computer data structure that emulates a tree structure with a set of linked nodes. ... Ralph C. Merkle (born 2 February 1952) is a pioneer in public key cryptography, and more recently a researcher and speaker on molecular nanotechnology and cryonics. ...

External links

Tree Hash EXchange format (THEX)



 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.