ABSTRACT
This study proposes an anti-collusive self-healing group key distribution scheme with revocation using dual directional hash chain. The session key is computed from three parts: forward key, backward key and random session number. The former two parts are built on dual directional hash chain. Users are provided with a set of private secrets according to their legal lifetimes. In terms of communication cost, the proposed scheme is more efficient than the previous schemes not based on one-way hash chain and is slightly increased compared with the previous scheme based on one-way hash chain. According to the security analysis results, the proposed scheme can resist the collusion of revoked users and newly joined users.
PDF Abstract XML References Citation
How to cite this article
DOI: 10.3923/itj.2009.619.624
URL: https://scialert.net/abstract/?doi=itj.2009.619.624
INTRODUCTION
Currently, wireless network has more applications in military operations, rescue missions, etc., where there are usually no network infrastructure supports and the adversaries may intercept, tamper even partially interrupt the communication. It is necessary to encrypt and authenticate the messages in the communication. Group key can be used to establish secure communication over an unreliable channel in wireless network.
In mobile wireless networks, users may move in or out of range frequently so that the topology of network dynamically changes with frequent membership changes. Therefore, group key must be re-keyed accordingly. When some legal users lost their keys due to network faults and then requested those keys from the group manager, not only the burden of the group manager was increased but also the wireless network traffic, as well. In order to make legal nodes recover their lost legal keys without asking the group manager, the research on self-healing key distribution started in 2002.
An important concept is session, which is a fixed interval of time. The group manager divides the total lifetime of group communication into certain number of sessions. Each session has a session key. At the beginning of group communication, the group manager sends personal secret information to each of initial group users. The group manager can add users to or remove users from the group at the beginning of each session. The central concept of self-healing key distribution is to broadcast some packets about key so that the legal users can recover their lost session keys due to network failure without requesting help from the group manager. It can decrease the work load on the group manager and reduce the network traffic. The self-healing key distribution scheme must guarantee that only legal users can recover their lost legal session keys but illegal users can not.
Our contributions in this study are as follows; first, we propose an efficient key distribution scheme with self-healing property and revocation capability for secure group communication in wireless network. Present scheme is based on dual directional hash chain so that it has significant improvement in terms of both communication and storage cost compared with those previous schemes which are not based on hash chains. Second, random numbers are used in the process of achieving the important factor for computing session keys. Therefore, our scheme can resist the collusion of revoked users and newly joined users, while the previous schemes based on hash chains can not totally overcome such flaw.
Self-healing key distribution with revocation was first introduced by Staddon et al. (2002). In terms of entropy theory, definitions and lower bounds on resources were provided. Liu et al. (2003) generalized the definition 2 in the scheme (Staddon et al., 2002) and provided a more efficient construction. Blundo et al. (2004) showed an attack applied to the first construction in scheme (Staddon et al., 2002) and presented a new scheme different from those methods (Liu et al., 2003; Staddon et al., 2002). In the scheme (Blundo et al., 2004), a user can recover all the lost legal session keys simply by using the current broadcast messages. Hong and Kang (2005) changed the redundant mode of session key. All the above schemes are based on Shamirs secret sharing technique. Saez (2005a, b) adopted vector space secret sharing instead of Shamirs secret sharing to realize the self-healing key distribution (Saez, 2005a) and sponsorization (Saez, 2005b). More et al. (2003) proposed a sliding-window self-healing key distribution scheme. Zou and Dai (2006) adopted a new revocation polynomial to make illegal users get wrong random values. Dutta and Mukhopadhyay (2007a, b) and Dutta et al. (2007b, 2008) did not divide session keys into two polynomials but concealed the session keys directly. Jiang et al. (2007) proposed a concept of dual directional hash chain. Other schemes (Dutta et al., 2007a; Shi et al., 2007) were also based on hash chain, which could reduce the communication cost and storage cost. However, these schemes (Dutta et al., 2007a; Jiang et al., 2007; Shi et al., 2007) can not resist collusion between revoked users and newly joined users. In order to overcome this drawback, Tian et al. (2008) proposed a scheme based on vector space secret sharing and one-way hash chains. However, the scheme was invalid for resisting collusion of newly joined users and revoked users whose lifetimes did not expire. In this study, we devote to totally solve the collusion in self-healing key distribution schemes based on hash function.
PRELIMINARIES
The notations used in the study are defined below:
U | : | Set of all users in the networks |
ui | : | i-th user |
GM | : | Group manager |
n | : | Total number of users in networks |
m | : | Total number of session |
t | : | The maximum number of compromised users |
Fq | : | A field of order q |
Si | : | Personal secret of user ui |
Bj | : | Broadcast message by the GM in session j |
Kj | : | Session key generated by the GM in session j |
FS | : | Forward key seed generated by the GM |
BS | : | Backward key seed generated by the GM |
FKj | : | i-th forward key in the forward key chain |
BKj | : | i-th backward key in the backward key chain |
R | : | Set of all revoked users |
Rj | : | Set of revoked users in session j |
Jj | : | Set of joined users in session j |
A Dual Directional Hash Chain (DDHC) consists of two one-way hash chains with equal length, a Forward Hash Chain (FHC) and a Backward Hash Chain (BHC). First, GM generates two random key seeds, FS and BS, from finite field Fq. Then GM repeatedly applies the same one-way function H on each key seed to produce two hash chains of equal length m. So, the DDHC is denoted by {H(FS), , Hi(FS), , Hm(FS)} and {H(BS), , Hi(BS), , Hm(BS)} (Jiang et al., 2007).
We state the following definitions (Dutta et al., 2007a; Tian et al., 2008) that are aimed to computational security for session key distribution, according to the security model in scheme (Liu et al., 2003).
Definition 1: Let t,i ∈ {1, ,n} and j ∈ {1, ,m}
• | D is a session key distribution with privacy if. |
• | For any user ui, the session Kj is determined by Bj and Si. |
• | It is infeasible to compute session key Kj only from {B1, , Bm} or {S1,.., Sn}. |
• | D has t-revocation capability if any user uiεR, where |R|≤ t, cant recover Kj from Bj and Si. |
• | D is self-healing if any user ui ∉ R who exists from session j1 to session j2 can recover Kj, where 1≤ j1<j<j2≤ m. |
Definition 2: D guarantees t-wise forward secrecy and backward secrecy if:
• | For any set R of users revoked before session j, where |R|≤ t, it is infeasible for the members in R together to get any information about Kj, even with the knowledge of keys K1, , Kj-1 before session j. |
• | For the set J of new users joined after session j, where |J|≤ t, it is infeasible for the members in J together to get any information about Kj, even with the knowledge of keys Kj+1, , Km after session j. |
Definition 3: D resist collusion if for disjoint set B and C, where B ⊂Rv ∪ ∪ R1, C ⊂Js ∪ ∪ Jm and |B ∪ C|≤ t, it is infeasible for collusion B ∪ C to get any information about Kj, where v<j<s.
To sum up, definition 1 defines a self-healing key distribution scheme with revocation capability. Definition 2 defines both forward secrecy and backward secrecy. Definition 3 defines resisting collusion property.
PROPOSED SCHEME
The lifetime of group communication is divided into m sessions, where a session is a fixed interval of time. The scheme considers all of operations taking place in a finite field Fq, where q is a large prime number (q>m). The scheme never allows the revoked users to rejoin the group in later sessions. Let H: Fq → Fq be a cryptographically secure one-way hash function.
The self-healing key distribution scheme consists of five procedures, i.e., setup, broadcast, key recovery, adding new members and self-healing, which are defined as follows:
Setup: GM randomly picks two initial key seeds, FS and BS, from Fq. In the pre-processing time, it repeatedly applies the one-way function H on FS and BS to produce DDHC of equal length m. For 1≤ j≤ m, the j-th session key is computed by:
Kj = (H(FS)j+H(BS)m-j+1)cj |
where cj is a random number corresponding to session j.
For m sessions, GM chooses, independently and uniformly at random, m t-degree(t<m,n) polynomials h1(x),h2(x), , hm(x) ∈ Fq[x] and generates m random numbers r1,r2, ,rm ∈ Fq, respectively corresponding to h1(x),h2(x), , hm(x).
For 1≤ i≤ m, each user ui whose lifetime is from session l to session v receives the private secrets corresponding to his legal sessions. The private secrets include set Si = {hl(ui),hl+1(ui), , hv(ui)}, set r ={rl,rl+1, ,rv}, forward key seed SFKi=H(FS)l and backward key seed SBKi=H(BS)m-v+1. GM and ui communicate through secure channel.
Broadcast: Let Rj be the set of all users revoked in and before sessions j, where |Rj|=zj<t. In the j-th session GM firstly produces random number cj in the finite field Fq. Secondly, GM produces the revocation polynomial Aj(x)= ∏ zji=1(x-ui), where ui ∈ Rj and the broadcast polynomial Wj(x)=Aj(x)cj+hj(x), where the polynomial hj(x) plays the role of masking polynomial. Thirdly, GM produces the set Cj = {cjr1(c1+c2), cjr2(c2+c3), , cjrj-2(cj-2+cj-1), cjrj-1cj-1}. Finally, GM broadcasts the message Bj = {Wj(x),Cj,,Rj}.
Key recovery: When a non-revoked user ui receives the j-th broadcast message Bj, ui firstly evaluates Aj(ui) and subsequently recovers cj = (Wj(ui)-hj(ui))/Aj(ui). Secondly, ui computes the j-th forward key Fkj = H(SFKi)j-l and backward key BKj=H(SBS)v-j. Finally, ui computes the j-th session key Kj=(FKj+BKj)cj.
Adding group member: When a new user ui expects to join the group and to be active from session l to session v, ui must get in touch with GM. The GM computes uis private secrets, i.e., set Si = {hl(ui), hl+1(ui), , hv(ui)}, SFKi = H(FS)1 and SBKi = H(BS)m-v+1. Finally, the GM sends {Si,r = {rl,rl+1, ,rv}, SFKi, SBKi} to ui via secure channel between GM and ui.
Self-healing: Suppose user ui whose lifetime is from session l to session v receives broadcast message Bj1 in session j1, but not message Bj for session j, where 1≤ l<j<j1≤ v≤ m user ui can recovers the lost session key Kj as follows:
Firstly, ui repeatedly applies the one-way function H on each of his two key seeds, SFKi and SBKi obtained in joining process, until ui gets the forward key Fkj = H(SFKi)j-l and the backward key Bkj = H(SBKi)v-j for session j.
Secondly, for broadcast message Bj1 ={Wj1(x),Cj1,Rj1}, user ui computes cj1 from Wj1(ui) by his private secret hj1(ui). By dividing each item of set Cj1 by cj1, user ui obtains a new set Cj1 ={r1(c1+c2),r2(c2+c3), , rj1-2(cj1-2+cj1-1), rj1-1cj1-1}.
Thirdly, user ui has a private secret set r = {rl, ,rj, rj+1, , rj1-1, , rv}. Therefore, By using the private secret set r= = {rj, rj+1, , rj1-1}, where r= ⊂r, user ui can compute cj as follows:
• | Dividing respectively each item of set Cj1= = {rj(cj+cj+1), , rj1-2(cj1-2+cj1-1), rj1-1cj1-1} by corresponding item of set r=, where set Cj1= is a subset composed of the latter j1-j items in Cj1, ui will work out the final set Cj1== = {cj+cj+1, ,cj1-3+cj1-2, cj1-2+cj1-1, cj1-1}. |
• | ui can work out cj by a serial of subtraction operations in reverse order as follows: ui can get cj1-2 by the subtraction operation of the last two items, i.e., (cj1-2+cj1-1)-cj1-1. Therefore, the resultant cj1-2 can be used to work with cj1-3+cj1-2 to get cj1-3 and so on. By this means, ui finally works cj out. |
Finally, Kj=(FKj+BKj)cj.
SECURITY ANALYSIS
Present study shows that proposed scheme realizes a self-healing key distribution with revocation capability and resisting collusion property. Now, we will prove that our scheme satisfies all the conditions required by definition 1, 2 and 3.
Theorem 1: The scheme is secure, self-healing key distribution scheme with t-revocation capability with respect to definition 1.
Proof 1: The scheme is a session key distribution with privacy.
• | The process of computing session key Kj by a non-revoked user ui via broadcast message Bj and his private secrets is described in the third step of proposed scheme. |
• | The session key Kj for session j is computed from three parts: forward key FKj, backward key BKj and random number cj. A user who does not join the group does not compute the session key Kj due to lacking the information about FKj and BKj, even if the user has already gathered all broadcast messages. Similarly, because random number cj has been concealed in broadcast messages, users holding all private secrets still can not compute Kj before computing cj from broadcast messages. Therefore, it is infeasible to determine session key only from broadcast messages or personal private secrets. |
Proof 2: The scheme has t-revocation capability.
Let R = Rj ∪ ∪ R1 (|R|<t) be the set of revoked users in and before session j. For user ui ∈ R, because the revocation polynomial Aj(ui) is always zero, user ui can not compute cj from broadcast polynomial Wj(ui). Therefore, coalition R must attack the masking polynomial hj(x) to get cj. For the size of the coalition R is t at most, the colluding users only have at most t points on the masking polynomial hj(x). But the degree of the polynomial hj(x) is t. Hence coalition R can not recover hj(x). Because there is no information of cj, it is infeasible for the coalition R to compute session key Kj.
Proof 3: The scheme has self-healing capability, as is described in the fifth step of proposed scheme.
Theorem 2: The scheme achieves t-wise forward security and backward security with respect to definition 2.
Proof 1: Let R=Rj ∪ ∪ R1 (|R|<t) be a coalition of revoked users colluding in and before session j. In order to attack t-degree polynomial hj(x), coalition R needs at last t+1 points on hj(x). But the size of coalition R is t at most. Hence coalition R can not recover hj(x). Furthermore, because of the one-way property of BHC, it is computationally infeasible to compute Bkv = H(BS)m-v+1 from Bkj = H(BS)m-j+1 for j<v. Therefore, the scheme guarantees the t-wise forward security.
Proof 2: Let J = Jj ∪ ∪ Jm (|J|<t) be a coalition of joined users colluding from session j. For session key Kj1, where j1<j, coalition J requires at least t+1 points on polynomial hj1(x) to attack t-degree polynomial hj(x). However, the size of coalition J is t at most. Hence coalition J can not recover hj(x). Furthermore, because of the one-way property of FHC, it is computationally infeasible to compute Fkj1 = H(FS)j1 from Fkj = H(FS)j. Therefore, the scheme guarantees the t-wise backward security.
Theorem 3: The scheme resists collusion of revoked users and newly joined users with respect to definition 3.
Proof: Let B ⊂Rv ∪ ∪ R1 be a set of users revoked from group before session v and let D ⊂Js ∪ ∪ Jm be a set of users who joined the group from session s, where v<s. Set B and set D are disjointed. Set L ⊂B ∪ D, where |B ∪ D|<t, is a coalition of users colluding to attempt to get the session key Kj for session j, where v<j<s. the coalition L can easily compute forward key FKj and backward key BKj for session j via the property of DDHC. Therefore, it is necessary for coalition L to get cj. Because the size of coalition L is t at most, the coalition L can not have at least t+1 point on t-degree masking polynomial hj(x). Therefore, it is infeasible for the coalition L to get cj by attacking masking polynomial hj(x). Furthermore, in order to get cj, the coalition L can resort to working on i-th broadcast set Ci for session i, where i>j. However, without the knowledge of private secret set {rv+1, rv+2, , rj, , rs-1} for session rv+1, rv+2, , rj, , rs-1, the coalition L can not get cj from i-th broadcast set Ci. Therefore, it is infeasible for the coalition L to compute the session key Kj without the knowledge of random number cj for session j. As a result, the scheme resists the collusion of revoked users and newly joined users.
PERFORMANCE ANALYSIS
In order to evaluate the performance of the proposed method, we will compare the communication complexity and storage cost between our scheme and the previous self-healing session key distribution schemes.
At the j-th session, the broadcast message Bj consists of t-degree broadcast polynomial Wj(x), set Cj and revocation set Rj. The size of set Cj is j-1. The communication cost for the broadcast of revocation set Rj can be ignored because the identity of users can be selected from a small finite field (Hong and Kang, 2005). Therefore, the communication cost of our scheme is O((t+j)logq) for session j.
In the process of joining group, user ui who is legal from session j to session v obtains his private secrets, i.e., set Si, set r, forward key seed SFKi and backward key seed SBKi. The size of set Si and the size of set r are both l-v+1. Therefore, the storage cost of user ui is a constant, O((2l-2v+4))logq),corresponding to his lifetime from session l to session v.
We compare the communication complexity and storage cost of our scheme with the previous schemes not based on one-way hash chain. The results are listed in Table 1. The schemes (Dutta and Mukhopadhyay, 2007a, b; Dutta et al., 2007b) do not have the capability of resisting collusion.
Table 1: | Comparison between our scheme and previous schemes not based on one-way hash chain |
![]() |
Table 2: | Comparison between our scheme and previous schemes based on one-way hash chain |
![]() |
The communication complexity of our scheme is O((t+j)logq) while those of the other schemes are more than or equal to O((t+j+1)logq). Furthermore, the storage cost of a user in our scheme is (2l-2v+4))logq which corresponds to his lifetime. Although the two schemes (Zou and Dai, 2006; Dutta et al., 2007b) are more efficient than ours in terms of storage cost, proposed scheme is more efficient than theirs in terms of the communication complexity. According to the comparison results in Table 1, we conclude that our scheme is more efficient than the previous schemes not based on one-way hash chain.
We compare the communication complexity and storage cost of our scheme with previous schemes based on one-way hash chain. The results are shown in Table 2. Although the two schemes (Jiang et al., 2007; Shi et al., 2007) are better than our scheme in term of communication complexity and storage cost, the users in the schemes (Jiang et al., 2007; Shi et al., 2007) can not be revoked by GM and will exit only with their lifetimes expiring. Furthermore, these two schemes can not resist the collusion of newly users and detached users. Although the scheme (Dutta et al., 2007a) has the revocation capability, it can not resist the collusion of newly joined users and revoked users. The scheme (Tian et al., 2008) can resist the collusion of newly joined users and revoked users whose lifetimes have expired. However, the scheme (Tian et al., 2008) can not resist the collusion of newly joined user and revoked users whose lifetimes do not expire. From the comparison in Table 2, although the communication cost and storage cost of proposed scheme are slightly increased, only our scheme can resist collusion of newly joined user and revoked users no matter whether their lifetimes expire or not.
CONCLUSION
In this study, an anti-collusive self-healing group key distribution scheme with revocation is proposed. A user is provided with a set of legal private secrets according to his lifetime. Forward key and backward key are built on DDHC. The communication cost of the proposed scheme is more efficient than those of the previous schemes not based on one-way hash chain, while the communication cost is slightly increased compared with those of the previous schemes based on one-way hash chain. By adopting random number set r corresponding to sessions, our scheme overcomes the vital drawback in previous schemes based on one-way hash chains. In a word, our scheme can resist the collusion of revoked users and newly joined users. The proposed scheme is secure and will find more applications in unreliable wireless network.
ACKNOWLEDGMENTS
This study is supported by National High Technology Research and Development Program of China under Grant No. 2007AA01Z446 and National Natural Science Foundation of China under Grant No. 60703014. The authors also gratefully acknowledge the helpful comments and suggestions of the reviewers and editors, which have improved the presentation.
REFERENCES
- Blundo, C., P. D'Arco, A. de Santis and M. Listo, 2004. Design of self-healing key distribution schemes. Des. Codes Cryptogr., 32: 15-44.
CrossRefDirect Link - Dutta, R., E.C. Chang and S. Mukhopadhyay, 2007. Efficient self-healing key distribution with revocation for wireless sensor networks using one way key chains. Proceedings of the 5th International Conference on Applied Cryptography and Network Security, Zhuhai, China, LNCS 4521, June 5-8, 2007, Springer, Berlin/Heidelberg, pp: 385-400.
CrossRefDirect Link - Dutta, R. and S. Mukhopadhyay, 2007. Designing scalable self-healing key distribution schemes with revocation capability. Proceedings of the 5th International Symposium on Parallel and Distributed Processing and Applications, Niagara Falls, Canada, August 29-31, 2007, Springer, Berlin/Heidelberg, pp: 419-430.
CrossRefDirect Link - Dutta, R. and S. Mukhopadhyay, 2007. Improved self-healing key distribution with revocation in wireless sensor network. Proceedings of the Wireless Communications and Networking Conference, March 11-15, 2007, Kowloon, China, pp: 2963-2968.
CrossRefDirect Link - Dutta, R., S. Mukhopadhyay and S. Ennanuel, 2008. Low band with self-healing key distribution for broadcast encryption. Proceedings of the 2nd Asia International Conference on Modeling and Simulation, May 13-15, 2008, IEEE CS Press, pp: 867-872.
CrossRefDirect Link - Dutta, R., Y.D. Wu and S. Mukhopadhyay, 2007. Constant storage self-healing key distribution with revocation in wireless sensor network. Proceedings of the International Conference on Communications, Glasgow, June 24-28, 2007, IEEE Press, Scotland, UK., pp: 1323-1328.
CrossRefDirect Link - Hong, D. and J.S. Kang, 2005. An efficient key distribution scheme with self-healing property. IEEE Commun. Lett., 9, 8: 759-761.
CrossRefDirect Link - Jiang, Y.X., C. Lin, M.H. Shi and X.M. Shen, 2007. Self-healing group key distribution with time-limited node revocation for wireless sensor networks. Ad Hoc Netw., 5,1: 14-23.
CrossRefDirect Link - Liu, D.G., P. Ning and K. Sun, 2003. Efficient self-healing group key distribution with revocation capability. Proceedings of the 10th ACM Conference on Computer and Communications Security, October 27-31, 2003, ACM Press, Washington, DC. USA., pp: 231-240.
CrossRefDirect Link - More, S.M., M. Malkin, J. Staddon and D. Balfanz, 2003. Sliding-window self-healing key distribution. Proceedings of the ACM Workshop on Survivable and Self-Regenerative Systems (In Association with 10th ACM Conference on Computer Communications Security), Fairfax, October 31, 2003, ACM Press, VA., United States, pp: 82-90.
CrossRefDirect Link - Saez, G., 2005. On threshold self-healing key distribution schemes. Proceedings of the 10th IMA International Conference on Cryptography and Coding, December 19-21, 2005, Springer Verlag, Cirencester, UK., pp: 340-354.
CrossRefDirect Link - Saez, G., 2005. Self-healing key distribution schemes with sponsorization. Proceedings of the 9th IFIP TC-6 TC-11International Conference on Communications and Multimedia Security, Salzburg, Austria, September 19-21, 2005 Springer Verlag, pp: 22-31.
CrossRefDirect Link - Shi, M.H., X.M. Shen, Y.X. Jiang and C. Lin, 2007. Self-healing group-wise key distribution schemes with time-limited node revocation for wireless sensor networks. IEEE Wirel. Commun., 14,5: 38-46.
CrossRefDirect Link - Tian, B., S. Han, T.S. Dillon and S. Das, 2008. A self-healing key distribution scheme based on vector space sharing and one way hash chains. Proceedings of the International Symposium on a World of Wireless, Mobile and Multimedia Networks, June 23-26, 2008, IEEE CS Press, USA., pp: 1-6.
CrossRefDirect Link - Zou, X.K. and Y.S. Dai, 2006. A robust and stateless self-healing group key management scheme. Proceedings of the International Conference on Communication Technology, Guilin, China, November 27-30, 2006, IEEE Press, pp: 1-4.
CrossRefDirect Link