Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS6360254 B1
Publication typeGrant
Application numberUS 09/280,513
Publication dateMar 19, 2002
Filing dateMar 30, 1999
Priority dateSep 15, 1998
Fee statusPaid
Publication number09280513, 280513, US 6360254 B1, US 6360254B1, US-B1-6360254, US6360254 B1, US6360254B1
InventorsGregory D. Linden, Michael D. McDaniel, Ryan J. Snodgrass, Joel R. Spiegel
Original AssigneeAmazon.Com Holdings, Inc.
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
System and method for providing secure URL-based access to private resources
US 6360254 B1
Abstract
In a Web site system in which different private records or other resources are personal to different users, a method is provided for allowing users to securely access a private resource without the need to enter a username, password, or other authentication information, and without the need to download special authentication software or data to the user's computer. Each resource is assigned a private uniform resource locator (URL) which includes a fixed character string and a unique token, and the URLs are conveyed by email (preferably using hyperlinks) to users that are entitled to access such resources. The tokens are generated using a method which distributes the tokens substantially randomly over the range of allowable token values (“token space”). The token space is selected to be sufficiently large relative to the expected number of valid tokens to inhibit the identification of valid tokens through trial and error. When a user attempts to access a private URL (such as to access a private account information page), a token validation program is used to determine whether the token is valid. The method may be used to provide users secure to access private account information on the Web site of merchant. Other practical applications include electronic gift certificate and coupon redemption, gift registries, order confirmation electronic voting, and electronic greeting cards.
Images(13)
Previous page
Next page
Claims(36)
What is claimed is:
1. In a Web site system in which different users are provided access to different private resources, a computer-implemented method of providing a user secure access to a private resource over a publicly-accessible network without requiring the user to enter authentication information, the method comprising:
obtaining an email address of the user;
generating a token using a token generation method that distributes tokens substantially randomly over a token space, the token space selected to be sufficiently large to inhibit identification of a valid token by trial and error, wherein generating the token comprises generating a token value of at least 64 bits;
combining the token and a predefined character string to form a uniform resource locator (URL) which corresponds to the private resource;
generating an email message which includes the URL, and transmitting the email message to the email address of the user; and
in response to receiving a request for the URL over the publicly-accessible network from a user, accessing the resource without requiring the user to enter authentication information.
2. The method of claim 1, wherein the resource comprises personal account information stored in a database, and accessing the resource comprises returning to the user a private Web page which includes the account information.
3. The method of claim 2, wherein the account information includes a subscription profile for an email-based subscription service, and the private Web page includes an electronic form for modifying the subscription profile.
4. The method of claim 1, wherein accessing the resource comprises transmitting to the user a Web page that contains an electronic greeting card created for the user by another user.
5. The method of claim 1, wherein accessing the resource comprises updating a database to indicate that the private URL was accessed.
6. The method of claim 5, wherein updating the database comprises crediting an account of the user with a monetary amount.
7. The method of claim 5, wherein updating the database comprises confirming an order.
8. The method of claim 5, wherein updating the database comprises recording a vote placed by the user.
9. The method of claim 1, wherein accessing the resource comprises accessing a gift registry of another user.
10. The method of claim 1, wherein generating the token comprises using at least one of an encryption algorithm and a pseudo-random number generation algorithm.
11. The method of claim 1, generating the token comprises encoding the email address of the user within token, and accessing the resource comprises extracting the email address from the token to identify the user.
12. The method of claim 1, further comprising storing the token in a table which maps valid tokens to user identifiers, and wherein accessing the resource comprises accessing the table to identify the user.
13. The method of claim 1, further comprising invalidating the private URL after at least one of (a) a single use, and (b) a predetermined period of time.
14. The method of claim 1, wherein generating the token comprises encoding a timestamp within the token.
15. The method of claim 1, wherein generating the token is performed automatically in response to an electronic form submission by the user.
16. A computer system for providing secure Web-based access to private resources over a publicly-accessible network without requiring users to enter authentication information, comprising:
a database which includes a plurality of private records, wherein different private records correspond to different users; and
a server system which communicates with Web clients over the publicly-accessible network to provide restricted user access to the private records, the server system including a server application that (a) generates tokens which correspond to specific private records such that outstanding tokens are distributed substantially randomly over a token space, wherein each of said tokens comprises at least 64 bits, (b) generates private uniform resource locators (URLs) which include the tokens, (c) transmits the private URLs to corresponding users to enable the users to access corresponding private records, and (d) validates tokens received from Web clients in URL requests;
wherein the server system responds to a URL request which includes a valid token by returning information contained in a private record which corresponds to the token, without requiring user entry of authentication information.
17. The computer system of claim 16, wherein the server application distributes the tokens over a token space which is sufficiently large to inhibit the identification of valid tokens by trial-and-error.
18. The computer system of claim 16, wherein the server application generates the tokens using at least one of an encryption algorithm and a pseudo-random number generation algorithm.
19. The computer system of claim 16, wherein the server system conveys the URLs to the users over the publicly-accessible network by email.
20. The computer system of claim 16, further comprising a table which maps tokens to private records, the table stored in memory and accessed by the server application.
21. The computer system of claim 16, wherein the server application encodes email addresses within the tokens, and extracts the email addresses from received tokens to determine whether the tokens are valid.
22. The computer system of claim 16, wherein the server application invalidates a token after at least one of (a) a single use, or (b) a predetermined period of time.
23. The computer system of claim 16, wherein the server system responds to a private URL that includes a valid token by generating and returning a private Web page.
24. The computer system of claim 23, wherein the server system implements an email-based subscription service in which the tokens are used to provide secure access to private Web pages that allow users to modify personal subscription profiles.
25. The computer system of claim 16, wherein the server system implements a gift registry system in which the private URLs provide access to private gift registries.
26. The computer system of claim 16, wherein the server system implements an electronic gift certificate system in which the tokens are used to redeem electronic gift certificates.
27. The computer system of claim 16, wherein the server system implements an electronic greeting card system in which the tokens are used to provide secure access to private greeting card Web pages.
28. The computer system of claim 16, wherein the server system implements an electronic voting system wherein a request for a private URL represents a vote by a user.
29. The computer system of claim 16, wherein the server system implements an electronic coupon system in which the private URLs provide one-time-use discounts to users.
30. In a Web site system of a merchant, a computer-implemented method of providing customized information to a user about products and/or services available from the merchant, comprising:
obtaining an email address and a subscription profile from the user, the subscription profile indicating product and/or service categories selected by the user;
transmitting to the user at least one email document which contains descriptions of products and/or services, the descriptions selected based on the subscription profile;
generating and transmitting to the user a private uniform resource locator (URL) which provides access to a private Web page for at least securely revising the subscription profile, the URL containing a token which is generated using a method which distributes tokens substantially randomly over a token space; and
responding to a client request for the private URL by returning the private Web page without requiring entry of authentication information.
31. The method of claim 30, wherein transmitting the private URL to the user comprises transmitting the URL by email.
32. The method of claim 30, wherein the method is performed without requiring the user to submit or specify any information other than the email address and the selected categories of products and/or services.
33. The method of claim 30, wherein generating the private URL comprises using at least one of an encryption algorithm and a pseudo-random number generation algorithm to generate the token.
34. The method of claim 30, wherein generating the private URL comprises encoding the email address of the user within token, and wherein responding to the client request comprises extracting the email address from the token.
35. The method of claim 30, wherein generating the private URL comprises encoding a time value within the token, and wherein responding to the client request comprises using the time value to determine whether the private URL has expired.
36. The method of claim 30, wherein generating the private URL comprises generating a token value which contains at least 64 bits.
Description
RELATED APPLICATIONS

This application claims the benefit of U.S. provisional appl. No. 60/100,297, filed Sep. 15, 1998.

FIELD OF THE INVENTION

The present invention relates to electronic commerce and user authentication. More particularly, the invention relates to methods for enabling users of a Web site or other information system to efficiently and securely access private Web pages and other types of restricted resources.

BACKGROUND OF THE INVENTION

In the field of Internet commerce, it is common for businesses to provide customers restricted access to data, server functionality, and other types of resources via a Web site. For example, a user of an online merchant's Web site may be given restricted access to a database record which contains the user's account information, or to a Web page which allows the user to place an order with the merchant.

To prevent unauthorized users from accessing restricted resources, the user is typically required to initially specify, and thereafter enter, some type of authentication information. The authentication information may include, for example, a user ID, a password, an email address, or a combination thereof. Requiring the user to enter and keep track of such information, however, can be burdensome to the user. In addition, the level of security provided by such methods depends heavily on the length and predictability of the identifiers selected by the users.

There is therefore a need for an improved method for allowing users of Web sites to securely access private data and other resources.

SUMMARY OF THE INVENTION

