Now uses sha512, and better string interpretion