## 3 Proposed Work
### Existing OFT  
Table 1 gives the notations used in the proposed work. The group key GK is commonly shared among all group devices to share data and resources within the group. The node key \(n_{k}\) is the individual key possessed by every node. An adjacent secret \(K_{a}\)(l,r) is a secret key shared between two adjacent nodes, i.e., the left and right child of a parent node. The intermediate node is the node between the leaf and the root node that contains the group key. The intermediate node secret \(SI_{i}\) is the secret calculated and known only to the intermediate node, whereas the blinded secret \(bl_{i}\) is distributed to other nodes for group key generation.  
Before looking into the working of MOFT, the working of the earliest OFT scheme is discussed. The OFT scheme uses a binary tree data structure, which is balanced for key management. Each leaf node of the binary tree denotes a group member and is assigned a node key. The group members already possess a shared secret with the KMS with which the  
\begin{table}
\begin{tabular}{l l} \hline GK & Group key \\ \(n_{k}\) & node key \\ \(bl_{i}\) & Blinded secret of node i \\ \(I_{i}\) & Intermediate node \\ \(K_{a}\)(l,r) & Adjacent shared secret of node l and r \\ \(K_{i}\) & Individual secret key of user i \\ f(x) & One-way function \\ g(x) & Mixing function \\ L & Length of key \\ n & No. of users \\ \(SI_{i}\) & Node secret of Intermediate node i \\ \(K_{L}\) & Individual key between GMS and user \\ \(K_{AA}\) & Key shared between authentication service \\ \(K_{AA}\) & function and admin \\ \(K_{AK}\) & Key shared between authentication service \\ \(K_{SA}\) & function and key management service function \\ \(G_{ID}\) & Group ID \\ \(D_{ID}\) & Device ID \\ \hline \end{tabular}
\end{table}
Table 1: Notations used.  
Figure 3: Steps in group initialization.  
node key can be encrypted and distributed to the respective group member. The one-way function on the key is the blinded secret of the leaf node. The mixing function of the left and right child's blinded node secret gives the intermediate node secret. In this way, the intermediate node secrets are calculated in a bottom-up fashion to compute the group key.  
In Figure 4, the numbers represent the nodes of the binary tree, whereas the intermediate nodes are represented using the symbol I. When a user exits or joins, the keys on the trail of the leaving or joining node are changed. As in Figure 5, when user 7 leaves, node 8 takes the position of \(\mathrm{I}_{3}\) as the leaf node. Node 3 is issued a new node key \(\mathrm{n}_{\mathrm{k}3}\). Node 3 then calculates its new blinded node secret \(\mathrm{bl}_{3}\), thus leading to a new \(\mathrm{SI}_{1}\) intermediate node secret and group key GK. Users 9 and 10 are issued the new \(\mathrm{bl}_{3}\) encrypted using \(\mathrm{SI}_{4}\). Hence, users 9 and 10 calculate \(\mathrm{SI}_{1}=\mathrm{g}(\mathrm{bl}_{3},\mathrm{bl}_{4})\). Users 11 and 12 are issued new \(\mathrm{bl}_{k1}\) encrypted using \(\mathrm{SI}_{2}\). Now, the group key is calculated as \(\mathrm{GK}=\mathrm{g}(\mathrm{bl}_{1},\mathrm{bl}_{2})\).  
Now, as in Figure 5, if user 11 joins, the user is issued the node secret \(\mathrm{n}_{\mathrm{k}11}\). User 11 will calculate its blinded secret \(\mathrm{bl}_{11}\). User 12 is issued \(\mathrm{bl}_{11}\) encrypted using its own node secret \(\mathrm{n}_{\mathrm{k}12}\). Users 11 and 12 calculate \(=\mathrm{g}(\mathrm{bl}_{11},\mathrm{bl}_{12})\). Users 11, 12, and 6 calculate \(\mathrm{SI}_{2}=\mathrm{g}(\mathrm{bl}_{5},\mathrm{bl}_{6})\). Then, users 3, 9, and 10 are supplied with the blinded secret of node \(\mathrm{I}_{2}\) so that the group  
Figure 4: Group tree structure.  
Figure 5: User leave and join event.  
key GK can be calculated. Although the scheme has the advantage of reduced communication costs, it is prone to collusion attacks. Several enhanced OFT-based approaches are proposed [38; 39] to attain collusion resistance but with higher communication cost or computation cost.