Nothing in the Constitution requires voter ID laws. Nor does any provision bar voter ID laws, except: (1) the 14th Amendment forecloses state denial of equal protection of the laws to any person, and (2) the 15th Amendment forecloses discrimination by race in determining who can vote.
Accordingly, a voter ID law would be unconstitutional if it discriminated by race without a compelling state justification. Put differently, to justify a discriminatory voter ID law, a state would have to show: (a) there’s significant voter fraud, (b) the law would fix the problem; and (c) there’s no other way to accomplish the same ends without discriminating.
The convicted felon problem is more complicated. Rand Paul argues that 180,000 convicted felons in Kentucky should be allowed to vote. Does the constitution support that view? Of course, prisoners can be denied the right to vote while in prison. By committing a felony, they forfeit certain rights, which can even include the most fundamental right – the right to liberty. But after a felon completes his sentence, his voting rights should (in my view) be restored.
Indeed, if the law denying his voting rights were passed after his commission of the felony, that law would be unconstitutional because it’s ex post facto. If the law were passed prior to his commission of the felony, it would still be subject to the test noted above. That is, government would have to show a compelling need for the discriminatory law, its effectiveness at satisfying that need, and no less discriminatory means of accomplishing the same ends. Frankly, I doubt that many, if any, states can make that showing.