1. A method for obtaining a minimal perfect hash value for an input string using double hashing, the method comprising: constructing a hash table by double hashing each of the strings in a set of strings, using a computed double hash value to identify an empty location in the hash table for each string, and storing a signature for each string in the empty location of the hash table identified for the string; and obtaining the minimal perfect hash value for the input string by iteratively double hashing the input string until a location is identified in the hash table that contains a signature corresponding to the input string, the minimal perfect hash value comprising an integer identifying the location in the hash table that contains the signature corresponding to the input string.