One question I'm not able to properly answer when asked is
How exactly the blockchain can verify the identity of the user without a centralized trusted party such as VeriSign?
I know this is done in a decentralized way and the ECDSA algorithm should do the trick, but other applications still need a centralized trusted party in order to verify if the user is really who he says he is even when they're using ECDSA as well.
But how exactly can I guarantee that nobody can pretend to be someone else and spend their bitcoin instead?
Yes, I know the basic of how public-key cryptography works, but Information Security is not strong with me.
Edit: let me explore the question further.
Suppose I own a coffee house with intense flow of customers. How can I be sure about costumers that had already paid and others how didn't pay?
Let's say that Bob and Anna are my customers. Bob orders a Macchiato, Anna orders a Capuccino. Both coffees have the same prize. How can I know which payment came from each one of them?