The present invention addresses the above and other limitations by providing a system and method in which users access private Web pages, data records and/or other restricted resources using automatically-generated private URLs (Uniform Resource Locators). The private URLs allow authorized users to access the private resources without the need to enter a username, password, or other authentication information, and without the need to download special authentication software or data to the user's computer. The system and method are particularly useful for providing users with secure access to data records and functionality associated with a personal account, but may be used in a wide range of other practical applications.

In accordance the invention, each “private resource” (a resource to which remote access by a particular user or group of users is desired) of a set of private resources is automatically assigned a private URL which includes a fixed character string and a unique token. For example, a private Web page for a particular user may be assigned the private URL

http://www.amazon.com/private_resources/A9HBJ1E55G0ML,

where the character string A9HBJ1E55G0ML is the token. The private URLs are conveyed to the corresponding users by email (preferably within a user-selectable hyperlink) or another communication method, and may be used to access the corresponding resource over the Internet.

To protect against the identification of valid private URLs, such as through trial-and-error, the range of allowable token values (“token space”) is selected to be sufficiently large relative to the expected number of valid tokens so that the probability that a random guess within the token space will produce a valid token is very low (e.g., less than 1 in 1000). For example, if no more than 220 (about one million) tokens are expected to be valid at any given time, and 64-bit tokens are used (providing a token space of 0 to 264−1), the likelihood that a random guess within this range will produce a valid token will be no more than one in 264/2 20=244≅1.78×1013. The token space may, but need not be, continuous. To further protect against the unauthorized identification of valid tokens, the tokens are generated using an algorithm which tends to distribute the issued tokens randomly within the token space. Any of a variety of known algorithms, or combinations of algorithms, may be used for this purpose. The use of such a random distribution reduces the likelihood that an unauthorized user will be able to identify a valid token through modification or observation of other valid tokens.

When the user selects the hyperlink or otherwise requests a private URL, a server application running on the Web site determines whether the token is valid. If the token is found to be valid, the server application permits the user to access the resource. Access to the resource may, for example, involve the generation of a private Web page that is transmitted to the user. The private Web page may include information from one or more private database records, and/or may include a confirmation that a particular transaction associated with the private URL was performed. The server application may be configured to invalidate the tokens (and thus the private URLs) after a single use, or after a predetermined period of time.

One benefit of the above-described URL generation/validation method is that it provides a very simple and efficient mechanism for allowing users to access private resources, such as Web pages which contain personal account information. Another benefit is that the private URLs can be generated and issued to a user (and subsequently validated) even if very little information is known about the user. For example, the method can be used where the only information known about the user is the user's email address, as in the email-based recommendation service described below. Different levels of security can therefore be used for different types of transmissions. Another benefit is that the level of security can be controlled by adjusting the size of the token space, such as by adjusting the number of bits used to represent token values. Another benefit is that the method does not require the user to download any special authentication program, or to consistently use the same computer.

In one embodiment, the method is used to allow users to securely access and update a subscription profile for an automated email-based product recommendation service. Other practical applications for the method include automated order confirmation, electronic gift certificate and coupon redemption, access to gift registries, electronic voting, and access to electronic greeting cards.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features of the invention will now be described with reference to the drawings of certain preferred embodiments of the invention, in which:

FIG. 1 illustrates a Web site system which operates in accordance with a preferred embodiment of the invention;

FIG. 2 illustrates a sequence of transmission events between a user computer and the Web site in the system of FIG. 1;

FIGS. 3A and 3B illustrate a method for generating and validating private URLs in the system of FIG. 1;

FIGS. 4A and 4B illustrate an alternative method for generating and validating private URLs in the system of FIG. 1;

FIGS. 5-7 illustrate a form Web page (FIG. 5), an email document (FIG. 6), and a private Web page (FIG. 7) in an email recommendation service embodiment of the invention.

FIGS 8-10 illustrate a form Web page (FIG. 8), an email document (FIG. 9), and a private Web page (FIG. 10) in an electronic gift certificate embodiment of the invention.

Throughout the drawings, reference numbers are re-used to indicate a general correspondence between referenced items.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

I. Overview

The present invention provides an automated method for enabling remote users of a Web site or other information system to securely access private Web pages or other resources without having to enter a password or other authentication information. The method is preferably implemented in a multi-user system in which different users have access to different private resources. (The term “private” is used herein to indicate a correspondence to a particular user or subset of users of a larger community of users.) The invention also provides several practical applications for the method, the details of which are described below under the heading “Example Applications.”

Briefly, the method involves generating a unique, private URL (Uniform Resource Locator) that corresponds to a private resource, and conveying the URL (preferably by email) to the corresponding user or group of users that are to have remote access to the resource. Application code running on the server is used to validate the URLs and to thereby restrict access to the private resources. Each resource may, for example, be in the form of a private Web page which includes data from one or more private data records of a database or files of a file system. The resources may additionally or alternatively comprise server application functionality that allows users to perform particular types of transactions.

The method is particularly useful for enabling users of a merchant's Web site to access account-specific information and functions. For example, the method can be used to enable customers, suppliers, and/or business partners of a merchant to access information about business transactions with the merchant. This information may include payment and shipping information, information about prior and pending orders, subscription information, and other types of private information. The method may also be used to enable a user to securely perform a particular type of transaction, such as confirm an order, redeem an electronic gift certificate or coupon, or cast a vote.

In accordance with the invention, each private resource is assigned a private URL that includes a combination of a fixed character string and a unique token. The tokens may, for example, be in the form of fixed-length numeric or alphanumeric codes, although non-alphanumeric characters could be used. For example, a given private URL may be in the following form, where the string A9HBJ1E55G0ML is the token:

http://www.amazon.com/private_resources/A9HBJ1E55G0ML.

In this example, the string “amazon.com” identifies the amazon.com Web site, and the string “private_resources” identifies an application or area of the site that provides restricted access to a collection of private resources, such as a database of account records. The token identifies a particular private resource, such as by identifying a particular user, user group, file or database record.

Each private URL is preferably conveyed to the corresponding user (or group of users) within an email document—either as a simple character string or as part of a hyperlink. The use of email to convey the private URLs reduces the likelihood that unauthorized users will obtain access to the private URLs.

When a user attempts to access a resource which is referenced by a URL of the appropriate format (e.g., the format shown above), a token validation program is invoked to validate the token (and thus the URL). There is no need for the user to enter a username, password, or other authentication information during this process. If the token is found to be valid, the user is permitted to access the private resource; otherwise, access to the resource is denied. Access to the resource may, for example, involve the generation of a private Web page that is transmitted to the user. The private Web page may include information from a private database record, and/or may include a confirmation that a particular transaction associated with the URL was performed.

Where a hyperlink is used within the email, the user can access the private resource by simply selecting the hyperlink from within an email application that interacts with a browser program. The user can thus access the resource without having to remember or reenter the private URL. Where a simple character string is used, the user can cut-and-paste or otherwise reenter the URL string into the Web browser's address field. In either case, the user can save the URL in the browser's list of “favorite places” for future access.

Although email is preferred, other methods may be used to communicate the private URLs to users. For example, a private URL could be communicated as a hyperlink within an ordinary Web page, such as when a user initially sets up an account. Further, the URLs could be communicated by telephone, facsimile, or using another type of Internet document transmission protocol. Further, the token and non-token portions of the URLs could be transmitted to the user separately, such as by transmitting the token by email and the fixed URL portion by a publicly-accessible Web page.

To protect against the identification of valid private URLs, such as through trial-and-error, the range of allowable token values (“token space”) is selected to be sufficiently large relative to the expected number of valid tokens so that the probability that a random guess within the token space will produce a valid token is very low. For example, if no more than 220 (about one million) tokens are expected to be valid at any given time, and 64-bit tokens are used (providing a token space of 0 to 264−1), the likelihood that a random guess within the token space will produce a valid token will be no more than one in 264/220=244≅1.78×1013. The token space may, but need not be, continuous.

To further protect against the unauthorized identification of valid tokens, the tokens are generated using an algorithm which tends to distribute the issued tokens randomly within the token space. Any of a variety of known algorithms, or combinations of algorithms, may be used for this purpose. In one embodiment, for example, which is described with reference to FIGS. 3A and 3B, each token is generated by encrypting a data value that includes a time stamp and an identifier of a user. In another embodiment, which is described below with reference to FIGS. 4A and 4B, the tokens are generated using a pseudo-random number generation algorithm, and are stored in a look-up table which maps outstanding (valid) tokens to user identifiers. Other techniques for generating the tokens include using a secure table a pseudo-random sequence of values, and using a challenge-response type program or hardware device.

Because the tokens are distributed substantially randomly throughout a large token space, the set of valid tokens at any given time will generally represent a sparse subset of the token space. Such sparse distribution impairs the ability of a user to identify a valid token by modifying other valid tokens.

