For enhancing the security of ubiquitous communication, we have to consider three keywords: mobility, wireless, and low computing capability. In this paper, we study one of suitable security protocols for the ubiquitous communication environment. We discuss RSA-based password-authenticated key exchange (RSA-PAKE) protocols for imbalanced wireless networks where a party uses a low-power device to communicate with another party equipped with a powerful computing device. For imbalanced wireless network applications, it is important to reduce the cost of communication for a low-power device even though the cost for powerful devices is increasing. The most power-consuming operation in RSA-PAKE protocols is the reliability test of unauthorized RSA public keys. Hence, it is important to design an efficient reliability test method to construct an efficient RSA-PAKE protocol. In this paper, we propose a new reliability test technique and design a provably secure RSA-PAKE protocol using the technique. Our protocol is suitable for securing the communications conducted over imbalanced wireless networks since the operations computed by one communicating party are efficient enough to be implemented on most low-power devices such as mobile phones and PDAs. The cost of a low-power device is reduced by 84.25% compared with CEKEP, the most efficient RSA-PAKE protocol. We prove the security of our protocol under a firmly formalized security model.
1. Introduction
For enhancing the security of ubiquitous communication, we have to consider three keywords: mobility, wireless, and low computing capability. In this paper, we study one of suitable security protocols for the ubiquitous communication environment. We discuss RSA-based password-authenticated key exchange (RSA-PAKE) protocols for imbalanced wireless networks where a party uses a low-power device to communicate with another party equipped with a powerful computing device.
For securing the communications conducted over wireless network, password-authenticated key exchange (PAKE) protocols are needed since two parties can establish a session key without storing any sensitive information in mobile devices. Note that we have an interest in imbalanced wireless networks where two communicating parties have different computational capabilities. Generally, mobile devices have low capabilities. Hence, for imbalanced wireless networks, it is important to reduce the cost of communications for a low-power device even though the cost for a powerful device is increased. For PAKE protocols that have been designed based on the Diffie-Hellman key exchange protocol (DH-PAKE protocol), each communicating party should compute at least two exponentiations with 160-bit exponents (for 80-bit security). Hence, it seems hard to design a DH-PAKE protocol for imbalanced wireless network applications where a party uses a low-power mobile device for communications. For PAKE protocols that have been designed based on the RSA function (RSA-PAKE protocol), one of the two parties can establish a session key by performing a small number of encryptions. Hence, RSA-based PAKE protocols seem to be suitable for imbalanced wireless networks since the cost of the RSA function is imbalanced in the sense that the encryption operation is very efficient while decryption is not. For example, if we use 3 as the public exponent for the RSA function, the encryption operation requires 2 multiplications while the decryption requires one exponentiation with a full-size (1024-bit) exponent.
For RSA-PAKE protocols, the existence of the public-key infrastructure (PKI) is not assumed, and thus a set of unauthorized public key pairs is used without any authorized certificate. Therefore, we have to verify the reliability of the unauthorized RSA keys. Due to the additional cost for verifying the reliability of the keys, it is not easy to design an efficient RSA-PAKE protocol. Note that the most power-consuming operation in RSA-PAKE protocols is the reliability test of unauthorized RSA public keys. Hence, it is important to design an efficient reliability test method to improve the performance of an RSA-PAKE protocol. Until now, several researchers have tried to design efficient RSA-PAKE protocols [1–8]. However, they are not sufficiently efficient enough to be implemented on most of low-power devices. Hence, it will be valuable to design a new RSA-PAKE protocol which provides a more efficient key exchange for low-power devices than existing RSA-PAKE protocols.
The goal of this paper is to design a new RSA-PAKE protocol which is suitable for securing the communications conducted over imbalanced wireless networks. To design an efficient RSA-PAKE, we provide very simple and efficient conditions for testing the reliability of a set of RSA parameters. In our protocol, a low-power device can establish a session key by choosing a 52-bit prime and performing one exponentiation with the prime exponent. According to our experimental results, the cost of a client is reduced by 84.25% compared with the CEKEP, which is the most efficient RSA-PAKE protocol until now. Our protocol can be implemented more efficiently by generating the prime before a key exchange protocol is initiated. In this case, the cost of a client can be reduced by 88.46%. We prove the security of our protocol in the random oracle model under a firmly formalized security model.
2. Preliminary
In this section, we briefly review formal security models for RSA-PAKE protocols and some mathematical backgrounds.
2.1. Security Model
Let A and B be two communicating parties, and let be the password space. We assume that A and B share a password . Let E be an active adversary who attacks the key exchange between A and B by controlling their messages. The adversary may capture transmitted messages and verify guessed passwords using the collected information until he/she finds the correct password. This type of attack is called an offline password guessing attack. The security goal of a password-authenticated key exchange protocol is to provide password-enabled key exchange which is secure against offline password guessing attacks mounted by the active adversary E. In this paper, we review the main points of well-formalized security models introduced by Bellare et al. [9]. (Refer to [9] for details.)
Adversarial Model. When a protocol is executed, each party behaves as specified in the protocol. For given queries, each instance returns its outputs. Let be the ith instance of A. Note that each instance may be used only once. Each instance has a session key , a session id , and a partner id . In general, the session id of is the ordered concatenation of all messages sent and received by . An adversary can make queries to any instance. When the instance returns its output to the adversary, the internal state of the instance is also updated. E can make the following queries for any instance.
. E sends a message m to the instance . Then, executes as specified by the protocol and returns its response to E. If the instance accepts given m as a valid message, the acceptance of the message, the session id , and the partner id will be made visible to E. If the message is not accepted as a valid one, the instance terminates the oracle call, and the termination is also made visible to the adversary.
. By this oracle call, E obtains a transcript of an honest execution between two instances and , where and are unused instances such that .
. By this oracle call, is given to the adversary E, where is the session key of .
. The instance generates a random bit b. If , real session key of the instance is given to E. If , a random value is given to E as a session key. This query is allowed only once.
In the random oracle model, cryptographic hash functions are treated as random oracles. Hence, the adversary can make queries for random oracles. The queries for random oracles are treated as follows.
. E obtains a random value for the message m by this oracle call. When the oracle models a hash function, the answer returned by the oracle is the hashed value of m.
Partnering, Freshness, and Correctness. We say that two instances and are partnered if they satisfy the following conditions:
and have accepted given messages;
and have the same session id ;
the partner id of is B and vice versa.
An instance is called fresh if the instance has accepted given messages and E does not ask oracle queries for or its partner instance . The correctness requires that two instances should have the same session key if they are partnered and they have accepted.
Definitions of Security. Let be a password-based protocol and let be an adversary who tries to break the security of the protocol . Let Succ be the event that asks a Test query on a fresh instance and correctly guesses the bit b which was selected during the Test query. Then, the advantage of is defined as . Note that all probabilistic polynomial time adversaries can always test the validity of a guessed password by performing an online dictionary attack. Hence, the protocol is considered to be secure if an online dictionary attack is the best way to break the security of . Note that an online attack can be mounted by making a Send oracle query. Based on the above observation, the security of an RSA-PAKE protocol can be defined as follows.
Definition 1.
Let be the size of the password space and let be the number of Send queries. Then, an RSA-PAKE protocol is secure if the following holds:
where is the set of all probabilistic polynomial time adversaries and ϵ is a negligible value.
2.2. Mathematical Background
We recall a well-known theorem, the prime number theorem [10], and use it for obtaining two theorems, Theorems 2 and 3, that are used to demonstrate the security of our protocol.
Recall that the prime number theorem tells us that the number of primes smaller than a positive integer x is approximately for a large x.
Theorem 2.
Let e be an -bit prime chosen uniformly at random. Then, the probability that someone correctly guesses the prime is about .
Theorem 3.
Let e be a randomly chosen -bit pseudoprime which is not a prime with the probability . Then, the probability that someone chooses an -bit integer n such that is bounded by .
It is easy to prove the above theorems, and thus we omit (Omitted proofs will be provided in the full-version of this paper.) them due to lack of space.
3. Our RSA-PAKE Protocol
In this section, we propose an efficient RSA-PAKE protocol which is suitable for imbalanced wireless networks. We assume that two communicating parties A and B share a common password for establishing a session key. Let be the set of all -bit pseudoprimes that are not prime with probability . The size of the prime is determined such that . We use four hash functions and for . Then, our RSA-PAKE protocol runs as follows.
Step 1.
A chooses an -bit RSA modulus n and a random and sends them to B.
Step 2.
If n is not an -bit odd number, B terminates the protocol. Otherwise, he/she chooses an -bit prime e and a random and computes , where . If , B chooses a random . Otherwise, he/she computes for randomly chosen . B gives to A.
Step 3.
If e is not an -bit prime, A terminates the protocol execution. A computes and tests if two conditions and hold. If one of the conditions does not hold, A chooses a random . Otherwise, he/she computes , where . Then, A computes and sends it to B.
Step 4.
If the condition does not hold, B terminates the protocol. Otherwise, B sends to A. B computes and uses it as a session key.
Step 5.
If , A terminates the protocol; otherwise, he/she computes and uses it as a session key.
Remark 4.
Note that, in our protocol, we use a pseudoprime which is not prime with probability . Therefore, the number of iterations of the Miller-Rabin primary test is determined so that a pseudoprime is indeed a prime with probability .
4. Security Analysis
In this section, we prove the security of our protocol according to the security model described in Section 2.1. Similar to the work by Zhang [7], we define a series of hybrid experiments where the first experiment describes the real adversary attack and each experiment is gradually modified so that the adversary has negligible advantage in the last experiment. We denote these hybrid experiments by for . Let be the advantage of in .
Experiment. The first experiment coincides with the real adversary attack. Therefore, all transmitting messages are computed according to the description of the proposed protocol. Since we prove the security of our protocol in the random oracle model, four hash functions are treated as random oracles and we maintain a list of input-output pairs for each random oracle.
Note that we have for an adversary since the first experiment describes the real adversary attack.
Experiment. In this experiment, we modify the Execute oracle. When the oracle is called for two instances and , the session keys and are replaced by an -bit random string rather than an output of the random oracle .
In Lemma 5, we will show that the increment of the advantage of that resulted from the modification of the Execute oracle is bounded by a negligible value. Throughout this paper, denotes the maximum advantage of adversaries who solve the RSA problem.
Lemma 5.
For any polynomial time adversary who asks at most times of Execute queries and times of hash queries, one has the following relation:
Proof.
We omit (Omitted proofs will be provided in the full-version of this paper.) the proof of Lemma 5, due to lack of space.
The remainder of our security proof is to show that the Send oracle gives negligible advantage to the adversary. We can classify Send oracle into five types as follows.
. The instance generates a random and an RSA modulus n and returns and n.
. If n is not an -bit odd number, the protocol is terminated. Otherwise, chooses an -bit prime e and a random , queries the hash oracle H on where , and receives the reply α from the oracle. If , chooses a random . Otherwise, it computes for randomly chosen . The instance returns .
. If e is not an -bit prime, the protocol execution is terminated. Otherwise, queries H on , receives the answer α from the oracle H, computes , and tests if and . If one of the conditions does not hold, chooses a random ; otherwise, it computes . Then, queries the hash oracle on and returns the reply β received from .
. If the answer returned by on is not β, rejects the protocol; otherwise, it queries the hash oracles and on and receives the replies γ and from and , respectively. Then, accepts as a session key and returns γ.
. If the answer returned by on is not γ, rejects the protocol; otherwise, accepts the answer returned by the oracle on as a session key.
A message is called oraclegenerated if it was returned by an instance; otherwise, the message is called adversarygenerated. If a message was returned by , it is called -oracle-generated message.
Experiment. In this experiment, we modify the following if an instance receives a -oracle-generated message in a Send oracle call.
If both and accept, we choose a random -bit value and give it to two instances as a session key.
If does not accept but accepts, we choose a random -bit value and give it to as a session key. In this case, no session key is defined for .
Lemma 6.
For any polynomial time adversary who asks at most Send queries, one has
Proof.
Let be an RSA modulus where p and q are distinct primes. Note that since the modulus n is chosen by the instance (not by the adversary ),
for randomly chosen . Hence, we can assume that for randomly chosen .
Assume that receives a -oracle-generated message in a Send oracle call and returns where e is -bit prime, , and for random and . Note that α is the answer returned by the random oracle H on , since holds with probability . Note that, as proved in Lemma 5, we can show that the probability that recovers the random value r is . Since cannot generate valid β and γ without the knowledge of r, two instances and accept the protocol execution only if the instances and receive -oracle-generated message β and -oracle-generated message γ, respectively. Hence, can distinguish and only if the adversary can test to see whether or not a session key is the answer returned by the random oracle on . Without the knowledge of r, the session key seems to be a random value in 's point of view, and thus cannot distinguish between two experiments. As a result, we have , since asks at most times of Send queries.
Experiment. In this experiment, we consider the case where an instance receives a -oracle-generated message in a oracle call, while the instance received a -oracle-generated message in a oracle call. If and accept the protocol execution and their session keys are not replaced by a random value in the experiment , we give a random -bit value to them as a session key.
Lemma 7.
For any polynomial time adversary who asks at most Send queries, one has .
Proof.
It is clear that the advantage of in is identical with its advantage in since the only way to distinguish two experiments is recovering the random value as discussed in Lemma 6.
Experiment. In this experiment, we consider the case where an instance (or ) receives an adversary-generated message in a (or ) oracle call. If (or ) accepts the protocol execution, we stop the experiment and the adversary is said to have succeeded. Note that the modification of the experiment certainly improves the adversary's advantage.
Lemma 8.
For any polynomial time adversary , one has the following relation: .
Proof.
Note that, in , the adversary can obtain more information than in . Hence, it is obvious that is greater than .
It remains to show that the adversary's advantage in the last experiment is negligible.
Lemma 9.
For any polynomial time adversary who asks at most queries and random oracle queries, one has .
Proof.
We omit (Omitted proofs will be provided in the full-version of this paper.) the proof of Lemma 9, due to lack of space.
By combining Lemmas 5, 6, 7, 8, and 9, we obtain Theorem 10.
Theorem 10.
Let be a probabilistic polynomial time algorithm which asks at most Execute queries, Send queries, and Oracle queries for hash functions. Let be the size of password space . Then, one has
where and .
Proof.
Note that, by Lemma 8, it is easy to see that . By Lemmas 5, 6, 7, and 9, we have
where and . Since , we complete the proof of Theorem 10.
Note that Theorem 10 tells us that the proposed RSA-PAKE protocol is secure in terms of the security models described in Section 2.1 if the RSA problem is intractable.
5. Performance
In this section, we compare the proposed protocol with existing RSA-PAKE protocols, except the EPAKE protocol since the insecurity of that protocol has been discovered [11]. Let be the cost of an exponentiation under a 1024-bit modulo with an a-bit exponent, let be the cost of generating an a-bit RSA modulus, let be the cost of generating an a-bit prime, and let be the cost of verification of an a-bit prime. Note that . For comparison, we set , , , , and . For determining the number of Miller-Rabin primary tests, we refer to [12]. Our protocol uses a 52-bit pseudoprime e which is indeed prime with probability , and so it suffices to perform the primary tests 37 times according to the formula given in [12].
We performed experiments under Windows XP Professional with a 3.4 GHz Pentium 4 processor. As seen in Table 1, our protocol provides very efficient key exchange compared with other RSA-PAKE protocols in terms of the computational complexity. The computational complexity of the party is reduced by 84.25% compared to the CEKEP protocol. Moreover, the proposed protocol can be implemented more efficiently by generating a prime before a key exchange protocol is initiated. The PEKEP is the most efficient RSA-PAKE protocol in terms of communication overhead. The size of the communicating message of our scheme is almost the same as that of the PEKEP and shorter than other protocols, and thus our protocol is also efficient in terms of the communication overhead.
Performance comparison.
(a) Computational cost of client (low-power device holder).
In this paper, we proposed an efficient RSA-PAKE protocol which is suitable for securing the communications conducted over imbalanced wireless networks and proved the security of our protocol in the random oracle model. Compared with other RSA-PAKE protocols, our protocol provides very efficient key exchange. In our protocol, the cost of a low-power device holder can be reduced by 84.25% compared with the CEKEP. Moreover, our protocol can be implemented more efficiently by pregenerating a prime before a key exchange protocol is initiated.
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgment
This research was supported by Next-Generation Information Computing Development Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Science, ICT & Future Planning (Grant no. 2011-0029925).
References
1.
BaoF.Security analysis of a password authenticated key exchange protocol2851Proceedings of the 6th International Conference (ISC '03)2003Bristol, UKSpringer208217Lecture Notes in Computer Science
2.
CatalanoD.PointchevalD.PorninT.Trapdoor hard-to-invert group isomorphisms and their application to password-based authenticationJournal of Cryptology20072011151492-s2.0-3384687936310.1007/s00145-006-0431-8
3.
MacKenzieP.PatelS.SwaminathanR.Password-authenticated key exchange based on RSA1976Proceedings of the 6th International Conference on the Theory and Application of Cryptology and Information Security (ASIACRYPT '00)2000Springer599613Lecture Notes in Computer Science
4.
ParkS.NamJ.KimS.WonD.Efficient password-authenticated key exchange based on RSA4377Proceedings of the Cryptographers' Track at the RSA Conference2007San Francisco, Calif, USASpringer309323Lecture Notes in Computer Science
5.
WongD. S.ChanA. H.ZhuF.More efficient password authenticated key exchange based on RSA2904Proceedings of the 4th International Conference on Cryptology (INDOCRYPT '03)2003New Delhi, IndiaSpringer375387Lecture Notes in Computer Science
6.
ZhangM.Further analysis of password authenticated key exchange protocol based on RSA for imbalanced wireless networks3225Proceedings of the 7th International Conference (ISC '04)2004Palo Alto, Calif, USASpringer1324Lecture Notes in Computer Science
7.
ZhangM.New approaches to password authenticated key exchange based on RSA3329Proceedings of the 10th International Conference on the Theory and Application of Cryptology and Information Security2004Jeju Island, Republic of KoreaSpringer230244Lecture Notes in Computer Science
8.
ZhuF.WongD. S.ChanA. H.YeR.Password authenticated key exchange based on RSA for imbalanced wireless networks2433Proceedings of the 5th International Conference (ISC '02)2002Sao Paulo, BrazilSpringer150161Lecture Notes in Computer Science
9.
BellareM.PointchevalD.RogawayP.Authenticated key exchange secure against dictionary attack1807Proceedings of the Eurocrypt2000Springer139155Lecture Notes in Computer Science
10.
RosenK. H.Elementary Number Theory and Its Applications20004thBoston, Mass, USAAddison-Wesley
11.
YounT.-Y.ParkY.-H.KimC.LimJ.Weakness in a RSA-based password authenticated key exchange protocolInformation Processing Letters200810863393422-s2.0-5304910245710.1016/j.ipl.2008.06.002
12.
MenezesA.OorschotP.VanstoneS.Handbook of Applied Cryptography1997Boca Raton, Fla, USACRC Press