It generates more talk. More word of mouth = more hype = more $$$. Think about it: if we knew who it was, there would be talk of one name, but since we don't know, now there's talk of more than one name as people trying to "solve the riddle"
But I keep getting told this movie isn't made for people like me, that its made for people who aren't Trek fans. The only people this is driving conversation for is people who were already going to buy tickets anyways.
General audiences aren't going to care who the villain is...
This movie is being made for as many people as possible, Trek fans and non-Trek fans alike. Besides, this isn't just a Star Trek thing. JJ Abrams never likes to reveal things about any of his movies. He's not doing this to toy with Trekkies; this is just what he does.