Начну с понятия хэш функции - это процесс необратимого шифрования (свёртки), таких алгоритмов достаточно много - SHA, MD, RIPEMD, N-Hash, Haval. Суть состоит в том, что в большинстве случаев преобразования над сообщением дают уникальное числовое значение с фиксированной длиной по которому его можно опознать (отпечаток), я сказал в большинстве случаев, поскольку есть исключения когда разные значения дают на выходе одинаковый отпечаток - такая ситуация называется коллизией т.е. столкновением.
Пример SHA-256:
человек = e094086f2a2d0d34000cf0b21f0b97584f4dd055f179f7b7142124085a2f0772
а = 823c4eb3e895adc925a755d89cea1c6c46954c999d23604e0091788b75496159
Т.е. на любой параметр функция возвращает 256 бит информации, а это значит что существует 2^256 = 1.1579209e+77 комбинаций. В этом [шифрование] направлении функция обсчитывается менее чем за секунду, майнеры же наоборот решают задачу нахождения оригинального значения ("человек") по отпечатку ("e094086f2a2d0d34..."), таким образом решение задачи занимает гораздо больше времени, чем проверка решения.