The answer is using a public blockchain. Every voter would get a unique code. They would use that code to vote. They could then check their code on the blockchain to make sure that their vote is correct.
It would be more complex than that, of course, and would have to have its own safeguards against fraud. For example, there would have to be some sort of way to tie people to their codes, and that connection would have to be in the custody of someone, or retrievable by a court. But those are the basics.
The answer is using a public blockchain. Every voter would get a unique code. They would use that code to vote. They could then check their code on the blockchain to make sure that their vote is correct.
It would be more complex than that, of course, and would have to have its own safeguards against fraud. For example, there would have to be some sort of way to tie people to their codes, and that connection would have to be in the custody of someone, or retrievable by a court. But those are the basics.