It is not quite so terrible as to need to make everyone distrustful.

There is an old saying: "You can't scam an honest man." I think a lot of people misunderstand this; it is not that being honest somehow lets you just know when you're being scammed. Indeed the natural "surely they'd be even more vulnerable" probably has some truth to it in some sense.

What it means is that the vast bulk of scams involve convincing the mark that they are dishonestly pulling off a scam. You pay $400 and you're going to get $millions. She misidentified you as someone else but hey you're just so amazingly charismatic that she's into you anyhow, and if you just pour a few more hundreds in she's totally going to let you sleep with her. You know you never entered that lottery, but hey, if they're going to make a mistake and say you won who are you to argue, right?

Not everything fits into this; one classic that affects businesses more than individuals is Ye Olde Just Issue An Invoice And Hope They Pay It. There are also some scams around posing with varying degrees of fidelity as a specific individual you know, such as by hacking their emails and sending this out as them, although in many cases that's still just a delivery mechanism for a scam based on convincing the mark they're going to pull a scam.

A solution that will make you highly resistant to scams, though as I am saying outright, not immune, is to realize that you will not get anything for free, to refuse to participate, to be aggressively honest even if it seems to hurt you. Perhaps ironically, or perhaps counter to your intuition, in the modern world, such aggressive honesty will on the net benefit you by protecting you from these scams. The same ethics that make you give $5 back to the cashier that they gave you in extra change will save you hundreds of thousands in a pig butchering scam.

In the modern era it probably is getting more important to verify identities even of people you know, which is a new and developing angle.