To further enhance security, the executable program used to validate tokens can be configured to prevent large numbers of tokens from being tested (such as by using a specially-written trial-and-error client program) in a short period of time. This may be accomplished, for example, by including a delay routine within the validation program to introduce a delay (e.g., one second) into the validation process, and/or by configuring the validation program to process no more than a pre-selected number (e.g., 2) of token validation requests at a time.

In one embodiment, the issued tokens (and thus the private URLs) automatically expire following a predetermined time period, such as 3 days. This may be accomplished, for example, by encoding time information (such as a creation or expiration time/date) into the tokens, or by storing such time information in a look-up table. The tokens may additionally be caused to expire after a pre-specified number of uses. For example, if the information is sufficiently sensitive, the URL may be set to expire after a single access to the private Web page. Upon the expiration of a user's private URL, a new URL may be generated automatically and conveyed to the user (such as by email). Alternatively, the URLs may be generated and conveyed to the user when the user performs a particular type of action on the Web site, such as submitting a form. Providing URLs which automatically expire further enhances security by (a) limiting the utility of a valid URL that is discovered by improper means, and (b) in implementations in which replacement URLs are not immediately generated upon expiration, reducing the number of valid tokens.

One benefit of the above-described URL generation/validation method is that it provides a very simple and efficient mechanism for allowing users to access private resources, such as personal account information. Another benefit is that the private URLs can be generated and issued to a user (and subsequently validated) even if very little information is known about the user. For example, the method can be used where the only information known about the user is the user's email address, as in the email-based recommendation service described below. Another benefit is that the level of security can be controlled by adjusting the size of the token space, such as by adjusting the number of bits used to represent token values. Another benefit is that the method does not require the user to download any special authentication program, or to consistently use the same computer.

II. General Architecture and Operation (FIGS. 1 and 2)

FIG. 1 illustrates a Web site 30 which is accessible to remote user computers 32 via the Internet, and illustrates a basic set of Web site components that may be used to implement a preferred embodiment of the invention. In the example shown, the private resources include private data records 46 that are accessed using private Web pages. For purposes of illustration, it may be assumed that each data record 46 corresponds to respective user, and is accessible via a respective private Web page which has a private URL assigned thereto. In the illustrated embodiment, the private URLs are conveyed to the users by email within hyperlinks. (The term “hyperlink” is used herein to refer collectively to a URL and to the corresponding document element which is selectable by a user to access a resource associated with the URL.)

As depicted by FIG. 1, the Web site 30 includes a Web server 36 which provides access to a store 38 of HTML (Hypertext Markup Language) content. The Web server may, for example, include a commercially available Web server program which runs on one or more general-purpose Unix or Windows NT based computers. The HTML store 38 stores various Web page components, including HTML that are used to dynamically generate private Web pages.

The Web server 36 communicates with an application program 40 (“server application”) which provides restricted access to a back-end database 42. As described below, the server application may, for example, implement a particular user service, such as an email notification service, an order processing service, or an electronic gift certificate or coupon service. The server application 40 may, for example, run on the computer or set of computers used to implement the Web server 36.

The back-end database 42 includes private data records 46, wherein different records are private to different users (or possibly groups of users). The data contained in the data records 46 is dependent upon the type of service provided by the server application 40. Each data record may, for example, include account information for a respective user of the Web site, and/or may include data that is dynamically updated by other processes of the Web site. The data records 46 are retrievable from the database 42 using email addresses or other identifiers of corresponding users. The private data records 46 are accessible to users via private Web pages generated by the Web server 36.

As further depicted in FIG. 1, the server application 40 includes token generation code 50 that is used to generate and issue tokens. Typically, each issued token will correspond to a particular private data record 46 within the back-end database 42. A token could alternatively correspond to a set of private data records, such as all of the records that correspond to a given user. Further, the tokens could corresponds to particular application functions that can be performed with respect to the data records.

The server application 40 also includes token validation code 52 that is used to determine whether tokens contained in properly-formatted URL requests are valid. The server application also includes URL/email generation code 54 which is responsible for generating URLs which contain issued tokens, and conveying such URLs to users by email as hyperlinks.

As further depicted in FIG. 1, the token generation and validation code 50, 52 may use a table 60 to keep track of issued tokens. In the example shown, each entry in the table 60 includes a token, an ID, and a time stamp. The ID may, for example, be a user ID (such as an email address) or a pointer to a particular private data record 46 or other resource. The time stamp preferably includes information which may be used to determine whether the token has expired, such as a creation date, an expiration date, or a duration of time since the last user access to a corresponding private data record. Where time stamps are used, a software routine may be provided to automatically delete table entries that contain expired tokens. The table entries may optionally be encrypted to protect against unauthorized access to the table.

FIG. 2 illustrates an example sequence of transmission events A-C which may occur between a user computer 32 and the Web site 30 during use of the FIG. 1 system. It is assumed that the database 42 contains the email address of the user 70, and contains a private record 46 for which access by the user is desired. The email address and the data contained in the private record may be obtained by the Web site, for example, when the user submits an electronic form to set up an account. The user computer 32, which may be a PC or other general-purpose computer, has installed thereon a Web browser 66 which is in integrated with or otherwise interacts with an email application 68.

As depicted by event A, the server application 40 generates and transmits to the user 70 an email document 72 which includes a hyperlink 74 to a private URL. The email document 72 may also include a description of the function(s) performed by the hyperlink 74. To generate the hyperlink 74, the server application 40 initially invokes its token generation code 50 (FIG. 1) to generate a token that uniquely corresponds to the user's private data record 46. This token is then combined with a fixed character string to form the URL, and the URL is incorporated into the email document 72 within the HREF (hypertext reference) portion of the hyperlink 74. As is conventional, the URL itself may be hidden from the user during normal display of the document, and may be represented within the document as underlined text or a button. Alternatively, the URL may be made viewable so that the user can easily copy the URL for future use. As indicated above, the private URL could alternatively be communicated to the user using an ordinary Web page or another transmission method.

As depicted by event B, when the user requests the private URL (such as by selecting of the hyperlink 74 from within the email application 68), the browser 66 submits a GET URL message 76 to the Web site 30. In response to the GET URL message 76, the Web server 36 passes the token to the server application 40, and the server application invokes its token validation code 52 to determine whether the token is valid. If the token is found to be invalid or expired, an appropriate error message may be returned to the Web server 36 for transmission to the user computer 32.

If the token is valid, the server application 40 maps the token to the corresponding data record 46, and returns data contained therein to the Web server 36. The server application 40 may additionally or alternatively perform other types of actions associated with the URL. For example, the server application 40 may automatically issue a new private URL (with a new token) which supersedes the existing private URL, or may update a database to reflect that the private URL was accessed. For example, in a gift certificates embodiment described below, the server application additionally responds to the private URL request by crediting the user's account with a gift certificate amount.

As depicted by event C, if the token (and thus the URL) is found to be valid, the Web server 36 generates and returns a private Web page 78 which contains data from the private record 46. The private Web page may, for example, include a form for allowing the user to update the information. The private Web page may additionally or alternatively include a message confining that a particular action associated with the private URL was performed. For example, the private Web page 78 could confirm that an electronic gift certificate amount was credited to the user's account (as in FIG. 10, described below).

In other embodiments, the email document 72 could include multiple private URLs/hyperlinks 74 for allowing the user to perform different types of actions. For example, in the context of an order processing system, the email document 72 could have one URL for allowing the user to confirm the order, and another URL for allowing the user to cancel the order. Each of these URLs could include the same token but a different fixed text string, or could include identical text strings and different tokens.

III. Token/URL Generation and Validation (FIGS. 3 and 4)

FIGS. 3A and 3B illustrate a token generation/validation method that is implemented by the server application 40 (FIG. 1) in accordance with one embodiment of the invention. In this embodiment, the information needed to validate tokens, and to map the tokens to private data records 46 or other private resources, is encoded within the tokens. One benefit of this method is that it does not require the use of a table or other data structure to keep track of issued tokens.

Briefly, the token generation process of FIG. 3A is invoked each time a private URL is created, and involves encoding the user's email address and a time stamp into the token and embedding this token within a URL. The corresponding token/URL validation process of FIG. 3B is invoked when a user attempts to access a URL of the predefined format needed to access the private records 46, and involves using the email address and time stamp encoded within the token to determine whether the token is valid. If the token is valid, the server application 40 validation process allows the user to access the private record 46 corresponding to the email address.

To generate a token (FIG. 3A), the user's email address is initially converted into a unique, 36-bit email ID (step 130). Any algorithm which reversibly converts alphanumeric strings into fixed-length binary values can be used for this purpose. In step 132, the email ID and a time stamp which represents the current date and time are combined into a 64-bit integer value. The time stamp may, for example, be a Unix-based time stamp (or a rounded-off version thereof) which represents the number of seconds since 1970. Inclusion of the time stamp provides a mechanism for later determining whether the token has expired. The time stamp may alternatively be in the form of an expiration date/time.

