A DC programming approach for solving a centralized group key management problem
Abstract
A single trusted entity known as a Key Server is in charge of key generation, distribution, and management in centralized key management schemes. To prevent eavesdropping and protect the exchange content, a group key is used to encrypt the group communication. This management mechanism is typically based on a binary tree structure. When the membership of a group changes dynamically, the group key must be changed, triggering a certain updated cost. This paper addresses an important problem in centralized dynamic group key management. It consists in finding a set of leaf nodes in a binary key tree to insert new members with minimal insertion cost and keeping the tree as balanced as possible. The two mentioned important objectives are combined into a unified (deterministic) optimization model whose objective function contains discontinuous step functions with binary variables, which is known to be NP-hard. We then reformulate the problem as a combinatorial optimization program with continuous objective by introducing new binary variables. Applying penalty techniques, it results in a standard DC (Difference of Convex functions) program that can be solved efficiently by DCA (DC algorithm). Besides, the insertion nodes must be the leaf nodes, we introduce a two-step algorithm to reduce the model complexity: the first is to find the set of leaf nodes, while the second is to solve the simplified optimization problem. Numerical experiments have been studied intensively to justify the merit of our proposed model as well as the corresponding DCA.