Patent ID: 8528060

Claim:
A method of constructing login/password protocols for registering and verifying logins/passwords in a server comprising the steps of: registering the logins/passwords comprising the steps of: selecting memory storage locations fewer than all memory storage locations in the server for login/password data based on the login/password data; combining random content of the selected memory storage locations into a first tag; and storing the first tag; and verifying the logins/passwords comprising the steps of: selecting memory storage locations based on the login/password data; combining random content of the selected memory storage locations into a second tag; and verifying that the second tag matches the stored first tag; wherein said selecting memory storage locations selects a quantity of locations in the range [c*log d, m], where d is the number of bits in the password, m is the total quantity of memory storage locations and c is a number that is independent of d and m; and wherein said selecting memory storage locations includes using extractors and said combining random content uses a pairwise independent hash function.