title_body: What prevents a bad user to provide a wrong signature to a transaction?
upvoted_answer: I don't know the specifics, but I believe under the hood the corresponding private key is used to sign the transaction and the public key is used for verification. So you cannot use any other public key, since you do not know the corresponding private key.