Group Re-keying Protocol Based on Modular Polynomial Arithmetic Over Galois Field GF(2 n )

: Problem statement: In this study we propose a group re-keying protocol based on modular polynomial arithmetic over Galois Field GF(2 n ). Common secure group communications requires encryption/decryption for group re-keying process, especially when a group member is leaving the group. Approach: This study proposes secret keys multiplication protocol based on modular polynomial arithmetic (SKMP), which eliminates the need for the encryption/decryption during the group re-keying. Results: The implementation based on modular polynomial arithmetic over Galois Field GF(2 n ) offers fast re-keying process (about 50% faster than Secret Keys Multiplication Protocol (SKM) for 128 bit key) and compact key size representation against other secret keys multiplication protocols. With SKMP group re-keying is handled more efficiently through modular polynomial arithmetic manipulation rather than the expensive encryption/encryption which need to be done on every membership change.


INTRODUCTION
In the modern world, most user-based network applications such as multimedia streaming, multi-party video conferencing, pay per view of digital media content and others; need efficient, scalable and secure group communication. One of the network protocols that can meet such requirements is the multicast communication.
Multicast communication is a network protocol that is being used for communication among users to deliver data from a sender to multi-receivers efficiently. Multicast over unicast has an advantage that it utilizes less network resources. In multicast communication, data is delivered only to a group of anathematized users which is denoted as multicast group. One of the prominent needs in multicast communication is security. To achieve secure multicast communication, encryption/decryption is normally being employed. However changing membership within a multicast group can post a serious performance degradation problem, especially when membership changes are frequent.
Secret Keys Multiplication Protocol (SKM) [1] introduces a simple re-keying method that eliminates the need for encryption/decryption. In this study secret key multiplication protocol based on modular polynomial arithmetic over Galois Field GF(2 n ) (SKMP) is proposed. The key in the proposed protocol is transmitted to the users in the form of modular polynomial over Galois Field GF(2 n ). Through the use of modular polynomial arithmetic, faster re-keying process is achieved, and with a much more compact key size.
Multicast network system: Network system is defined as a communication between computers. The multicast network is the group of interested users. Figure 1 shows a secure multicast whereby the sender transmits data to receivers via a multicast network. The control server is responsible for generating and distributing keys to both the sender and receivers.   Figure 3 shows one possibility how the members in the group can be connected. Generally, there will be n(n-1)/2 individual point-to-point connections for the multicast scheme.
Existing secrets keys multiplication protocol: There are several proposed scalability multicast group rekeying protocols. Among them are group key approach [1][2][3] , contributory key agreement supported by Diffie Hellman algorithm [4] , and logical key tree based approach [5,6] . Among the group re-keying methods mentioned above, SKM [1] is one method that does not depend on encryption/decryption for its group re-keying process.
Secret keys multiplication for scalable group rekeying (SKM) [1] : In secure group communication users of a group share a common group key. Normally in a secure group communication protocol, the group controller sends to the group members a new key to authorize new users as well as performs the group rekeying for group users whenever the key changes. The SKM protocol uses the logical tree hierarchy of key exchange among the group members by multiplying the group secret keys. For data protection, SKM protocol uses a modular arithmetic which is applied to the individual key.
SKM protocol uses secret key multiplication in conjunction with the key tree approach. This approach is managed by the trusted server called Group Controller (GC). The trusted GC, who owns the private key k c , uses the key tree for group key management. To provide multicast security, each secured multicast group is associated with one trusted server for managing the group communication. An example of a key tree is shown in Fig. 4.
As shown by Fig. 4, the u nodes are the users of a group, the k nodes are the keys and the group key (group secret key) is the session key The user u 1 to u 9 holds individual keys as k 1 to k 9 . k 123 is the auxiliary key share by user u 1 , u 2 and u 3 . Similarly, k 456 and k 789 are shared by their users, u 4p -u 6 and u 7 -u 9 , respectively. k 1-9 is the session key and is known to all the group members. As shown by Fig. 4, the individual keys are located at level-2 of the tree, the auxiliary keys are located at level-1 of the tree and the session key k 1-9 is located at level-0 of the tree. These levels are managed with a condition as that level-2 keys must be greater in value than level-1 and level-0 keys. Similarly, the level-1 keys must be greater in value than level-0 keys.
To explain the SKM group re-keying protocol, assume user u 9 wants to leave the group. Then the GC has to change the secret key which is known to u 9 , as well as other users. To manage the keys, a re-keying process has to be done. k 1-9 will be changed to k 1-8 , k 789 is changed to k 78 and k 9 will be deleted from the tree. Before generates a new secret key, the GC changes its private key from k c to k c '. After performing the calculation as shown by Eq. 1, the GC will multicast the values X and Y to the rest of the group members (u 1u 8 ). Users u 7 and u 8 recover the new auxiliary key, k 78, by using their individual private keys k 7 and k 8 respectively (Eq. 2 and 3). With the auxiliary key k 78 users u 7 and u 8 can recover the new session key, k 1-8 , by executing Eq. 3. Similarly, users u 1 -u 3 and u 4 -u 6 can recover the new session key by using either the respective auxiliary keys, k 123 or k 456 : X = k 7 × k 8 × k c ' + k 78 Y = k 123 × k 456 × k 78 × k c ' + k [1][2][3][4][5][6][7][8] (1) k 78 = X mod k 7 k 78 = X mod k 8 (2)

