1. A computer-implemented method implemented by a user's hardware processor device, wherein the user creates in a repeatable manner from user-selected data including a web site name identical to data input by users of other devices with hardware processors employing the same method passwords that differ from those of the users of other devices, the method comprising: receiving in the user's hardware processor device user-selected data including a web site name generated by a user by physical manipulation of one or more user input devices; deriving, by the hardware processor, password data from the user-selected data including the web site name, wherein the password data is randomized in a deterministic manner; deriving the password data comprises: searching a device-unique predetermined electronic encoding dictionary wherein: each entry in the predetermined dictionary associates at least one character of a character of the user-selected data with a corresponding code; each code in the predetermined dictionary comprises at least one character; each entry appears at least twice in the predetermined dictionary; each entry has a different code each time it appears in the predetermined dictionary; the order of codes in the predetermined dictionary is unique for each user; beginning the search of the user-selected data wherein the data is a string of at least two characters for the code of the first character of the user-selected data at the first entry in the dictionary; resuming the search for each subsequent character in the user-selected data with the character immediately following the location in the dictionary where the previous character of the user-selected data was found; replacing each of the one or more characters of the user-selected data by a code representing each character of the string in the predetermined encoding dictionary; returning to the first entry of the dictionary to resume the search only if no entry for a character of the user-selected data is found in the remaining entries of the dictionary; beginning the search for the code for the next character in the user-selected data if no entry is found in the predetermined dictionary for the present character in the data; stopping the encoding process after a search of the predetermined dictionary has been completed for each and every character of the user-selected data and a code representing each character in the user-selected data has replaced each character of the string, thereby creating the password; and pseudo-randomly scrambling the created password using a seed unique to the user.
4. The method of claim 1 wherein the number of times an entry appears among the entries in the predetermined dictionary reflects the entry's frequency of use in the language in which it is used.