Agreement
Jianjie Zhao1, Dawu Gu2, and M. Choudary Gorantla3
1 School of Information Security Engineering, Shanghai Jiao Tong University.
Shanghai 200240, China.
2 Department of Computer Science and Engineering, Shanghai Jiao Tong University.
Shanghai 200240, China.
3 Society for Electronic Transactions and Security, CIT Campus, Taramani, Chennai
600113, India.
[email protected],[email protected],[email protected]
Abstract. In PKC 2009, Gorantla, Boyd and GonzΒ΄alez Nieto presented a nice result on modelling security for group key agreement (GKA) pro-tocols. They proposed a novel security model (GBG model) that better supports the adversariesβ queries than previous models for GKA pro-tocols by considering KCI resilience. However, ephemeral key leakage attack resistance has been left outside the scope of the GBG model. In this paper, we demonstrate an ephemeral key leakage on an existing GKA protocol which has been shown secure in the GBG model. We then extend the GBG model by allowing the adversary greater attack pow-ers of leaking ephemeral keys in GKA protocol session. We also apply the well known NAXOS trick to propose an improvement to an existing GKA protocol, which can resist the ephemeral key leakage attack. The security of the improved protocol has been argued under the our new model.
Keywords: Group key agreement; Ephemeral key leakage attack; Se-curity model; Provable seSe-curity
1 Introduction
Group key establishment is an information security process that enables users establish a session key known only to them. This session key can be applied for subsequent cryptographic usage. Group key establishment can be divided in two diο¬erent classes: group key distribution (GKD) and group key agreement (GKA). The main characteristic of a GKD protocol is that it needs some trusted party (either a third party or a group member) and some trusted transport channel. In contrast, GKA protocol allows all participants to establish the session key where no party is needed to choose as the key generator and distributor and no secure channel is required. In this paper, we restrict our research to GKA protocols.
Although there are many security models [2β8] for two or three-party key agreement protocols, the formal model proposed by Bresson, Chevassut, Pointcheval and Quisquater [9], which we refer to as the BCPQ model, is the ο¬rst secu-rity model for GKA protocols. Following the work of Bresson, Chevassut and Pointcheval [10] (BCP model) that extended the BCPQ model to the dynamic membership case, they [11] revised the BCP model to meet the internal state information reveal resistance (BCP+) model. However, these models do not con-sider any malicious behaviour by the participants themselves. In CCS 2005, Katz and Shin [12] proposed a security model for GKA protocol, which provide the ο¬rst formal treatment of security of GKA in the presence of malicious partic-ipants. Bohli, GonzΒ΄alez-Vasco and Steinwandt [13] (BGS model) and Bresson and Manulis [14] (BM model) later proposed two extensions of the KS model under diο¬erent corruption models. Additionally, the BGS and BM model deal with the issue of contributiveness in the presence of malicious insiders.
All the models above provide deο¬nitions that consider the requirements on indistinguishability of computed group keys and forward secrecy. However, as discussed by Gorantla et al. [15] the above security notions do not provide the key compromise impersonation (KCI) resilience. To demonstrate the importance of considering resistance to KCI attacks for GKA protocols, the authors presented KCI attacks on the protocols of Boyd and GonzΒ΄alez Nieto [16], Al-Riyami and Paterson [17] and Bresson et al. [18]. They then proposed a new model (GBG model) by taking KCI resilience into account and also showed that the protocol of Bohli et al. [13] (BGS protocol) to be secure in the GBG model.
Inspired by Manulis et al.βs recent work [19] where the authors pointed out that the GKA security models have so far not considered leakage of ephemeral keys, we augment the GBG model by considering ephemeral key leakage. In our new model, we allow the adversary to reveal any long-term key and ephemeral key of participants involved except for both long-term key and ephemeral key of one of the participants of the test session. We then improve the BGS protocol and show that it is secure in the new model. More specially, we have the following results:
2.An attack on the BGS protocol and its improvement. We ο¬rst show that the BGS protocol is not secure in our new security model. To avoid this drawback, a solution where the ephemeral secret result will be generated by the hash function of the long-term key and the ephemeral key is put forward. This technique is known as the NAXOS trick in the literature [4].
3.A straightforward security proof in the new model. Under some well-studied assumptions, we prove the improved BGS protocol is secure in our new model.
We begin with a brief review of the GBG model in Section 2.1 and discuss the attack not covered by their deο¬nition in Section 2.2, then we give a simple ephemeral key leakage attack on the BGS protocol using this security ο¬aw in the remainder of this section. Section 3 introduces our extended GBG model. In Section 4, we present an improved version of the BGS protocol which can resist the attack discussed in Section 2.2. The formal security argument is given in Section 5.
2 The GBG model and the BGS protocol
In this section, we overview the GBG model brieο¬y and point out that the ephemeral key leakage attack is not covered by it. Then we present this attack on the BGS protocol which is provably secure in the GBG model.
2.1 Overview of GBG model
The GBG model [15] provides a formal security assurance to GKA protocols. We give a high-level overview of the GBG model in this subsection.
Participants. A GKA protocol runs in a network of multiple interconnected participants where each participant is activated to run sessions for itself and its peers. As a result, participants in such a session establish a key called a session key. We denote the participant set byπ° ={π1, π2,β β β , ππ}and the protocol may
be run among any subset of these parties. In a GKA protocol, each participant may execute a polynomial number of protocol instances in parallel. We refer to theπ-th instance ofπ β π° as βππ.
Adversary model. The communication network is assumed to be fully con-trolled by an adversary π, that is, it may eavesdrop, delay, alter and insert messages during the process of the protocol at will. We deο¬ne the security of a GKA protocol by a series of games between a challenger and the adversary π (an outsider adversary or a malicious insider) in which the adversary must solve a challenge on a test session. In this games,π is allowed to select the identities of all the honest participants and ask the following queries in any sequence.
β Send(βππ, π). The adversary makes this query to obtain the message that the instanceβππ would generate on receipt of the messageπ.
β RevealKey(βππ). The adversary makes this query to obtain the session key established at the accepted instanceβππ.
β Corrup(π). The adversary makes this query to obtain the long-term key of the participantπ.
β RevealState(βππ). The adversary makes this query to obtain the inter-nal state of (βππ). We assume that the internal state is erased once βππ has accepted. Hence, aRevealStatequery to an accepted instance returns nothing.
β Test(βππ). Only one query of this type is allowed for the adversary. Provided that βππ is accepted, the adversary π can make this query at any time. To respond to this query, a random bit π β {0,1} is secretly selected. If π= 1, then the real session key established at (βππ) is returned. Otherwise, a uniformly chosen random value from the session key distribution is returned. We now deο¬ne theAKE security, the MA security and the Contribu-tivenessbased on the deο¬nitions of partner and freshness.
Deο¬nition 1 (Partner). Informally, an instanceβππ is said to be accepted if it goes into an accept state after receiving the last expected protocol message, that is, when an instance accepts, it holds a session key, a session identiο¬er sid and a partner identiο¬er pid. The information of whether an instance has terminated with acceptance or not is assumed to be known to the adversary. Two instances βππ andβππβ² at two diο¬erent partiesπ andπβ² respectively are considered partnered iο¬
1. Both the instances have accepted.
2. The session identiο¬ers ofβππ andβππβ² are the same. 3. The partner identiο¬ers ofβππ andβππβ² are the same.
Deο¬nition 2 (Freshness). An instanceβππ is fresh if the following condi-tions hold:
1. The instanceβππ or any its partner has not been asked aRevealKeyquery after their acceptance.
2. The instance βππ or any its partner has not been asked a RevealState
query before their acceptance. 3. If βππβ² is a partner of
βπ
π and π askedCorrupt (πβ²), then any message
that π sends to βππ on behalf of βππβ² must come from βπ
πβ² intended to βπ
π.
Deο¬nition 3 (AKE security). In Stage 1, an adversaryππ΄πΎπΈagainst the
AKE security notion is allowed to make all the queries deο¬ned above. ππ΄πΎπΈ
πβ² and wins the AKE security game if (1)π=πβ²; (2) the instanceβπ
π that was
asked Testquery remained fresh till the end of ππ΄πΎπΈβs execution. We deο¬ne
the advantage of ππ΄πΎπΈ in winning the AKE security game as π΄ππ£ππ΄πΎπΈ =
β£2β π π[πβ² =π]β1β£. A protocol is called AKE secure ifπ΄ππ£π
π΄πΎπΈ is negligible in
the security parameterπ.
Deο¬nition 4 (MA security). An adversaryπππ΄ against the MA security
notion is allowed to make all the queries deο¬ned above.πππ΄violates the mutual
authentication property of the GKA protocol if at some point during the protocol run, there exists an uncorrupted instance βππ that has accepted with a session keyπ ππ
πand another partyπβ²βπππππ that is uncorrupted at the time
βπ
πaccepts
such that
1. There is no instance βππβ² with (πππππβ², π ππππβ²) = (πππππ, π ππππ)or
2. There is an instance βππβ² with (πππππβ², π ππππβ²) = (πππππ, π ππππ) that has ac-cepted withπ πππβ² β=π πππ.
We deο¬ne the probability of πππ΄ in winning the MA security game as
π΄ππ£πππ΄. A protocol is said to provide mutual authentication in the presence of
insiders ifπ΄ππ£πππ΄ is negligible inπ.
Deο¬nition 5 (Contributiveness [14]). An adversary ππΆππ against the
contributiveness notion is allowed to make all the queries deο¬ned above. It op-erates in two stagesprepare andattackas follows:
prepare.ππΆππqueries the instanceβand outputs some state information
π along with a key Λπ.
At the end ofpreparestage, a setβis built such thatβconsist of uncor-rupted instances which have been asked eitherExecuteorSendqueries.
attack. On input (π,β),ππΆππ interacts with the instances ofβas in the
preparestage.
At the end of this stageππΆππoutputs (π, π) and wins the games if an instance
βπ
π at an uncorrupted partyπ has terminated accepting Λπwith
βπ
π ββ
β . We deο¬ne the probability ofππΆππin winning the above game asπ΄ππ£ππΆππ. A
protocol is said to provide contributiveness property in the presence of insiders ifπ΄ππ£ππΆππ is negligible inπ.
2.2 An attack not covered by the GBG model
the ephemeral keys of participants during the protocol execution process, that is, the GBG model restricts the adversaryβs ability to attack the objective GKA protocol using the revealed ephemeral key during the protocol execution process. Next, we will present a concrete EKL attack on the BGS protocol which has been shown secure in the GBG model.
2.3 EKL attack on BGS protocol
The BGS protocol [13] proposed by Bohli et al. has been shown to satisfy their deο¬nitions of outsider and insider security. We brieο¬y review the protocol here.
Round 1: Computation
1. Eachππ choosesππβ {π 0,1}π,π₯πβπ β€πand computesπ¦π=ππ₯π.ππ
additionally computesπ»(ππ).
2. Eachππ exceptππ setsπππΌ=ππβ₯π¦π, whileππsetsπππΌ=π»(ππ)β₯π¦π.
3. Eachππ computes a signatureππΌπ onπππΌβ₯ππππ.
Broadcast
EachππbroadcastsπππΌβ₯ππΌπ.
Check
Eachππchecks all signaturesππΌπ of incoming messagesπππΌβ₯πππΌ forπβ=π.
Round 2: Computation
1. Eachππ computesπ‘πΏπ =π»(π¦π₯ππβ1),π‘π π =π»(π¦ππ₯π+1),ππ=π‘πΏπ βπ‘π π and
π ππ=π»(πππβ₯π1β₯ β β β β₯ππβ1β₯π»(ππ)).ππadditionally computesπππ ππ=ππβπ‘π π.
2. Eachππ exceptππ setsπππΌπΌ=ππβ₯π πππwhileππsets
ππΌπΌ
π =πππ ππβ₯ππβ₯π πππ.
3. Eachππ computes a signatureππΌπΌπ onπππΌπΌ.
Broadcast
EachππbroadcastsπππΌπΌβ₯πππΌπΌ.
Check
1. Eachππ veriο¬es the incoming the signaturesππΌπΌπ on the corresponding
messageππΌπΌ
π for eachπβ[1, π] andπ=β πalso checks thatπ1β β β β βππ= 0.?
2. Eachππforπ < π, extractsππ=πππ ππβπ1β β β β βππβ1βπ‘πΏπ and checks
the commitmentπ»(ππ) sent in Round 1 for theππextracted.
Key Computation
Eachππcomputes the session keyπ π=π»(πππβ₯π1β₯ β β β β₯ππ).
Fig. 1.BGS protocol
Letπ° ={π1, π2,β β β , ππ} be the set of the parties who want to establish the
session key. Suppose that the group members are ordered in a logical ring with ππβ1 andππ+1 being the left and right neighbors ofππ for 1β€πβ€π, π0=ππ
maps to{0,1}π are chosen. Each party is assumed to have a long-term key pair
for public signature. Figure 1 shows the execution process after initialization phase.
We show that BGS protocol is vulnerable to the EKL attack. Without loss of generality, we assume that the ephemeral key of ππ is leaked, an adversary
π can computeπ‘πΏ
π =π»(π¦ππ₯β1π ) andπ‘π π =π»(π¦ππ₯+1π ) in Round 2. Using the public πππ ππ,π1, π2,β β β , ππβ1and its ownπ‘πΏπ,π will extractππ=πππ ππβπ1βπ2β
β β β βππβ1βπ‘πΏπ andπ π=π»(πππβ₯π1β₯ β β β β₯ππ). In this way,π easily win the AKE
game by selecting the test session atππ.
A straightforward solution is to deleteπ₯πof participantππduring the protocol
execution process, but it is infeasible. In more speciο¬c terms, it is impossible for ππ to delete π₯π after Round 1, since ππ has to useπ₯π in Round 2 to compute π‘πΏπ
andπ‘π
π; ifππ deletesπ₯π after Round 2, the unavoidable leakage ofπ₯π during the
ο¬rst round could destroy the security of BGS protocol.
Note: It is worthy of being mentioned that BGS protocol is secure in GBG model since according to the principle of GBG model, all the ephemeral π₯πs
will be erased after the corresponding session completed. Here we would like to reiterate that the attack not covered in the GBG model.
3 Extended GBG model
We now present our extended GBG (eGBG) model.
Participants. A GKA protocol runs in a network of multiple interconnected participants where each participant is activated to run sessions for itself and its peers. As a result, participants in such a session establish a session key. We denote the participant set byπ° ={π1, π2,β β β , ππ}and the protocol may be run
among any subset of these parties. In a GKA protocol, each participant may execute a polynomial number of protocol instances in parallel. We refer to the π-th protocol instance atπ β π° as βππ.
Adversary model. The communication network is assumed to be fully con-trolled by an adversary π, that is, it may eavesdrop, delay, alter and insert messages during the process of the protocol at will. We deο¬ne the security of a GKA protocol by a series of games between a challenger and the adversary π (an outsider adversary or a malicious insider) in which the adversary must solve a challenge on a test session. In this games,π is allowed to select the identities of all honest participants and issue the following queries in any sequence.
β Execute(βππ).The adversary makes this query to obtain the message that were exchanged during the honest execution (βππ) of the protocol. This query models the passive attacks.
β RevealKey(βππ). The adversary makes this query to obtain the session key established at the acceptedβππ.
β Long-termKeyReveal(π). The adversary makes this query to obtain the long-term key of the participantπ.
β EphemeralKeyReveal(βππ). The adversary makes this query to obtain the ephemeral key ofπ in theπ-th run.
β Test(βππ). Only one query of this form is allowed for the adversary. Provided thatβππ is accepted, the adversaryπ can make this query at any time. To respond to this query, a random bitπβ {0,1} is selected. Ifπ= 1, then the real session key is returned. Otherwise, a random value uniformly chosen from the session key distribution is returned.
We now deο¬ne the notion of freshness according to the same deο¬nition of partnership in the GBG model.
Deο¬nition 6 (Freshness). An instanceβππ is fresh if the following condi-tions hold:
1. The instanceβππ or any its partner has not been asked aRevealKeyquery after their acceptance.
2. The instanceβππ or any its partner has not been asked aLong-termKeyR eveal query and a EphemeralKeyReveal query simultaneously before their acceptance. That is, the adversary is allowed to reveal any subset of four pieces of secret information (the long-term keys and the ephemeral keys of the participant and its partner) which does not contain both the long-term and ephemeral keys of one party.
3. Ifβππβ² is a partner of βπ
π andπ askedLong-termKeyReveal(πβ²), then
any message that π sends to βππ on behalf of βππβ²must come from βπ
πβ² intended toβππ.
The description of theAKE security, MA securityand Contributive-nessare the same as that in the GBG model in Section 2.1.
Compared to the GBG model, we
1. Replace theRevealStatequery with theEphemeralKeyRevealby which the adversary can get the ephemeral key of the instance βππ. At the same time, we remove the limitation of the original GBG model where once (βππ) has accepted the internal state is erased.
2. Replace the Corrupt query with the Long-termKeyReveal to give the adversary the power to reveal the long-term keys.
3. Modify the Condition 2 in the notion of βfreshnessβ to expand the attack scope of the adversary.
Overall, eGBG model extends the adversarial capabilities to the following extent: we allow the adversary to reveal any subset of the long-term keys and ephemeral keys ofβππ and its partner which does not contain both the long-term and ephemeral keys of one party.
4 BGS+ protocol
To construct a GKA protocol which is secure in eGBG model, we modify some details of the original BGS protocol and get BGS+ protocol.
4.1 Description of BGS+ protocol
We ο¬rst introduce some notation that will be used in the rest of the paper. π° ={π1, π2,β β β , ππ}: The set of the parties who want to establish the session
key. We also suppose that the group members are ordered in a logical ring. π, π, π: Two large primesπandπ withπβ£(πβ1), and a generatorπ of group
πΎwith orderπ.
π: The security parameter in this protocol.
(πππ, π ππ): The long-term key pair of the participantππwhich is used for the
signature.
ππ, π₯π: The ephemeral keys pair of the participantππ.
π» :{0,1}β β {0,1}π: Hash function modelled as a random oracle, whereπ
is another security parameter.
π»1/π»2:{0,1}ββππ/ππ: Hash functions modelled as random oracles. ππΎ: Session key established by the participants.
This protocol aims to establish a conο¬dential communication. The detailed description can be seen in Fig.2. Note that we drop the operator βmodπβ for clarity.
4.2 Some design principles
The most signiο¬cant diο¬erence between BGS protocol and ours is that we use Λ
π₯π =π»1(π ππ, π₯π) instead ofπ₯π as the ephemeral intermediate result to generate
π¦π, π‘πΏπ and π‘π π . This beneο¬t of doing so is obvious: since we will destroyπ₯Λπ after
getting the needed values, this method avoid the possibility that the ephemeral secret state will be obtained by the adversary during the protocol execution process. On the other hand, even if the adversary gets the ephemeral keyπ₯π, it
can not obtain the π₯Λπ yet since it has to get the long-term keyπ ππ at the same
time, but it is not allowed to reveal the long-term key and the ephemeral key simultaneously in eGBG model.
5 Security Analysis
Round 1: Computation
1. Eachππ choosesπ₯πβπ β€π and computesπ₯Λπ=π»1(π ππ, π₯π) andπ¦π=ππ₯πΛ.
After obtainingπ¦π,ππdestroysπ₯Λπ.
2. Eachππ setsπππΌ=π¦πβ₯πππ.
3. Eachππ computes a signatureππΌπ onπππΌ.
Broadcast
EachππbroadcastsπππΌβ₯ππΌπ.
Round 2: Check
Eachππchecks all signaturesππΌπ of incoming messagesπππΌβ₯πππΌ forπβ=π.
Computation
1. Eachππ computesπ₯Λπ=π»1(π ππ, π₯π),π‘πΏπ =π»2(π¦π₯πΛβπ1),π‘π π =π»2(π¦π₯πΛ+1π ) and
ππ=π‘πΏπ βπ‘π π.
2.Eachππchoosesππβ {π 0,1}π. ThenππexceptππcomputesπππΌπΌ=ππβ₯ππ.
ππcomputesπππ ππ=ππβπ‘π π andπ»2(ππ) and setsπππΌπΌ=πππ ππβ₯ππβ₯π»2(ππ).
After this step, eachππ destroysπ₯Λπ,π‘πΏπ andπ‘π π,ππ additionally destroysππ.
3. Eachππ computes a signatureππΌπΌπ onπππΌπΌ.
Broadcast
EachππbroadcastsπππΌπΌβ₯πππΌπΌ.
After Round 1 and Round 2
Check
1. Eachππ veriο¬es the incoming the signaturesππΌπΌπ on the corresponding
messageππΌπΌ
π for eachπβ[1, π] andπ=β πalso checks thatπ1β β β β βππ= 0.?
2. Eachππ forπ < π, computesπ₯Λπ=π»1(π ππ, π₯π) andπ‘πΏπ =π»2(π¦π₯πΛβπ1),
extractsππ=πππ ππβπ1β β β β βππβ1βπ‘πΏπ and checks the commitmentπ»2(ππ)
sent in Round 2 for theππextracted. If so, eachππ computes
π ππ=π»2(πππβ₯π1β₯ β β β β₯ππβ1β₯π»2(ππ)).
Key Computation
Eachππcomputes the session keyππΎ=π»(π ππβ₯π1β₯ β β β β₯ππ).
Theorem 1 (AKE security). Letπ»1,π»2 andπ» be three random oracles and the signature scheme used in GBS+ is UF-CMA secure,ππ΄πΎπΈ denotes an
adversary that has the ability to perform the oracle queries mentioned in Section 3. Then BGS+ is AKE secure if the CDH assumption holds inπΊ. Furthermore, suppose ππ΄πΎπΈ has an advantage π΄ππ£π΅πΊππ΄πΎπΈ+(ππ΄πΎπΈ) to break AKE security of
BGS+ by activating at most π sessions for each party, then there is a CDH problem solverπ that can solve the CDH problem in polynomial time with an advantageπ΄ππ£πΆπ·π»
π΅πΊπ+(π) and π΄ππ£π΄πΎπΈ
π΅πΊπ+(ππ΄πΎπΈ) β€ π
2 π +ππ»2
2πβ1 +
π2 π»1
π + π2
π»2
π + π
2 π»
2π + 2π2 β π΄ππ£π΅πΊππππ + + 2ππ β
π΄ππ£πΆπ·π»
π΅πΊπ+(π), whereπis the number of parties;π΄ππ£π΅πΊππππ +denotes the advantage of a polynomial adversary against the UF-CMA security of the signature; ππ»1,
ππ»2 andππ» are the maximum number of times of hash queries π»1,π»2 andπ»,
respectively;ππ represents the maximum number of queries to theSendoracles
asked by the adversary.
Proof. In this proof, we incrementally deο¬ne a sequence of games starting at the real executionπΊ0 and ending up at gameπΊ5 where the adversary has no advantage. Each game addresses a diο¬erent security aspect. For each gameπΊπ,
we deο¬neππ’πππ (π= 0,1,β β β ,5) as the event that ππ΄πΎπΈ wins the game.
We use the game hopping technique based on the failure events and bridging steps suggested by Shoup [20]. Consider an event Ethat may occur during the adversary ππ΄πΎπΈβs execution such that E is detectable by the simulator, E is
independent ofππ’πππ,πΊπ andπΊπ+1 are identical unlessEoccurs, then we have β£π π[ππ’πππ+1]βπ π[ππ’πππ]β£ β€π π[E]. (1)
Game πΊ0. This game corresponds to the real execution. In the game, we donβt modify the simulation of the oracles, all the instances modeled as the real execution in the random oracle model. By the deο¬nition, we have
π΄ππ£π΄πΎπΈ
π΅πΊπ+(ππ΄πΎπΈ) =β£2β π π[ππ’ππ0]β1β£. (2)
GameπΊ1. This game is as the same as the gameπΊ0 except that the simu-lation fails if the eventForgehappens.
The eventForgeoccurs when the adversaryππ΄πΎπΈsuccessfully forgery of one
of the honest partiesβ signatures. According to the analysis in Gorantla et al.βs work [15], if the case happens, it will contradict against the assumption that the signature scheme in BGS+ protocol is UF-CMA secure.
We denote π΄ππ£π΅πΊππππ + be the advantage of a polynomial adversary against the UF-CMA security of the signature, since the probability thatππ΄πΎπΈdoesnβt
get the long-term key of the target party is β₯ 1
π and the probability ofππ΄πΎπΈ
outputting a valid forgery on behalf of the target party is also β₯ 1
π, we have
π΄ππ£πππ
π΅πΊπ+β₯ π12, then
π π[ππ’ππ1]βπ π[ππ’ππ0]β€π π[Forge]β€π2β π΄ππ£ππππ΅πΊπ+. (3)
The eventCollisionoccurs when the random oraclesπ»1, π»2 andπ» produce collisions for any of their own inputs. According to the birthday paradox, the probability of collisions in output of π»1 and π»2 oracles are at most π2
π»1/(2π)
andπ2
π»2/(2π) respectively whereππ»π forπ= 1,2 denotes the maximum number
of queries to π»π. Similarly, the probability of collision in output of π» oracle is
at mostπ2
π»/2π+1, whereππ» is the maximum number of times of hash queriesπ».
Consequently,
β£π π[ππ’ππ2]βπ π[ππ’ππ1]β£ β€π π[Collision]β€ π 2
π»1
2π + π2
π»2
2π + π2
π»
2π+1. (4)
Game πΊ3. This game is as the same as the previous game except that the simulation fails if the eventRepeatoccurs.
The eventRepeatoccurs when diο¬erent parties choose the same random value ππ as their own shares. Let ππ be the maximum number of queries to theSend
oracles asked by the adversary, thenπ π[Repeat]β€ π2π
2π. Therefore, we have
β£π π[ππ’ππ3]βπ π[ππ’ππ2]β£ β€π π[Repeat]β€ π 2
π
2π. (5)
Game πΊ4. In this game, we change the simulation of queries to theSend
query. This time, we change the way we compute the valueπ¦πβ1in some manner (we will describe these ways subsequently) to replace π¦πβ1 when the adversary makes the correspondingSendquery. Then we will have
β£π π[ππ’ππ4]βπ π[ππ’ππ3]β£ β€ππππ»2β π΄ππ£πΆπ·π»π΅πΊπ+(π). (6)
Proof. By assuming a successful adversary against this game, we can con-struct a CDH solverπ.
There is only diο¬erence betweenπΊ3 andπΊ4 in the way to generateπ¦πβ1 and π¦π for a session, we will show the diο¬erence between the current game and the
previous one is negligible as long as the CDH assumption holds.
First, the CDH solverπ obtains CDH tuple (π, ππ, ππ). As the real execution,
π randomly select a partyππ (π= 1,2,β β β , π) and a session executed by it as
the test session. When the correspondingSendquery is asked, the CDH solver sets π΄ = π¦πβ1 and π΅ = π¦π and returns π΄ and π΅ to ππ. For other queries, π
returns asπΊ3.
Letπ π1(ππ΄πΎπΈ) be the probability of the event that ππ΄πΎπΈ will select ππ
and the corresponding chosen byπ as the test session, since there areπparties and each party can active at mostπ sessions, we haveπ π1(ππ΄πΎπΈ)β₯ππ1.
By the deο¬nition of freshness, the adversary is allowed to reveal any subset of long-term keys and ephemeral keys of the parties, but it is not allowed to get both the long-term keys and ephemeral keys of one party. Special for the party ππ, eGBG model allows the adversary to reveal π ππ or π₯π, but doesnβt allow to
reveal both π ππ and π₯π. Therefore, the CDH solver simulates all oracle queries
without knowingπandπ(π=π₯Λπ andπ=π₯Λπβ1).
Following the simulation principle above, ifππ΄πΎπΈ successfully violates the
ππβ1βπ‘πΏπ and know the valueπ‘πΏπ =π»2(π¦ππ₯Λβ1π ) =π»2(π¦π₯πΛπβ1). Since we assumeπ»2
is modeled as a random oracle, to getπ‘πΏ
π, the only way forππ΄πΎπΈis to ownπ¦π₯πΛβ1π (π¦π₯Λπβ1
π ) and askHashquery (π»2). Once it asksHashquery (π»2), it has to leave
the correctπ¦π₯Λπ
πβ1(π¦π₯πΛπβ1).
With the probability π π2(ππ΄πΎπΈ) β₯ ππ»1
2, π can choose the appropriate
π¦π₯Λπ
πβ1 (π¦ππ₯Λπβ1) and solve the CDH problem with the advantage π΄ππ£π΅πΊππΆπ·π»+(π) in polynomial time: πΆπ·π»(π΄, π΅) =πΆπ·π»(ππ, ππ) =π¦π₯Λπ
πβ1=π¦ππ₯Λπβ1 =πππ.
As we can see form the above analysis, we haveπ΄ππ£πΆπ·π»
π΅πΊπ+(π)β₯πππ1π»2β£π π[ππ’ππ4]β
π π[ππ’ππ3]β£, that is,β£π π[ππ’ππ4]βπ π[ππ’ππ3]β£ β€ππππ»2β π΄ππ£π΅πΊππΆπ·π»+(π).
Game πΊ5. This game is as the same as πΊ4 except that in the test session the game halts if ππ΄πΎπΈ asks Hash query (π») with the corresponding input
(π ππβ₯π1β₯ β β β β₯ππ). Since there is no useful information aboutππ in Round 2, the
only way for the adversary to getting ππ is to guess it with the probability 21π
and to check it usingπ»2(ππ). Therefore,
β£π π[ππ’ππ5]βπ π[ππ’ππ4]β£ β€ ππ»22
2π . (7)
On the other hand, if the adversary doesnβt make any Hash query for π»2 with the correct input, it will not have any advantage in distinguishing the real session key from a random one and soπ π[ππ’ππ5] = 12.
Together with (2)-(7), Theorem 1 is proven.
Theorem 2 (MA security). Letπ»1, π»2 and π» be three random oracles and the signature scheme used in GBS+ is UF-CMA secure,πππ΄ denotes an
adversary that has the ability to perform the oracle queries mentioned in Sec-tion 3. Then BGS+ is MA secure. Furthermore, the MA advantage of πππ΄
π΄ππ£ππ΄
π΅πΊπ+(πππ΄) is upper bounded by
π΄ππ£ππ΄
π΅πΊπ+(πππ΄) β€ β£π2β π΄ππ£π΅πΊππππ + + π
2 π
2πβ1 +
π2 π»1
π + π2
π»2
π + π
2 π»
2π β1β£, where
π is the number of parties; π΄ππ£π΅πΊππππ + denotes the advantage of a polynomial adversary against the UF-CMA security of the signature;ππ»1, ππ»2 andππ» are
the maximum number of times of hash queriesπ»1,π»2andπ»;ππ represents the
maximum number of queries to theSendoracles asked by the adversary.
Proof. We follow the hypothesis of the proof of Theorem 1 and deο¬neππ’πππ
(π= 0,1,2,3) as the event that the adversaryπππ΄ wins the gameπΊπ.
GameπΊ0. LikeπΊ0 in Theorem 1, this game represents the real execution. In the game, all the instances modeled as the real execution in the random oracle model. By the deο¬nition, we have
π΄ππ£ππ΄
π΅πΊπ+(πππ΄) =β£2β π π[ππ’ππ0]β1β£. (8)
Game πΊ1. In this game, we simulate all oracles in πΊ0, except that we halt all executions in which the eventForge deο¬ned in Theorem 1 occurs. Then we have
π π[ππ’ππ1]βπ π[ππ’ππ0]β€π π[Forge]β€π2β π΄ππ£πππ
Game πΊ2. In this game, we simulate all oracles in πΊ1, except that we halt all executions in which the event Collisiondeο¬ned in Theorem 1 occurs. Conse-quently,
β£π π[ππ’ππ2]βπ π[ππ’ππ1]β£ β€π π[Collision]β€ π 2
π»1
2π + π2
π»2
2π + π2
π»
2π+1. (10)
Game πΊ3. This game is as the same as the previous game except that the simulation fails if the eventRepeatdeο¬ned in Theorem 1 occurs. Then we have
β£π π[ππ’ππ3]βπ π[ππ’ππ2]β£ β€π π[Repeat]β€ ππ 2
2π. (11)
If πΊ3 doesnβt abort, all the honest parties compute the same key. Hence π π[ππ’ππ3] = 0.
Together with (8)-(11), Theorem 2 is proven.
Theorem 3 (Contributiveness). Letπ»1,π»2andπ» be three random ora-cles and the signature scheme used in GBS+ is UF-CMA secure,ππΆππdenotes
an adversary that has the ability to perform the oracle queries mentioned in Section 3 with the advantageπ΄ππ£πΆππ
π΅πΊπ+(ππΆππ). Then BGS+ is contributive and
π΄ππ£πΆππ
π΅πΊπ+(ππΆππ)β€ β£ π
2 π
2πβ1 +
π2 π»2
π +π
2 π»
2π β1β£, whereππ»2 andππ» are the maximum
number of times of hash queriesπ»2 andπ»;ππ represents the maximum number
of queries to the Sendoracles asked by the adversary.
Proof. Following the proofs on Theorem 1 and Theorem 2, we construct four games fromπΊ0 toπΊ3.
Game πΊ0. This game represents the real execution in the random oracle model. By the deο¬nition, we have
π΄ππ£πΆππ
π΅πΊπ+(ππΆππ) =β£2β π π[ππ’ππ0]β1β£. (12)
Game πΊ1. In this game, we simulate all oracles as in πΊ0, except that we halt all executions in which the eventRepeatdeο¬ned in Theorem 1 occurs. Then we have
β£π π[ππ’ππ1]βπ π[ππ’ππ0]β£ β€π π[Repeat]β€ ππ 2
2π. (13)
Game πΊ2. In this game, we simulate all oracles in πΊ1, except that we halt all executions in which the eventCollision1for inputππ occurs. Consequently,
β£π π[ππ’ππ2]βπ π[ππ’ππ1]β£ β€π π[Collision1]β€ π2π»2
2π . (14)
Game πΊ3. In this game, we simulate all oracles in πΊ2, except that we halt all executions in which the event Collision2 for input (π ππβ₯π1β₯ β β β β₯ππ) occurs
Consequently,
β£π π[ππ’ππ3]βπ π[ππ’ππ2]β£ β€π π[Collision2]β€ π 2
π»
2π+1. (15) If πΊ3 doesnβt abort, the output of the random oracle π» is uniformly dis-tributed. Hence,π π[ππ’ππ3] = 0.
6 Conclusion
We analyze GBG model and ο¬nd that this model doesnβt consider the ephemeral key leakage resistance property. Considering this drawback, we extend GBG model to the following extent: the only corruption powers we donβt give an adversary in the game are that it is not allowed to reveal both the long-term key and the ephemeral key of a legitimate party simultaneously. We then introduce a new GKA protocol called BGS+ protocol based on BGS protocol which is provably secure in GBG model but cannot resist ephemeral key leakage attack and prove that it is secure in the new model. As far as we know, this is the ο¬rst provably secure GKA protocol in the strongest security model.
As for limitations, we didnβt take the eο¬ciency into account. A natural di-rection for further research is the design of provably secure protocols with lower computational cost and communication cost. Additionally, the design of GKA protocols in standard models where the security of the protocols isnβt depen-dent on the security of random oracles is another imperative future research consideration.
Acknowledgement
This work is partially supported by the Specialized Research Fund for the Doc-toral Program of Higher Education (No. 200802480019) and the National Natural Science Foundation of China (No.61073150).
References
1. Manulis, M.: Provably Secure Group Key Exchange. Volume 5 of IT Security. Europ¨aischer Universit¨atsverlag, Berlin, Bochum, D¨ulmen, London, Paris (August 2007) Available at http://www.manulis.eu/phd.html. Last accessed on 29 May 2008.
2. Bellare, M., Rogaway, P.: Entity Authentication and Key Distribution. In: Ad-vances in CryptologyβCRYPTOβ93. Volume 773 of LNCS., Springer (1993) 232β249 3. Canetti, R., Krawczyk, H.: Analysis of Key-Exchange Protocols and Their Use for Building Secure Channels. In: Advances in Cryptology - EUROCRYPTβ01. Volume 2045 of LNCS., Springer (2001) 453β474
4. LaMacchia, B.A., Lauter, K., Mityagin, A.: Stronger Security of Authenticated Key Exchange. In Susilo, W., Liu, J.K., Mu, Y., eds.: Provable Security, First International Conference, ProvSec 2007. Volume 4784 of LNCS., Springer (2007) 1β16
5. Abdalla, M., Fouque, P.A., Pointcheval, D.: Password-Based Authenticated Key Exchange in the Three-Party Setting. In Vaudenay, S., ed.: Public Key CryptographyβPKCβ05. Volume 3386 of LNCS., Springer (2005) 65β84
7. Yoneyama, K.: Eο¬cient and Strongly Secure Password-Based Server Aided Key Exchange (Extended Abstract). In Chowdhury, D.R., Rijmen, V., Das, A., eds.: Progress in CryptologyβINDOCRYPTβ08. Volume 5365 of LNCS., Springer (2008) 172β184
8. Blake-Wilson, S., Johnson, D., Menezes, A.: Key Agreement Protocols and Their Security Analysis. In: Cryptography and Coding, 6th IMA International Confer-ence. Volume 1355 of LNCS., Springer (1997) 30β45
9. Bresson, E., Chevassut, O., Pointcheval, D., Quisquater, J.J.: Provably authenti-cated group Diο¬e-Hellman key exchange. In: CCSβ01: Proceedings of the 8th ACM conference on Computer and Communications Security, ACM (2001) 255β264 10. Bresson, E., Chevassut, O., Pointcheval, D.: Provably Authenticated Group
Diο¬e-Hellman Key Exchange - The Dynamic Case. In: Advances in Cryptologyβ ASIACRYPTβ01. Volume 2248 of LNCS., Springer (2001) 290β309
11. Bresson, E., Chevassut, O., Pointcheval, D.: Dynamic Group Diο¬e-Hellman Key Exchange under Standard Assumptions. In: Advances in Cryptologyβ EUROCRYPTβ02. Volume 2332 of LNCS., Springer (2002) 321β336
12. Katz, J., Shin, J.S.: Modeling insider attacks on group key-exchange protocols. In: Proceedings of the 12th ACM Conference on Computer and Communications SecurityβCCSβ05, ACM (2005) 180β189
13. Bohli, J.M., Gonzalez Vasco, M.I., Steinwandt, R.: Secure group key establishment revisited. Int. J. Inf. Sec.6(4) (2007) 243β254
14. Bresson, E., Manulis, M.: Securing Group Key Exchange against Strong Cor-ruptions. In: Proceedings of ACM Symposium on Information, Computer and Communications Security (ASIACCSβ08), ACM Press (2008) 249β260
15. Gorantla, M.C., Boyd, C., GonzΒ΄alez Nieto, J.M.: Modeling Key Compromise Im-personation Attacks on Group Key Exchange Protocols. In Jarecki, S., Tsudik, G., eds.: Public Key CryptographyβPKCβ09. Volume 5443 of LNCS., Springer (2009) 105β123
16. Boyd, C., Nieto, J.M.G.: Round-Optimal Contributory Conference Key Agree-ment. In: Public Key CryptographyβPKCβ03. Volume 2567 of LNCS., Springer (2003) 161β174
17. Al-Riyami, S.S., Paterson, K.G.: Tripartite Authenticated Key Agreement Proto-cols from Pairings. In: Cryptography and Coding, 9th IMA International Confer-ence. Volume 2898 of LNCS., Springer (2003) 332β359
18. Bresson, E., Chevassut, O., Essiari, A., Pointcheval, D.: Mutual Authentication and Group Key Agreement for Low-Power Mobile Devices. In: Proc. of MWCNβ03, World Scientiο¬c Publishing (October 2003) 59β62
19. Manulis, M., Suzuki, K., Ustaoglu, B.: Modeling Leakage of Ephemeral Secrets in Tripartite/Group Key Exchange. In Lee, D., Hong, S., eds.: Information, Secu-rity and CryptologyβICISCβ09, Revised Selected Papers. Volume 5984 of LNCS., Springer (2010) 16β33