I need a simple user identification system for the purpose of allowing/prohibiting an action.
This is not a high-security requirement and it is ok to make mistakes (eg same user will execute non-allowed action using different browsers).
To be less abstract, let's see at the StackOverflow voting and assume we want to allow voting by public audience, but only once.
The simplest thing that can work - is using a cookie: set a new cookie per answer; store all votes in one cookie (or combine these somehow).
This is a bit unreliable due to the limitations of a cookie size/number. It will also sent the cookie to the site all the time, while it is only required on 1 action.
So from this perspective I would like to avoid using cookie.
But don't see a better of doing this over a regular HTTP. I don't consider IP/MAC address etc.
So, with the context above, the questions is: how to anonymously identify a user and store that information on the client?
Thanks.