I prefer Krypton being destroyed by both natural causes and a willful ignorance of science because that story highlights the tragedy of Kryptonians as a species. They could have escaped their own destruction. They simply chose not to and that's why Superman works really hard to protect the Earth. He wants to show humans that they don't have to make the same mistakes Kryptonians did.
A villain getting revealed as the destroyer of Krypton doesn't work because it would inextricably tie him to Superman's origin, the same way Joe Chill is tied to Batman's origin. Let's say that Brainiac turns out to be responsible for Krypton's destruction, What's Superman gonna do? Attempt to take revenge? That's not who Superman is.
Krypton's destruction did not affect Superman the same way the deaths of Thomas and Martha Wayne affected Batman. Oh sure, it's always there, on the back of his mind, but never to the point of self-indulging tragedy.
Brian Michael Bendis tried to present Rogol Zaar as the destroyer of Krypton and that clearly didn't work.