@avi Hard to say, they could be doing it through cookies, if you upvote a deal, the upvote of that deal is saved into your cookies, then if you try again in the same browser, it knows you've done it already, however this is also circumventable by changing browsers and deleting your browser cookies. You can make it hard for someone to fake votes, but you can't stop it.
I think a mixture of email confirmation, cookie usage, limiting who can upvote and downvote (need to post a deal in order to vote for other deals, or something like that) and keeping an eye on activity would deter enough people not to bother trying to fake the votes.
You'd have to post the deal, log out, clear your entire browser cache, cookies, history etc, create an email account, sign up, verify your account, upvote, then do the whole thing again, the time taken isn't worth it, it would be easier to hire a team of people in the east to do it for you (similar to likes on facebook or views on youtube), and you can't stop them unless you place blanket IP bans on subnet ranges. Which, if you're only concentrating on one place, then that would be fine.
@fengwang Cool. Once upon a time I was a teacher in a former life and old habits like sharing knowledge die hard. Had to take coursework on "readability" decades before "UX" was a thing. Of course it is obvious once Baris replied. Duh... 🤦
On related note: You mentioned images. In event you are unawares, clicking on an image then opens that image for larger display (maybe even in a new tab depending on config, I forget the default just now). Most modern browsers auto zoom to adjust for full browser screen geometry. Clicking on that image yet again should result in full scale, e.g. 5k by 4K, which you will then need to pan about w/sliders and such.