A method performed by a first computer node for selecting a leader node to
provide service to a plurality of other nodes in a multicast group,
wherein each of the nodes communicates using multicast messages,
comprises issuing a first election call message; receiving candidacy
announcement messages from one or more leader candidate nodes in a
specified time period; selecting a victor from among all leader candidate
nodes from which candidacy announcement messages are received; receiving
one or more victor announcement messages from one or more leader victor
nodes for a second specified time period; resolving zero or more
collisions among the victor announcement messages to result in selecting
the leader node. One embodiment provides a dynamic secure protocol for
electing a key server, such as a key server that is suited for use with a
group key exchange protocol such as the Group Domain of Interpretation
(GDOI). Public key signatures may be used to secure message exchanges and
to provide for authentication of network nodes in a multicast group.