This is easier than it looks. For each name, it generates a code. Given one name, it will always generate the same code. So say u have an app and you have a user send u his name and credit card number to register. You type the info in your code generator and send him the reulting code. He registers, and his name and key code are stored somewhere, probbably NSUserDefaults or something. But how does the app know that the code is valid? Well, all you have to do is add almost the exact same code to your application which converts the given name into the appropriate code and checks against the one save in your file (me thinks dealing with NSUserDefaults is easist). That should be it.
Make sense? If not, I could try to throw some code together later... finals don't start for me until next thursday...
F-bacher