In step 134, the 64-bit value is encrypted to generate a 64-bit token value. An encryption method which tends to randomly and uniformly distribute the tokens over the 64-bit space of possible token values is preferably used for this purpose. Well-known types of encryption algorithms such as DES and Blowfish are suitable for this purpose. In step 136, the 64-bit token value is compacted by converting the 64-bit value into a 13-digit base 36 value. This 13-digit value is used as the token. The token is sufficiently short in length to allow users to easily type-in the token manually (if desired). In step 138, the token is combined with a predefined character string to form the private URL, which is in-turn incorporated into an email document 72 (preferably within a hyperlink 74) that is transmitted to the user. The predefined character string includes one or more fields that are recognized by the Web server 36 as corresponding to the server application 40.

To validate a URL having the proper format for accessing the private records, the Web server 36 passes the token to server application 40. As depicted by FIG. 3B, the server application initially converts the token to binary form (step 142) and then decrypts the binary token value (step 144). The time stamp and the email ID are then extracted from the resulting value (step 146). In step 148, the Web site's email address database (not shown) is accessed to determine whether the email ID is valid (corresponds to an email address of a known user). If the email ID is invalid, an error message is returned to the Web server 36 (step 150), and ultimately to the user's Web browser 66.

In step 152, the server application 40 determines whether the time stamp is valid, expired, or invalid. In one implementation, the time stamp is treated as valid if it is 0 to N days old (where N is a preselected integer between 0 and 365), expired if N days to one year old, and invalid if less than 0 days or greater than one year old. The value of N can be selected according to the specifics of the particular application and the desired level of security. If the time stamp is either expired or invalid, an appropriate message is returned (steps 154 and 156). A determination that the time stamp has expired may also trigger the generation and transmission of a replacement URL via the FIG. 3A process.

If the email ID and the time stamp are valid, the email ID is used to retrieve the private record 46 to be accessed (step 158). The private record 46 may, for example, be a record of the user's account data. This record, or a portion of the record, may be returned to the user's browser 66 within a private Web page. As described above, the server application 40 may additionally or alternatively update a database or perform some other type of action in this event.

As indicated above, the FIG. 3B process may also include an appropriate delay routine (not shown), and/or be configured to limit the number of URL validations that can be performed concurrently, to thereby limit the number of tokens that can be tested in a given amount of time.

In the above implementation, many different token values (only one of which was conveyed to the user) can map to the same private record 46, since only the email ID and not the time stamp uniquely corresponds to the private record 46. As a result, a token can be valid even though it was never issued to a user. To reduce the number of valid tokens, the token generation process (FIG. 3A) could be modified, for example, to record the time stamps within a table, and the validation process (FIG. 3B) modified to require that the extracted time stamps match time stamps within this table. Any of a variety of other methods could be used to achieve a similar result.

FIGS. 4A and 4B illustrate an alternative, table-based token generation/validation method which may be implemented by the server application 40. In this embodiment, no information is encoded within the tokens. Initially, an appropriate algorithm, such as a pseudo-random number generation algorithm, is used to generate a random 64-bit token value (step 230). The token is then compacted into a 13-bit base 36 token (step 232), and the token, the user's email address, and the time stamp are recorded as an entry in the table 60 (step 234). If the token is a replacement for a previously-issued token, the superseded table entry is deleted (not shown). The token is then incorporated into a URL, and the URL is sent (preferably within a hyperlink) to the user's email address. The server application 40 may include executable code (not shown) which deletes aged entries from the table 60, such as those having tokens that are over one year old.

As depicted by FIG. 4B, to validate a token received in an appropriately-formatted URL, the table 60 is initially accessed (step 244) to determine whether the token exists in the table. If no entry is found in the table 60, an appropriate error message is returned (step 248). Otherwise, the corresponding email address and time stamp are read from the table, and are processed as described above for steps 152-158 of FIG. 3B.

The above-described token generation and validation methods can also be used to control access to other types of private resources. In addition, in applications in which another user of a group of users is to have access to the private record, the email address(es) such other user(s) may be encoded within the tokens or stored in the table 60.

IV. Example Applications (FIGS. 5-10)

Several practical applications for the above-described system and methods will now be described. Two of these applications are illustrated through example screen displays.

FIGS. 5-7 illustrate, in example form, a particular application in which the server application 40 (FIG. 1) implements an automated email-based recommendation and notification service of the Amazon.com Web site. As depicted by the Web page of FIG. 5, the user subscribes to the service by completing and submitting an online form. The form prompts the user to enter the user's Internet email address, and to select one or more categories of books, music, gifts and videos (by selecting appropriate check boxes) for which to receive information about Amazon.com's product offerings. In the preferred embodiment, the user can, but need not, have a preexisting account with the Amazon.com Web site. Users can subscribe to the service without submitting or otherwise disclosing any additional information.

FIG. 6 illustrates the general form of an example email document 72 transmitted to the user by the service. The email document includes descriptive content 270 about selected products that fall within one or more of the categories selected by the user. This information may include, for example, information about new releases, editorial information, and/or information about specials offered by the merchant. Where the user is an existing customer, the recommendations and other content may be based in-part on information known about the user, such as the user's purchase history.

The email document 72 also includes a hyperlink 74 to a private Web page 78 (FIG. 7) that can be used to modify the subscription profile or cancel the service. The URL referenced by the hyperlink 74 is generated and validated as described above. The user can thus subscribe to the service, and thereafter securely modify the subscription profile, without the need for a password, username, or other authentication information, and without the need to disclose any personal information other than an email address and subscription profile. With reference to FIG. 7, the URLs (not shown) associated with the “Submit Changes” and “Unsubscribe” buttons may include the token, a session ID, or some other identifier that can be used to track the user.

Another application, which is illustrated in example form by FIGS. 8-10, involves providing a secure method for redeeming electronic gift certificates. In this application, the server application 40 (FIG. 1) implements an electronic gift certificate system which allows users of a merchant's Web site 30 to purchase electronic gift certificates for other users. To purchase a gift certificate, a purchaser initially fills out and submits a form page (FIG. 8) which requests, among other things, the recipient's email address and a gift certificate amount. Other form pages (not shown) are thereafter completed and submitted to pay for the gift certificate. The server application 40 responds to the gift certificate purchase by sending the recipient an email document 72 of the form shown in FIG. 9, and by recording associated information (including the token and the gift certificate amount) in the database 42 (FIG. 1).

The email document 72 includes a hyperlink 74 for automating the process of redeeming the gift certificate. The token which is included within the hyperlink 74 acts as a gift certificate redemption code which directly or indirectly specifies the recipient and the gift certificate amount. It is assumed in the illustrated example that the recipient already has an account with the merchant. In the embodiment shown, selection of the hyperlink 74 causes the server application 40 to automatically credit the gift certificate amount to the recipient's personal account with the merchant. The user may alternatively be presented with one or more options for redeeming the gift certificate. As indicated by the description 280 (FIG. 9) at the bottom of the email document, the user may alternatively redeem the gift certificate by manually entering the 13-digit token into an order form during checkout.

As shown in FIG. 10, selection of the hyperlink 74 also causes the Web site to return a private gift certificate redemption page 78. The private redemption page 78 includes a message 284 confirming that the gift certificate amount was credited to the recipient's account. From this Web page 78, the user can initiate a search of the merchant's offerings. Additional details of the illustrated gift certificate system are described in U.S. Pat. application No. 09/153,632, filed Sep. 15, 1998, the disclosure of which is hereby incorporated by reference.

Another practical application (not separately illustrated) involves sending the user 70 (FIG. 2) an email document 72 or a Web page which includes a one-time-use URL (preferably as a hyperlink 74) to a private discount page 78. The discount page 78 may, for example, give the user a 10% discount off the user's next purchase. Other users of the system would be sent like emails but which contain different tokens. In this application, the server application 40 would use the tokens to prevent users from obtaining multiple discounts. This may be accomplished, for example, by deleting each issued token from a table once the token has been used.

Another application (not separately illustrated) involves providing restricted access to account information in the context of orders for goods. In one embodiment, for example, when a user 70 (FIG. 2) places an order on a merchant's Web site 30, the private URL/hyperlink 74 is transmitted to the user via an order confirmation email 72, and provides access to a private Web page 78 that includes order status information or other account-related information. The private Web page 78 may include links or a form for allowing the user to modify the order.

