Just curious, if I send a transaction from one address to another, how do they verify it without knowing my private key?
Bitcoin uses the Elliptic Curve Digital Signature Algorithm (ECDSA). Your private key is used to create the signature and your public key is used to verify the signature. This allows anybody to verify your signature as long as they have your public key.
The short answer seems to be correct. But more detailed explanations say that your bitcoin digital signature consists of an encryption of a hash of the tx data together with a hash of your private key.
I don't see why the hash of your private key needs to be included in a digital signature.
See below step will help you and surely this would work:
You create a hash of the tx data. You then sign the hash using your private key. This results in your digital signature.
You then propagate the tx data through the network, together with your digital signature and the corresponding public key needed to verify the signature.
Anyone on the network can then use the public key to verify your signature and recover the hash of the tx data.
They then themselves create a hash of the tx data using the same hash function that you used in step 1.
If their own hash of the tx data matches the hash they recovered by signing with your signature, then that proves that tx hash from your digital signature must have been created by you.