Любая хеш-сумма, по определению, является математической суммой байтов того, что вы суммируете. Вы должны прочитать файл через поток как минимум - больше байтов занимает больше времени для прохождения. Тем не менее, я бы сказал (вообще говоря), что узким местом действительно будет чтение файла, независимо от того, что вы пытаетесь с ним - не хэшировать его после прочтения.
Редактировать: Я как бы неправильно понял вопрос. Хэширование двух файлов одинакового размера займет ровно столько же времени. 500 МБ пробелов - это 500 МБ байтов, которые представляют «пробел». Это по-прежнему 8 бит данных на байт, как и любой другой файл.