Title may be confusing you, and to be honest I am also confused how things work and I am new to this crypto world so sorry in advance if I am not using the correct words.
I try to explain :
Let say Alice wants to send cryptos to Bob.
A sends to B
(address of A) to (address of B)
Because blockchains are public, and both address will be known to each one, what process do prevent Bob from not using Alice address as the sender in another transaction ?
B pretends to be A
using A to send to B
(address of A) to (address of B) without A consent
The reason why I am confused right now about this question is because in Dapps you can use a wallet like Metamask to make some transactions, which means you only needs an address. So how is that secure.
If someone code a program using the same logic as Metamask, what prevents him to use another person’s address in Dapps and to smart contracts? (Similar to changing the ip field in http requests, which was a popular hacking technique for man in the middle before https was widely used).
Thanks in advance for helping me to understand.