USPatent applicationPatented

Anonymous entity authentication method and system

Granted 26 Apr 2016 · 2 office actions

Life of the application

10 dated events
⤢ drag to zoom20122014201620182020202220242026202820302032ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

An anonymous entity authentication method includes the steps of: an entity B sending RB and IGB; an entity A sending RB, R′A, IGA and IGB to a trusted third party TP, the trusted third party TP checking a group GA and a group GB against IGA and IGB for legality; the trusted third party TP returning ResGA, ResGB and a token TokenTA or returning ResGA, ResGB, TokenTA 1 and TokenTA 2 to the entity A; the entity A sending TokenAB and IGA to the entity B for authentication by the entity B; and the entity B sending TokenBA to the entity A for authentication by the entity A. In this solution, anonymous entity authentication can be performed without passing identity information of the authenticated entity itself to the opposite entity. Furthermore this solution further relates to an anonymous entity authentication apparatus and a trusted third party.

Description

12 parts
›This application is a US National Stage of…

This application is a US National Stage of International Application No. PCT/CN2011/077024, filed on 11 Jul. 2011, designating the United States, and claiming the benefit of Chinese Patent Application No. 201010546320.9, filed with the Chinese Patent Office on Nov. 12, 2010 and entitled “Anonymous entity authentication method and system”, which is hereby incorporated by reference in its entirety.

›FIELD OF THE INVENTION

The present invention relates to the field of entity authentication and particularly to an anonymous entity authentication method and system.

›BACKGROUND OF THE INVENTION

At present, an entity authentication method using an asymmetric cryptographic technique involves two scenarios in which there is an online trusted third party involving and in which there is no trusted third party involving, where the identity of an authenticated entity can be verified for legality through entity authentication, and also an authenticator can further obtain identity information of the authenticated entity, but such a scenario may arise in real life that the authenticated entity would not like to have its identity information disclosed. For example, when people vote on some sensitive event, e.g., voting on a personal appointment decision, electronic bidding, etc., anonymous voting is desirable, that is, their own voting opinions are signed without disclosing their identities. Thus there is a need of an anonymous entity authentication method capable of both authenticating the identity of an entity and protecting identity information of the authenticated entity from being exposed.

›SUMMARY OF THE INVENTION

In order to address the foregoing technical problem in the prior art, the invention proposes an anonymous entity authentication method and system.

An anonymous entity authentication method includes the steps of:

an entity B sending a message 1 to an entity A to initiate an authentication process;

the entity A sending a message 2 to a trusted third party TP, wherein the message 2 includes an identity I GA of a group GA where the entity A resides;

the trusted third party TP verifying the group GA against I GA for legality upon reception of the message 2 ; and returning a message 3 to the entity A, wherein the message 3 includes a verification result Res GA of the group GA and a first token including a signature of the trusted third party TP;

the entity A sending a message 4 to the entity B upon reception of the message 3 , wherein the message 4 includes I GA and a second token including Res GA , the first token and a signature of the entity A; and

the entity B verifying the message 4 upon reception of the message 4 and determining from a verification result the legality of the entity A.

An anonymous entity authentication apparatus includes:

a first message receiving unit configured to receive a message 1 sent by an entity B;

a first message sending unit configured to send a message 2 to a trusted third party TP, wherein the message 2 includes an identity I GA of a group GA where the anonymous entity authentication apparatus resides;

a second message receiving unit configured to receive a message 3 returned from the trusted third party TP, wherein the message 3 includes a verification result Res GA of the group GA and a first token including a signature of the trusted third party TP; and

a second message sending unit configured to send a message 4 to the entity B upon reception of the message 3 , wherein the message 4 includes I GA and a second token including Res GA , the first token and a signature of the entity A.

An anonymous entity authentication apparatus includes:

a first message sending unit configured to send a message 1 to an entity A to initiate an authentication process;

a first message receiving unit configured to receive a message 4 sent by the entity A, wherein the message 4 includes an identity I GA of a group GA and a second token including a verification result Res GA of a trusted third party TP on the group GA, a first token and a signature of the entity A, and the first token includes a signature of the trusted third party TP; and

an entity authenticating unit configured to verify the message 4 upon reception of the message 4 and to determine from a verification result the legality of the entity A.

A trusted third party apparatus includes:

a message receiving unit configured to receive a message 2 sent by an entity A, wherein the message 2 includes an identity I GA of a group GA where the entity A resides; and

a group verifying unit configured to verify the group GA against I GA for legality upon reception of the message 2 and to return a message 3 to the entity A, wherein the message 3 includes a verification result Res GA of the group GA and a first token comprising a signature of the trusted third party apparatus.

In the invention, an authenticated entity will not send its own identity information to an opposite entity or a trusted third party but will send only identity information of a group where it resides to the opposite entity or the trusted third party for verification, and a verification result will be passed to the requesting opposite entity. The opposite entity can verify a signature of the authenticated entity simply with a result of verification by the trusted third party on the group where the authenticated entity resides to thereby authenticate the identity of the authenticated entity. Throughout the authentication process, the identity information of the authenticated entity will be neither disclosed nor passed to the opposite entity to thereby avoid the identity information of the authenticated entity from being exposed. The invention defines an anonymous entity authentication mechanism capable of protecting identity information of an authenticated entity, as compared with the traditional entity authentication mechanism.

›BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic flow chart of a method according to an embodiment of the invention;

FIG. 2 is a schematic diagram of a preferred implementation of an anonymous entity authentication system according to a first embodiment of the invention;

FIG. 3 is a schematic diagram of a preferred implementation of an anonymous entity authentication system according to a second embodiment of the invention;

FIG. 4 is a schematic structural diagram of an anonymous entity authentication apparatus according to an embodiment of the invention;

FIG. 5 is a schematic structural diagram of another anonymous entity authentication apparatus according to an embodiment of the invention; and

FIG. 6 is schematic structural diagram of a trusted third party apparatus according to an embodiment of the invention.

›DETAILED DESCRIPTION OF THE EMBODIMENTS · 1 of 7

A method according to the invention involves entities including authenticated entities A and B, groups GA and GB, and a Trusted third Party (TP). The entities A and B reside respectively in the groups GA and GB as members of the groups where they reside respectively. The Trusted third Party (TP) is a trusted third party of the entities A and B and the groups GA and GB to provide an authentication service for the entities. Before being authenticated, the entities A and B possess their own private keys respectively, the groups GA and GB possess their own group public keys respectively, and against signatures generated using their own private keys, the entities A and B can be verified using the pubic keys of the groups where they reside respectively.

The following notations are defined for the sake of convenience:

Valid GX indicates the validity of a certificate Cert GX (X represents A or B, where A refers to the entity A, and B refers to the entity B); PublicKey GX is a public key of a group GX; I GX is an identity of the group GX, which can be the certificate Cert GX or a distinguishing identifier GX of the group; Res GX indicates a verification result of the group GX consisted of the certificate Cert GX and the validity thereof Valid GX or of the group GX and the public key thereof PublicKey GX ; Token is a token field; sSY(M) is a signature of Y on a message M (Y represents A or B or T, where T refers to the trusted third party TP here and hereinafter); and Text is an optional text. “y∥z” indicates a result of concatenating sequentially a data item y and a data item z in that order.

Referring to FIG. 1 , an embodiment of the invention provides an anonymous entity authentication method, where the method includes the following steps:

Step 10: An entity B sends a message 1 to an entity A to initiate an authentication process;

Step 11: The entity A sends a message 2 to a trusted third party TP, where the message 2 includes an identity I GA of a group GA where the entity A resides;

Step 12: The trusted third party TP verifies the group GA against I GA for legality upon reception of the message 2 ; and returns a message 3 to the entity A, where the message 3 includes a verification result Res GA of the group GA and a first token including a signature of the trusted third party TP;

Step 13: The entity A sends a message 4 to the entity B upon reception of the message 3 , where the message 4 includes I GA and a second token including Res GA , the first token and a signature of the entity A; and

Step 14: The entity B verifies the message 4 upon reception of the message 4 and determines from a verification result the legality of the entity A.

Preferably after the entity A receives the message 3 and before the entity A sends the message 4 to the entity B, the entity A can determine whether a random number R′ A generated by the entity A in the message 2 is consistent with a random number R′ A included in the signature of the trusted third party TP; and when the random number R′ A generated by the entity A in the message 2 is determined as being consistent with the random number R′ A included in the signature of the trusted third party TP, the entity A sends the message 4 to the entity B; otherwise, the authentication process ends.

Specifically the entity B can verify the message 4 and determine from the verification result the legality of the entity A particularly in the following step a to step c:

a. The entity B verifies whether the signature of the trusted third party TP is valid and determines whether a random number R B generated by the entity B in the message 1 is consistent with a random number R B included in the signature of the trusted third party TP, and if both are positive, then the entity B performs the step b; otherwise, the entity B determines the entity A as being illegal and can further send a subsequent message 5 ;

b. If the entity B determines, from Res GA , the group GA as being legal and valid, then the entity B performs the step c; otherwise, the entity B determines the entity A as being illegal and can further send the subsequent message 5 ; and

c. The entity B obtains a public key of the group GA by I GA , verifies, against the public key, whether the signature of the entity A is valid, determines whether a distinguishing identifier of a group GB is consistent with a group distinguishing identifier GB included in the signature of the entity A and determines whether the random number R B generated by the entity B in the message 1 is consistent with a random number R B included in the signature of the entity A, and if all are positive, then the entity B determines the entity A as being legal; otherwise, the entity B determines the entity A as being illegal.

Furthermore the message 1 further includes an identity I GB of a group GB where the entity B resides; and the message 2 further include I GB , the trusted third party TP further verifies the group GB against I GB for legality, and the message 3 further includes a verification result Res GB of the group GB; and

Correspondingly in the step 14, after the entity B determines from the verification result the legality of the entity A, the entity B sends the message 5 to the entity A, where the message 5 includes a third token including a signature of the entity B; and the entity A verifies the message 5 upon reception of the message 5 and determines from a verification result the legality of the entity B.

Specifically the entity A can verify the message 5 and determine from the verification result the legality of the entity B particularly in the following two approaches:

In a first approach, there are the following step a to step c:

a. The entity A verifies whether the signature of the trusted third party TP is valid and determines whether the random number R′ A generated by the entity A in the message 2 is consistent with the random number R′ A included in the signature of the trusted third party TP; and if they are consistent, then the entity A performs the step b; otherwise, the entity A determines the entity B as being illegal, and the flow ends;

