Блок состоит из предыдущего блока (хеш-суммы), хеш-суммы всех включенных транзакций, и случайно перебираемого числа (англ: nonce).
Вот пример хеша блока 00000000000001c21dbf4715d5da1a288061faa21e950dd8df6ae25c8b55d868
А вот чтобы получить хеш с таким количеством нулей в начале и нужно перебираться все возможные варианты :)
так что никакой математики - только грубый брутфорс