I think open office's spell checking system uses plain text files with the list of all available words in each language. Maybe the license permits using it since it's open source...
All you'll have to do is check each word in the list. If that's not efficient enough, you can split each word in a binary (alphabetic) tree for searching them.
Look here :
Dictionaries - OpenOffice.org Wiki
Get the English (USA) one and open it as zip. You'll find a .dic file. It's a text file. There seems to be a certain notation and you'll have to read a bit more in the wiki to figure it out, but the readme file says it's covered by the LGPL so it should be free to use (I don't make any commitment on that).