Support for secure group multicast is typically built on top of IP multicast. A secure multicast protocol consists of an admission control mechanism to determine who can join a secure multicast group, and a secure dissemination mechanism for disseminating multicast data while preserving its authenticity, integrity, and confidentiality. The admission control mechanism typically consists of member authentication and registration, and the secure dissemination mechanism typically consists of using an appropriate encryption mechanism. Thus, a secure multicast group is a multicast group in which members register and authenticate themselves with a designated registration authority, receive a set of cryptographic key(s), and use these keys to encrypt the multicast data that they send and decrypt the multicast data that they receive. The registration and authentication process, along with the use of encryption for multicast data ensures that only legitimate entities know the cryptographic keys, and hence can send or receive multicast data.
We focus on large multicast groups with frequent membership changes, i.e., groups consisting of a significantly large number of members (100,000 members or more) with members joining or leaving quite frequently. When a group is large, the cost of key management can become prohibitively expensive. This is because a rekeying operation requires distributing various keys, including group key(s), to all group members. If this is done naively, it may require O(n) messages, where n is the number of members in the group. Furthermore, if a rekeying operation is performed after every membership change, and if the membership changes are frequent, key management will require exchanging a very large number of messages per unit time.
We have designed an implemented a key management protocol called Mykil (Multi-Hierarchy Based key Distribution Protocol) for managing cryptographic keys in large multicast groups that exhibit frequent membership changes. Mykil cleverly combines two different types of hierarchy schemes---group-based hierarchy and key-based hierarchy, to provide an efficient and scalable solution for key management in large multicast groups. Mykil borrows several interesting ideas from the earlier work done in the area of key management for large group multicast, and provides a solution that is better than the previous solutions
In addition to addressing the scalability problem of key management in large multicast groups, Mykil provides support for mobile group members and fault tolerance. Mykil ensures that group members that move from one location to another in the network can continue to avail the multicast service and the key management functionality without having to go through extensive registration process. Furthermore, Mykil ensures that the key management functionality remains available and the multicast service remains available to group members, despite communication partitions or node failures.
Overall, Mykil makes four important contributions. First, it provides a very efficient and fast rekeying operation by ensuring that key updates take place at only a small number of group members during a member join or leave event. The cost of rekeying operation is further reduced by batching member join and leave events. Second, it is designed to support group members that access a multicast service using small devices such as PDAs or cell phones that have limited resources. This is done by minimizing the memory, bandwidth, and CPU requirements for key management functions at different group members. Third, Mykil is designed to support both static and mobile group members. Finally, the design of Mykil ensures that the key management functionality is robust and remains available to all group members even when the underlying communication network partitions.
Publications