The majority of current literature deals with secure communications between two users. This thesis examines a number of protocols that allow groups of more than two users to establish a common key for the purpose of communicating securely. First we examine key agreement protocols whereby users contribute pieces to the construction of a mutual key over insecure channels. Next, we examine secret sharing protocols whereby users are required to physically "pool" together their pieces to establish a key.; Finally, we present methods for broadcasting keys to groups of users. We review methods of serial broadcasting. We then introduce a new model that allows for parallel broadcasting. A lower bound is established for a subset of the parallel broadcast schemes, and we improve upon a scheme such that it achieves this bound. Implementations using secret sharing are reviewed and two new number theoretic schemes are presented. |