In another practical application (not separately illustrated), the user 70 is a supplier of goods that are sold via the Web site 30 of a retailer, and the server application 40 is used to place orders with the supplier. To place an order, the server application 40 generates and transmits to the supplier an email document 72 which preferably includes the following: (a) a description of the goods being ordered, (b) a hyperlink 74 to a private URL (generated as described above), and (c) a message instructing the recipient to select the hyperlink to confirm the order. The email document 72 may be generated automatically, such as when inventory falls below a certain threshold, or may be generated in response to an action performed by a user. When the user 70 selects the hyperlink 74, the server application 40 updates a database to indicate that the order was confirmed, and the Web server 36 returns a private Web page 78 which includes information (e.g., order history, balance due) about the supplier's account with the retailer.

Another application (not separately illustrated) involves providing a group of users secure access to a gift registry. In this application, a user that sets up the gift registry specifies the email addresses of the desired group members. The server application 40 then generates a private URL to a private page 78 which includes updated status information with respect to the gift registry, and transmits the private URL by email to each group member 70. Yet another application (not separately illustrated) involves implementing an online voting scheme for allowing Internet users to securely cast votes. In this application, the server application 40 generates and transmits email documents 72 to all users that are registered to vote. Each private URL within such an email document 72 represents a particular vote by a particular user. For example, in an election for a single, yes/no proposition, each email document might include a first hyperlink 74 which can be selected to cast a “yes” vote, and a second hyperlink 74 which can be selected to cast a “no” vote. The URLs associated with these two hyperlinks could differ either in their token or non-token portions (or both). Thus, during the token/URL generation phase, the server application 40 would generate a unique private URL for every possible vote for every possible user. During the token validation phase, the server application 40 would ensure that the vote being cast is not redundant of or inconsistent with any prior votes.

Another application (not separately illustrated) involves providing security in an electronic greeting card system, such as the Web-based system of Blue Mountain Arts. In this type of system, the private URLs reference electronic greeting card Web pages 78 that are customized by other users. For example, by accessing a greeting card creation area of the Web site, a user can select and customize a private Web page/greeting card and have the URL of this card sent by email to a designated recipient 70. Use of the URL generation/validation methods of the invention in this environment would provide increased privacy of the greeting cards.

