US7519815B2 - Challenge-based authentication without requiring knowledge of secret authentication data - Google Patents

Challenge-based authentication without requiring knowledge of secret authentication data Download PDF

Info

Publication number
US7519815B2
US7519815B2 US10/917,786 US91778604A US7519815B2 US 7519815 B2 US7519815 B2 US 7519815B2 US 91778604 A US91778604 A US 91778604A US 7519815 B2 US7519815 B2 US 7519815B2
Authority
US
United States
Prior art keywords
computing entity
authenticatee
supplemental
authenticator
act
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US10/917,786
Other versions
US20050097325A1 (en
Inventor
Max G. Morris
Christopher G. Kaler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Priority to US10/917,786 priority Critical patent/US7519815B2/en
Priority to TW093129291A priority patent/TW200518552A/en
Priority to IL164320A priority patent/IL164320A/en
Priority to CA002482696A priority patent/CA2482696A1/en
Priority to EP04023087A priority patent/EP1528707A3/en
Priority to NO20044126A priority patent/NO20044126L/en
Priority to SG200405722A priority patent/SG111217A1/en
Priority to MYPI20043996A priority patent/MY141019A/en
Priority to AU2004218603A priority patent/AU2004218603A1/en
Priority to KR1020040081815A priority patent/KR20050040705A/en
Priority to MXPA04010160A priority patent/MXPA04010160A/en
Priority to BR0404490-8A priority patent/BRPI0404490A/en
Priority to CO04106330A priority patent/CO5630046A1/en
Priority to RU2004131500/09A priority patent/RU2363985C2/en
Priority to NZ536222A priority patent/NZ536222A/en
Priority to CN2004100899042A priority patent/CN1612522B/en
Priority to JP2004316989A priority patent/JP4807944B2/en
Priority to US10/988,875 priority patent/US7657745B2/en
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KALER, CHRISTOPHER G., MORRIS, MAX G.
Publication of US20050097325A1 publication Critical patent/US20050097325A1/en
Priority to US11/192,609 priority patent/US20050289082A1/en
Application granted granted Critical
Publication of US7519815B2 publication Critical patent/US7519815B2/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Definitions

  • the present invention relates generally to authentication. More specifically, the present invention relates to challenge-based authentication mechanisms that do not require knowledge of secret authentication data.
  • Computing technology has transformed the way we work and play.
  • Computing systems and devices (hereinafter also referred to simply as “computing entities”) now take a wide variety of forms including desktop computers, laptop computers, tablet PCs, Personal Digital Assistants (PDAs), household devices and the like.
  • a computing system includes system memory and one or more processors.
  • Software in the system memory may be executed by the processor to direct the other hardware of the computing system to perform desired functions.
  • logic is implemented using hardware, or a combination or software and hardware.
  • Networking technologies enable computing entities to communicate even over vast distances, thereby expanding on computer functionality.
  • networking technologies enable such applications as e-mail, web browsing, file transfer, instant messaging, electronic whiteboarding, network collaboration, and the like. Accordingly, computer networks enable widespread communication and information access.
  • an authenticatee computing entity i.e., a computing entity that requires authentication
  • an authenticator computing entity i.e., a computing entity that must authenticate
  • the authenticatee computing entity may then make a more informed decision regarding how to interact with the authenticator computing entity.
  • authentication One particularly useful form of authentication is often referred to as challenge/response authentication.
  • an authenticator computing entity hereinafter also referred to as the “authenticator”
  • an authenticatee computing entity hereinafter also referred to as the “authenticatee”
  • the authenticatee sends a challenge to the authenticator.
  • the authenticatee then generates a response (also referred to herein as an “answer”) to the challenge typically by applying a one-way hash algorithm to the challenge using secret data available to the authenticatee and authenticator.
  • This secret data may be, for example, a password corresponding to the authenticator.
  • the authenticator likewise also generates the same answer using the same hashing algorithm and using the same secret data.
  • the authenticator then provides its answer to the authenticatee.
  • the authenticatee compares the answer that the authenticator generated with the answer that the authenticatee generated. If the answers match, then the authentication is successful.
  • the challenge/response authentication is advantageous in that the secret data itself is not transmitted, and thus may not be intercepted.
  • this challenge/response authentication requires that the authenticator and authenticatee computing entities have access to the secret data used for authentication, and that the authenticator and authenticatee computing entities generate the answer. In some environments this may not be desirable. For example, many computing entities have limited processing power. The generation of an answer may degrade the performance of the computing entity by diverting processing power from other processes. Furthermore, the computing entities may not be themselves secure. Accordingly, an unauthorized entity might conceivably access the secret data and use that data to falsely authenticate.
  • the environment includes four computing entities, an authenticatee computing entity, a supplemental authenticatee computing entity, an authenticator computing entity, and a supplemental authenticator computing entity.
  • the authenticator computing entity is to authenticate to the authenticatee computing entity, but does not have direct access to the secret data needed to authenticate.
  • the authenticatee acquires a challenge from the supplemental authenticatee.
  • This challenge may be solved by the supplemental authenticator, but not by the authenticatee and authenticator.
  • the authenticatee may also pass a secret key to the supplemental authenticatee.
  • the supplemental authenticatee encrypts the secret key using secret data known to the supplemental authenticatee and supplemental authenticator, but not to the authenticatee and authenticator themselves.
  • This challenge and the secret data are the basis for the authentication, despite the secret data being unknown to the authenticatee and authenticator, and despite the challenge being unsolvable by the authenticatee or authenticator directly.
  • the authenticatee provides the challenge as well as potentially the encrypted key to the authenticator.
  • the authenticator provides the challenge and any encrypted key to the supplemental authenticator.
  • the supplemental authenticator solves the challenge to generate an answer, and also decrypts the encrypted key.
  • the supplemental authenticator provides the answer and the decrypted key to the authenticator.
  • the decrypted key is known to the authenticatee and authenticator and may be used to secure future communications between the authenticatee and authenticator.
  • the authenticator then sends the answer to the authenticatee.
  • the authenticatee then uses this answer to authenticate the authenticator either by validating the answer directly, or by causing the supplemental authenticatee to validate the answer.
  • FIG. 1 is a diagram of a message exchange between an authenticatee, supplemental authenticatee, authenticator, and supplemental authenticator computing entities in accordance with the principles of the present invention
  • FIG. 2 schematically illustrates a data structure in the form of a Simple Object Access Protocol (SOAP) envelope that includes SOAP headers in the form of billing and signing headers;
  • SOAP Simple Object Access Protocol
  • FIG. 3 illustrates a message exchange in which electronically transferable items are transferred between two computing entities in accordance with a first embodiment of the present invention
  • FIG. 4 illustrates a message exchange in which electronically transferable items are transferred between two computing entities in accordance with a second embodiment of the present invention.
  • the principles of the present invention provide a challenge based authentication mechanism that does not require that the authenticating computing entities be aware of the secret data used for the initial authentication, and do not require the authenticating computing entities themselves generate an answer to a challenge.
  • FIG. 1 illustrates an environment 100 that includes four computing entities 101 through 104 .
  • the four computing entities include what will be referred to as an authenticatee computing entity 101 , an authenticator computing entity 102 , a supplemental authenticatee computing entity 103 , and a supplemental authenticator computing entity 104 .
  • a “computing entity” is any device or system that may retain data in memory and/or storage, and is capable of electronic communication.
  • each of the computing entities 101 through 104 may have access to its own internal data, and may communicate with one or more of the other computing entities. Such communication need not be across a network.
  • any two or more of the computing entities 101 through 104 may be within the same electronic device or computing system.
  • the supplemental authenticator computing entity 104 may be a SIM card, while the authenticator computing entity 102 is a mobile telephone.
  • the authenticatee computing entity 101 may be a front end Web server, while the supplemental authenticatee computing entity 103 may be a back end Web server. The principles of the present invention are not limited to this, however.
  • the authenticator computing entity 102 is to authenticate to the authenticatee computing entity 101 .
  • the authenticatee computing entity 101 and the supplemental authenticatee computing entity 103 are in a first common sphere of trust.
  • the authenticator computing entity 102 and the supplemental authenticator computing entity 104 are also in a second common sphere of trust.
  • the supplemental authenticatee computing entity 103 and the supplemental authenticator computing entity 104 are in a third common sphere of trust.
  • a “sphere of trust” as used in this description and in the claims is defined as a collection of two or more computing entities in which each computing entity in the sphere of trust has received some assurance that the other computing entities are who they purport to be, and that information from the other computing entities is at least somewhat reliable.
  • the authenticatee computing entity 101 may also be referred to as simply the “authenticatee 101”, the “authenticator 102”, the “supplemental authenticatee 103”, and the “supplemental authenticator 104”, respectively.
  • FIG. 1 also shows an example message flow that results in authentication consistent with the principles of the present invention.
  • the sequential order of a message transfer is represented sequentially by the number in the head of the arrow that represents the message transfer.
  • an authentication method in accordance with the principles of the present invention will now be described. The method allows the authenticator 102 to authenticate to the authenticatee 101 using challenge based authentication and without requiring the authenticator 102 and authenticatee 101 computing entities be aware of secret data used for the authentication.
  • the authenticatee 101 determines that the authenticator 102 is to authenticate. This may be accomplished by, for example, the authenticatee 101 receiving a service request (see arrow 111 ) from the authenticator 102 . However, the authenticatee 101 may make the determination that the authenticator 102 is to be authenticated in some other manner that does not rely on any service request from the authenticator 102 . Accordingly, the service request represented by arrow 111 is not essential.
  • the authenticatee 101 then acquires a challenge 131 from the supplemental authenticatee 103 .
  • This may be accomplished in any manner. However, in FIG. 1 , this is illustrated as being accomplished with two message transfers represented by arrows 112 and 113 .
  • the authenticatee 101 provides a challenge request represented by arrow 112 to the supplemental authenticatee 103 .
  • the supplemental authenticatee 103 may then generate a challenge 131 in response to the challenge request, and then provides the challenge 131 to the authenticatee 101 in response to the request as represented by arrow 113 .
  • the challenge 131 may have been provided by the supplemental authenticatee 103 without a challenge request such as, for example, when the authenticatee 101 registers with the supplemental authenticatee 103 , or perhaps at predetermined times or time intervals.
  • additional acts may be undertaken such that the authenticatee 101 and authenticator 102 may subsequently communicate without relying on the supplemental authenticatee 103 and supplemental authenticator 104 .
  • the authenticatee 101 may generate secret key data 132 that is likely not known to the authenticator 102 , the supplemental authenticatee 103 , or the supplemental authenticator 104 .
  • the authenticatee 101 provides the secret key data 132 to the supplemental authenticatee 103 thereby informing the supplemental authenticatee 103 of the secret key data 132 .
  • the secret key data 132 may, for example, have been provided in the same message as the challenge request represented by arrow 112 .
  • the supplemental authenticatee 103 then may encrypt the secret key data 132 using secret data 133 known to the supplemental authenticatee 103 and the supplemental authenticator 104 computing entities, but not known to the authenticatee 101 and the authenticator 102 .
  • the supplemental authenticatee 103 then may provide the encrypted secret key data 134 to the authenticatee 101 .
  • This encrypted secret key data 134 may be provided at the same time and/or in the same message that the supplemental authenticatee 103 used to transfer the challenge 131 as represented by arrow 113 .
  • the authenticatee 101 then provides the challenge 131 to the authenticator 102 as represented by arrow 114 .
  • the authenticatee 101 may also provide the encrypted secret key data 134 to the authenticator 102 as represented by arrow 114 .
  • the authenticator 102 acquires an answer to the challenge 131 from the supplemental authenticator computing entity. This may be accomplished in any manner. However, in FIG. 1 , this is illustrated as being accomplished with two message transfers represented by arrows 115 and 116 . Specifically, the authenticator 102 provides the challenge 131 to the supplemental authenticator 104 as represented by arrow 115 . The supplemental authenticator 104 may then determine an answer 135 to the challenge 131 , and then provides the answer 135 to the authenticator 102 as represented by arrow 116 . The answer may be generated by, for example, performing a one-way hash algorithm on the challenge 131 using the secret data 133 .
  • the authenticator 102 may also provide the encrypted secret key data 134 to the supplemental authenticator 104 . This may be accomplished by including the encrypted secret key data 134 in the same message as was used to transmit the challenge to the supplemental authenticator 104 as represented by arrow 115 .
  • the supplemental authenticator 104 may then decrypt the secret key data 134 using the secret data 133 known to the supplemental authenticatee 103 and the supplemental authenticator 104 , thereby informing the supplemental authenticator 104 of the secret key data 132 .
  • the supplemental authenticator 104 then provides the secret key data 132 to the authenticator 102 thereby informing the authenticator 102 the secret key data 132 .
  • the supplemental authenticator 104 may provide the secret key data 132 back to the authenticator 102 potentially in the same message that was used to transfer the answer 135 to the authenticator 102 .
  • both the authenticatee 101 and authenticator 102 have access to secret key data 132 .
  • This secret key data 132 may thus be used to authenticate each other in subsequent communications independent of the supplemental authenticatee 103 and supplemental authenticator 104 .
  • the authenticator 102 provides the answer 135 to the authenticatee 101 as represented by the arrow 117 .
  • the authenticatee 101 may then use the answer 135 to authenticate the authenticator 102 .
  • the authenticatee 101 may acquire an answer to the challenge from the supplemental authenticatee 103 , potentially at the same time and in the same manner as the challenge was acquired from the supplemental authenticatee 103 .
  • the authenticatee 101 may then match the answer as acquired from the supplemental authenticatee 103 with the answer as provided by the authenticator 102 .
  • a match results in the authenticator 102 authenticating to the authenticatee 101 .
  • the authenticatee 101 could delegate this comparison to the supplemental authenticatee 103 by providing the answer 135 as provided by the authenticator 102 to the supplemental authenticatee 103 .
  • the supplemental authenticatee 103 may then match the answer as provided by the authenticatee 101 with the answer that it internally generated. If a match is found, the supplemental authenticatee 103 may indicate to the authenticatee 101 that authentication is successful.
  • the authenticator 102 has authenticated to the authenticatee 101 , and the service request may be honored if appropriate.
  • the authentication is challenge-based, and does not require the authenticatee 101 or authenticator 102 have access to the secret data 133 used to generate an answer to the challenge.
  • the authenticator 102 and authenticatee 101 may authenticate in subsequent communications using the secret key data 132 , rather than repeating the process described above.
  • the subsequent communications may be secured using a digest of the secret key data 132 amongst one or more other items.
  • the digest may then be used to secure subsequent communications between the authenticatee 101 and authenticator 102 .
  • the digest may also be based on the challenge 131 and/or the answer 135 .
  • the digest may include data 136 communicated between the authenticator 102 and authenticatee 101 that is not also communicated to the supplemental authenticatee 103 or supplemental authenticator 104 .
  • the authenticatee 101 and authenticator 102 may then communicate using the digest to secure communications.
  • the supplemental authenticatee 103 and supplemental authenticator 104 are prevented from easily eavesdropping or spoofing on subsequent communications between the authenticator 102 and authenticatee 101 .
  • the authenticator 102 also generates secret key data 137 , which is provided to the supplemental authenticator 104 .
  • the supplemental authenticator 104 encrypts the secret key data 137 , and passes the encrypted secret key data to the authenticator 102 .
  • the authenticator 102 then passes the encrypted secret key data to the authenticatee 101 , which uses the supplemental authenticatee 103 to decrypt the secret key 137 using the secret data 133 .
  • the digest may then also be based upon this secret key 137 .
  • the direct parties to the authentication i.e., the authenticator and authenticatee computing entities
  • the authenticator and authenticatee computing entities need not calculate an answer to a challenge, nor have knowledge of secret data used in the initial authentication.
  • the authenticator and authenticatee computing entity may subsequently authenticate and communicate independent of the supplemental authenticator and supplemental authenticatee computing entities.
  • the authenticatee channel there are several communication channels, one between the authenticatee 101 and the supplemental authenticatee 103 (hereinafter also potentially referred to as “the authenticatee channel”), one between the authenticator 102 and the supplemental authenticator 104 (hereinafter also potentially referred to as the “authenticator channel”), and one between the authenticatee 101 and the authenticator 102 (hereinafter also potentially referred to as the “authentication channel”).
  • the corresponding channel may be a function call or local message mechanism. However, if the two computing entities are remotely located, the corresponding channel may use a networking protocol.
  • a transport-independent network protocol may be used to communicate.
  • One such transport-independent network protocol is known in the art as “Web Services” which uses Simple Object Access Protocol (SOAP) envelopes to convey information in a transport-independent manner.
  • Web Services may also employ SOAP tunneling to transport across networks that do not directly support SOAP.
  • SOAP Simple Object Access Protocol
  • a modification to conventional Web Services may be employed to convey information important to authentication.
  • a SOAP header may include a signing SOAP header as described in the U.S. provisional application 60/515,461 incorporated by reference above.
  • FIG. 2 schematically illustrates a structure of such a SOAP envelope suitable for performing billing and signing in the context of Web Services.
  • the SOAP envelope 200 includes SOAP headers 201 and a SOAP body 202 .
  • the SOAP headers include billing header(s) 211 , signing header(s) 212 , amongst potentially other headers 213 .
  • the signing headers 212 may include the information for authentication.
  • the challenge 131 , the secret key 132 , the encrypted secret keys 134 and 137 , the answer 135 , and the data 136 as well as any other useful information may be included in the signing header(s) 212 .
  • the principles of the present invention are not limited to communication using Web Services. It may be that none of the authenticatee, authenticator, or authentication channels use Web Services in a particular embodiment.
  • computing entities 101 through 104 will each in the subsequent description of the subsequent drawings be referred to simply as a “computing entity”.
  • the computing entity 101 may as a condition for such authorization require the payment or transfer of electronically transferable items from the computing entity 102 .
  • an “electronically transferable item” is any item, whether physical or electronic, whose ownership may be transferred from one entity to another by sending an electronic message. The electronic message need not be purely electronic during the transfer, but may undertake other forms such as optical forms during the transfer.
  • Such transferable items may include money.
  • the transferable items may also include any other item that is electronically transferable. For example, the items may be frequent flier miles, movie or opera ticket credits, train tickets, class registration authority, and so forth.
  • the computing entity 101 may transfer electronically transferable items to the computing entity 102 .
  • FIG. 3 illustrates the environment of FIG. 1 in which there are four computing entities 301 through 304 .
  • the computing entities 301 through 304 may be the same as described above for computing entities 101 through 104 , although this is not required.
  • Computing entities 301 and 303 are in one sphere of trust represented by the area within the dashed lines.
  • Computing entities 302 and 304 are in another sphere of trust represented by the area within the dotted lines.
  • Computing entities 303 and 304 are within yet another sphere of trust as represented the area within the intermittent dotted/dashed lines.
  • FIG. 3 also shows a message flow showing a way of transferring electronically transferable items between computing entities 301 and 302 .
  • Computing entity 304 has authorization information 321 relevant to whether or not computing entity 302 may transfer particular items to computing entity 301 . For example, if the computing entity 302 were a SIM card, the items to be transferred may be, for example, money.
  • the message flow shows how items could be authorized to be transferred and then actually transferred from computing entity 302 to computing entity 301 .
  • the computing entity 301 may inquire (see arrow 311 ) of computing entity 303 as to whether or not computing entity 302 has authorization to transfer the items. If the computing entity 303 does not already know, the computing entity 303 will make the inquiry (see arrow 312 ) to computing entity 304 as to whether or not computing entity 302 is authorized to make the transfer. If the computing entity 304 does not already know, the computing entity 304 will make inquiry (see arrow 313 ) to computing entity 302 about whether to make the transfer. The computing entity 302 may respond (see arrow 314 ) in the affirmative.
  • the computing entity 304 Upon receiving this message, or if the computing entity 304 had been pre-authorized to make the charge due to prior communication with computing entity 302 , then the computing entity 304 responds (see arrow 315 ) in the affirmative. Upon receiving this message, or if the computing entity 303 had been pre-authorized to make the charge due to a prior communication with computing entity 304 , then the computing entity 303 responds (see arrow 316 ) in the affirmative.
  • the affirmative confirmations represented by arrows 314 through 316 may also include electronic transfer of the items itself, or an agreement to enforce transfer at a later time.
  • FIG. 4 An alternative embodiment of transfer is illustrated in FIG. 4 .
  • computing entity 402 requests (see arrow 411 ) that the transfer of items be made.
  • Computing entity 404 responds (see arrow 412 ) with an approval to transfer the items (see arrow 412 ) and then debits an account by the items to be transferred.
  • the approval to transfer may be encrypted using secret data 433 known to the computing entities 403 and 404 , but not to the computing entities 401 and 402 .
  • Computing entity 402 then provides the encrypted approval (see arrow 413 ) to computing entity 401 , which then provides the encrypted approval (see arrow 414 ) to computing entity 403 .
  • the computing entity decrypts the approval using secret data 433 and then credits the account of computing entity 401 or the user of computing entity 401 in the amount of the items being transferred. Upon a subsequent reconciliation or in real-time, computing entity 403 may acquire a credit for the items transferred from computing entity 404 .
  • transfer of the electronically transferable items is made from the computing entity 402 (or its user) to the computing entity 401 (or its user). Transfer in the other direction from computing entity 401 to computing entity 402 may be accomplished in the same manner as described above only in the symmetrically opposite direction.

Abstract

A challenge based authentication mechanism that does not require that the authenticating computing entities be aware of the secret data used for the initial authentication. An authenticator computing entity is to authenticate to the authenticatee computing entity. First, the authenticatee computing entity acquires a challenge from a supplemental authenticatee computing entity. The authenticatee computing entity provides the challenge to the authenticator computing entity, which has a supplemental authenticator computing entity solve the challenge. The authenticator computing entity sends the answer to the authenticatee computing entity, which uses the answer to authenticate the authenticator computing entity.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
The present application claims priority to U.S. provisional patent application Ser. No. 60/515,461 filed Oct. 29, 2003, which provisional application is incorporated herein by reference in its entirety.
BACKGROUND OF THE INVENTION
1. The Field of the Invention
The present invention relates generally to authentication. More specifically, the present invention relates to challenge-based authentication mechanisms that do not require knowledge of secret authentication data.
2. Background and Relevant Art
Computing technology has transformed the way we work and play. Computing systems and devices (hereinafter also referred to simply as “computing entities”) now take a wide variety of forms including desktop computers, laptop computers, tablet PCs, Personal Digital Assistants (PDAs), household devices and the like. In its most basic form, a computing system includes system memory and one or more processors. Software in the system memory may be executed by the processor to direct the other hardware of the computing system to perform desired functions. In other computing entities, logic is implemented using hardware, or a combination or software and hardware.
Networking technologies enable computing entities to communicate even over vast distances, thereby expanding on computer functionality. For example, networking technologies enable such applications as e-mail, web browsing, file transfer, instant messaging, electronic whiteboarding, network collaboration, and the like. Accordingly, computer networks enable widespread communication and information access.
Unfortunately, computer networks also can potentially open up connected computing entities to security breaches. One type of security breach is for one computing system or user to make false claims about who they are to thereby access resources they should not have access to. In order to guard against this, an authenticatee computing entity (i.e., a computing entity that requires authentication) will often require an authenticator computing entity (i.e., a computing entity that must authenticate) to authenticate itself. The authenticatee computing entity may then make a more informed decision regarding how to interact with the authenticator computing entity.
One particularly useful form of authentication is often referred to as challenge/response authentication. In this form of authentication, when an authenticator computing entity (hereinafter also referred to as the “authenticator”) is to authenticate to an authenticatee computing entity (hereinafter also referred to as the “authenticatee”), the authenticatee sends a challenge to the authenticator. The authenticatee then generates a response (also referred to herein as an “answer”) to the challenge typically by applying a one-way hash algorithm to the challenge using secret data available to the authenticatee and authenticator. This secret data may be, for example, a password corresponding to the authenticator. The authenticator likewise also generates the same answer using the same hashing algorithm and using the same secret data. The authenticator then provides its answer to the authenticatee. The authenticatee then compares the answer that the authenticator generated with the answer that the authenticatee generated. If the answers match, then the authentication is successful. The challenge/response authentication is advantageous in that the secret data itself is not transmitted, and thus may not be intercepted.
However, this challenge/response authentication requires that the authenticator and authenticatee computing entities have access to the secret data used for authentication, and that the authenticator and authenticatee computing entities generate the answer. In some environments this may not be desirable. For example, many computing entities have limited processing power. The generation of an answer may degrade the performance of the computing entity by diverting processing power from other processes. Furthermore, the computing entities may not be themselves secure. Accordingly, an unauthorized entity might conceivably access the secret data and use that data to falsely authenticate.
Accordingly, what would be advantageous is a challenge/response authentication mechanism that does not require the authenticator and authenticatee computing entities to generate an answer or contain the secret data itself.
BRIEF SUMMARY OF THE INVENTION
The foregoing problems with the prior state of the art are overcome by the principles of the present invention, which relate to a challenge based authentication mechanism that does not require that the authenticating computing entities be aware of the secret data used for the initial authentication.
The environment includes four computing entities, an authenticatee computing entity, a supplemental authenticatee computing entity, an authenticator computing entity, and a supplemental authenticator computing entity. The authenticator computing entity is to authenticate to the authenticatee computing entity, but does not have direct access to the secret data needed to authenticate.
First, the authenticatee acquires a challenge from the supplemental authenticatee. This challenge may be solved by the supplemental authenticator, but not by the authenticatee and authenticator. The authenticatee may also pass a secret key to the supplemental authenticatee. The supplemental authenticatee encrypts the secret key using secret data known to the supplemental authenticatee and supplemental authenticator, but not to the authenticatee and authenticator themselves. This challenge and the secret data are the basis for the authentication, despite the secret data being unknown to the authenticatee and authenticator, and despite the challenge being unsolvable by the authenticatee or authenticator directly.
The authenticatee provides the challenge as well as potentially the encrypted key to the authenticator. The authenticator provides the challenge and any encrypted key to the supplemental authenticator. The supplemental authenticator solves the challenge to generate an answer, and also decrypts the encrypted key. The supplemental authenticator provides the answer and the decrypted key to the authenticator. At this stage, the decrypted key is known to the authenticatee and authenticator and may be used to secure future communications between the authenticatee and authenticator.
The authenticator then sends the answer to the authenticatee. The authenticatee then uses this answer to authenticate the authenticator either by validating the answer directly, or by causing the supplemental authenticatee to validate the answer.
Additional features and advantages of the invention will be set forth in the description that follows, and in part will be obvious from the description, or may be learned by the practice of the invention. The features and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter.
BRIEF DESCRIPTION OF THE DRAWINGS
In order to describe the manner in which the above-recited and other advantages and features of the invention can be obtained, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered to be limiting of its scope, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
FIG. 1 is a diagram of a message exchange between an authenticatee, supplemental authenticatee, authenticator, and supplemental authenticator computing entities in accordance with the principles of the present invention;
FIG. 2 schematically illustrates a data structure in the form of a Simple Object Access Protocol (SOAP) envelope that includes SOAP headers in the form of billing and signing headers;
FIG. 3 illustrates a message exchange in which electronically transferable items are transferred between two computing entities in accordance with a first embodiment of the present invention; and
FIG. 4 illustrates a message exchange in which electronically transferable items are transferred between two computing entities in accordance with a second embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
The principles of the present invention provide a challenge based authentication mechanism that does not require that the authenticating computing entities be aware of the secret data used for the initial authentication, and do not require the authenticating computing entities themselves generate an answer to a challenge.
FIG. 1 illustrates an environment 100 that includes four computing entities 101 through 104. Specifically, the four computing entities include what will be referred to as an authenticatee computing entity 101, an authenticator computing entity 102, a supplemental authenticatee computing entity 103, and a supplemental authenticator computing entity 104. In this description and in the claims, a “computing entity” is any device or system that may retain data in memory and/or storage, and is capable of electronic communication.
For example, each of the computing entities 101 through 104 may have access to its own internal data, and may communicate with one or more of the other computing entities. Such communication need not be across a network. For example, any two or more of the computing entities 101 through 104 may be within the same electronic device or computing system. As an example, the supplemental authenticator computing entity 104 may be a SIM card, while the authenticator computing entity 102 is a mobile telephone. The authenticatee computing entity 101 may be a front end Web server, while the supplemental authenticatee computing entity 103 may be a back end Web server. The principles of the present invention are not limited to this, however.
The authenticator computing entity 102 is to authenticate to the authenticatee computing entity 101. In the embodiment of FIG. 1, the authenticatee computing entity 101 and the supplemental authenticatee computing entity 103 are in a first common sphere of trust. The authenticator computing entity 102 and the supplemental authenticator computing entity 104 are also in a second common sphere of trust. The supplemental authenticatee computing entity 103 and the supplemental authenticator computing entity 104 are in a third common sphere of trust. A “sphere of trust” as used in this description and in the claims is defined as a collection of two or more computing entities in which each computing entity in the sphere of trust has received some assurance that the other computing entities are who they purport to be, and that information from the other computing entities is at least somewhat reliable.
In this description and in the claims, the authenticatee computing entity 101, the authenticator computing entity 102, the supplemental authenticatee computing entity 103, and the supplemental authenticator computing entity 104, may also be referred to as simply the “authenticatee 101”, the “authenticator 102”, the “supplemental authenticatee 103”, and the “supplemental authenticator 104”, respectively.
FIG. 1 also shows an example message flow that results in authentication consistent with the principles of the present invention. The sequential order of a message transfer is represented sequentially by the number in the head of the arrow that represents the message transfer. Using this message flow, an authentication method in accordance with the principles of the present invention will now be described. The method allows the authenticator 102 to authenticate to the authenticatee 101 using challenge based authentication and without requiring the authenticator 102 and authenticatee 101 computing entities be aware of secret data used for the authentication.
The authenticatee 101 determines that the authenticator 102 is to authenticate. This may be accomplished by, for example, the authenticatee 101 receiving a service request (see arrow 111) from the authenticator 102. However, the authenticatee 101 may make the determination that the authenticator 102 is to be authenticated in some other manner that does not rely on any service request from the authenticator 102. Accordingly, the service request represented by arrow 111 is not essential.
The authenticatee 101 then acquires a challenge 131 from the supplemental authenticatee 103. This may be accomplished in any manner. However, in FIG. 1, this is illustrated as being accomplished with two message transfers represented by arrows 112 and 113. Specifically, the authenticatee 101 provides a challenge request represented by arrow 112 to the supplemental authenticatee 103. The supplemental authenticatee 103 may then generate a challenge 131 in response to the challenge request, and then provides the challenge 131 to the authenticatee 101 in response to the request as represented by arrow 113. However, there are a number of alternative ways that the authenticatee 101 may acquire the challenge 131. The challenge 131 may have been provided by the supplemental authenticatee 103 without a challenge request such as, for example, when the authenticatee 101 registers with the supplemental authenticatee 103, or perhaps at predetermined times or time intervals.
In one embodiment called herein the “subsequent private communications embodiment”, additional acts may be undertaken such that the authenticatee 101 and authenticator 102 may subsequently communicate without relying on the supplemental authenticatee 103 and supplemental authenticator 104. For example, in the subsequent private communications embodiment, the authenticatee 101 may generate secret key data 132 that is likely not known to the authenticator 102, the supplemental authenticatee 103, or the supplemental authenticator 104.
The authenticatee 101 provides the secret key data 132 to the supplemental authenticatee 103 thereby informing the supplemental authenticatee 103 of the secret key data 132. The secret key data 132 may, for example, have been provided in the same message as the challenge request represented by arrow 112.
The supplemental authenticatee 103 then may encrypt the secret key data 132 using secret data 133 known to the supplemental authenticatee 103 and the supplemental authenticator 104 computing entities, but not known to the authenticatee 101 and the authenticator 102. The supplemental authenticatee 103 then may provide the encrypted secret key data 134 to the authenticatee 101. This encrypted secret key data 134 may be provided at the same time and/or in the same message that the supplemental authenticatee 103 used to transfer the challenge 131 as represented by arrow 113.
The authenticatee 101 then provides the challenge 131 to the authenticator 102 as represented by arrow 114. At the same time and/or in the same message, the authenticatee 101 may also provide the encrypted secret key data 134 to the authenticator 102 as represented by arrow 114.
The authenticator 102 then acquires an answer to the challenge 131 from the supplemental authenticator computing entity. This may be accomplished in any manner. However, in FIG. 1, this is illustrated as being accomplished with two message transfers represented by arrows 115 and 116. Specifically, the authenticator 102 provides the challenge 131 to the supplemental authenticator 104 as represented by arrow 115. The supplemental authenticator 104 may then determine an answer 135 to the challenge 131, and then provides the answer 135 to the authenticator 102 as represented by arrow 116. The answer may be generated by, for example, performing a one-way hash algorithm on the challenge 131 using the secret data 133.
In the subsequent private communications embodiment, the authenticator 102 may also provide the encrypted secret key data 134 to the supplemental authenticator 104. This may be accomplished by including the encrypted secret key data 134 in the same message as was used to transmit the challenge to the supplemental authenticator 104 as represented by arrow 115.
The supplemental authenticator 104 may then decrypt the secret key data 134 using the secret data 133 known to the supplemental authenticatee 103 and the supplemental authenticator 104, thereby informing the supplemental authenticator 104 of the secret key data 132. The supplemental authenticator 104 then provides the secret key data 132 to the authenticator 102 thereby informing the authenticator 102 the secret key data 132. The supplemental authenticator 104 may provide the secret key data 132 back to the authenticator 102 potentially in the same message that was used to transfer the answer 135 to the authenticator 102. At this stage, both the authenticatee 101 and authenticator 102 have access to secret key data 132. This secret key data 132 may thus be used to authenticate each other in subsequent communications independent of the supplemental authenticatee 103 and supplemental authenticator 104.
The authenticator 102 provides the answer 135 to the authenticatee 101 as represented by the arrow 117. The authenticatee 101 may then use the answer 135 to authenticate the authenticator 102. There are a number of different ways that the authenticatee 101 may do this.
In one example, the authenticatee 101 may acquire an answer to the challenge from the supplemental authenticatee 103, potentially at the same time and in the same manner as the challenge was acquired from the supplemental authenticatee 103. The authenticatee 101 may then match the answer as acquired from the supplemental authenticatee 103 with the answer as provided by the authenticator 102. A match results in the authenticator 102 authenticating to the authenticatee 101.
Alternatively, the authenticatee 101 could delegate this comparison to the supplemental authenticatee 103 by providing the answer 135 as provided by the authenticator 102 to the supplemental authenticatee 103. The supplemental authenticatee 103 may then match the answer as provided by the authenticatee 101 with the answer that it internally generated. If a match is found, the supplemental authenticatee 103 may indicate to the authenticatee 101 that authentication is successful.
Accordingly, at this stage, the authenticator 102 has authenticated to the authenticatee 101, and the service request may be honored if appropriate. The authentication is challenge-based, and does not require the authenticatee 101 or authenticator 102 have access to the secret data 133 used to generate an answer to the challenge. Furthermore, in the subsequent private communications embodiment, the authenticator 102 and authenticatee 101 may authenticate in subsequent communications using the secret key data 132, rather than repeating the process described above.
Rather than simply securing subsequent communication based on the secret key data 132 alone, the subsequent communications may be secured using a digest of the secret key data 132 amongst one or more other items. The digest may then be used to secure subsequent communications between the authenticatee 101 and authenticator 102. The digest may also be based on the challenge 131 and/or the answer 135. Furthermore, the digest may include data 136 communicated between the authenticator 102 and authenticatee 101 that is not also communicated to the supplemental authenticatee 103 or supplemental authenticator 104. The authenticatee 101 and authenticator 102 may then communicate using the digest to secure communications. When the digest is based in part on the data 136 that is not known to the supplemental authenticatee 103 and the supplemental authenticator 104, the supplemental authenticatee 103 and supplemental authenticator 104 are prevented from easily eavesdropping or spoofing on subsequent communications between the authenticator 102 and authenticatee 101.
In one embodiment, the authenticator 102 also generates secret key data 137, which is provided to the supplemental authenticator 104. The supplemental authenticator 104 encrypts the secret key data 137, and passes the encrypted secret key data to the authenticator 102. The authenticator 102 then passes the encrypted secret key data to the authenticatee 101, which uses the supplemental authenticatee 103 to decrypt the secret key 137 using the secret data 133. The digest may then also be based upon this secret key 137.
Accordingly, a challenge-based authentication mechanism has been described in which the direct parties to the authentication (i.e., the authenticator and authenticatee computing entities) need not calculate an answer to a challenge, nor have knowledge of secret data used in the initial authentication. Furthermore, the authenticator and authenticatee computing entity may subsequently authenticate and communicate independent of the supplemental authenticator and supplemental authenticatee computing entities.
In the embodiment illustrated in FIG. 1, there are several communication channels, one between the authenticatee 101 and the supplemental authenticatee 103 (hereinafter also potentially referred to as “the authenticatee channel”), one between the authenticator 102 and the supplemental authenticator 104 (hereinafter also potentially referred to as the “authenticator channel”), and one between the authenticatee 101 and the authenticator 102 (hereinafter also potentially referred to as the “authentication channel”). If the two computing entities are within the same device or computing system, the corresponding channel may be a function call or local message mechanism. However, if the two computing entities are remotely located, the corresponding channel may use a networking protocol.
For example, if the two computing entities are located across different transport-level domains, a transport-independent network protocol may be used to communicate. One such transport-independent network protocol is known in the art as “Web Services” which uses Simple Object Access Protocol (SOAP) envelopes to convey information in a transport-independent manner. Web Services may also employ SOAP tunneling to transport across networks that do not directly support SOAP.
According to one aspect of the invention, a modification to conventional Web Services may be employed to convey information important to authentication. For example, a SOAP header may include a signing SOAP header as described in the U.S. provisional application 60/515,461 incorporated by reference above. FIG. 2 schematically illustrates a structure of such a SOAP envelope suitable for performing billing and signing in the context of Web Services. The SOAP envelope 200 includes SOAP headers 201 and a SOAP body 202. The SOAP headers include billing header(s) 211, signing header(s) 212, amongst potentially other headers 213. The signing headers 212 may include the information for authentication. For example, the challenge 131, the secret key 132, the encrypted secret keys 134 and 137, the answer 135, and the data 136 as well as any other useful information may be included in the signing header(s) 212. However, the principles of the present invention are not limited to communication using Web Services. It may be that none of the authenticatee, authenticator, or authentication channels use Web Services in a particular embodiment.
Once authentication has been completed, the authenticatee 101 is now in a position to make a more intelligent decision regarding whether to authorize a service to be provided to the authenticator 102. Since the process has at this stage progressed beyond authentication to authorization, computing entities 101 through 104 will each in the subsequent description of the subsequent drawings be referred to simply as a “computing entity”.
In order to authorize a requested service, the computing entity 101 may as a condition for such authorization require the payment or transfer of electronically transferable items from the computing entity 102. In this description and in the claims, an “electronically transferable item” is any item, whether physical or electronic, whose ownership may be transferred from one entity to another by sending an electronic message. The electronic message need not be purely electronic during the transfer, but may undertake other forms such as optical forms during the transfer. Such transferable items may include money. However, the transferable items may also include any other item that is electronically transferable. For example, the items may be frequent flier miles, movie or opera ticket credits, train tickets, class registration authority, and so forth. Likewise, in order to perform the requested service, the computing entity 101 may transfer electronically transferable items to the computing entity 102.
FIG. 3 illustrates the environment of FIG. 1 in which there are four computing entities 301 through 304. The computing entities 301 through 304 may be the same as described above for computing entities 101 through 104, although this is not required. Computing entities 301 and 303 are in one sphere of trust represented by the area within the dashed lines. Computing entities 302 and 304 are in another sphere of trust represented by the area within the dotted lines. Computing entities 303 and 304 are within yet another sphere of trust as represented the area within the intermittent dotted/dashed lines.
FIG. 3 also shows a message flow showing a way of transferring electronically transferable items between computing entities 301 and 302. Computing entity 304 has authorization information 321 relevant to whether or not computing entity 302 may transfer particular items to computing entity 301. For example, if the computing entity 302 were a SIM card, the items to be transferred may be, for example, money.
The message flow shows how items could be authorized to be transferred and then actually transferred from computing entity 302 to computing entity 301. In order to authorize transfer, the computing entity 301 may inquire (see arrow 311) of computing entity 303 as to whether or not computing entity 302 has authorization to transfer the items. If the computing entity 303 does not already know, the computing entity 303 will make the inquiry (see arrow 312) to computing entity 304 as to whether or not computing entity 302 is authorized to make the transfer. If the computing entity 304 does not already know, the computing entity 304 will make inquiry (see arrow 313) to computing entity 302 about whether to make the transfer. The computing entity 302 may respond (see arrow 314) in the affirmative. Upon receiving this message, or if the computing entity 304 had been pre-authorized to make the charge due to prior communication with computing entity 302, then the computing entity 304 responds (see arrow 315) in the affirmative. Upon receiving this message, or if the computing entity 303 had been pre-authorized to make the charge due to a prior communication with computing entity 304, then the computing entity 303 responds (see arrow 316) in the affirmative. The affirmative confirmations represented by arrows 314 through 316 may also include electronic transfer of the items itself, or an agreement to enforce transfer at a later time.
An alternative embodiment of transfer is illustrated in FIG. 4. In this embodiment, computing entity 402 requests (see arrow 411) that the transfer of items be made. Computing entity 404 responds (see arrow 412) with an approval to transfer the items (see arrow 412) and then debits an account by the items to be transferred. The approval to transfer may be encrypted using secret data 433 known to the computing entities 403 and 404, but not to the computing entities 401 and 402. Computing entity 402 then provides the encrypted approval (see arrow 413) to computing entity 401, which then provides the encrypted approval (see arrow 414) to computing entity 403. The computing entity decrypts the approval using secret data 433 and then credits the account of computing entity 401 or the user of computing entity 401 in the amount of the items being transferred. Upon a subsequent reconciliation or in real-time, computing entity 403 may acquire a credit for the items transferred from computing entity 404.
Thus, transfer of the electronically transferable items is made from the computing entity 402 (or its user) to the computing entity 401 (or its user). Transfer in the other direction from computing entity 401 to computing entity 402 may be accomplished in the same manner as described above only in the symmetrically opposite direction.
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes, which come within the meaning and range of equivalency of the claims, are to be embraced within their scope.

Claims (37)

1. In an environment that includes an authenticatee computing entity, a supplemental authenticatee computing entity, an authenticator computing entity, and a supplemental authenticator computing entity, a method for the authenticator computing entity to authenticate to the authenticatee computing entity using challenge based authentication and without requiring the authenticatee and authenticator computing entities be aware of secret data used for the authentication, the method comprising the following:
an act of the authenticatee computing entity generating secret key data that is not known to the supplemental authenticatee, authenticator or supplemental authenticator computing entities;
an act of the authenticatee computing entity providing the secret key data to the supplemental authenticatee computing entity thereby informing the supplemental authenticatee computing entity of the secret key data;
an act of the supplemental authenticatee computing entity encrypting the secret key data using secret data known to the supplemental authenticatee and supplemental authenticator computing entities, but not known to the authenticatee and authenticator computing entities, the secret data for use in protecting a proper answer to a challenge based on the secret key data;
an act of the authenticatee computing entity acquiring the challenge along with the encrypted secret key data from the supplemental authenticatee computing entity;
an act of the authenticatee computing entity providing the challenge along with the encrypted secret key data to the authenticator computing entity;
an act of the authenticator computing entity providing the challenge along with encrypted secret key data to the supplemental authenticator computing entity;
an act of the supplemental authenticator computing entity decrypting the encrypted secret key data using the secret data known to the supplemental authenticatee and supplemental authenticator computing entities thereby informing the supplemental authenticator computing entity of the secret key data;
an act of the supplemental authenticator computing entity using the secret key data to create a purported answer to the challenge;
an act of the authenticator computing entity acquiring the purported answer to the challenge from the supplemental authenticator computing entity;
an act of the authenticator computing entity providing the purported answer to the authenticatee computing entity; and
an act of the authenticatee computing entity comparing the purported answer to the proper answer to authenticate the authenticator computing entity at the authenticatee computing entity without having to generate an answer to the challenge at the authenticatee computing entity.
2. A method in accordance with claim 1, wherein the act of the authenticatee computing entity acquiring a challenge from the supplemental authenticatee computing entity comprises the following:
an act of the authenticatee computing entity providing a challenge request to the supplemental authenticatee computing entity;
an act of the supplemental authenticatee computing entity generating a challenge in response to the challenge request; and
an act of the supplemental authenticatee computing entity providing the challenge to the authenticatee computing entity in response to the request.
3. A method in accordance with claim 2, wherein the act of the authenticator computing entity acquiring purported answer to the challenge from the supplemental authenticator computing entity comprises the following:
an act of the authenticator computing entity providing the challenge to the supplemental authenticator computing entity; and
an act of the supplemental authenticator computing entity determining purported answer to the challenge; and
an act of the supplemental authenticator computing entity providing the purported answer to the authenticator computing entity.
4. A method in accordance with claim 1, further comprising:
an act of the supplemental authenticatee computing entity providing the challenge along with encrypted secret key data to the authenticatee computing entity.
5. A method in accordance with claim 4, further comprising the following:
an act of the authenticatee and authenticator computing entities communicating using messages that are at least partially secured using the secret key data.
6. A method in accordance with claim 4, wherein the act of the authenticatee computing entity providing the challenge to the authenticator computing entity and the act of the authenticatee computing entity providing the encrypted secret key data to the authenticator computing entity are performed by the authenticatee computing entity providing a single message that includes both the challenge and the encrypted secret key data to the authenticator computing entity.
7. A method in accordance with claim 4, further comprising the following:
an act of the authenticatee computing entity generating a digest of the secret key data combined with one or more other data items;
an act of the authenticator computing entity also generating the digest of the secret key data combined with the one or more other data items; and
an act of the authenticatee and authenticator computing entities communicating using messages that are at least partially secured using the digest.
8. A method in accordance with claim 7, wherein the one or more other data items includes the challenge.
9. A method in accordance with claim 8, wherein the one or more other data items includes the purported answer.
10. A method in accordance with claim 9, wherein the secret key data is first secret key data, wherein the one or more other data items includes second secret key data known to the authenticatee and authenticator computing entities, but not known to the supplemental authenticatee and supplemental authenticator computing entities.
11. A method in accordance with claim 7, wherein the one or more other data items includes the purported answer.
12. A method in accordance with claim 11, wherein the secret key data is first secret key data, wherein the one or more other data items includes second secret key data known to the authenticatee and authenticator computing entities, but not known to the supplemental authenticatee and supplemental authenticator computing entities.
13. A method in accordance with claim 7, wherein the secret key data is first secret key data, wherein the one or more other data items includes second secret key data known to the authenticatee and authenticator computing entities, but not known to the supplemental authenticatee and supplemental authenticator computing entities.
14. A method in accordance with claim 4, wherein the secret key data is first secret key data, the method further comprising:
an act of the authenticator computing entity generating second secret key data;
an act of the authenticator computing entity providing the second secret key data to the supplemental authenticator computing entity;
an act of the supplemental authenticator computing entity encrypting the second secret key data using the secret data known to the supplemental authenticatee and supplemental authenticator computing entities;
an act of the supplemental authenticator computing entity providing the encrypted second secret key data to the authenticator computing entity;
an act of the authenticator computing entity providing the encrypted second secret key data to the authenticatee computing entity;
an act of the authenticatee computing entity providing the encrypted second secret key data to the supplemental authenticatee computing entity;
an act of the supplemental authenticatee computing entity decrypting the encrypted second secret key data using the secret data known to the supplemental authenticatee and supplemental authenticator computing entities; and
an act of the supplemental authenticatee computing entity providing the second secret key data to the authenticatee computing entity.
15. A method in accordance with claim 14, further comprising the following: an act of the authenticatee computing entity generating a digest of the first and second secret key data combined with one or more other data items;
an act of the authenticator computing entity also generating the digest of the first and second secret key data combined with the one or more other data items; and
an act of the authenticatee and authenticator computing entities communicating using messages that are at least partially secured using the digest.
16. A method in accordance with claim 15, wherein the one or more other data items includes the challenge.
17. A method in accordance with claim 16, wherein the one or more other data items includes the purported answer.
18. A method in accordance with claim 17, wherein the one or more other data items includes third secret key data known to the authenticatee and authenticator computing entities, but not known to the supplemental authenticatee and supplemental authenticator computing entities.
19. A method in accordance with claim 15, wherein the one or more other data items includes the purported answer.
20. A method in accordance with claim 19, wherein the one or more other data items includes third secret key data known to the authenticatee and authenticator computing entities, but not known to the supplemental authenticatee and supplemental authenticator computing entities.
21. A method in accordance with claim 15, wherein the one or more other data items includes third secret key data known to the authenticatee and authenticator computing entities, but not known to the supplemental authenticatee and supplemental authenticator computing entities.
22. In an environment that includes an authenticatee computing entity, a supplemental authenticatee computing entity, an authenticator computing entity, and a supplemental authenticator computing entity, a method for the authenticatee computing entity to authenticate the authenticator computing entity using challenge based authentication and without requiring the authenticatee and authenticator computing entities be aware of secret data used for the authentication, the method comprising the following:
an act of authenticatee computing entity generating secret key data that is not known to the supplemental authenticatee, authenticator or supplemental authenticator computing entities;
an act of providing the secret key data to the supplemental authenticatee computing entity thereby informing the supplemental authenticatee computing entity of the secret key data;
an act of the supplemental authenticatee computing entity encrypting the secret key data using secret data to create encrypted secret key data, the secret data known to the supplemental authenticatee and supplemental authenticator computing entities, but not known to the authenticatee and authenticator computing entities, the secret data for use in determining an answer to a challenge;
an act of the authenticatee computing entity acquiring the challenge along with the encrypted secret key data from the supplemental authenticatee computing entity;
an act of the authenticatee computing entity providing the challenge along with the encrypted secret key data to the authenticator computing entity, wherein the authenticator computing entity acquires purported answer to the challenge from the supplemental authenticator computing entity by providing the encrypted secret key data to the supplemental authenticator computing entity for decryption by the supplemental authenticator computing entity, and receiving back the secret key data;
an act of the authenticatee computing entity acquiring the purported answer from the authenticator computing entity; and
an act of the using the purported answer to authenticate the authenticator computing entity.
23. A method in accordance with claim 22, wherein the act of acquiring a challenge from the supplemental authenticatee computing entity comprises the following:
an act of providing a challenge request to the supplemental authenticatee computing entity; and
an act of acquiring proper answer to the challenge request from the supplemental authenticatee computing entity.
24. A method in accordance with claim 22,
wherein the act of using the purported answer to authenticate the authenticator computing entity comprises the following:
an act of matching the purported answer as acquired from the supplemental authenticatee computing entity with appropriate answer as provided by the authenticator computing entity.
25. A method in accordance with claim 22, wherein the act of using the purported answer to authenticate the authenticator computing entity comprises the following:
an act of providing the purported answer to the supplemental authenticatee computing entity; and
an act of receiving from the supplemental authenticatee computing entity an indication that the purported answer is a proper answer for the challenge acquired from the supplemental authenticatee computing entity.
26. A method in accordance with claim 22, further comprising:
an act of the supplemental authenticator computing entity decrypting the secret key data using the secret data known to the supplemental authenticatee and supplemental authenticator computing entities.
27. A method in accordance with claim 26, further comprising the following:
an act of communicating with the authenticator computing entity using messages that are at least partially secured using the secret key data.
28. A method in accordance with claim 26, wherein the act of providing the challenge to the authenticator computing entity and the act of the providing the encrypted secret key data to the authenticator computing entity are performed by providing a single message that includes both the challenge and the encrypted secret key data to the authenticator computing entity.
29. A method in accordance with claim 26, further comprising the following:
an act of the generating a digest of the secret key data combined with one or more other data items;
an act of the communicating with the authenticator computing entity using messages that are at least partially secured using the digest.
30. A computer program product for use in an environment that includes an authenticatee computing entity, a supplemental computing entity, an authenticator computing entity, and a supplemental authenticator computing entity, the computer program product for implementing a method for the authenticatee computing entity to authenticate the authenticator computing entity using challenge based authentication and without requiring the authenticatee and authenticator computing entities be aware of secret data used for the authentication, the computer program product comprising one or more computer readable storage media having thereon computer-executable instructions, that when executed by the authenticatee computing entity, causes the computing entity to perform the method, the method comprising the following:
an act of authenticatee computing entity generating secret key data that is not known to the supplemental authenticatee, authenticator or supplemental authenticator computing entities;
an act of providing the secret key data to the supplemental authenticatee computing entity thereby informing the supplemental authenticatee computing entity of the secret key data;
an act of the supplemental authenticatee computing entity encrypting the secret key data using secret data to create encrypted secret key data, the secret data known to the supplemental authenticatee and supplemental authenticator computing entities, but not known to the authenticatee and authenticator computing entities, the secret data for use in determining an answer to a challenge;
an act of the authenticatee computing entity acquiring the challenge along with the encrypted secret key data from the supplemental authenticatee computing entity;
an act of authenticatee computing entity providing the challenge along with the encrypted secret key data to the authenticator computing entity, wherein the authenticator computing entity acquires purported answer to the challenge from the supplemental authenticator computing entity by providing the encrypted secret key data to the supplemental authenticator computing entity for decryption by the supplemental authenticator computing entity, and receiving back the secret key data;
an act of the authenticatee computing entity acquiring the purported answer from the authenticator computing entity; and
an act of the using the purported answer to authenticate the authenticator computing entity.
31. A computer program product in accordance with claim 30, wherein the act of acquiring a challenge from the supplemental authenticatee computing entity comprises the following:
an act of providing a challenge request to the supplemental authenticatee computing entity; and an act of acquiring proper answer to the challenge request from the supplemental authenticatee computing entity.
32. A computer program product in accordance with claim 31, wherein
the act of using the proper answer to authenticate the authenticator computing entity comprises the following:
an act of matching the purported with the proper answer.
33. A computer program product in accordance with claim 30, wherein the act of using the purported answer to authenticate the authenticator computing entity comprises the following:
an act of providing the purported answer to the supplemental authenticatee computing entity; and
an act of receiving from the supplemental authenticatee computing entity an indication that the purported answer is a proper answer for the challenge.
34. A computer program product in accordance with claim 30, wherein the method further comprises:
an act of the supplemental authenticator computing entity decrypting the secret key data using the secret data known to the supplemental authenticatee and supplemental authenticator computing entities.
35. A computer program product in accordance with claim 34, wherein the method further comprises the following:
an act of communicating with the authenticator computing entity using messages that are at least partially secured using the secret key data.
36. A computer program product in accordance with claim 34, wherein the act of providing the challenge to the authenticator computing entity and the act of the providing the encrypted secret key data to the authenticator computing entity are performed by providing a single message that includes both the challenge and the encrypted secret key data to the authenticator computing entity.
37. A computer program product in accordance with claim 34, wherein the method further comprises the following:
an act of the generating a digest of the secret key data combined with one or more other data items;
an act of the communicating with the authenticator computing entity using messages that are at least partially secured using the digest.
US10/917,786 2003-10-29 2004-08-13 Challenge-based authentication without requiring knowledge of secret authentication data Expired - Fee Related US7519815B2 (en)

Priority Applications (19)

Application Number Priority Date Filing Date Title
US10/917,786 US7519815B2 (en) 2003-10-29 2004-08-13 Challenge-based authentication without requiring knowledge of secret authentication data
TW093129291A TW200518552A (en) 2003-10-29 2004-09-27 Challenge-based authentication without requiring knowledge of secret authentication data
IL164320A IL164320A (en) 2003-10-29 2004-09-28 Challenge-based authentication without requiring knowledge of secret authentication data
CA002482696A CA2482696A1 (en) 2003-10-29 2004-09-28 Challenge-based authentication without requiring knowledge of secret authentication data
EP04023087A EP1528707A3 (en) 2003-10-29 2004-09-28 Challenge-based authentication without requiring knowledge of secret authentication data
NO20044126A NO20044126L (en) 2003-10-29 2004-09-29 Challenge-based authentication without the need for knowledge of secret authentication data
SG200405722A SG111217A1 (en) 2003-10-29 2004-09-29 Challenge-based authentication without requiring knowledge of secret authentication data
MYPI20043996A MY141019A (en) 2003-10-29 2004-09-29 Challenge-based authentication without requiring knowledge of secret authentication
AU2004218603A AU2004218603A1 (en) 2003-10-29 2004-10-04 Challenge-based authentication without requiring knowledge of secret authentication data
KR1020040081815A KR20050040705A (en) 2003-10-29 2004-10-13 Challenge-based authentication without requiring knowledge of secret authentication data
MXPA04010160A MXPA04010160A (en) 2003-10-29 2004-10-15 Challenge-based authentication without requiring knowledge of secret authentication data.
BR0404490-8A BRPI0404490A (en) 2003-10-29 2004-10-20 Challenge-based authentication without knowledge of secret authentication data
CO04106330A CO5630046A1 (en) 2003-10-29 2004-10-22 CHALLENGE-BASED AUTHENTICATION WITHOUT REQUIREING KNOWLEDGE OF CONFIDENTIAL AUTHENTICATION DATA
NZ536222A NZ536222A (en) 2003-10-29 2004-10-28 Challenge-based authentication without requiring knowledge of secret authentication data
RU2004131500/09A RU2363985C2 (en) 2003-10-29 2004-10-28 Call-based authentication, without need for knowledge of secret authentication data
JP2004316989A JP4807944B2 (en) 2003-10-29 2004-10-29 Challenge-based authentication that does not require knowledge of secret authentication data
CN2004100899042A CN1612522B (en) 2003-10-29 2004-10-29 Challenge-based authentication without requiring knowledge of secret authentication data
US10/988,875 US7657745B2 (en) 2003-10-29 2004-11-15 Secure electronic transfer without requiring knowledge of secret data
US11/192,609 US20050289082A1 (en) 2003-10-29 2005-07-29 Secure electronic transfer without requiring knowledge of secret data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US51546103P 2003-10-29 2003-10-29
US10/917,786 US7519815B2 (en) 2003-10-29 2004-08-13 Challenge-based authentication without requiring knowledge of secret authentication data

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US10/988,875 Continuation-In-Part US7657745B2 (en) 2003-10-29 2004-11-15 Secure electronic transfer without requiring knowledge of secret data
US11/192,609 Continuation-In-Part US20050289082A1 (en) 2003-10-29 2005-07-29 Secure electronic transfer without requiring knowledge of secret data

Publications (2)

Publication Number Publication Date
US20050097325A1 US20050097325A1 (en) 2005-05-05
US7519815B2 true US7519815B2 (en) 2009-04-14

Family

ID=34426330

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/917,786 Expired - Fee Related US7519815B2 (en) 2003-10-29 2004-08-13 Challenge-based authentication without requiring knowledge of secret authentication data

Country Status (17)

Country Link
US (1) US7519815B2 (en)
EP (1) EP1528707A3 (en)
JP (1) JP4807944B2 (en)
KR (1) KR20050040705A (en)
CN (1) CN1612522B (en)
AU (1) AU2004218603A1 (en)
BR (1) BRPI0404490A (en)
CA (1) CA2482696A1 (en)
CO (1) CO5630046A1 (en)
IL (1) IL164320A (en)
MX (1) MXPA04010160A (en)
MY (1) MY141019A (en)
NO (1) NO20044126L (en)
NZ (1) NZ536222A (en)
RU (1) RU2363985C2 (en)
SG (1) SG111217A1 (en)
TW (1) TW200518552A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090296930A1 (en) * 2008-05-28 2009-12-03 Microsoft Corporation Techniques to provision and manage a digital telephone to authenticate with a network
US20110145900A1 (en) * 2009-12-11 2011-06-16 Canon Kabushiki Kaisha Delegating authentication using a challenge/response protocol
US20120167169A1 (en) * 2010-12-22 2012-06-28 Canon U.S.A., Inc. Method, system, and computer-readable storage medium for authenticating a computing device
US8856954B1 (en) * 2010-12-29 2014-10-07 Emc Corporation Authenticating using organization based information

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060294383A1 (en) * 2005-06-28 2006-12-28 Paula Austel Secure data communications in web services
EP1873674B1 (en) 2005-12-19 2019-09-04 Nippon Telegraph And Telephone Corporation Terminal identification method, authentication method, authentication system, server, terminal, radio base station, program, and recording medium
US8301897B2 (en) * 2006-08-23 2012-10-30 Cisco Technology, Inc. Challenge-based authentication protocol
EP2186332A4 (en) * 2007-09-11 2012-02-08 Lg Electronics Inc Secure signing method, secure authentication method and iptv system
FR2955682B1 (en) * 2010-01-28 2012-03-16 Paycool Int Ltd METHOD FOR PROVIDING A DYNAMIC CODE THROUGH A TELEPHONE
WO2011094869A1 (en) * 2010-02-05 2011-08-11 Lipso Systèmes Inc. Secure authentication system and method
US8839390B2 (en) * 2011-03-08 2014-09-16 Microsoft Corporation Grouping personal accounts to tailor a web service
US9294267B2 (en) * 2012-11-16 2016-03-22 Deepak Kamath Method, system and program product for secure storage of content
US10764068B2 (en) * 2018-01-30 2020-09-01 EMC IP Holding Company LLC Computer system employing challenge/response protocol with detection of non-unique incorrect responses
CN108449182B (en) * 2018-04-09 2021-10-01 南京网觉软件有限公司 Mobile phone verification login system and method based on display device electromagnetic radiation communication

Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930804A (en) 1997-06-09 1999-07-27 Philips Electronics North America Corporation Web-based biometric authentication system and method
US6263446B1 (en) * 1997-12-23 2001-07-17 Arcot Systems, Inc. Method and apparatus for secure distribution of authentication credentials to roaming users
WO2001084771A1 (en) 2000-05-01 2001-11-08 Xtec, Incorporated Methods and apparatus for securely conducting authenticated transactions
US20020064149A1 (en) 1996-11-18 2002-05-30 Elliott Isaac K. System and method for providing requested quality of service in a hybrid network
US20020114469A1 (en) * 2001-02-21 2002-08-22 Stefano Faccin Method and system for delegation of security procedures to a visited domain
WO2003042830A1 (en) 2001-11-14 2003-05-22 Igt Method of verifying entitlement to participate in a gaming event from a remote location
US20030110046A1 (en) 2001-12-06 2003-06-12 Nokia Corporation Method and device for dispensing electronic information
US6606711B2 (en) 1998-11-30 2003-08-12 Microsoft Corporation Object security boundaries
US20030157925A1 (en) 2002-02-21 2003-08-21 Sorber Russell E. Communication unit and method for facilitating prepaid communication services
US20030163733A1 (en) * 2002-02-28 2003-08-28 Ericsson Telefon Ab L M System, method and apparatus for federated single sign-on services
US20040104807A1 (en) 2002-10-16 2004-06-03 Frank Ko Networked fingerprint authentication system and method
US6772336B1 (en) 1998-10-16 2004-08-03 Alfred R. Dixon, Jr. Computer access authentication method
WO2004077208A2 (en) 2003-02-27 2004-09-10 Rand Afrikaans University Authentication system and method
US20040179690A1 (en) 2003-03-13 2004-09-16 New Mexico Technical Research Foundation Dynamic security authentication for wireless communication networks
US20040205344A1 (en) 2000-07-17 2004-10-14 Otway David John Strong mutual authentication of devices
US20040254867A1 (en) 2003-06-10 2004-12-16 Kagi, Inc. Method and apparatus for verifying financial account information
US6851051B1 (en) * 1999-04-12 2005-02-01 International Business Machines Corporation System and method for liveness authentication using an augmented challenge/response scheme
US20050165784A1 (en) 2004-01-23 2005-07-28 Garrison Gomez System and method to store and retrieve identifier associated information content
US20050182935A1 (en) 2003-10-29 2005-08-18 Microsoft Corporation Secure electronic transfer without requiring knowledge of secret data
US6947902B2 (en) 2001-05-31 2005-09-20 Infonox On The Web Active transaction generation, processing, and routing system
US20050289082A1 (en) 2003-10-29 2005-12-29 Microsoft Corporation Secure electronic transfer without requiring knowledge of secret data
US6983377B1 (en) * 1999-03-08 2006-01-03 Software Ag Method for checking user access
US20060069926A1 (en) 1995-02-13 2006-03-30 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US7191151B1 (en) 2001-08-23 2007-03-13 Paypal, Inc. Instant availability of electronically transferred funds
US7209889B1 (en) 1998-12-24 2007-04-24 Henry Whitfield Secure system for the issuance, acquisition, and redemption of certificates in a transaction network

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5668876A (en) 1994-06-24 1997-09-16 Telefonaktiebolaget Lm Ericsson User authentication method and apparatus
US5991407A (en) * 1995-10-17 1999-11-23 Nokia Telecommunications Oy Subscriber authentication in a mobile communications system
US5815665A (en) 1996-04-03 1998-09-29 Microsoft Corporation System and method for providing trusted brokering services over a distributed network
CA2356420A1 (en) 2001-08-30 2003-02-28 Wmode Inc. Authentication and non-repudiation of a subscriber on a public network
US20030096595A1 (en) * 2001-11-21 2003-05-22 Michael Green Authentication of a mobile telephone
US20030120920A1 (en) 2001-12-20 2003-06-26 Svensson Sven Anders Borje Remote device authentication

Patent Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060069926A1 (en) 1995-02-13 2006-03-30 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US20020064149A1 (en) 1996-11-18 2002-05-30 Elliott Isaac K. System and method for providing requested quality of service in a hybrid network
US5930804A (en) 1997-06-09 1999-07-27 Philips Electronics North America Corporation Web-based biometric authentication system and method
US6263446B1 (en) * 1997-12-23 2001-07-17 Arcot Systems, Inc. Method and apparatus for secure distribution of authentication credentials to roaming users
US6772336B1 (en) 1998-10-16 2004-08-03 Alfred R. Dixon, Jr. Computer access authentication method
US6606711B2 (en) 1998-11-30 2003-08-12 Microsoft Corporation Object security boundaries
US7209889B1 (en) 1998-12-24 2007-04-24 Henry Whitfield Secure system for the issuance, acquisition, and redemption of certificates in a transaction network
US6983377B1 (en) * 1999-03-08 2006-01-03 Software Ag Method for checking user access
US6851051B1 (en) * 1999-04-12 2005-02-01 International Business Machines Corporation System and method for liveness authentication using an augmented challenge/response scheme
WO2001084771A1 (en) 2000-05-01 2001-11-08 Xtec, Incorporated Methods and apparatus for securely conducting authenticated transactions
US20040205344A1 (en) 2000-07-17 2004-10-14 Otway David John Strong mutual authentication of devices
US20020114469A1 (en) * 2001-02-21 2002-08-22 Stefano Faccin Method and system for delegation of security procedures to a visited domain
US6947902B2 (en) 2001-05-31 2005-09-20 Infonox On The Web Active transaction generation, processing, and routing system
US7191151B1 (en) 2001-08-23 2007-03-13 Paypal, Inc. Instant availability of electronically transferred funds
WO2003042830A1 (en) 2001-11-14 2003-05-22 Igt Method of verifying entitlement to participate in a gaming event from a remote location
US20030110046A1 (en) 2001-12-06 2003-06-12 Nokia Corporation Method and device for dispensing electronic information
US20030157925A1 (en) 2002-02-21 2003-08-21 Sorber Russell E. Communication unit and method for facilitating prepaid communication services
US20030163733A1 (en) * 2002-02-28 2003-08-28 Ericsson Telefon Ab L M System, method and apparatus for federated single sign-on services
US20040104807A1 (en) 2002-10-16 2004-06-03 Frank Ko Networked fingerprint authentication system and method
WO2004077208A2 (en) 2003-02-27 2004-09-10 Rand Afrikaans University Authentication system and method
US20040179690A1 (en) 2003-03-13 2004-09-16 New Mexico Technical Research Foundation Dynamic security authentication for wireless communication networks
US20040254867A1 (en) 2003-06-10 2004-12-16 Kagi, Inc. Method and apparatus for verifying financial account information
US20050289082A1 (en) 2003-10-29 2005-12-29 Microsoft Corporation Secure electronic transfer without requiring knowledge of secret data
US20050182935A1 (en) 2003-10-29 2005-08-18 Microsoft Corporation Secure electronic transfer without requiring knowledge of secret data
US20050165784A1 (en) 2004-01-23 2005-07-28 Garrison Gomez System and method to store and retrieve identifier associated information content

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Menezes, Alfred et al. Handbook of Applied Cryptography, CRC Press 1997, pp. 570-572. *
Office Action dated Jun. 20, 2008 cited in related U.S. Appl. No. 10/988,875 (Copy Attached).
Office Action dated Nov. 26, 2008 cited in U.S. Appl. No. 11/192,609 (Copy Attached).

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090296930A1 (en) * 2008-05-28 2009-12-03 Microsoft Corporation Techniques to provision and manage a digital telephone to authenticate with a network
US20110145900A1 (en) * 2009-12-11 2011-06-16 Canon Kabushiki Kaisha Delegating authentication using a challenge/response protocol
US8484708B2 (en) 2009-12-11 2013-07-09 Canon Kabushiki Kaisha Delegating authentication using a challenge/response protocol
US20120167169A1 (en) * 2010-12-22 2012-06-28 Canon U.S.A., Inc. Method, system, and computer-readable storage medium for authenticating a computing device
US8839357B2 (en) * 2010-12-22 2014-09-16 Canon U.S.A., Inc. Method, system, and computer-readable storage medium for authenticating a computing device
US8856954B1 (en) * 2010-12-29 2014-10-07 Emc Corporation Authenticating using organization based information

Also Published As

Publication number Publication date
KR20050040705A (en) 2005-05-03
NO20044126L (en) 2005-05-02
EP1528707A2 (en) 2005-05-04
MY141019A (en) 2010-02-25
JP4807944B2 (en) 2011-11-02
BRPI0404490A (en) 2005-06-21
CN1612522B (en) 2010-05-12
NZ536222A (en) 2006-10-27
MXPA04010160A (en) 2005-07-05
JP2005137011A (en) 2005-05-26
TW200518552A (en) 2005-06-01
EP1528707A3 (en) 2009-07-15
CO5630046A1 (en) 2006-04-28
IL164320A0 (en) 2005-12-18
US20050097325A1 (en) 2005-05-05
SG111217A1 (en) 2005-05-30
CN1612522A (en) 2005-05-04
RU2004131500A (en) 2006-04-10
RU2363985C2 (en) 2009-08-10
IL164320A (en) 2010-04-15
AU2004218603A1 (en) 2005-05-19
CA2482696A1 (en) 2005-04-29

Similar Documents

Publication Publication Date Title
US7352867B2 (en) Method of preventing unauthorized distribution and use of electronic keys using a key seed
US7350076B1 (en) Scheme for device and user authentication with key distribution in a wireless network
US6993652B2 (en) Method and system for providing client privacy when requesting content from a public server
US7231663B2 (en) System and method for providing key management protocol with client verification of authorization
US5509071A (en) Electronic proof of receipt
US7653713B2 (en) Method of measuring round trip time and proximity checking method using the same
US20080115199A1 (en) Scheme for device and user authentication with key distribution in a wireless network
US7519815B2 (en) Challenge-based authentication without requiring knowledge of secret authentication data
US20020018570A1 (en) System and method for secure comparison of a common secret of communicating devices
US20050289082A1 (en) Secure electronic transfer without requiring knowledge of secret data
US7657745B2 (en) Secure electronic transfer without requiring knowledge of secret data
KR100349888B1 (en) PKI system for and method of using micro explorer on mobile terminals
US9172679B1 (en) Secure intermediation system and method
ZA200407858B (en) Challenge-based authentication without requiring knowledge of secret authentication data
JPH11331142A (en) Method and device for managing public key certificate
Li et al. An authentication protocol for pervasive computing
Khan et al. Non Repudiation in M-Commerce Using Joint Signature Scheme
Hölzl et al. Extensibility in a Privacy-preserving eID: Towards a Mobile eID System for Real-world Identification and Offline Verification

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MORRIS, MAX G.;KALER, CHRISTOPHER G.;REEL/FRAME:015432/0503;SIGNING DATES FROM 20041130 TO 20041207

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20130414

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034766/0001

Effective date: 20141014