›DETAILED DESCRIPTION OF THE EMBODIMENTS · 2 of 7

b. If the entity A determines, from Res GB , the group GB as being legal and valid, then the entity A performs the step c; otherwise, the entity A determines the entity B as being illegal, and the flow ends; and

c. The entity A obtains a public key of the group GB by I GB , verifies against the public key whether the signature of the entity B is valid, determines whether a distinguishing identifier of the group GA is consistent with a group distinguishing identifier GA included in the signature of the entity B and determines whether a random number R A generated by the entity A in the message 4 is consistent with a random number R A included in the signature of the entity B, and if all are positive, then the entity A determines the entity B as being legal; otherwise, the entity A determines the entity B as being illegal.

In a second approach, before the entity A sends the message 4 to the entity B, firstly the entity A can verify whether the signature of the trusted third party TP is valid and determine whether the random number R′ A generated by the entity A in the message 2 is consistent with the random number R′ A included in the signature of the trusted third party TP; and when the signature of the trusted third party TP is verified as being valid and the random number R′ A generated by the entity A in the message 2 is determined as being consistent with the random number R′ A included in the signature of the trusted third party TP, then the entity A sends the message 4 to the entity B; and

Correspondingly the entity A can verify the entity B for legality particularly in the following step a to step b:

a. If the entity A determines from Res GB the group GB as being legal and valid, then the entity A performs the step b; otherwise, the entity A determines the entity B as being illegal, and the flow ends; and

b. The entity A obtains a public key of the group GB by I GB , verifies, against the public key, whether the signature of the entity B is valid, determines whether a distinguishing identifier of the group GA is consistent with a group distinguishing identifier GA included in the signature of the entity B and determines whether a random number R A generated by the entity A in the message 4 is consistent with a random number R A included in the signature of the entity B, and if all are positive, then the entity A determines the entity B as being legal; otherwise, the entity A determines the entity B as being illegal.

The trusted third party TP can verify the group GA against I GA for legality particularly in the following two approaches:

In a first approach, if I GA in the message 2 is the distinguishing identifier GA of the group GA, then the trusted third party TP searches for a valid public key PublicKey GA of the group GA, and if it is found, then the trusted third party TP determines GA as being legal; otherwise, the trusted third party TP determines GA as being illegal; and

In a second approach, if I GA in the message 2 is a certificate Cert GA of the group GA, then the trusted third party TP checks the certificate Cert GA for validity Valid GA , and if Cert GA is valid, then the trusted third party TP determines GA as being legal; otherwise, the trusted third party TP determines GA as being illegal.

Alike the trusted third party TP can verify the group GB against I GB for legality particularly in the following two approaches:

In a first approach, if I GB in the message 2 is the distinguishing identifier GB of the group GB, then the trusted third party TP searches for a valid public key PublicKey GB of the group GB, and if it is found, then the trusted third party TP determines GB as being legal; otherwise, the trusted third party TP determines the GB as being illegal; and

In a second approach, if I GB in the message 2 is a certificate Cert GB of the group GB, then the trusted third party TP checks the certificate Cert GB for validity Valid GB , and if Cert GB is valid, then the trusted third party TP determines GB as being legal; otherwise, the trusted third party TP determines the GB as being illegal.

In this method, the first token can include a token TokenTA, or the first token includes tokens TokenTA 1 and TokenTA 2 , where TokenTA includes a signature of the trusted third party TP on a message including R′ A , R B , Res GB and Res GA , TokenTA 1 includes a signature of the trusted third party TP on a message including R′ A and Res GB , and TokenTA 2 includes a signature of the trusted third party TP on a message including R B and Res GA ; and R′ A is the random number generated by the entity A included in the message 2 , that is, the message 2 can further include the random number generated by the entity A; and R B is the random number generated by the entity B included in the message 1 , and the message 2 also carries R B .

