VoIP call routing information registry including hash access mechanism
First Claim
1. A computer-implemented method comprising:
- computing an encrypted hash of a telephone number with a processor;
initiating, with the processor, a first search of a registry for a matching entry that matches the encrypted hash of the telephone number, wherein the registry comprises a plurality of entries, each of the entries comprising;
an encrypted hash of either a respective registered telephone number or a respective registered telephone number prefix; and
data associated with either the respective registered telephone number or the respective registered telephone number prefix; and
if none of the entries match the encrypted hash of the telephone number, then;
determining at least one telephone number prefix from the telephone number by stripping at least one of the last digits off of the telephone number;
computing, with the processor, each of at least one encrypted hash from a corresponding one of the at least one telephone number prefix; and
initiating, with the processor, at least one second search of the registry for any of the entries that match the at least one encrypted hash.
1 Assignment
0 Petitions
Accused Products
Abstract
A VoIP call routing information registry including a hash access mechanism. In particular implementations, a method includes receiving a telephone number; computing a hash of the telephone number; accessing a registry wherein the registry comprises a plurality of entries, and wherein each entry comprises a hash of a telephone number and data associated with that telephone number, or a prefix and data associated with that prefix; searching the registry for a matching entry; and until a matching entry is found or the telephone number has been stripped down to a minimum number of digits, stripping the last digit of the telephone number, re-computing a hash of the stripped-down telephone number, and re-searching the registry for a matching entry.
-
Citations
13 Claims
-
1. A computer-implemented method comprising:
-
computing an encrypted hash of a telephone number with a processor; initiating, with the processor, a first search of a registry for a matching entry that matches the encrypted hash of the telephone number, wherein the registry comprises a plurality of entries, each of the entries comprising; an encrypted hash of either a respective registered telephone number or a respective registered telephone number prefix; and data associated with either the respective registered telephone number or the respective registered telephone number prefix; and if none of the entries match the encrypted hash of the telephone number, then; determining at least one telephone number prefix from the telephone number by stripping at least one of the last digits off of the telephone number; computing, with the processor, each of at least one encrypted hash from a corresponding one of the at least one telephone number prefix; and initiating, with the processor, at least one second search of the registry for any of the entries that match the at least one encrypted hash. - View Dependent Claims (2, 3)
-
-
4. At least one tangible non-transitory computer-readable media comprising instructions executable with a processor, the instructions, when executed with the processor, cause the processor to:
-
compute an encrypted hash of a telephone number; initiate a first search of a registry for an entry matching the encrypted hash of the telephone number, wherein the registry comprises a plurality of entries, and wherein each of the entries comprises an encrypted hash of either a respective registered telephone number or a respective registered telephone number prefix, and data associated with either the respective registered telephone number or the respective registered telephone number prefix; and in response to a failure of the first search to find any entry matching the encrypted hash of the telephone number; strip at least one of the last digits of the telephone number off of the telephone number to form at least one telephone number prefix; compute each of at least one encrypted hash from a corresponding one of the at least one telephone number prefix; and initiate at least one second search of the registry to find any entry matching the at least one encrypted hash. - View Dependent Claims (5, 6)
-
-
7. An apparatus comprising:
-
a memory; at least one processor; and a call agent application physically stored in the memory comprising computer-readable instructions, the computer-readable instructions, when executed by the at least one processor, cause the at least one processor to; compute an encrypted hash of a telephone number; access a registry wherein the registry comprises a plurality of entries, and wherein each of the entries comprises; an encrypted hash of either a respective registered telephone number or a respective registered telephone number prefix, and data associated with either the respective telephone number or the respective registered telephone number prefix; initiate a first search of the registry for a matching entry that matches the encrypted hash of the telephone number; and in response to a failure of the first search to return any entry matching the encrypted hash of the telephone number; form at least one telephone number prefix from a stripping of at least one of the last digits of the telephone number off of the telephone number; compute each of at least one encrypted hash from a corresponding one of the at least one telephone number prefix; and initiate at least one second search of the registry for a matching entry that matches the at least one encrypted hash.
-
-
8. A computer-implemented method comprising:
-
receiving, with a processor over a network interface, an encrypted hash of a prefix, the prefix representing a range of telephone numbers; storing, with the processor, the encrypted hash in a registry data store, the encrypted hash being stored in association with data identifying a Voice over Internet Protocol (VoIP) call agent node for the range of telephone numbers; receiving, with the processor over the network interface, a plurality of search requests for VoIP call routing information, a first one of the search requests comprising an encrypted hash of a telephone number stripped of a first number of digits, a second one of the search requests comprising an encrypted hash of the telephone number stripped of a second number of digits, the telephone number being in the range of telephone numbers; searching the registry data store with the processor for a match for each one of the search requests; and transmitting the data identifying the VoIP call agent node in response to the encrypted hash of the telephone number stripped of the second number of digits matching the encrypted hash of the prefix. - View Dependent Claims (9, 10)
-
-
11. At least one tangible non-transitory computer-readable media comprising instructions executable with a processor, the instructions, when executed, cause the processor to:
-
receive, via a network interface, an encrypted hash of a prefix, wherein the prefix identifies a range of telephone numbers; store the encrypted hash of the prefix and data in a registry data store, wherein the data is associated with the encrypted hash of the prefix in the registry data store, and the data identifies a Voice over Internet Protocol (VoIP) call agent node for the range of telephone numbers; receive, over the network interface, a plurality of search requests for VoIP call routing information, a first one of the search requests comprising an encrypted hash of a telephone number stripped of a first number of digits, a second one of the search requests comprising an encrypted hash of the telephone number stripped of a second number of digits; search the registry data store to find a match for each one of the search requests; and transmit an identity of the VoIP call agent node via the network interface in response to the encrypted hash of the telephone number stripped of the second number of digits being a match with the encrypted hash of the prefix. - View Dependent Claims (12, 13)
-
Specification