1. A computer-implemented method of verifying a speech input comprising: determining pronunciation data for a received user spoken utterance specifying a word; speech recognizing a plurality of further user spoken utterances specifying characters of the word, wherein each further user spoken utterance specifies one individual character of the word; generating an N-best list, comprising N-best character matches, for each received further user spoken utterance specifying a character of the word, wherein each N-best list is associated with one of the user spoken utterances specifying a character and a number of the N-best lists generated corresponds to a number of characters in the word; automatically generating a grammar comprising word candidates using the N-best list for each character, wherein each word of the grammar is formed using one letter selected from each N-best list existing at a same level of each respective N-best list and in an order corresponding to an order in which each user spoken utterance specifying a character, and being associated with an N-best list, is received; automatically generating pronunciation data for each word in the grammar; comparing the pronunciation data from the user spoken utterance specifying the word with the pronunciation data for the word candidates of the grammar to determine at least one match; and storing the match in memory as a recognition result for the word.