How do you check the validity of a signature while only having the hash of the public key So far as I understand it, a Bitcoin transaction is signed with a private key and the rest of the network can then use the public key to verify that it is indeed signed by the right private key. However, as public keys are hashed, how do I use them to verify the private key?
When an output is spent, the corresponding public key is disclosed and used in the verification.