I think what could work is requiring users to prove their authenticity and uniqueness using a national ID of some sort. It would be bad for privacy, no doubt, but it surely would work. But the users' actual names should not be displayed.

I was thinking about that. It should be possible to do this in a way that mostly preserves privacy.

Sites and apps don’t need your actual national ID, just to know that you have one. I think it could be possible to have 3rd party verification services that don’t know where the verification request is coming from, thus preserving privacy on both sides.