ハッシュ木
次に、信頼できるトップハッシュを使って、取得したハッシュ木の検査を行い、ハッシュ木が破損していたり偽物だったりした場合は別の情報源からハッシュ木を取得する。プログラムはトップハッシュによる検査が合格するまでこれを繰り返せばよい。
ハッシュリストとの主な違いは、ハッシュ木の一部の枝だけをダウンロードでき、またハッシュ木の全体が利用可能でなくても枝の完全性を検査することができるという点にある。例えば、上図のdata block 001の完全性を検査するには、ハッシュ木にhash 0-0とhash 1さえ含まれていればよい(data block 001のハッシュ値とhash 0-0の値を組み合わせ、次にhash 1の値と組み合わせればトップハッシュの値と比較が行える)。同様に、data block 002の完全性を検査するにはhash 1-1とhash 0の値があればよい。この特徴を利用して、ファイルを非常に小さなブロックに分割しておき、ブロックが破損していたら再ダウンロードするようにすれば効率的に処理が行える。ハッシュ化対象のファイルが非常に大きい場合、ハッシュ木やハッシュリストのサイズはそれに応じて大きくなるが、ハッシュ木なら一部の小さな枝だけをダウンロードでき、枝の完全性チェックが行え、データブロックのダウンロードをすぐに開始することができる。
ハッシュ木に関するその他のテクニック、利点、詳細などについては参考文献および外部リンクを参照すること。