a method for transferring one or more files is disclosed . the files are transferred from a host peer to a target peer in which respective message digests are calculated for a file on a host peer and a target peer . a comparison between the calculated digests is made prior to transmission of a file in order to establish whether the target peer possesses the file in question . where it is found that the message digests are identical , it is assumed that the file is present on the target peer . this can be done in the event that it is suspected that a file to be transferred may already exist on the target peer , for example if the target peer already possesses a file of the same name as that to be transferred . if it is discovered that message digests calculated by the host peer and the target peer are identical , the file is not transmitted by the host peer , thereby preventing an unnecessary use of available bandwidth .