Only Allow Input of Valid Keys

This would have prevented quite a few support incidents. The idea to generate keys from any input was nice but I don't think we should keep it.