I just want to know whether both the usages are right or not. Also, do these usages depend on geography?
It's a noun so it's necessary to specify the quantity. "One hundred" is the same as saying "a hundred," just like if you had six hundred it would be necessary to say "six hundred." The same rule applies to other nouns; you don't say "I have dollar" you say "I have one dollar" and you don't say "I have car" you say "I have a car." (or, of course, "I have six cars").
'Hundred' is a noun, not a quantity. Thus it needs a determiner like 'a' or 'one' to function as a quantity. 'Dozen' is functionally similar.
Hundred in English signifies a unit of 10x10, 100. If you want to think about it mathematically, one hundred is 1x100. Two hundred is 2x100, or 200. In English you must specify how many units of 10x10 you have if you wish to make sense. Oyu can't just tell me that you have the unit 10x10, you need to say how many.
Exception: this rule works, obviously, only with numbers between 100 and 9900. The rule is less consistent with numbers above five digits.