Currently, each person is left to give their own 'meaning' to a vote. I think that this approach would help define that meaning: A 'vote' is public support for the quality of an article, such that you are willing to associate yourself with it.
Good point. In the case I described, someone could gain status in the community by consistently voting up good articles and voting down bad ones. This would add to the other two methods of becoming known to the community (commenting and submitting). Perhaps people who are respected would not want to risk tarnishing their image by supporting a bad article, and the support of people who would be willing to sell their 'vote' would be worthless?
As an aside, I wonder if each of article submissions, comments, and voting could be thought to respectively show that a person is interesting, intelligent, and has good judgment?
The aforementioned "name-and-shame" approach would work if the names are only displayed for bad stories.
It would be a weird scenario indeed if vote-buyers were only able to pay out for stories that did not get a positive score.
Vote-buyers could still gain some long-term information that would enable payment, such as the reliability of a given paid-voter over time (by checking the stories that didn't make it), but that same information would be available to the news.yc admin(s), who could then just ban the offending accounts (even if they weren't suspected of vote-selling--just for consistently supporting crappy stories!).