Bulbapedia has an extensive article on it, but it boils down to, in Generation III and on, there is no difference in stats between normal Pokemon and shiny ones.
Generation II (Gold, Silver, and Crystal) is the exception because shininess is determined based on the stats of the Pokemon. Namely:
If a Pokémon's Speed, Defense, and Special IVs are 10, and its Attack IV is 2, 3, 6, 7, 10, 11, 14 or 15, it will be Shiny
But, from Generation III and onward, it is determined based on a secret ID and a trainer ID, so it has nothing at all to do with the stats and will be just like every other Pokemon.
Something fun to note is that if the Male/Female ratio is 7:1, in Generation II, you cannot have a female shiny Pokemon because of the way it is calculated.