It's simple.
Notice that you are building the key by multiplying and adding. Therefore, to undo the key you will have to divide by 73 and the remainder that remains will be the index of the character of the alphabet.
Obviously, doing so will have the characters of the original string in reverse order, but that is already a triviality.
I edit to add a very simple and fast implementation. As I said in the comments, you have to worry about turning the result so that the string is readable. There you have the code adapted to use BigInteger and not have problems of out of range.
public String hash2(BigInteger lo) {
BigInteger mod = lo.mod(multiplicador);
lo = lo.divide(multiplicador);
String res = alfabeto.charAt(mod.intValue()) + "";
while (lo.compareTo(tres) > 0) {
mod = lo.mod(multiplicador);
lo = lo.divide(multiplicador);
res += alfabeto.charAt(mod.intValue());
}
return res;
}
public static void main(String[] args) {
HashPrueba hp = new HashPrueba();
//hp.hash2(405611771492327055239928692427624877908760706915042668827730030781521901952046793);
System.out.println(hp.hash2(hp.hash("javaguay")));
}