Algorithm to hash spending password

Well, if you want to confirm that one of them (or none of them) is the spending password hash, then it shouldn’t be harder than computing the hash yourself (since you know your password) and comparing the result. That being said, I doubt the password hash would be stored as-is since it would make it prone to a simple dictionary-based (or brute-force) attack, unlike storing an encrypted key. Private keys are mainly random data, so any potential private key is equally likely to be chosen. Let’s imagine your key is on 256 bits, then you’d have close to 2^256 possibilities, i.e. somewhere under 115792089237316195423570985008687907853269984665640564039457584007913129639936 possible keys. Not exactly that, because a few numbers are known to produce weak keys for ECC, without even mentioning human or implementation-induced weaknesses. By the way, this old thread on Cardano Forum seems to give hints toward answering your first question: