Group Key Management
Abdulhadi Shoufan · Technischen Universität Darmstadt · 2008
IP multicast is an efficient solution for group communication over the Internet, as both the sender resources and the network bandwidth are relieved with the aid of this emerging technology. However, this superiority suffers, when the group communication must fulfill some security requirements. An essential issue relates to sharing the communication key. Particularly, this key must be updated and securely distributed, every time the group membership changes. This process, which is denoted as group rekeying, raises a scalability problem in large dynamic groups: Rekeying is based on computationally extensive cryptographic operations and on the dissemination of rekeying messages. Thus, the scalability problem presents itself by a computation overhead on both the sender and the receiver sides, and by a communication overhead in the network. Numerous architectures, algorithms, and protocols have been proposed in the literature to cope with this scalability problem. Related work on optimizing rekeying performance mostly concentrates on minimizing the number of required cryptographic operations and thus the length of the rekeying message. An accepted strategy to reduce rekeying costs utilizes batch processing of rekeying requests, which are summed up during a rekeying interval. However, a specification of the maximal length of this rekeying interval is not provided, so far. Too long rekeying intervals cause longer waiting times for new members and longer access times for removed ones. Consequently, a problem of QoS and security is associated with batch rekeying. Because of its novelty and complexity, the work on rekeying optimization lacks a unified way to estimate rekeying performance. In most cases, therefore, an evaluation of different algorithms is impossible. The presented dissertation addresses the above three problems of group rekeying. Firstly, an approach, denoted as Even-Driven Batch Rekeying, is proposed to tackle the QoS and security problems caused by long rekeying intervals in batch rekeying. Secondly, to enable a reliable evaluation of rekeying algorithms, a Rekeying Benchmark is introduced, which provides a unified way to estimate the performance of different rekeying algorithms on the system level. Thirdly, three novel hardware and hardware/software architectures are presented for optimizing the rekeying performance. In contrast to related work, these architectures, denoted as the Real-Time Rekeying Processor, the Batch Rekeying Processor, and the High-Flexibility Rekeying Processor, optimize rekeying not only on the rekeying algorithm level, but also on the cryptography and platform levels.