URL shortening and authentication with reverse hash lookup
First Claim
1. An article of manufacture including a processor-readable storage medium having processor-executable code encoded therein, which when executed by one or more processors, enables actions for enabling access to a resource, comprising:
- applying a hash operation to at least a portion of a full identifier of the resource, producing a hash key;
detecting that a message includes a shortened identifier selectively indicated by a user to request the resource, wherein the shortened identifier is in a predefined format, and is smaller than the full identifier;
comparing the hash key to a portion of the shortened identifier, wherein the portion of the shortened identifier is arranged to include at least one hash key and another portion of the shortened identifier includes a code for handling access to the resource of a plurality of codes for handling access to the resource; and
determining that the shortened identifier identifies the resource if the hash key matches the portion of the shortened identifier that includes the at least one hash key, wherein each different code for handling access to the resource of the plurality of codes for handling access to the resource has a corresponding different hash operation for generating the hash key from the full identifier.
9 Assignments
0 Petitions
Accused Products
Abstract
A shortened identifier, such as a shortened URL, is used to access data, a service, and/or another resource that is associated with a full identifier, such as a full URL. In an exemplary embodiment, a hash key is generated from the full URL and included with a domain identifier to form a shortened URL. Other codes can also be included in the shortened URL. The shortened URL can be included in a message, page, and/or other data element that is generally too small for the full URL. When received from a client, a property code, a user ID, and/or other data is used to locate one or more full URLs. A selected hash function is applied to the full URLs to generate a table of hash keys. If a match exists with the hash key from the shortened URL, the resource is accessed at the corresponding full URL.
-
Citations
20 Claims
-
1. An article of manufacture including a processor-readable storage medium having processor-executable code encoded therein, which when executed by one or more processors, enables actions for enabling access to a resource, comprising:
-
applying a hash operation to at least a portion of a full identifier of the resource, producing a hash key; detecting that a message includes a shortened identifier selectively indicated by a user to request the resource, wherein the shortened identifier is in a predefined format, and is smaller than the full identifier; comparing the hash key to a portion of the shortened identifier, wherein the portion of the shortened identifier is arranged to include at least one hash key and another portion of the shortened identifier includes a code for handling access to the resource of a plurality of codes for handling access to the resource; and determining that the shortened identifier identifies the resource if the hash key matches the portion of the shortened identifier that includes the at least one hash key, wherein each different code for handling access to the resource of the plurality of codes for handling access to the resource has a corresponding different hash operation for generating the hash key from the full identifier. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A server device for enabling access to a resource, comprising:
-
a memory for storing instructions and data; and a processor in communication with the memory, wherein the processor performs actions based at least in part on the stored instructions, including; applying a hash operation to at least a portion of a full identifier of the resource, producing a hash key; detecting that a message includes a shortened identifier selectively indicated by a user to request the resource, wherein the shortened identifier is in a predefined format, and is smaller than the full identifier; comparing the hash key to a portion of the shortened identifier, wherein the portion of the shortened identifier is arranged to include at least one hash key and another portion of the shortened identifier includes a code for handling access to the resource of a plurality of codes for handling access to the resource; and determining that the shortened identifier identifies the resource if the hash key matches the portion of the shortened identifier that includes the at least one hash key, wherein each different code for handling access to the resource of the plurality of codes for handling access to the resource has a corresponding different hash operation for generating the hash key from the full identifier. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. An article of manufacture including a processor-readable storage medium having processor-executable code encoded therein, which when executed by one or more processors, enables actions for accessing a resource, comprising:
-
enabling a user to indicate a shortened identifier, wherein the shortened identifier is in a predefined format, and wherein a portion of the shortened identifier is arranged to include at least one hash key and another portion of the shortened identifier includes a code for handling access to the resource of a plurality of codes for handling access to the resource; communicating the shortened identifier to a communication director for comparing the hash key to a result of a hash operation applied to a full identifier of the resource; and
accessing the resource if the hash key matches the result of the hash operation, wherein each different code for handling access to the resource of the plurality of codes for handling access to the resource has a corresponding different hash operation for generating the hash key from the full identifier. - View Dependent Claims (14, 15, 16)
-
-
17. A client device for accessing a resource comprising:
-
a user interface; a communication interface in communication with a client communication director; a memory for storing instructions and data; and a processor in communication with the communication interface, with the user interface, and with the memory, wherein the processor performs actions based at least in part on the stored instructions, including; enabling a user to indicate a shortened identifier through the user interface, wherein the shortened identifier is in a predefined format, and wherein a portion of the shortened identifier is arranged to include at least one hash key and another portion of the shortened identifier includes a code for handling access to the resource of a plurality of codes for handling access to the resource; communicating the shortened identifier in a resource request message to a communication director for comparing the hash key to a result of a hash operation applied to a full identifier of the resource, wherein the shortened identifier is smaller than the full identifier, and wherein the portion of the shortened identifier is a part of the shortened identifier; and accessing the resource if the hash key matches the result of the hash operation, wherein each different code for handling access to the resource of the plurality of codes for handling access to the resource has a corresponding different hash operation for generating the hash key from the full identifier. - View Dependent Claims (18, 19, 20)
-
Specification