For example, TokenTA=sS T (R′ A ∥R B ∥Res GB ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

TokenTA 1 =sS T (R′ A ∥Res GB ∥Text 4 ) and TokenTA 2 =sS T (R B ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

The second token includes a token TokenAB including R A , R′ A , Res GB , Res GA , TokenTA and a signature of the entity A on a message including GA, R A , GB, R B , Res GB , Res GA and TokenTA; or

The second token includes R A , Res GA , TokenTA 2 and a signature of the entity A on a message including GA, R A , GB, R B and TokenTA 2 ; and R A is the random number generated by the entity A included in the message 4 . For example:

TokenAB=R A ∥R′ A ∥Text 7 ∥Res GB ∥Res GA ∥TokenTA∥sS A (GA∥R A ∥GB∥R B ∥Res GB ∥Res GA ∥TokenTA∥Text 6 ), where Text 6 and Text 7 are optional texts, and sS A is the signature of the entity A; or

TokenAB=R A ∥Res GA ∥Text 7 ∥TokenTA 2 ∥sS A (GA∥R A ∥GB∥R B ∥TokenTA 2 ∥Text 6 ), where Text 6 and Text 7 are optional texts, and sS A is the signature of the entity A;

The third token includes TokenBA including a signature of the entity B on a message including GB, R B , GA and R A ; and R A is the random number generated by the entity A included in the message 4 , that is, the message 4 can further include the random number generated by the entity A; and R B is the random number generated by the entity B included in the message 1 , that is, the message 1 can further include the random number generated by the entity B.

›DETAILED DESCRIPTION OF THE EMBODIMENTS · 3 of 7

For example, TokenBA=Text 9 ∥sS B (GB∥R B ∥GA∥R A ∥Text 8 ), where Text 8 and Text 9 are optional texts, and sS B is the signature of the entity B.

In the invention, the message 1 , the message 2 and the message 3 further include optional texts respectively. The various random numbers carried in the messages can be replaced with time labels or sequence numbers.

First Embodiment

Referring to FIG. 2 , this embodiment includes a flow of only anonymous authentication on an entity A by an entity B, particularly as follows:

Step (1): The entity B sends a message 1 to the entity A, where the message 1 includes a random number R B generated by the entity B, an identity I GB of a group GB and an optional text Text 1 .

Step (2): The entity A sends a message 2 to a trusted third party TP, where the message 2 includes R B , a random number R′ A generated by the entity A, an identity I GA of a group GA, the identity I GB of the group GB and an optional text Text 2 .

Step (3): The trusted third party TP checks the group GA and the group GB against the identities I GA and I GB for legality upon reception of the message 2 .

The trusted third party TP can check the group GA and the group GB for legality particularly in the following several approaches:

In the message 2 , if the identity I GA of the group GA is a distinguishing identifier GA of the group GA, then the trusted third party TP searches for a valid public key PublicKey GA of the group GA, or if the identity I GA of the group GA is a certificate Cert GA of the group GA, then the trusted third party TP checks the certificate Cert GA for validity Valid GA ; and if the identity I GB of the group GB is a distinguishing identifier GB of the group GB, then the trusted third party TP searches for a valid public key PublicKey GB of the group GB, or if the identity I GB of the group GB is a certificate Cert GB of the group GB, then the trusted third party TP checks the certificate Cert GB for validity Valid GB .

Step (4): The trusted third party TP returns a message 3 to the entity A after checking the group GA and the group GB for legality, where the message 3 includes group verification results Res GA and Res GB , a token TokenTA and an optional text Text 5 or includes group verification results Res GA and Res GB , tokens TokenTA 1 and TokenTA 2 and an optional text Text 5 . Particularly TokenTA includes a signature of the trusted third party TP on a message including R′ A , R B , Res GB and Res GA , TokenTA 1 includes a signature of the trusted third party TP on a message including R′ A and Res GB , and TokenTA 2 includes a signature of the trusted third party TP on a message including R B and Res GA . A preferred embodiment of Token according to the invention is TokenTA=sS T (R′ A ∥R B ∥Res GB ∥Res GA ∥Text 3 ). A preferred embodiment of TokenTA 1 and TokenTA 2 according to the invention is TokenTA 1 =sS T (R′ A ∥Res GB ∥Text 4 ) and TokenTA 2 =sS T (R B ∥Res GA ∥Text 3 ).

Step (5): The entity A sends a message 4 to the entity B upon reception of the message 3 , where the message 4 includes a token TokenAB and the group identity I GA . Particularly TokenAB includes R A , R′ A , Res GB , Res GA , TokenTA and a signature of the entity A on a message including GA, R A , GB, R B , Res GB , Res GA and TokenTA, and a preferred embodiment according to the invention is TokenAB=R A ∥R′ A ∥Text 7 ∥Res GB ∥Res GA ∥TokenTA∥sS A (GA∥R A ∥GB∥R B ∥Res GB ∥Res GA ∥TokenTA∥Text 6 ); or TokenAB includes R A , Res GA , TokenTA 2 and a signature of the entity A on a message including GA, R A , GB, R B and TokenTA 2 , and a preferred embodiment according to the invention is TokenAB=R A ∥Res GA ∥Text 7 ∥TokenTA 2 ∥sS A (GA∥R A ∥GB∥R B ∥TokenTA 2 ∥Text 6 ).

Step (6): The entity B verifies the message 4 upon reception of the message 4 . A verification process is as follows:

Step (6.1): The entity B verifies against a public key of the trusted third party TP whether the signature of the trusted third party TP included in TokenTA or TokenTA 2 in Token AB is valid and determines whether the random number R B generated by the entity B in the message 1 is consistent with the random number R B in the signature of the trusted third party TP included in TokenTA or TokenTA 2 , and if so, then the entity B performs the step (6.2); otherwise, the entity B determines the entity A as being illegal;

Step (6.2): The entity B obtains the verification result Res GA of the group GA, and if the entity B determines from Res GA the group GA as being legal and valid, then the entity B performs the step (6.3); otherwise, the entity B determines the entity A as being illegal; and

Step (6.3): The entity B obtains the public key of the group GA, verifies against the public key whether the signature of the entity A in TokenAB is valid, determines whether the distinguishing identifier of the group GB is consistent with the group distinguishing identifier (GB) included in the signature of the entity A in Token AB and determines whether the random number R B generated by the entity B in the message 1 is consistent with the random number R B included in the signature of the entity A in TokenAB, and if so, then the entity B determines the entity A as being legal; otherwise, the entity B determines the entity A as being illegal. The entity B finishes the authentication on the entity A.

Second Embodiment

Referring to FIG. 3 , a specific flow of anonymous authentication between an entity A and an entity B is as follows:

Step (1): The entity B sends a message 1 to the entity A, where the message 1 includes a random number R B generated by the entity B, an identity I GB of a group GB and an optional text Text 1 .

Step (2): The entity A sends a message 2 to a trusted third party TP upon reception of the message 1 , where the message 2 includes R B , a random number R′ A generated by the entity A, an identity I GA of a group GA, the identity I GB of the group GB and an optional text Text 2 .

Step (3): The trusted third party TP checks the group GA and the group GB against the identities I GA and I GB for legality upon reception of the message 2 .

›DETAILED DESCRIPTION OF THE EMBODIMENTS · 4 of 7

The trusted third party TP can check the group GA and the group GB for legality particularly in the following several approaches:

In the message 2 , if the identity I GA of the group GA is a distinguishing identifier GA of the group GA, then the trusted third party TP searches for a valid public key PublicKey GA of the group GA, or if the identity I GA of the group GA is a certificate Cert GA of the group GA, then the trusted third party TP checks the certificate Cert GA for validity Valid GA ; and if the identity I GB of the group GB is a distinguishing identifier GB of the group GB, then the trusted third party TP searches for a valid public key PublicKey GB of the group GB, or if the identity I GB of the group GB is a certificate Cert GB of the group GB, then the trusted third party TP checks the certificate Cert GB for validity Valid GB .

Step (4): The trusted third party TP returns a message 3 to the entity A after checking the group GA and the group GB for legality, where the message 3 includes group verification results Res GA and Res GB , a token TokenTA and an optional text Text 5 or includes group verification results Res GA and Res GB , tokens TokenTA 1 and TokenTA 2 and an optional text Text 5 . Particularly TokenTA includes a signature of the trusted third party TP on a message including R′ A , R B , Res GB and Res GA , TokenTA 1 includes a signature of the trusted third party TP on a message including R′ A and Res GB , and TokenTA 2 includes a signature of the trusted third party TP on a message including R B and Res GA . A preferred embodiment of Token according to the invention is TokenTA=sS T (R′ A ∥R B ∥Res GB ∥Res GA ∥Text 3 ). A preferred embodiment of TokenTA 1 and TokenTA 2 according to the invention is TokenTA 1 =sS T (R′ A ∥Res GB ∥Text 4 ) and TokenTA 2 =sS T (R B ∥Res GA ∥Text 3 ).

Step (5): The entity A sends a message 4 to the entity B upon reception of the message 3 , where the message 4 includes a token TokenAB and the group identity I GA . Particularly TokenAB includes R A , R′ A , Res GB , Res GA , TokenTA and a signature of the entity A on a message including GA, R A , GB, R B , Res GB , Res GA and TokenTA, and a preferred embodiment according to the invention is TokenAB=R A ∥R′ A ∥Text 7 ∥Res GB ∥Res GA ∥TokenTA∥sS A (GA∥R A ∥GB∥R B ∥Res GB ∥Res GA ∥TokenTA∥Text 6 ); or TokenAB includes R A , Res GA , TokenTA 2 and a signature of the entity A on a message including GA, R A , GB, R B and TokenTA 2 , and a preferred embodiment according to the invention is TokenAB=R A ∥Res GA ∥Text 7 ∥TokenTA 2 ∥sS A (GA∥R A ∥GB∥R B ∥TokenTA 2 ∥Text 6 ).

Step (6): The entity B verifies the message 4 upon reception of the message 4 . A verification process is as follows:

Step (6.1): The entity B verifies against a public key of the trusted third party TP whether the signature of the trusted third party TP included in TokenTA or TokenTA 2 in Token AB is valid and determines whether the random number R B generated by the entity B in the message 1 is consistent with the random number R B included in the signature of the trusted third party TP in TokenTA or TokenTA 2 , and if so, then the entity B performs the step (6.2); otherwise, the entity B determines the entity A as being illegal and terminates the authentication flow or performs the step (7);

Step (6.2): The entity B obtains the verification result Res GA of the group GA, and if the entity B determines from Res GA the group GA as being legal and valid, then the entity B performs the step (6.3); otherwise, the entity B determines the entity A as being illegal and terminates the authentication flow or performs the step (7); and

Step (6.3): The entity B obtains the public key of the group GA, verifies against the public key whether the signature of the entity A in TokenAB is valid, determines whether the distinguishing identifier of the group GB is consistent with the group distinguishing identifier (GB) included in the signature of the entity A in Token AB and determines whether the random number R B generated by the entity B in the message 1 is consistent with the random number R B included in the signature of the entity A in TokenAB, and if so, then the entity B determines the entity A as being legal; otherwise, the entity B determines the entity A as being illegal. The entity B finishes the authentication on the entity A and performs the step (7).

Step (7): The entity B sends a message 5 to the entity A, where the message 5 includes a token TokenBA. TokenBA includes a signature of the entity B on a message including GB, R B , GA and R A . A preferred embodiment of TokenBA according to the invention is TokenBA=Text 9 ∥sS B (GB∥R B ∥GA∥R A ∥Text 8 ).

Step (8): The entity A verifies the message 5 upon reception of the message 5 . A verification process is as follows:

Step (8.1): The entity A verifies against the public key of the trusted third party TP whether the signature of the trusted third party TP in TokenTA or TokenTA 1 in the message 3 is valid and determines whether the random number R′ A generated by the entity A in the message 2 is consistent with the random number R′ A included in the signature of the trusted third party TP in TokenTA or TokenTA 1 , and if so, then the entity B performs the step (8.2); otherwise, the entity A determines the entity B as being illegal;

Step (8.2): The entity A obtains the verification result Res GB of the group GB, and if the entity A determines from Res GB the group GB as being legal and valid, then the entity B performs the step (8.3); otherwise, the entity A determines the entity B as being illegal and finishes the authentication on the entity B; and

Step (8.3): The entity A obtains the public key of the group GB, verifies against the public key whether the signature of the entity B in TokenBA is valid, determines whether the distinguishing identifier of the group GA is consistent with the group distinguishing identifier (GA) included in the signature of the entity B in Token BA and determines whether the random number R′ A generated by the entity A in the message 4 is consistent with the random number R A included in the signature of the entity B in TokenBA, and if so, then the entity A determines the entity B as being legal; otherwise, the entity A determines the entity B as being illegal. The entity A finishes the authentication on the entity B.

›DETAILED DESCRIPTION OF THE EMBODIMENTS · 5 of 7

Particularly in the step (4), when the message 3 includes the verification results Res GA and Res GB , the token TokenTA and an option text Text 5 , the step (8.1) can be earlier performed in the step (5), that is, upon reception of the message 3 , the entity A firstly performs the step (8.1) and then sends the message 4 to the entity B after the verification is passed.

The random number R A , R′ A and R B can be replaced with time labels or sequence numbers.

With the foregoing bidirectional anonymous authentication process between the entity A and the entity B, bidirectional identity legality authentication between the two entities can be performed while protecting identity information of the two entities from being disclosed.

The presence and contents of the optional texts Text 1 , Text 2 , Text 3 , . . . , as referred to in the foregoing embodiments are indeterminate in view of the possibility for those skilled in the art to define the contents of the optional texts as they desire for the purpose of extending the optional texts, and thus the optional texts may be omitted in other embodiments.

Referring to FIG. 4 , an embodiment of the invention further provides an anonymous entity authentication apparatus, and the apparatus includes:

A first message receiving unit 40 configured to receive a message 1 sent by an entity B;

A first message sending unit 41 configured to send a message 2 to a trusted third party TP, where the message 2 includes an identity I GA of a group GA where the anonymous entity authentication apparatus resides;

A second message receiving unit 42 configured to receive a message 3 returned from the trusted third party TP, where the message 3 includes a verification result Res GA of the group GA and a first token including a signature of the trusted third party TP; and

A second message sending unit 43 configured to send a message 4 to the entity B upon reception of the message 3 , where the message 4 includes I GA and a second token including Res GA , the first token and a signature of the entity A.

Furthermore the second message sending unit is configured:

To determine whether a random number R′ A generated by the entity A in the message 2 is consistent with a random number R′ A included in the signature of the trusted third party TP before sending the message 4 to the entity B; and when they are consistent, to send the message 4 to the entity B.

Furthermore the message 1 received by the first message receiving unit further includes an identity I GB of a group GB where the entity B resides; and the message 2 sent by the first message sending unit further include I GB , and the message 3 received by the second message receiving unit further includes a verification result Res GB of the group GB; and the apparatus further includes:

A third message receiving unit 44 configured to receive a message 5 sent by the entity B after the message 4 is sent to the entity B, where the message 5 includes a third token including a signature of the entity B; and

An entity authenticating unit 45 configured to verify the message 5 upon reception of the message 5 and to determine from a verification result the legality of the entity B.

The entity authenticating unit 45 is configured:

a. To verify whether the signature of the trusted third party TP is valid and to determine whether the random number R′ A generated by the anonymous entity authentication apparatus in the message 2 is consistent with the random number R′ A included in the signature of the trusted third party TP; and if they are consistent, to perform the step b; otherwise, to determine the entity B as being illegal and end the flow;

b. If the group GB is determined from Res GB as being legal and valid, to perform the step c; otherwise, to determine the entity B as being illegal and end the flow; and

c. To obtain a public key of the group GB by I GB , to verify against the public key whether the signature of the entity B is valid, to determine whether a distinguishing identifier of the group GA is consistent with a group distinguishing identifier GA included in the signature of the entity B and to determine whether a random number R A generated by the entity A in the message 4 is consistent with a random number R A included in the signature of the entity B, and if all are positive, to determine the entity B as being legal; otherwise, to determine the entity B as being illegal.

Furthermore the first token includes a token TokenTA, or the first token includes tokens TokenTA 1 and TokenTA 2 , where:

TokenTA includes a signature of the trusted third party TP on a message including R′ A , R B , Res GB and Res GA , TokenTA 1 includes a signature of the trusted third party TP on a message including R′ A and Res GB , and TokenTA 2 includes a signature of the trusted third party TP on a message including R B and Res GA ; and

R′ A is the random number generated by the entity A included in the message 2 ; and R B is the random number generated by the entity B included in the message 1 , and the message 2 also carries R B .

Furthermore TokenTA=sS T (R′ A ∥R B ∥Res GB ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

Furthermore TokenTA 1 =sS T (R′ A ∥Res GB ∥Text 4 ) and TokenTA 2 =sS T (R B ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

Furthermore the second message sending unit 43 is further configured:

If the first token includes the token TokenTA, to verify whether the signature of the trusted third party TP is valid and to determine whether the random number R′ A generated by the entity A in the message 2 is consistent with the random number R′ A included in the signature of the trusted third party TP before sending the message 4 to the entity B; and

To send the message 4 to the entity B when the signature of the trusted third party TP is verified as being valid and the random number R′ A generated by the entity A in the message 2 is determined as being consistent with the random number R′ A included in the signature of the trusted third party TP.

›DETAILED DESCRIPTION OF THE EMBODIMENTS · 6 of 7

Furthermore the entity authenticating unit 45 is configured:

a. If the group GB is determined from Res GB as being legal and valid, to perform the step b; otherwise, to determine the entity B as being illegal and end the flow; and

b. To obtain a public key of the group GB by I GB , to verify against the public key whether the signature of the entity B is valid, to determine whether a distinguishing identifier of the group GA is consistent with a group distinguishing identifier GA included in the signature of the entity B and to determine whether a random number R A generated by the entity A in the message 4 is consistent with a random number R A included in the signature of the entity B, and if all are positive, to determine the entity B as being legal; otherwise, to determine the entity B as being illegal.

Furthermore the second token includes a token TokenAB including R A , R′ A , Res GB , Res GA , TokenTA and a signature of the entity A on a message including GA, R A , GB, R B , Res GB , Res GA and TokenTA; or

The second token includes R A , Res GA , TokenTA 2 and a signature of the entity A on a message including GA, R A , GB, R B and TokenTA 2 ; and R A is the random number generated by the entity A included in the message 4 .

Furthermore TokenAB=R A ∥R′ A ∥Text 7 ∥Res GB ∥Res GA ∥TokenTA∥sS A (GA∥R A ∥GB∥R B ∥Res GB ∥Res GA ∥TokenTA∥Text 6 ), where Text 6 and Text 7 are optional texts, and sS A is the signature of the entity A.

Furthermore TokenAB=R A ∥Res GA ∥Text 7 ∥TokenTA 2 ∥sS A (GA∥R A ∥GB∥R B ∥TokenTA 2 ∥Text 6 ), where Text 6 and Text 7 are optional texts, and sS A is the signature of the entity A;

Furthermore the third token includes TokenBA including a signature of the entity B on a message including GB, R B , GA and R A ; and

R A is the random number generated by the entity A included in the message 4 ; and R B is the random number generated by the entity B included in the message 1 .

Furthermore TokenBA=Text 9 ∥sS B (GB∥R B ∥GA∥R A ∥Text 8 ), where Text 8 and Text 9 are optional texts, and sS B is the signature of the entity B.

Furthermore the message 1 , the message 2 and the message 3 further include optional texts respectively.

Furthermore the random numbers are replaced with time labels or sequence numbers.

Referring to FIG. 5 , an embodiment of the invention further provides another anonymous entity authentication apparatus, and the apparatus includes:

A first message sending unit 50 configured to send a message 1 to an entity A to initiate an authentication process;

A first message receiving unit 51 configured to receive a message 4 sent by the entity A, where the message 4 includes an identity I GA of a group GA and a second token including a verification result Res GA of a trusted third party TP on the group GA, a first token and a signature of the entity A, and the first token includes a signature of the trusted third party TP; and

An entity authenticating unit 52 configured to verify the message 4 upon reception of the message 4 and to determine from a verification result the legality of the entity A.

Furthermore the apparatus further includes:

A second message sending unit 53 configured to send a message 5 to the entity A after determining from the verification result the legality of the entity A, where the message 5 includes a third token including a signature of the entity B.

Furthermore the entity authenticating unit 52 is configured:

a. To verify whether the signature of the trusted third party TP is valid and to determine whether a random number R B generated by the anonymous entity authentication apparatus in the message 1 is consistent with a random number R B included in the signature of the trusted third party TP; and if both are positive, to perform the step b; otherwise, to determine the entity A as being illegal;

b. If the group GA is determined from Res GA as being legal and valid, to perform the step c; otherwise, to determine the entity A as being illegal; and

c. To obtain a public key of the group GA by I GA , to verify against the public key whether the signature of the entity A is valid, to determine whether a distinguishing identifier of the group GB is consistent with a group distinguishing identifier GB included in the signature of the entity A and to determine whether the random number R B generated by the entity B in the message 1 is consistent with a random number R B included in the signature of the entity AB, and if all are positive, to determine the entity A as being legal; otherwise, to determine the entity A as being illegal.

Furthermore the first token includes a token TokenTA, or the first token includes tokens TokenTA 1 and TokenTA 2 , where:

TokenTA includes a signature of the trusted third party TP on a message including R′ A , R B , Res GB and Res GA , TokenTA 1 includes a signature of the trusted third party TP on a message including R′ A and Res GB , and TokenTA 2 includes a signature of the trusted third party TP on a message including R B and Res GA ; and

R′ A is a random number generated by the entity A included in a message 2 ; and R B is the random number generated by the entity B included in the message 1 , and the message 2 is a message, including the identity I GA of the group GA, sent to the trusted third party TP by the entity A upon reception of the message 1 .

Furthermore TokenTA=sS T (R′ A ∥R B ∥Res GB ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

Furthermore TokenTA 1 =sS T (R′ A ∥Res GB ∥Text 4 ) and TokenTA 2 =sS T (R B ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

Furthermore the second token includes a token TokenAB including R A , R′ A , Res GB , Res GA , TokenTA and a signature of the entity A on a message including GA, R A , GB, R B , Res GB , Res GA and TokenTA; or

The second token includes R A , Res GA , TokenTA 2 and a signature of the entity A on a message including GA, R A , GB, R B and TokenTA 2 ; and R A is a random number generated by the entity A included in the message 4 .

›DETAILED DESCRIPTION OF THE EMBODIMENTS · 7 of 7

Furthermore TokenAB=R A ∥R′ A ∥Text 7 ∥Res GB ∥Res GA ∥TokenTA∥sS A (GA∥R A ∥GB∥R B ∥Res GB ∥Res GA ∥TokenTA∥Text 6 ), where Text 6 and Text 7 are optional texts, and sS A is the signature of the entity A.

Furthermore TokenAB=R A ∥Res GA ∥Text 7 ∥TokenTA 2 ∥sS A (GA∥R A ∥GB∥R B ∥TokenTA 2 ∥Text 6 ), where Text 6 and Text 7 are optional texts, and sS A is the signature of the entity A;

Furthermore the third token includes TokenBA including a signature of the entity B on a message including GB, R B , GA and R A ; and

R A is the random number generated by the entity A included in the message 4 ; and R B is the random number generated by the entity B included in the message 1 .

Furthermore TokenBA=Text 9 ∥sS B (GB∥R B ∥GA∥R A ∥Text 8 ), where Text 8 and Text 9 are optional texts, and sS B is the signature of the entity B.

Furthermore the message 1 further includes an optional text.

Furthermore the random numbers are replaced with time labels or sequence numbers.

Referring to FIG. 6 , an embodiment of the invention further provides a trusted third party apparatus including:

A message receiving unit 60 configured to receive a message 2 sent by an entity A, where the message 2 includes an identity I GA of a group GA where the entity A resides;

A group verifying unit 61 configured to verify the group GA against I GA for legality upon reception of the message 2 ; and

A message receiving unit 62 configured to return a message 3 to the entity A, where the message 3 includes a verification result Res GA of the group GA and a first token including a signature of the trusted third party apparatus.

Furthermore the group verifying unit 61 is further configured:

When the message 2 further include I GB , to verify a group GB against I GB for legality, where the message 3 further includes a verification result Res GB of the group GB.

Furthermore the group verifying unit 61 is further configured:

If I GA in the message 2 is a distinguishing identifier GA of the group GA, to search for a valid public key PublicKey GA of the group GA, and if it is found, to determine GA as being legal; otherwise, to determine GA as being illegal; and

If I GA in the message 2 is a certificate Cert GA of the group GA, to check the certificate Cert GA for validity Valid GA , and if Cert GA is valid, to determine GA as being legal; otherwise, to determine GA as being illegal.

Furthermore the group verifying unit 61 is further configured:

if I GB in the message 2 is a distinguishing identifier GB of the group GB, to search for a valid public key PublicKey GB of the group GB, and if it is found, to determine GB as being legal; otherwise, to determine GB as being illegal; and

If I GB in the message 2 is a certificate Cert GB of the group GB, to check the certificate Cert GB for validity Valid GB , and if Cert GB is valid, to determine GB as being legal; otherwise, to determine GB as being illegal.

Furthermore the first token includes a token TokenTA, or the first token includes tokens TokenTA 1 and TokenTA 2 , where:

TokenTA includes a signature of the trusted third party TP on a message including R′ A , R B , Res GB and Res GA , TokenTA 1 includes a signature of the trusted third party TP on a message including R′ A and Res GB , and TokenTA 2 includes a signature of the trusted third party TP on a message including R B and Res GA ; and

R′ A is a random number generated by the entity A included in the message 2 ; R B is a random number generated by an entity B included in a message 1 ; and the message 1 is a message, including I GB , sent by the entity B to the entity A.

Furthermore TokenTA=sS T (R′ A ∥R B ∥Res GB ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

Furthermore TokenTA 1 =sS T (R′ A ∥Res GB ∥Text 4 ) and TokenTA 2 =sS T (R B ∥Res GA ∥Text 3 ), where Text 3 is an optional text, and sS T is the signature of the trusted third party TP.

Although the preferred embodiments of the invention have been described, those skilled in the art benefiting from the underlying inventive concept can make additional modifications and variations to these embodiments. Therefore the appended claims are intended as being construed as encompassing the preferred embodiments and all the modifications and variations coming into the scope of the invention.

Evidently those skilled in the art can make various modifications and variations to the invention without departing from the spirit and scope of the invention. Thus the invention is also intended to encompass these modifications and variations thereto so long as the modifications and variations come into the scope of the claims appended to the invention and their equivalents.

1 of 12 part labels are ours — the grant heads the rest

Claims as granted

16 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

3 codes
IPC · International Patent Classification
Section H — Electricity
  • H04M3/42
  • H04L29/06
  • H04L9/32

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomJul 2011Jan 2012Jul 2012Jan 2013Jul 2013Jan 2014Jul 2014Jan 2015Jul 2015Jan 2016Jul 2016USPTOApplicantNon-final rejectionFinal rejectionNotice of allowance
USPTOApplicanthover for detail · click to open
Pendency
4.8 y
1,751 days filing → grant
Office actions
2
non-final + final
Responses
2
1 RCE
Examiner
Zachary A Davis
art unit 2492 · TC 2400
Citations: 41 back · 9 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom2014201620182020202220242026202820302032Owner 1
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock