Pelo que entendi, o arquivo torrent contém um hash para cada parte do arquivo que você está baixando. Ele simplesmente verifica os hashes para cada peça que você acha que tem, contra a lista de verificação. Assim como quando você faz o download de um torrent, qualquer parte que não corresponda é descartada.
Mais detalhadamente, com base nas especificações de bitorrent , você tem o arquivo baixado, 'comprimento de peça' e ' peças'. O comprimento de uma peça é o tamanho de cada peça, e as peças são simplesmente a soma sha1 de cada peça, anexada à peça anterior para formar uma longa sequência.
Para simplificar as coisas, vamos supor que você pré-alocou o arquivo e, basicamente, você tem um grande arquivo 'preenchido' de tamanho igual ao seu arquivo de origem. Primeiro, baseado no comprimento da peça, o programa obtém os primeiros n bits do arquivo e faz uma soma SHA1. Em seguida, compara a soma SHA1 do arquivo com a parte correspondente de 'partes'. Se eles combinam, estamos bem. Mais, é marcado como não bom e descartado.