Single-round password-based key exchange protocols
First Claim
Patent Images
1. A method for initializing encrypted communications using a common reference string and a shared password comprising:
- determining a generalized Diffie-Hellman tuple;
generating a one-time simulation-sound zero-knowledge proof proving a consistency of the generalized Diffie-Hellman tuple; and
encrypting a message according to the generalized Diffie-Hellman tuple, the common reference string, and the shared password, wherein the method is performed by a processor,wherein the common reference string comprises elements g, A and K selected from a cyclic group G, and wherein the generalized Diffie-Hellman tuple comprises elements S and S′
in the cyclic group G, the elements S and S′
are obtained by picking a random integer x, and the element S is determined by exponentiating the element g to the power of the random integer x, and the element S′
is obtained by exponentiating the element A to the power of the random integer x, andwherein the steps of determining, generating, and encrypting are performed using one or more computer systems.
2 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A method for initializing encrypted communications using a common reference string and a shared password, includes determining a secret key of a peer using a first message, a second message and the common reference string, wherein the first message and the second message each comprise a tuple of elements of a cyclic group G of prime order p, a blinding encryption of the shared password, and a hash projection key.
33 Citations
19 Claims
-
1. A method for initializing encrypted communications using a common reference string and a shared password comprising:
-
determining a generalized Diffie-Hellman tuple; generating a one-time simulation-sound zero-knowledge proof proving a consistency of the generalized Diffie-Hellman tuple; and encrypting a message according to the generalized Diffie-Hellman tuple, the common reference string, and the shared password, wherein the method is performed by a processor, wherein the common reference string comprises elements g, A and K selected from a cyclic group G, and wherein the generalized Diffie-Hellman tuple comprises elements S and S′
in the cyclic group G, the elements S and S′
are obtained by picking a random integer x, and the element S is determined by exponentiating the element g to the power of the random integer x, and the element S′
is obtained by exponentiating the element A to the power of the random integer x, andwherein the steps of determining, generating, and encrypting are performed using one or more computer systems.
-
-
2. A method for conducting encrypted communication using a common reference string and a shared password comprising:
- determining, using one or more computer systems, a secret key using a first message sent to a peer, a second message received from the peer and the common reference string, wherein the first message and the second message each comprise a generalized Diffie-Hellman tuple of elements of a cyclic group G of prime order p, a blinding encryption of the shared password, and a hash projection key,
wherein the common reference string comprises elements g, A, B, K and K1 selected from the cyclic group G, and wherein the generalized Diffie-Hellman tuple comprises elements S, T, and U in the cyclic group G, the elements S, T, and U are obtained by picking random integers x and y, the element S is determined by exponentiating the element g to the power of the random integer x, the element T is determined by exponentiating the element A to the power of the random integer y, and the element U is determined by exponentiating the element B to the power of the random integer x plus the random integer y. - View Dependent Claims (3, 4, 5, 6, 7)
- determining, using one or more computer systems, a secret key using a first message sent to a peer, a second message received from the peer and the common reference string, wherein the first message and the second message each comprise a generalized Diffie-Hellman tuple of elements of a cyclic group G of prime order p, a blinding encryption of the shared password, and a hash projection key,
-
8. A computer program product for initializing encrypted communications using a common reference string and a shared password, the computer program product comprising:
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising;
computer readable program code configured to determine a secret key of a peer using a first message, a second message and the common reference string, wherein the first message and the second message each comprise a generalized Diffie-Hellman tuple of elements of a cyclic group G of prime order p, a blinding encryption of the shared password, and a hash projection key, wherein the common reference string comprises elements g, A and K selected from the cyclic group G, and wherein the generalized Diffie-Hellman tuple comprises elements S and S′
in the cyclic group G, the elements S and S′
are obtained by picking a random integer x, and the element S is determined by exponentiating the element g to the power of the random integer x, and the element S′
is obtained by exponentiating the element A to the power of the random integer x. - View Dependent Claims (9, 10, 11)
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising;
-
12. A computer program product for initializing encrypted communications using a common reference string and a shared password, the computer program product comprising:
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising;
computer readable program code configured to send a first message to a peer; computer readable program code configured to receive a second message from the peer; and computer readable program code configured to determine a secret key of the peer using the first message, the second message and the common reference string, wherein the first message and the second message each comprise a generalized Diffie-Hellman tuple, a blinding encryption of the shared password, a hash projection key, and a one-time simulation-sound zero-knowledge proof proving consistency of the generalized Diffie-Hellman tuple, wherein the common reference string comprises elements g, A and K selected from a cyclic group G, and wherein the generalized Diffie-Hellman tuple comprises elements S and S′
in the cyclic group G, the computer readable program code comprising;
computer readable program code configured to obtain the elements S and S′
by picking a random integer x, and determining the element S by exponentiating the element g to the power of the random integer x; and
computer readable program code configured to obtain the element S′
by exponentiating the element A to the power of the random integer x. - View Dependent Claims (13, 14, 15)
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising;
-
16. A computer program product for initializing encrypted communications using a common reference string and a shared password, the computer program product comprising:
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising;
computer readable program code configured to send a first message to a peer; computer readable program code configured to receive a second message from the peer; and computer readable program code configured to determine a secret key of the peer using the first message, the second message and the common reference string, wherein the first message and the second message each comprise a generalized Diffie-Hellman tuple, a blinding encryption of the shared password, a hash projection key, and a one-time simulation-sound zero-knowledge proof proving consistency of the generalized Diffie-Hellman tuple, wherein the common reference string comprises elements g, A, B, K and K1 selected from a cyclic group G, and wherein the generalized Diffie-Hellman tuple comprises elements S, T and U in the cyclic group G, the computer readable program code comprising; comprising computer readable program code configured to obtain the elements S, T, and U by picking random integers x and y, comprising, determining the element S by exponentiating the g to a power of the random integer x, determining the element T by exponentiating the element A to a power of the random integer y, and determining the element U by exponentiating the element B to a power of the random integer x plus the random integer y. - View Dependent Claims (17, 18, 19)
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising;
Specification