Which is correct "Tom Paine" or "Thomas Paine"?

Paine never signed his name "Tom" Paine. He always used Thomas. "Tom" was invented by his detractors, and they were the only ones who used it in the beginning. "Tom" came from the attacks and slanders by his enemies (the churches and the monarchists and some of the Federalists) as a way to demean him as a commoner. They usually linked "Tom" with another attempt at slander like "corset maker" which were designed for the same purpose - to demean him since they had no arguments to refute him. So we prefer Thomas to "Tom" because of that. However, many populist groups like to use "Tom" because it implies ties to the common man, which he had. So depending on the source and context, either one is fine. But remember, did anyone ever see Adams referred to as "Jack" Adams, or was there an "Al" Hamilton, or "Tom" Jefferson? Historians should show the same respect for Paine and use "Thomas".