I got a simple but straight question:
Why do we need "Sign message". Also give explanations and examples.
You can sign a message to prove ownership of a particular private key, without sharing the private key or spending any funds. For example, you could sign a message that says "My name is John Doe". You could give this signed message to anybody, and they can verify it with your public key. This proves that whoever has your private key claimed to be John Doe at some point.
Somebody might sign a promise to deliver funds in the future, to prove that they have access to the funds (if the address associated with the private key has the amount of money promised), without actually sending the money. Basically proving the ability to send money, without actually sending it.
Signing a message provides the useful property of "non repudiation", which is of value to the recipient of the message.
It is a way of recording a promise made in a way that the recipient can later prove:
In a way that the promiser cannot deny or modify later on.
It does not guarantee that the promise must be satisfied, but can be useful in resolving disputes.
If the promise is a matter of public record, it can also be useful as a way of identifying fraud, for example where the same unique resource (eg a btc) is promised twice to two different recipients.