Although this invention has been described in terms of certain preferred embodiments and applications, other embodiments and applications that are apparent to those of ordinary skill in the art, including embodiments which do not provide all of the features and advantages set forth herein, are also within the scope of this invention. For instance, although the invention has been described in the context of access to Web pages and other Internet resources, the underlying methods can also be used to provide secure access to other types of addressable resources, including resources accessed through proprietary protocols. Accordingly, the scope of the present invention is intended to be defined only by reference to the appended claims.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US5708780Jun 7, 1995Jan 13, 1998Open Market, Inc.Internet server access control and monitoring systems
US5790793Apr 4, 1995Aug 4, 1998Higley; ThomasMethod and system to create, transmit, receive and process information, including an address to further information
US5812769Sep 20, 1995Sep 22, 1998Infonautics CorporationMethod and apparatus for redirecting a user to a new location on the world wide web using relative universal resource locators
US6038597 *Jan 20, 1998Mar 14, 2000Dell U.S.A., L.P.Method and apparatus for providing and accessing data at an internet site
US6192407Apr 4, 1997Feb 20, 2001Tumbleweed Communications Corp.Private, trackable URLs for directed document delivery
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US6564257 *Dec 9, 1999May 13, 2003International Business Machines CorporationRepository protection by URL expiration
US6609106 *May 7, 1999Aug 19, 2003Steven C. RobertsonSystem and method for providing electronic multi-merchant gift registry services over a distributed network
US6629100 *Apr 12, 2002Sep 30, 2003Ipac Acquisition Subsidiary I, LlcNetwork-based photosharing architecture for search and delivery of private images and metadata
US6665587 *Nov 29, 2000Dec 16, 2003Xerox CorporationProduct template for a personalized printed product incorporating workflow sequence information
US6691113 *Sep 28, 2000Feb 10, 2004Curl CorporationPersistent data storage for client computer software programs
US6704906 *Mar 27, 1999Mar 9, 2004Movaris, Inc.Self-directed routable electronic form system and method
US6718328 *Feb 28, 2000Apr 6, 2004Akamai Technologies, Inc.System and method for providing controlled and secured access to network resources
US6754904Dec 30, 1999Jun 22, 2004America Online, Inc.Informing network users of television programming viewed by other network users
US6769015 *Aug 7, 2000Jul 27, 2004International Business Machines CorporationAdopting browser environmental attributes of e-mail sender
US6781607 *Jan 27, 2000Aug 24, 2004International Business Machines CorporationMethod and system for dynamically determining the appropriate information and/or user interface for presentation to differing users
US6827260Apr 3, 2002Dec 7, 2004First Data CorporationSystems and methods for utilizing a point-of-sale system
US6886742Apr 3, 2002May 3, 2005First Data CorporationSystems and methods for deploying a point-of sale device
US6892206 *Aug 24, 2001May 10, 2005Yahoo! Inc.Reduction of meta data in a network
US6922673Jun 28, 2002Jul 26, 2005Fist Data CorporationSystems and methods for ordering and distributing incentive messages
US6931428 *Apr 12, 2001Aug 16, 2005International Business Machines CorporationMethod and apparatus for handling requests for content in a network data processing system
US6934856 *Mar 28, 2000Aug 23, 2005Anthony Italo ProvitolaSystem of secret internet web sites for securing user access
US6961764 *Nov 6, 2001Nov 1, 2005Fujitsu LimitedDescription distributed computer system and method of applying maintenance thereto
US6961903 *Apr 5, 1999Nov 1, 2005Sony CorporationApparatus and method for reproducing character information recorded on a recording medium
US6971017Apr 16, 2002Nov 29, 2005Xerox CorporationAd hoc secure access to documents and services
US6980989 *Nov 13, 2001Dec 27, 2005Attachmate CorporationSystem and method for transaction access control
US6990434Oct 28, 2003Jan 24, 2006General Electric CompanySystem and method for coordinated remote activation of multiple software-based options
US6999941 *Oct 27, 2000Feb 14, 2006Amazon.Com, Inc.Providing gift clustering functionality to assist a user in ordering multiple items for a recipient
US7000179Feb 22, 2002Feb 14, 2006Movaris, Inc.Method and apparatus for programmatic learned routing in an electronic form system
US7003479Feb 19, 2003Feb 21, 2006First Data CorporationSystems and methods for ordering and distributing incentive messages
US7003493Jan 22, 2003Feb 21, 2006First Data CorporationDirect payment with token
US7007085Mar 29, 2002Feb 28, 2006Bellsouth Intellectual Property CorporationMessage log for wireline, voice mail, email, fax, pager, instant messages and chat
US7028090 *May 30, 2002Apr 11, 2006International Business Machines CorporationTokens utilized in a server system that have different access permissions at different access times and method of use
US7039601Oct 22, 2002May 2, 2006Dannielle GaryMethod and system for monetary gift registry
US7051370 *Dec 13, 2000May 23, 2006Oki Electric Industry Co., Ltd.Content-certified e-mail service system
US7055091 *Jan 20, 1999May 30, 2006Avaya Inc.System and method for establishing relationships between hypertext reference and electronic mail program incorporating the same
US7065555 *Apr 25, 2001Jun 20, 2006Ic Planet CorporationSystem and method related to generating and tracking an email campaign
US7066387 *Sep 28, 2001Jun 27, 2006Kabushiki Kaisha SegaService ticket issuing system and service ticket issuing service
US7086584Apr 3, 2002Aug 8, 2006First Data CorporationSystems and methods for configuring a point-of-sale system
US7093032Oct 28, 2003Aug 15, 2006General Electric CompanySystem and method for multi-vendor authentication to remotely activate a software-based option
US7103835Mar 12, 2002Sep 5, 2006Movaris, Inc.Process builder for a routable electronic document system and method for using the same
US7113894Jul 22, 2005Sep 26, 2006General Electric CompanySystem and method for coordinated remote activation of multiple software-based options
US7117167Mar 22, 2001Oct 3, 2006Amazon.Com, Inc.Systems, methods, and computer-readable media for controlling delivery of digital products to users
US7120694 *Oct 22, 1999Oct 10, 2006Verizon Laboratories Inc.Service level agreements and management thereof
US7127511 *Jun 14, 2001Oct 24, 2006Nec CorporationSystem for and a method of providing an online time period reserving service, which can protect an excessive load from being applied to a communication system, in order to provide a stable communication to a user
US7139370 *Aug 31, 2000Nov 21, 2006Nortel Networks LimitedUsing hyperlinks to establish call sessions
US7139803Sep 6, 2002Nov 21, 2006Digital Impact, Inc.Method and system for remotely sensing the file formats processed by an e-mail client
US7167904 *Mar 16, 2000Jan 23, 2007Network Solutions, LlcUnified web-based interface-to multiple registrar systems
US7185053 *Jun 7, 2000Feb 27, 2007Canon Kabushiki KaishaData communication apparatus and method for transmitting data based upon a received instruction
US7240365 *Sep 13, 2002Jul 3, 2007Sun Microsystems, Inc.Repositing for digital content access control
US7243127 *Oct 9, 2001Jul 10, 2007Swiftview, Inc.Network-based document delivery system with receipt and display verification
US7272633Sep 20, 2002Sep 18, 2007At&T Bls Intellectual Property, Inc.Methods and systems for a communications and information resource manager
US7299492Jun 12, 2003Nov 20, 2007International Business Machines CorporationMulti-level multi-user web services security system and method
US7305478 *Jul 19, 2001Dec 4, 2007Symbol Technologies, Inc.Bar code symbol ticketing for authorizing access in a wireless local area communications network
US7308498Feb 13, 2003Dec 11, 2007Microsoft CorporationSystem and method for automating a request for access to a restricted computer accessible resource
US7310729 *Mar 12, 2003Dec 18, 2007Limelight Networks, Inc.Digital rights management license delivery system and method
US7313617Sep 28, 2001Dec 25, 2007Dale MalikMethods and systems for a communications and information resource manager
US7340525 *Jan 24, 2003Mar 4, 2008Oracle International CorporationMethod and apparatus for single sign-on in a wireless environment
US7346649 *May 29, 2001Mar 18, 2008Wong Alexander YMethod and apparatus for network content distribution using a personal server approach
US7350698 *Mar 15, 2002Apr 1, 2008Sun Microsystems, Inc.Line item approval processing in an electronic purchasing system and method
US7353532 *Aug 30, 2002Apr 1, 2008International Business Machines CorporationSecure system and method for enforcement of privacy policy and protection of confidentiality
US7363651Sep 13, 2002Apr 22, 2008Sun Microsystems, Inc.System for digital content access control
US7380280Oct 15, 2003May 27, 2008Sun Microsystems, Inc.Rights locker for digital content access control
US7386594Jun 14, 2006Jun 10, 2008Archeron Limited LlcSystem and method related to generating an email campaign
US7398557Oct 15, 2003Jul 8, 2008Sun Microsystems, Inc.Accessing in a rights locker system for digital content access control
US7401155Jan 16, 2004Jul 15, 2008Archeron Limited LlcMethod and system for downloading network data at a controlled data transfer rate
US7406501 *Jun 30, 2003Jul 29, 2008Yahoo! Inc.System and method for instant messaging using an e-mail protocol
US7421516Dec 16, 2005Sep 2, 2008General Electric CompanySystem and method for multi-vendor authentication to remotely activate a software-based option
US7428504 *Dec 17, 2004Sep 23, 2008Visure CorporationMethod and system for organizing and disseminating information on products featured in entertainment productions
US7441027Sep 28, 2005Oct 21, 2008At&T Intellectual Property I, L.P.Methods, systems, and products for creating message logs
US7469405Apr 25, 2001Dec 23, 2008Kforce Inc.System and method for scheduling execution of cross-platform computer processes
US7472187Nov 24, 2004Dec 30, 2008At&T Intellectual Property I, L.P.Communications and information resource manager
US7478434 *May 31, 2000Jan 13, 2009International Business Machines CorporationAuthentication and authorization protocol for secure web-based access to a protected resource
US7480722 *Mar 12, 2002Jan 20, 2009Sony CorporationInformation processing apparatus and method, recording medium product, and program
US7499982 *Mar 29, 2001Mar 3, 2009Sony CorporationInformation processing device, server connection method, program storage medium, and network system
US7502795Jun 7, 2004Mar 10, 2009Fotomedia Technologies, LlcNetwork-based photosharing architecture
US7505927 *Jul 14, 2003Mar 17, 2009Price Edward RExtended manufacturing environment
US7506809Aug 2, 2006Mar 24, 2009First Data CorporationSystems and methods for configuring a point-of-sale system
US7512552 *Sep 12, 2006Mar 31, 2009The Western Union CompanyElectronic gift linking
US7512799 *Mar 3, 2000Mar 31, 2009Getthere Inc.System and method for accessing a remote server from an intranet with a single sign-on
US7512972Sep 13, 2002Mar 31, 2009Sun Microsystems, Inc.Synchronizing for digital content access control
US7540410Jul 28, 2006Jun 2, 2009First Data CorporationPoint of sale payment terminal
US7548956Dec 30, 2003Jun 16, 2009Aol LlcSpam control based on sender account characteristics
US7552476Jun 25, 2004Jun 23, 2009Canon Kabushiki KaishaSecurity against replay attacks of messages
US7593892Oct 4, 2005Sep 22, 2009Standard Chartered (Ct) PlcFinancial institution portal system and method
US7599856Nov 19, 2002Oct 6, 2009Amazon Technologies, Inc.Detection of fraudulent attempts to initiate transactions using modified display objects
US7600673Apr 3, 2002Oct 13, 2009First Data CorporationSystems and methods for performing transactions at a point-of-sale
US7623844Mar 4, 2004Nov 24, 2009Gamelogic, Inc.User authentication system and method
US7624110Dec 11, 2003Nov 24, 2009Symantec CorporationMethod, system, and computer program product for security within a global computer network
US7640168 *Mar 5, 2004Dec 29, 2009Bartlit Jr Fred HMethod and computer program product for enabling customers to adjust the level of service provided by service providers
US7644124 *Feb 15, 2000Jan 5, 2010Porter Swain WPrivacy enhanced methods and apparatuses for conducting electronic communications
US7673135 *Dec 8, 2005Mar 2, 2010Microsoft CorporationRequest authentication token
US7673329 *Feb 22, 2001Mar 2, 2010Symantec CorporationMethod and apparatus for encrypted communications to a secure server
US7689462Jun 6, 2002Mar 30, 2010Ebay Inc.Computer system and method for providing an on-line mall
US7693950Jun 9, 2008Apr 6, 2010Foulger Michael GSystem and method related to generating and tracking an email campaign
US7702802 *Oct 14, 2005Apr 20, 2010Microsoft CorporationSharing framework for resource sharing
US7707110May 4, 2004Apr 27, 2010First Data CorporationSystem and method for conducting transactions with different forms of payment
US7711748 *Feb 2, 2006May 4, 2010Bright Walter GMethod and apparatus for simplified access to online services
US7711790Sep 20, 2000May 4, 2010Foundry Networks, Inc.Securing an accessible computer system
US7716352 *Apr 23, 2004May 11, 2010The Board Of Trustees Of The University Of IllinoisMethod and system for retrieving information using an authentication web page
US7730008Jul 13, 2005Jun 1, 2010Foulger Michael GDatabase interface and database analysis system
US7730137Dec 22, 2003Jun 1, 2010Aol Inc.Restricting the volume of outbound electronic messages originated by a single entity
US7734621May 19, 2005Jun 8, 2010Coupons.Com IncorporatedSearching a database including prioritizing results based on historical data
US7739337Jun 20, 2005Jun 15, 2010Symantec CorporationMethod and apparatus for grouping spam email messages
US7743144Nov 3, 2003Jun 22, 2010Foundry Networks, Inc.Securing an access provider
US7778903Aug 5, 2005Aug 17, 2010First Data CorporationDirect payment with token
US7783621Feb 17, 2006Aug 24, 2010Cooper Jeremy SSystem and method for proximity searching position information using a proximity parameter
US7788329Jan 12, 2006Aug 31, 2010Aol Inc.Throttling electronic communications from one or more senders
US7805336Sep 12, 2006Sep 28, 2010Amazon.Com, Inc.Anonymous delivery of digital products over a network via a link
US7813982Jun 18, 2007Oct 12, 2010First Data CorporationUnit-based prepaid presentation instrument accounts and methods
US7827101Jan 10, 2003Nov 2, 2010First Data CorporationPayment system clearing for transactions
US7831519Nov 23, 2004Nov 9, 2010First Data CorporationMethods and systems for electromagnetic initiation of secure transactions
US7840466 *Feb 2, 2009Nov 23, 2010First Data CorporationWireless communication device account payment notification systems and methods
US7853655Oct 23, 2005Dec 14, 2010Silverpop Systems Inc.Individualized RSS feeds with archives and automatic cleanup
US7877288 *May 4, 2004Jan 25, 2011Cunningham Electronics CorporationManufacturer's offer redemption system
US7877793Mar 12, 2007Jan 25, 2011Oracle America, Inc.Repositing for digital content access control
US7882193Apr 4, 2002Feb 1, 2011Symantec CorporationApparatus and method for weighted and aging spam filtering rules
US7900245Oct 15, 2002Mar 1, 2011Sprint Spectrum L.P.Method and system for non-repeating user identification in a communication system
US7913312Oct 15, 2003Mar 22, 2011Oracle America, Inc.Embedded content requests in a rights locker system for digital content access control
US7921456 *Dec 30, 2005Apr 5, 2011Microsoft CorporationE-mail based user authentication
US7930289Jul 31, 2006Apr 19, 2011Apple Inc.Methods and systems for providing improved security when using a uniform resource locator (URL) or other address or identifier
US7941490May 11, 2005May 10, 2011Symantec CorporationMethod and apparatus for detecting spam in email messages and email attachments
US7949748Jul 10, 2008May 24, 2011Archeron Limited LlcTiming module for regulating hits by a spidering engine
US7950065 *Nov 11, 2006May 24, 2011Microsoft CorporationMethod and system to control access to content stored on a web server
US7962416 *Nov 22, 2000Jun 14, 2011Ge Medical Technology Services, Inc.Method and system to remotely enable software-based options for a trial period
US7979562Oct 6, 2006Jul 12, 2011Verizon Laboratories Inc.Service level agreements and management thereof
US7987253 *Aug 7, 2008Jul 26, 2011International Business Machines CorporationDetermining an applicable policy for an incoming message
US7996280Dec 31, 2004Aug 9, 2011Ebay Inc.Method to provide a gift registry in an online mall
US8000496Jan 20, 2011Aug 16, 2011Coupons.Com IncorporatedCoupon copy protection
US8001244Apr 12, 2010Aug 16, 2011Aol Inc.Deep packet scan hacker identification
US8010609Jun 20, 2005Aug 30, 2011Symantec CorporationMethod and apparatus for maintaining reputation lists of IP addresses to detect email spam
US8015047Apr 25, 2001Sep 6, 2011Archeron Limited LlcMethod, system, and computer program product for employment market statistics generation and analysis
US8055605May 10, 2010Nov 8, 2011Archeron Limited LlcInteractive intelligent searching with executable suggestions
US8055642Dec 15, 2009Nov 8, 2011Coupons.Com IncorporatedSystem and method for augmenting content in electronic documents with links to contextually relevant information
US8060448 *May 28, 2002Nov 15, 2011Jones Thomas CLate binding tokens
US8086539Jun 11, 2003Dec 27, 2011The Western Union CompanyValue processing network and methods
US8090948 *Dec 22, 2004Jan 3, 2012Konica Minolta Business Technologies, Inc.Image formation system having authentication function
US8095113Feb 4, 2009Jan 10, 2012First Data CorporationOnetime passwords for smart chip cards
US8108531May 7, 2010Jan 31, 2012Foundry Networks, Inc.Securing an access provider
US8131572Dec 16, 2002Mar 6, 2012Flash Seats, LlcElectronic ticketing system and method
US8140436 *Jul 2, 2010Mar 20, 2012Amazon Technologies, Inc.Processes for verifying creators of works represented in an electronic catalog
US8145710Jun 17, 2004Mar 27, 2012Symantec CorporationSystem and method for filtering spam messages utilizing URL filtering module
US8151116 *Jun 9, 2007Apr 3, 2012Brigham Young UniversityMulti-channel user authentication apparatus system and method
US8156499Dec 10, 2008Apr 10, 2012Icp Acquisition CorporationMethods, systems and articles of manufacture for scheduling execution of programs on computers having different operating systems
US8165078Nov 19, 2008Apr 24, 2012Coupons.Com IncorporatedSystem and method for controlling use of a network resource
US8190753 *Aug 28, 2006May 29, 2012Samsung Electronics Co., Ltd.System and method for protecting emergency response services in telecommunication networks from attack
US8196183Mar 1, 2004Jun 5, 2012Axway Inc.Policy enforcement in a secure data file delivery system
US8200580Feb 5, 2009Jun 12, 2012Amazon Technologies, Inc.Automated processes for seeking authorization to make printed publications searchable on a network
US8200759 *Feb 21, 2003Jun 12, 2012Digital Impact, Inc.Method and system for remotely sensing the file formats processed by an e-mail client
US8214443Mar 4, 2009Jul 3, 2012Aol Inc.Electronic mail forwarding service
US8219516Sep 23, 2011Jul 10, 2012Archeron Limited LlcInteractive intelligent searching with executable suggestions
US8224803Sep 22, 2011Jul 17, 2012Coupons.Com IncorporatedSystem and method for augmenting content in electronic documents with links to contextually relevant information
US8230518Feb 9, 2011Jul 24, 2012Oracle America, Inc.Embedded content requests in a rights locker system for digital content access control
US8234134 *Jun 13, 2003Jul 31, 2012The Crawford Group, Inc.Method and apparatus for customer direct on-line reservation of rental vehicles including deep-linking
US8234269Apr 30, 2010Jul 31, 2012Coupons.Com IncorporatedSearching a database including prioritizing results based on historical data
US8234690 *Apr 4, 2008Jul 31, 2012Axway Inc.Solicited authentication of a specific user
US8255685 *Mar 17, 2009Aug 28, 2012Research In Motion LimitedSystem and method for validating certificate issuance notification messages
US8266242May 18, 2006Sep 11, 2012Archeron Limited L.L.C.Method, system, and computer program product for propagating remotely configurable posters of host site content
US8266425 *Dec 20, 2006Sep 11, 2012Certicom Corp.URL-based certificate in a PKI
US8271588 *Sep 24, 2004Sep 18, 2012Symantec CorporationSystem and method for filtering fraudulent email messages
US8271591Sep 10, 2007Sep 18, 2012At&T Intellectual Property I, L.P.Methods, systems, and products for managing communications
US8327451Jun 10, 2008Dec 4, 2012International Business Machines CorporationSecure system and method for enforcement of privacy policy and protection of confidentiality
US8341018Jun 28, 2002Dec 25, 2012At&T Intellectual Property I, L. P.Methods and systems for providing contextual information on communication devices and services
US8345931Nov 21, 2006Jan 1, 2013The Western Union CompanyBiometric based authorization systems for electronic fund transfers
US8346580Aug 13, 2004Jan 1, 2013Flash Seats, LlcSystem and method for managing transfer of ownership rights to access to a venue and allowing access to the venue to patron with the ownership right
US8346611Apr 21, 2009Jan 1, 2013First Data CorporationSystems and methods for pre-paid futures procurement
US8346626 *Aug 5, 2003Jan 1, 2013Robertson Steven CSystem and method for providing electronic multi-merchant gift registry services over a distributed network
US8364599Jan 12, 2010Jan 29, 2013Powell Michael DSystem and method to facilitate and support electronic communication of ideas
US8370437 *Dec 23, 2004Feb 5, 2013Microsoft CorporationMethod and apparatus to associate a modifiable CRM related token to an email
US8392940 *Jul 2, 2008Mar 5, 2013Verizon Patent And Licensing Inc.Television distribution of product/service coupon codes
US8412637 *Apr 24, 2006Apr 2, 2013Michael D. PowellSystem and method to facilitate and support electronic communication of request for proposals
US8424073Nov 13, 2006Apr 16, 2013Microsoft CorporationRefreshing a page validation token
US8434154Apr 11, 2012Apr 30, 2013RGI, Inc.Method and apparatus for distributing content across platforms in a regulated manner
US8489467Feb 6, 2009Jul 16, 2013Edward R. PriceExtended manufacturing environment
US8516057Nov 30, 2006Aug 20, 2013Digital River, Inc.Subscriber list system and method
US8521656May 22, 2012Aug 27, 2013Z-Firm, LLCSystems and methods for providing extended shipping options
US8521821 *Mar 17, 2009Aug 27, 2013Brigham Young UniversityEncrypted email based upon trusted overlays
US8527429Oct 20, 2011Sep 3, 2013Z-Firm, LLCShipment preparation using network resource identifiers in packing lists
US8533045Oct 19, 2010Sep 10, 2013Cunningham Electronics CorporationUniversal coupon redemption system and method
US8533291 *Feb 7, 2007Sep 10, 2013Oracle America, Inc.Method and system for protecting publicly viewable web client reference to server resources and business logic
US8533792Feb 17, 2011Sep 10, 2013Microsoft CorporationE-mail based user authentication
US8549280 *Oct 8, 2010Oct 1, 2013Compriva Communications Privacy Solutions Inc.System, device and method for securely transferring data across a network
US8559667Apr 25, 2008Oct 15, 2013Coupons.Com IncorporatedCoupon copy protection
US8560673Dec 16, 2008Oct 15, 2013At&T Intellectual Property I, L. P.Methods, systems and products for presenting information correlated to communications
US8560841Mar 1, 2010Oct 15, 2013Microsoft CorporationRequest authentication token
US8565723Oct 17, 2007Oct 22, 2013First Data CorporationOnetime passwords for mobile wallets
US8566461Jun 8, 2005Oct 22, 2013Digital River, Inc.Managed access to media services
US8566462 *May 10, 2006Oct 22, 2013Digital River, Inc.Methods of controlling access to network content referenced within structured documents
US8566902Jun 23, 2003Oct 22, 2013American Express Travel Related Services Company, Inc.Secure messaging center
US8571992Mar 3, 2010Oct 29, 2013Oncircle, Inc.Methods and apparatus for title structure and management
US8613107 *Apr 11, 2007Dec 17, 2013Dt Labs Development, LlcSystem, method and apparatus for electronically protecting data associated with RFID tags
US8645537Jul 29, 2011Feb 4, 2014Citrix Systems, Inc.Deep packet scan hacker identification
US8706534 *Jul 30, 2012Apr 22, 2014The Crawford Group, Inc.Method and apparatus for customer direct on-line reservation of rental vehicles including deep-linking
US8707442 *Jan 18, 2008Apr 22, 2014Google Inc.Dynamic universal resource locator (URL) construction for accessing media content
US8719912Jun 27, 2008May 6, 2014Microsoft CorporationEnabling private data feed
US8732250 *Oct 23, 2005May 20, 2014Silverpop Systems Inc.Provision of secure RSS feeds using a secure RSS catcher
US8738457Mar 2, 2010May 27, 2014Oncircle, Inc.Methods of facilitating merchant transactions using a computerized system including a set of titles
US8738470Dec 9, 2005May 27, 2014Amazon Technologies, Inc.Providing gift clustering functionality to assist a user in ordering multiple items for a recipient
US20060155715 *Dec 23, 2004Jul 13, 2006Microsoft CorporationMethod and apparatus to associate a modifiable CRM related token to an email
US20060200422 *Apr 24, 2006Sep 7, 2006Pitchware, Inc.System and Method to Facilitate and Support Electronic Communication of Request for Proposals
US20070204125 *Feb 24, 2006Aug 30, 2007Michael HardySystem and method for managing applications on a computing device having limited storage space
US20070204329 *Apr 11, 2007Aug 30, 2007Dt Labs, LlcSystem, Method and Apparatus for Electronically Protecting Data Associated with RFID Tags
US20100004984 *Jul 2, 2008Jan 7, 2010Verizon Data Services LlcTelevision distribution of product/service coupon codes
US20100122327 *Nov 10, 2008May 13, 2010Apple Inc.Secure authentication for accessing remote resources
US20100131362 *Jun 24, 2009May 27, 2010Liang Chun-MingAdvertising apparatus and methods and storage medium
US20100241847 *Mar 17, 2009Sep 23, 2010Brigham Young UniversityEncrypted email based upon trusted overlays
US20100241851 *Mar 17, 2009Sep 23, 2010Research In Motion LimitedSystem and method for validating certificate issuance notification messages
US20100274732 *Jul 2, 2010Oct 28, 2010Grinchenko Pavlo OProcesses for verifying creators of works represented in an electronic catalog
US20100332383 *Aug 18, 2010Dec 30, 2010First Data CorporationWireless communication device account payment notification systems and methods
US20110087877 *Oct 8, 2010Apr 14, 2011Compriva Communications Privacy Solutions, Inc.System, device and method for securely transferring data across a network
US20110106762 *Nov 8, 2010May 5, 2011Kenexa Brassring, Inc.Method and apparatus for sending and tracking resume data sent via url
US20110113317 *Nov 8, 2009May 12, 2011Venkat RamaswamyEmail with social attributes
US20110238484 *Mar 23, 2010Sep 29, 2011Toumayan Samuel GSystem and method for providing customized on-line shopping and/or manufacturing
US20120246702 *Mar 21, 2011Sep 27, 2012Webcetera, L.P.System, method and computer program product for access authentication
US20120260321 *Apr 7, 2011Oct 11, 2012International Business Machines CorporationMethod and apparatus to auto-login to a browser application launched from an authenticated client application
US20120290341 *Jul 30, 2012Nov 15, 2012The Crawford Group, Inc.Method and Apparatus for Customer Direct On-Line Reservation of Rental Vehicles Including Deep-Linking
US20130061337 *Oct 31, 2012Mar 7, 2013Z-Firm, LLCSecuring shipment information accessed based on data encoded in machine-readable data blocks
US20130067303 *Sep 9, 2011Mar 14, 2013Microsoft CorporationDistinct Links for Publish Targets
US20130227662 *Aug 29, 2012Aug 29, 2013Metaswitch Networks Ltd.Method of Generating a Token to be Used in a Uniform Resource Identifier
DE102004003593A1 *Jan 15, 2004Aug 4, 2005Deutsche Telekom AgSending user-specific data based on WAP or HTML protocols involves determining characteristics of user/terminal sending URL information, analyzing for tokens, replacing with user/equipment-specific data for sending to service provider
EP1357458A2 *Apr 11, 2003Oct 29, 2003Xerox CorporationAd hoc secure access to documents and services
EP1528499A1 *Nov 3, 2004May 4, 2005Web Component Trading LimitedTransaction processing
EP1949245A2 *Oct 23, 2006Jul 30, 2008Bill NusseyDelivery of sensitive information through secure rss feed
EP1955180A2 *Oct 23, 2006Aug 13, 2008Bill NusseyProvision of secure rss feeds using a secure rss catcher
WO2001029787A2 *Oct 16, 2000Apr 26, 2001Giftcertificates Com IncSystem and method for accumulating individual gifts to create a group gift
WO2002048839A2 *Dec 6, 2001Jun 20, 2002First Data CorpElectronic gift greeting
WO2003027887A1 *Sep 27, 2002Apr 3, 2003Bellsouth Intellect Pty CorpMethods and systems for a communications and information resource manager
WO2003088089A1 *Apr 11, 2003Oct 23, 2003Ipac Acquisition Subsidiary INetwork-based photosharing architecture for search and delivery of private images and metadata
WO2003107227A2 *Jun 12, 2003Dec 24, 2003Erik Stener FaerchMethod and system for secure electronic purchase transactions
WO2004046957A2 *Nov 17, 2003Jun 3, 2004Creo IncMethods and systems for sharing data
WO2004079675A1 *Mar 4, 2004Sep 16, 2004Gamelogic IncUser authentication system and method
WO2006110255A1 *Mar 16, 2006Oct 19, 2006Florida Internat University BoInternet-based secure access control with custom authentication
WO2006112760A1 *Apr 20, 2005Oct 26, 2006Transacsation AbMethod and device of enabling a user of an internet application access to protected information
WO2007048049A2 *Oct 23, 2006Apr 26, 2007Bill NusseyProvision of secure rss feeds using a secure rss catcher
WO2008154113A2 *May 15, 2008Dec 18, 2008Alan KellyA method and system for click thru capability of electronic media
WO2009022333A2 *Aug 13, 2008Feb 19, 2009Aladdin Knowledge Systems LtdVirtual token for transparently self-installing security environment
WO2012078113A2 *Dec 2, 2011Jun 14, 2012Nikhil JhinganSystem and method for verifying authenticity of documents
WO2012129336A1 *Mar 21, 2012Sep 27, 2012Vincita Networks, Inc.Methods, systems, and media for managing conversations relating to content
WO2013121106A2 *Feb 13, 2013Aug 22, 2013Rovio Entertainment LtdEnhancement to autonomously executed applications
WO2013190549A1 *Jun 17, 2013Dec 27, 2013Secure Islands Technologies Ltd.System and method to access content of encrypted data items in unsupported digital environments
Classifications
U.S. Classification709/219, 726/9, 707/E17.112, 726/6, 709/225, 709/206
International ClassificationG06F17/30, G06F21/00, H04L29/06
Cooperative ClassificationG06F17/30876, H04L63/0807, G06F21/31, G06F2221/2151, G06F21/6245
European ClassificationG06F21/62B5, G06F21/31, H04L63/08A, G06F17/30W5
Legal Events
DateCodeEventDescription
Sep 19, 2013FPAYFee payment
Year of fee payment: 12
Sep 14, 2009FPAYFee payment
Year of fee payment: 8
Mar 21, 2005FPAYFee payment
Year of fee payment: 4
Sep 7, 2004ASAssignment
Owner name: AMAZON.COM, INC., WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LINDEN, GREGORY D.;MCDANIEL, MICHAEL D.;SNODGRASS, RYAN J.;AND OTHERS;REEL/FRAME:015756/0717;SIGNING DATES FROM 19990215 TO 19991223
Owner name: AMAZON.COM, INC. 1200 12TH AVENUE SOUTH SUITE 1200
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LINDEN, GREGORY D. /AR;REEL/FRAME:015756/0717;SIGNING DATES FROM 19990215 TO 19991223
Mar 30, 1999ASAssignment
Owner name: AMAZON.COM, WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LINDEN, GREGORY;MCDANIEL, MICHAEL D.;SNODGRASS, RYAN J.;AND OTHERS;REEL/FRAME:009871/0316;SIGNING DATES FROM 19990215 TO 19990312