Есть ли в стандартной библиотеке функция (или может быть можно указать какой-то алгоритм для функции hash) что бы в рехультате хеш состоял только из цифр?
Всё равно ведь хэш. Зато плюс такого подхода в одинаковой длине всех таких цифровых хэшей. И ещё впереди прицепить, например, 1, чтобы вдруг впереди не оказалось нулей.
По дефолту нет. Смотря какая нужна устойчивость хэша к коллизиям, можно просто очистить для примера md5 строку от букв, можно осуществить замену как предполагал Lander