MATERIALS AND METHODS
The proposed scalable group re-keying method based on modular polynomial arithmetic: This study proposes an enhancement to SKM by implementing SKM with modular polynomial arithmetic over Galois Field GF(2 n ). We are comparing the proposed protocol with the existing SKM protocol to show the enhancement in the computation speed. Figure 5 shows an example of a logical arrangement of the users and the nodes in the proposed method. The key structure is stored in a hierocracy tree form similar to the SKM key tree structure. In Fig. 5, U n1 to U n9 denote the user keys. These 9 user keys are connected with three subgroup keys S n1 , S n2 and S n3 , and the subgroup keys are further connected to the session key, R n . Similar to SKM, k c and k c ' are secret keys own by the Group Controller. The secret key k c (and its derivations) is a random number that should be changed for every re-keying process. Each key (U ni , S ni , R n ) is represented by a binary string, b n-1 ...b 1 b 0 . This binary string is then further represented in its polynomial form, P(b n-1 …b 1 which is used in the calculation as stated in Eq. 4-6. If a new user joins or an existing user leaves in any one of the subgroup, the Group Controller will change the corresponding subgroup key and transfer the new subgroup key to the respective users in a secured way similar to the SKM methods. However the calculation of the new keys will be done in modular polynomial arithmetic over the Galois Field GF(2 n ).
In the proposed re-keying method, we design new modular polynomial equations for transmitting the key in a secured manner (Eq. 4-6). Note that we use ⊕ and ⊗ to denote modular polynomial addition and multiplication over Galois Field GF(2 n ), respectively: P(X) = P(U n7 ) ⊗ P(U n8 ) ⊗ P(k c ') ⊕ P(S n3 ') P(Y) = P(S n1 ) ⊗ P(S n2 ) ⊗ P(S n3 ') ⊗ P(kc') ⊕ P(R n ') (4) P(S n3 ') = P(X) mod P(U n7 ) P(S n3 ') = P(X) mod P(U n8 ) P(R n ') = P(Y) mod P(S n3 ') As shown by Fig. 5, the keys for each user and the subgroup are assigned by the Group Controller. The key value is given as a binary input which is then transform to its equivalent polynomial form for the rekeying process. Therefore, the bit length of the proposed method is totally reduced compared to the SKM method where the key is in a form of integer in Finite Field Ζ n , where n has to be large for security reason.
As shown by Fig. 5, if the user U 9 is leaving then the group, the GC (group controller) has to change the session key which is known by the U 9 , as well as other users. In the re-keying process, the subgroup key, S n3 , is changed to S n3 ' by executing Eq. 4 and the session key, R n , is changed to R n ', while U n9 is being deleted from the tree. For security reason, the Group Controller also changes its private key k c to k c '.
The re-keying calculation structure in SKMP is similar to the re-keying calculation structure found in SKM. As shown by Eq. 4, after creating the new values S n3 ' and R n ', the Group Controller multicasts X and Y to the group members (U 1 -U 8 ). The new value of S n3 ' is embedded in Y while the new session key R n ' is embedded in Y. To recover the new values S n3 'and R n ', users U 7 and U 8 can execute Eq. 5 and 6, respectively. Similar, users U 1 to U 6 can recover the R n ' by using S n1 and S n2 in Eq. 6.

RESULTS
We compared the performance of the modular polynomial arithmetic based secret keys multiplication (SKMP) against exiting secret keys multiplication protocol (SKM) (Fig. 6). Table 1 shows the performance for both approaches. Both protocols were coded in Turbo C with NTL library [7] . The NTL library is used to handle the polynomial arithmetic operation. Both protocols were run on a computer with 1.6 GHz Intel® M Pentium processor and 256MB RAM.

DISCUSSION
The comparison between SKMP and SKM protocol shows that SKMP protocol performs better than SKM in general. As Fig. 6 indicates, the secret keys multiplication based modular polynomial arithmetic provides higher level of security at a much lower cost, both in term of key size and execution time.

CONCLUSION
This study has shown the possibility of establishing a method of multicast group re-keying based on polynomial arithmetic operation for data transmission in order to reduce the computational cost. As the result, the proposed modular polynomial secret keys multiplication protocol requires a much lower cost of execution time and performs at a high level of security compared to the existing Secret Keys Multiplication protocol (SKM).