use Digest::MD5; sub file_md5_hex { my $filename = shift; open my $fh, '<:raw', $filename or die "open $filename: $!"; my $md5 = Digest::MD5->new->addfile($fh); close $fh; return $md5->hexdigest; }