view Side-By-Side changes
Internet Engineering Task Force Thomas Hardjono (VeriSign) INTERNET-DRAFT Brian Weis (Cisco)draft-ietf-msec-arch-00.txtdraft-ietf-msec-arch-01.txt Expires November 2003 May 2003November 2002The Multicast Security(MSEC)Architecture Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This document providesa foundation for the protocols developed byan overview and rationale of theMulticast Security (MSEC) group.multicast security architecture used for large multicast groups. The document begins by introducing a Multicast Security Reference Framework, and proceeds to identifyfunctional areas which mustthe security services may beaddressed aspart of a secure multicast solution. Hardjono, Weis ExpiresMay,November, 2003 1 MSEC ArchitectureOctober, 2002May, 2003 Table of Contents 1. Introduction.......................................................2 1.1 Summary of Contents ofDocument.................................2Document.................................3 1.2 Audience........................................................3 1.3Related Documents...............................................3Terminology.....................................................3 2. Architectural Design: TheMSECMulticast Security ReferenceFramework.................4Framework...4 2.1AThe ReferenceFramework...........................................4Framework.........................................4 2.2 Elements of the Reference Framework.............................5 2.2.1 Group Controller and KeyServer.............................5Server.............................6 2.2.2 Sender and Receiver.........................................6 2.2.3 PolicyServer...............................................6Server...............................................7 2.2.4 Centralized and Distributed Designs.........................7 3. Functional Areas...................................................7 3.1 MulticastData..................................................7Data..................................................8 3.2 Management of Keying Material...................................8 3.3 Multicast SecurityPolicies.....................................8Policies.....................................9 4. Group Security Associations (GSA).................................104.1 SAs and Multicast..............................................10 4.14.2 Structure of a GSA: Introduction...............................11 4.3 Structure of a GSA:Reasoning..................................11Reasoning..................................12 4.4 Definition of GSA..............................................12 4.5 Typical Compositions of a GSA..................................14 5. SecurityServices.................................................14Services.................................................15 5.2.1 Multicast DataConfidentiality.............................14Confidentiality.............................15 5.2.2 Multicast Source Authentication and DataIntegrity.........15 5.2.3.Integrity.........16 5.2.3 Multicast GroupAuthentication............................15Authentication.............................16 5.2.4 Multicast Group MembershipManagement......................16Management......................17 5.2.5 Multicast KeyManagement...................................16Management...................................17 5.2.6 Multicast PolicyManagement................................17 6. MSEC Documents Roadmap............................................18 7. Conclusion........................................................19Management................................18 8.Acknowledgments...................................................19Security Considerations...........................................19 9.References........................................................19 9.1Acknowledgments...................................................19 10. References.......................................................19 10.1 NormativeReferences...........................................19 9.2References..........................................19 10.2 InformativeReferences.........................................20References........................................19 AuthorsAddresses....................................................21Addresses....................................................20 1. Introduction Securing IP multicast communication is a complex task that involves many aspects. Consequently, a secure IP multicast protocol suite must have a number of functional areas that address different aspects of theproblem.solution. This document describes those functional areas, andprotocols which have been developed which fit into those component areas. 1.1 Summary of Contentshow they are related. This architecture is concerned with the securing ofDocumentlarge multicast groups. Whereas it can also be used for smaller groups, it is not necessarily the most efficient means. For example, the Cliques Hardjono, Weis ExpiresMay,November, 2003 2 MSEC ArchitectureOctober, 2002May, 2003 architecture [STW] is an efficient for small ad-hoc group communication. 1.1 Summary of Contents of Document This document provides an architectural overviewof the work being conducted inthat outlines theMSEC Working Group.security services required to secure large multicast groups. It provides a Reference Framework forcoveringorganizing thescope ofvarious elements within theproblems in multicast security,architecture, and explains the elements of the Reference Framework. The ReferenceFramework, in turn, providesFramework organizes thedivisionelements oflaborthe architecture along three Functional Areas pertaining to security. These cover the treatment of data from a security perspective when it is to be sent to a group, the management of keying material used to protect thedatadata, and the policies governing a group. Another important item in this document is the definition and explanation of Group Security Associations (GSA), which is the multicast counterpart of the unicast Security Association (SA). The GSA is specific to multicast security, and is the foundation of the work on group key management. 1.2 Audience This document is addressed to the technicalcommunity andcommunity, implementers of IP multicast securitytechnologytechnology, and others interested in gaining a general background understanding of multicast security. This document assumes that the reader is familiar with the Internet Protocol, the IPsec suite of protocols (e.g.IPsec, IKE, ISAKMP),IPsec [RFC2401], IKE [RFC2409], ISAKMP [RFC2408]), related networking technology, and general security terms and concepts. 1.3Related Documents Other documents provide detailed explanations of the Functional Areas within the MSEC Reference Framework. These include theTerminology The followingset of documents: a. "Group Key Management Architecture" document [BCDL] -- a document that provides thekeymanagement architecture for multicast security, building on theterms are used throughout this document. 1-to-N A group which has one sender and many receivers. Group Security Association (GSA)concept defined in the current document. b. "Group DomainA bundling ofInterpretation" [BHHW]Security Associations (SAs) that together define how a group communicates securely. The GSA may include an registration protocol SA, a rekey protocol SA, and"GSAKMP Light" [HSC],one or more data security protocol SAs. M-to-N A group whichare two instances of protocols implementing the group key management function. c. "Multicast Encapsulating Security Payload" [BCCR], which provides the definition for Multicast ESP, for data traffic. d. "Multicast Source Authentication Transform Specification" [PCW], which defines the use ofhas many senders and many receivers, where M and N are not necessarily theTESLA algorithm for source authentication in multicast.same value. Hardjono, Weis ExpiresMay,November, 2003 3 MSEC ArchitectureOctober, 2002May, 2003 Security Association (SA) A set of policy and cryptographic keys that provide security services to network traffic that matches that policy. 2. Architectural Design: TheMSECMulticast Security Reference Framework This section considers the complexproblemsissues of multicast security in the context ofa heuristic device,the Reference Framework diagram, shown in Figure 1. The Reference Framework is used to classify functional areas, functional elements, and interfaces. 2.1AThe Reference FrameworkBasedThe reference framework is based onthethree broad functionalareas, a reference framework is proposedareas (Figure 1). The reference frameworkattempts to incorporateincorporates the main entities and functions relating to multicast security, andto depictdepicts theinter-relationsinter- relations among them.At the same time, itIt alsotries to express the complexexpresses multicast securityquestion from the perspective of problem classification (i.e., the three functional areas),from the perspective of architectures (centralized and distributed), of multicast group types(1-to-M or(1-to-N and M-to-N), and classes of protocols (the exchangedmessages).messages) needed to secure multicast packets. The aim of the reference framework is to provide some general contextwithin whicharound the functionalareas can be identified and classifiedareas, and the relationshipsamongbetween the functionalareas can be recognized.areas. Note that some issues span more than one so-called functional area. In fact, the framework encourages the precise identification and formulation of issues that involve more than one functional area or those which are difficult to express in terms of a single functional area. An example of such a case is the expression of policies concerning group keys, which involves both the functional areas of group key management and multicast policies. When consideringthe reference framework (Figure 1)Figure 1, it is important to realize that the singular "boxes" in the framework do not necessarily imply a corresponding singular entity implementing a given function. Rather, a box in the framework should be interpreted loosely as pertaining to a given function related to a functional area. Whether that function is in reality implemented as one or more physical entities is dependent on the particular solution. As an example, the box labeled "Key Server" must be interpreted in broad terms as referring to the functions of key management. Similarly, the Reference Framework acknowledges that some implementations may in fact merge a number of the "boxes" into a single physical entity. This could be true even across functional areas. For example, an entity in a group could act as both a Group Controller and a Sender to a group. The reference framework can be viewed horizontally and vertically. Horizontally, it displays both the entities and functions as singular boxes, expressing each of the three broad functional areas. Vertically, it expresses the basic architecture designs for Hardjono, Weis Expires November, 2003 4 MSEC Architecture May, 2003 solutions, namely a centralized architecture and a distributed architecture. The protocols to be standardized are depicted in Figure 1 by the arrows that connect the various boxes. See more details in Section 4, below.Hardjono, Weis Expires May, 2003 4 MSEC Architecture October, 2002+-----------------------------------------------------------------+ | CENTRALIZED \ DISTRIBUTED | | DESIGNS \ DESIGNS | | FUNCTIONAL \ | | AREAS \ | | +------+ \ +------+ | | Multicast |Policy|<-------\------------------------>|Policy| | | Security |Server| \ |Server| | | Policies +------+ \ +------+ | | ^ \ ^ | | | \ | | | | \ | | | v \ v | | +------+ \ +------+ | | Group |Group |<-------------- \---------------> |Group | | | Key |Ctrl/ |<---------+ \ |Ctlr/ | | | Management |Key | | \ |Key | | | |Server| V \ |Server| | | +------+ +--------+ \ +------+ | | ^ | | \ ^ | | | |Receiver| \ | | | | | | | | | | v +--------+ | | | | +------+ ^ | V | | | | | | +--------+ | | Multicast|Sender|<---------+|Sender|----------+ | | | | | Data ||<---------------------|---------------------- |-------->|Receiver| | | Handling | | | | | | | +------+ | +--------+ | +-----------------------------------------------------------------+ Figure 1:MSECMulticast Security Reference Framework 2.2 Elements of the Reference Framework The Reference Framework diagram of Figure 1 contains boxes and arrows. The boxes are the functional entities and the arrows are the interfaces between them. Standard protocols are needed for the interfaces, which support the multicast services between the functional entities. In some cases, a system implementing the multicast security architecture may not need to implement protocols to account for every interface. Rather, those interfaces may be satisfied through the use Hardjono, Weis Expires November, 2003 5 MSEC Architecture May, 2003 of manual configuration, or even omitted if they are not necessary for the application. There are three sets of functional entities in both centralized and distributed designs as discussed below. 2.2.1 Group Controller and Key Server The Group Controller and Key Server (GCKS) represent both the entity and functions relating to the issuance and management of cryptographic keys used by a multicast group, which is subject to the user-authentication and authorization checks conducted on the candidate member of the multicast group.Hardjono, Weis Expires May, 2003 5 MSEC Architecture October, 2002In a distributed architecture the GCKS entity also interacts with other GCKS entities to achieve scalability in the key management related services. In such a case, each member of a multicast group may interact with one or more GCKS entity (say, the "nearest" GCKS entity, measured in terms of a well-defined and consistent metric). Similarly, in a distributed architecture a GCKS entity may interact with one or more Policy Servers, also arranged in a distributed architecture.We remark that theThe Key Server (KS) and the Group Controller (GC) have somewhat different functionality and may in principle be regarded as separate entities. Currently the framework regards the two entities as one "box" in order to simplify the design, and in order not to mandate standardization of the protocol between the KS and the GC. It is stressed that the KS and GC needNOTnot be co-located. Furthermore, future designs may choose to standardize the protocol between the GC and the KS, without altering other components. 2.2.2 Sender and Receiver The Sender is an entity that sends data to the multicast group. In a 1-to-N multicast group only a single sender isallowedauthorized to transmit data to the group. In an M-to-N multicast group, many (or even all) group memberscanare authorized to transmit data to the group. Both Sender and Receiver must interact with the GCKS entity for the purpose of key management. This includesuser-authentication,user and/or device authentication, user and/or device authorization, the obtaining of keying material in accordance with some key management policies for the group, obtaining new keys during key-updates, and obtaining other messages relating to the management of keying material and security parameters.The influence of policies on bothSenders and Receiversis seen as coming indirectly throughmay receive much of their policy from the GCKSentities, since theentities. The event of joining a multicast group is typically coupled with the Sender/Receiver obtaining keying material from a GCKS entity. This does not preclude the direct interaction between the Sender/Receiver and the Policy Server. Hardjono, Weis Expires November, 2003 6 MSEC Architecture May, 2003 The reference framework displays two Receiver boxes corresponding to the situation where both the Sender and Receiver employ the same GCKS entity (centralized architecture) and where the Sender and Receiver employ different GCKS entities (distributed architecture). 2.2.3 Policy Server The Policy Server represents both the entity and functions used to create and manage security policies specific to a multicast group. The Policy Server interacts with the GCKS entity in order to install and manage the security policies related to the membership of a given multicast group and those related to keying material for a multicast group.Hardjono, Weis Expires May, 2003 6 MSEC Architecture October, 2002The interactions between the Policy Server and other entities in the reference framework is dependent to a large extent on the security circumstances being addressed by a given policy. 2.2.4 Centralized and Distributed Designs The need for solutions to be scalable to large groups across wide geographic regions of the Internet requires the elements of the framework to also function as a distributed system. This implies that a GCKS entity must be able to interact securely with other GCKS entities in a different location. These GCKS entities will require a means of authenticating their peer GCKS entities, a means of authorization (e.g., delegation certificates), and a means of interacting securely to pass keys and policy. Similarly, Policy Servers must interact with each other securely to allow the communication and enforcement of policies across the Internet. 3. Functional AreasIn order to begin to address the problems in securing IP multicast, we identify three functional area emanating from the reference framework.The Reference Framework identifies three functionalareaareas. They are: ¡ Multicast data handling. This area coversproblems concerningthe security-related treatments of multicast data by the sender and the receiver. This functional area is further discussed in Section 3.1. ¡ Group Key Management. This area is concerned with the secure distribution and refreshment of keying material. This functional area is further discussed in Section 3.2. ¡ Multicast security policies. This area covers aspects of policy in the context of multicast security, taking into consideration the fact that policies may be expressed in different ways, that they may exist at different levels in a given multicast securityarchitecturearchitecture, and that they may be interpreted differently according to the context in which they are specified and Hardjono, Weis Expires November, 2003 7 MSEC Architecture May, 2003 implemented. This functional area is further discussed in Section 3.3. 3.1 Multicast Data In a secure multicast group, the data typically needs to be: 1. Encrypted using the group key, mainly for access control and possibly also for confidentiality. 2. Authenticated, for verifying the source and integrity of the data. Authentication takes two flavors:2.1a. Source authentication and data integrity. This functionality guarantees that the dataoriginateoriginated with the claimed source and was not modified en route (either by a group member or an external attacker).Hardjono, Weis Expires May, 2003 7 MSEC Architecture October, 2002 2.2b. Group authentication. This type of authentication only guarantees that the data was generated (or last modified) by some group member. It does not guarantee data integrity unless all group members are trusted. While multicast encryption and group authentication are fairly standard and similar to encrypting and authenticating point-to-point communication, source authentication for multicast is considerably more involved. Consequently, off-the-shelf solutions (e.g., taken from IPSec[RFC2406], TLS [RFC2246])[RFC2406]) may be sufficient forencryption.encryption and group authentication. For source authentication, however, special-purpose transformations are necessary. See[CP99][CCPRRS] for further elaboration on the concerns regarding the datatransforms, on present solutionstransforms. Multicast data encrypted and/or authenticated by a sender should be handled the same way by both centralized andremaining challenges.distributed receivers, (as shown in Figure 1). The "Multicast Encapsulating Security Payload" [BCCR] provides the definition for Multicast ESP for data traffic. The "Multicast Source Authentication Transform Specification" [PCW] defines the use of the TESLA algorithm for source authentication in multicast. 3.2 Management of Keying Material The term "keying material" refers to the cryptographickeykeys belonging to a group, the state associated with thekeyskeys, and the other security parameters related to the keys. Hence, the management of the cryptographic keys belonging to a group necessarily requires the management of their associated state and parameters. A number of solutions for specificproblemsissues must be addressed. These may include the following: ¡ Methods for member identification and authentication. ¡ Methods to verify the membership to groups. Hardjono, Weis Expires November, 2003 8 MSEC Architecture May, 2003 ¡ Methods to establish a secure channel between a GCKS entity and the member, for the purpose of delivery of shorter-term keying material pertaining to a group. ¡ Methods to establish a long-term secure channel between one GCKS entity and another, for the purpose of distributing shorter-term keying material pertaining to a group. ¡ Methods to effect the changing of keys and keying material ¡ Methods to detect and signal failures and perceived compromises to keys and keying material The needs related to the management of keying material must be seen in the context of the policies that prevail within the given circumstance. Core to theproblemarea of key management is Security Association (SA) Management, which will be discussed further below. A "Group Key Management Architecture" document [BCDL] further defines the key management architecture for multicast security. It builds on the Group Security Association (GSA) concept, and further defines the roles of the Key Server and Group Controller. "The Group Domain of Interpretation" [BHHW], "GSAKMP" [HSMC], and "MIKEY" [ACLNM] are three instances of protocols implementing the group key management function. 3.3 Multicast Security Policies Multicast Security Policies must provide the rules for operation for the other elements of the Reference Framework.While much of the work for the MulticastSecurityPolicy area is focused in the Policy Controller, therePolicies may be distributed in an ad-hoc fashion in some instances. However, better coordination and higher levels of assurance arepotential areasachieved if a Policy Controller distributes Security Policies policy to the group. Multicast security policies must represent, or contain, more information than a traditional peer-to-peer policy. In addition to representing the security mechanisms forworkthe group communication, the policy must also represent the rules for the governance of the secure group. For example, policy would specify the authorization level necessary in order for an entity to join a group. More advanced operations would include the conditions when a group member must be forcibly removed from the group, and what to do if the group members need to resynchronize because of lost key management messages. The application of policy at the Group Controller element and the member (sender and receiver)elements.elements must be described. While there is already a basis for security policy management in theIETF between the Policy Working Group and Hardjono, Weis Expires May, 2003 8 MSEC Architecture October, 2002 the IP Security Policy Working Group,IETF, multicast security policy managementwill extendextends the concepts developed for unicast communication in the areas of: ¡ Policy creation, ¡ High-level policy translation, and ¡ Policy representation. Hardjono, Weis Expires November, 2003 9 MSEC Architecture May, 2003 Examples of work in multicast security policies include the Dynamic Cryptographic Context Management project [Din], Group Key Management Protocol [Har1, Har2], and Antigone[McD]. Policy creation for secure multicast has several more dimensions than the single administrator specified policy assumed in the existing unicast policy frameworks. Secure multicast groups are usually large and by their very nature extend over several administrative domains, if not spanning a different domain for each user. There are several methods that need to beexplored forconsidered in the creation of a single, coherent group security policy. They include a top-down specification of the group policy from the group initiator and negotiation of the policy between the group members (or prospective members). Negotiation can be as simple as a strict intersection of the policies of the members or extremely complicated using weighted voting systems.High-level policyThe translation of policy rules from one data model to another is much more difficult in a multicast groupenvironment,environment. This is especially true when group membership spans multiple administrative domains.When policies arePolicies specified at a high level with a Policy Managementtool, theytool mustthenbe translated into more precise rules that the available security policy mechanisms can both understand and implement. When dealing with multicast communication and its multiple participants, it is essential that the individual translation performed for each participant result in the use of a mechanism that is interoperable with the results of all of the other translations. Typically, the translation from high-level policy toimplementation mechanismsspecific policy objects must result in the samemechanismobjects in order to achieve communication between all of the group members. The requirement that policy translation results in the samemechanismobjects places constraints on the use and representations in the high-level policies. It is also important that policy negotiation and translation be performed as an integral part of joining a group. Adding a member to a group is meaningless if they will not be able to participate in the group communications.Multicast security policies must represent, or contain, more information than a traditional peer-to-peer policy. In addition to representing the security mechanisms for the group communication, the policy must also represent the rules for the governance of the secure group. Policy must be established for the basic group operations of add and remove, as well as more advanced operations such as leave, rejoin, or resynchronize. Hardjono, Weis Expires May, 2003 9 MSEC Architecture October, 20024. Group Security Associations (GSA) 4.1SAs and Multicast It is clear that theThe Security Association A securityassociations (SA) for group key management are more complex, or at least more numerous, than for Internet key management [RFC2409]. The latter establishes a key management SA to protect application SAs (where a minimum of two are needed to key an Internet application process). However, group key management requires at least three: Thereassociation is aregistration SA between the group member and the GCKS, a rekey SA between the GCKS and all the group members, and an SA to protect application data from sender-members to receiver-members. In fact, each sender to the group may use a unique key for their data and use a separate SA: there may be more SAs than there are group senders. Group key management, therefore, usescommonly used term in cryptographic systems [RFC2401, RFC2409]. It describes adifferentset ofabstractions than ISAKMPpolicy andIKE. Notwithstanding, the abstractions used in our Group Key Management functional area may be built from the ISAKMP abstractions. In our approachcryptographic keys that provide security services for theGroupnetwork traffic matching that policy. A Security Association(GSA) includes the attributes of the Internet Security Architecture SA, which is succinctly defined asusually contains theencapsulation of keys and policies [RFC2409] as follows.following attributes: -An SA hasselectors, such as source and destination transport addresses. -An SA hasproperties, such as an security parameter index (SPI) or cookie pair, and identities. Hardjono, Weis Expires November, 2003 10 MSEC Architecture May, 2003 -An SA hascryptographic policy, such as the algorithms, modes, key lifetimes, and key lengths used for authentication or confidentiality. -An SA haskeys, such as authentication, encryption and signing keys.As is discussed in the next section of this memo, a GSA contains the SA attributes plus some additional ones. As shown in Figure 2 (a), the GSA isGroup key management uses asupersetdifferent set ofthe SA. ¡ A GSA has group policy attributes,abstractions than point- to-point key management systems, such as IKE [RFC2409]. Notwithstanding, thekind of signed credential needed for group membership and whether the groupabstractions used in the Group Key Management functional area may be built from the point-to-point key management abstractions. 4.2 Structure of a GSA: Introduction Security associations (SAs) for group key management are more complex, and are usually more numerous, than for point-to-point key management algorithms. The latter establishes a key management SA to protect application SAs (usually one or two, depending on the protocol). However, group key management may require up to three or more SAs. These SAs are described in later sections. A GSA contains all of the SA attributes identified in the previous section, as well some additional attributes pertaining to the group. As shown in Figure 2, the GSA builds on the SA in two distinct ways. ¡ First, the GSA is a superset of an SA (Figure 2(a)). ¡ A GSA has group policy attributes, such as the kind of signed credential needed for group membership, if group members will be given new keys when a member is added (called "backward re-key"below)below), or whether group members will be given new key when a member is removed from the group ("forward re-key").-A GSAhas SAsalso includes an SA asattributes. Hardjono, Weis Expires May, 2003 10 MSEC Architecture October, 2002an attribute of itself. ¡ Second, the GSA is an aggregation of SAs (Figure 2(b)). A GSA is comprised of multiple SAs, and these SAs may be used for several independent purposes. +------------------------------------------------------------+ | | | +---------------+ +-------------------+ | | | GSA | | GSA | | | | | | +-----+ +-----+ | | | | | | | SA1 | | SA2 | | | | | +----+ | | +-----+ +-----+ | | | | | SA | | | +-----+ | | | | +----+ | | | SA3 | | | | | | | +-----+ | | | +---------------+ +-------------------+ | | | | (a) superset (b) aggregation | | | +------------------------------------------------------------+ Figure 2: Relationship of GSA to SA4.1Hardjono, Weis Expires November, 2003 11 MSEC Architecture May, 2003 4.3 Structure of a GSA: ReasoningThere areFigure 3 shows three categories of SAs that can be aggregated into aGSA in Figure 2(b). We choose this structure to better realize a GSA in our key management environment.GSA. There is a need to maintain SAs between a Key Server and a group member(either(both asender,sender and areceiver or both)receiver) and amongmembers. The Key Server is called the "GCKS," which is charged with access control tothegroup keys, with policy distribution to clientmembersor prospective members, and with group key dissemination to sender and receiver client members. This structure is common in many group key management environments [HH, CP99, RFC2627, BMS]. There are two SAs established between the GCKS and thethemselves. There are two SAs established between the GCKS and the members, and there is an SA established among the sending and receivingmembers as shown in Figure 3. The first category of SA (namely REG in Figure 3, for "registration SA") is initiated by the member to pull GSA information from the GCKS. This is how the member requests to join the secure group or has its GSA keys re-initialized after being disconnected from the group (e.g., when its host computer has been turned off during re-key operations as described below). The GSA information pulled down from the GCKS include the SA, keys and policy used to secure the data transmission between sending and receiving members; this is DATA in Figure 3, "for data security SA". Note that DATA is a category of SA, and this implies that there may be multiple SAs established between member senders and member receivers - at least as an option. There may exist, for example, a single DATA SA in which all senders share common keys and associated information. On the other hand, there may be one or more DATA SAs that are unique to the particular sender. A DATA SA may be reestablished or have its keys modified through re-key operations, which occur over a REKEY SA (for "rekey SA). Keys are pushed through a REKEY SA to support subscription groups. Hardjono, Weis Expires May, 2003 11 MSEC Architecture October, 2002 Thus, despite the fact that the data to be protected are multicast, registration exchanges through a REG SA should be unicast or point- to-point key determination exchanges. Some group key management solutions rely solely point-to-point. Most others combine unicast exchanges for initialization with multicast distribution for re-key. In some cases, such as in a pure "pay-per-session" application, all of the SA information needed for the session may be distributed at the time of registration or selection of a session, i.e. over a REG SA; re-key and re-initialization may not be necessary, so there is no REKEY SA. For subscription groups where keying material is changed as membership changes, a REKEY SA is needed to re-initialize a DATA SA.members. +------------------------------------------------------------+ | | | +------------------+ | | | GCKS | | | | | | | | REG REG | | | | / REKEY \ | | | +---/-----|----\---+ | | / | \ | | / | \ | | / | \ | | / | \ | | / | \ | |+-------------/------++----------/------+ |+------\-------------++------\----------+ | | | REG | | | REG | | | | REKEY-----+----REKEY | | | |MEMBERSENDER | |MEMBER RECEIVER|RECEIVER | | | | DATA----------DATA | | |+--------------------+ +--------------------++-----------------+ +-----------------+ | | | | | +------------------------------------------------------------+ Figure 3: GSA Structure and 3 categories of SAs4.24.4 Definition of GSA The GSA includes an aggregate of the threeaforementionedcategories of SAs. The three categories of SAs correspond to the three kinds of communicationsas seen from the point of viewcommonly required for group communications. The three categories ofthe Receiver (Member).SAs depicted in Figure 3depicts this concept:are: Hardjono, Weis Expires November, 2003 12 MSEC Architecture May, 2003 - Registration(REG) SA:SA (REG): An SA is required for (bi-directional) unicast communications between the GCKS and a group member (be it a Sender or Receiver). This SA is established only between the GCKS and a Member. The GCKS entity is charged with access control to the group keys, with policy distribution to members (or prospective members), and with group key dissemination to Sender and Receiver members. This use of a (unicast) SA as a starting point for key management isHardjono, Weis Expires May, 2003 12 MSEC Architecture October, 2002common in a number of group key management environments[HH, CP99,[BHHW, HSMC, CCPRRS, RFC2627,BMS, Bris99].BMS,]. The Registration SA is initiated by the member to pull GSA information from the GCKS. This is how the member requests to join the secure group, or has its GSA keys re-initialized after being disconnected from the group (e.g., when its host computer has been turned off during re-key operations). The GSA information pulled down from the GCKS is related to the other two SAs defined as part of the GSA. Note that this (unicast) SA is used to protect the other elements of theGSA (such as the other following two categories of SAs), either in a "push" or "pull" model.GSA. As such,thisthe Registration SA is crucial and is inseparable from the other two SAsasin the definition of a GSA. However, the requirement of a registration SA does not imply the need of a registration protocol to create that Registration SA. The registration SA could instead be setup through some manual means, such as distributed on a smart card. Thus, what is important is that a Registration SA exists, and is used to protect the other SAs. From the perspective of one given GCKS, there are as many unique registration SAs as there are members (Senders and/or Receivers) in the group. This may constitute a scalability concern for someapplications, so aapplications. A registration SA may beusedestablished on-demand with a short lifetime, whereas re-key and data security SAs are established at least for the life of thesessions that they support. -sessions that they support. Conversely the registration SA could be left in place for the duration of the group lifetime, if scalability is not an issue. Such a long term registration SA would be useful for re- synchronization or deregistration purposes. - Re-key SA (REKEY): In some cases, a GCKS needs the ability to "push" new SAs as part of the GSA. These new SAs must be sent to all group members. In other cases, the GCKS needs the ability to quickly revoke access to one or more group members. Both of these needs are satisfied with the Re-key SA. This Re-key(REKEY) SA: AnSA isrequired for thea unidirectional multicast transmission of key management messages(unidirectional)from the GCKS to all group members. As such, this SA is known by the GCKS and by all members of the group. Hardjono, Weis Expires November, 2003 13 MSEC Architecture May, 2003 This SA is not negotiated, since all the group members must share it. Thus, the GCKS must be the authentic source and act as the sole point of contact for the group members to obtain this SA.FromA rekey SA is not absolutely required to be part of a GSA. For example, theperspectivelifetime ofeach participant insome groups may be short enough such that agroup (GCKS and all members), thererekey isat least one registration SA fornot necessary. Conversely, thegroup. Note that this allowspolicy for thepossibility of the GCKS deployinggroup could specify multiplere-keyrekey SAsforof different types. For example, if the GC and KS are separate entities, the GC may deliver rekey messages that adjust the groupkey management purposes.membership, and the KS may deliver rekey messages with new DATA SAs. - Data Security(DATA) SA:SA (DATA): The Data Security SA protects data between member senders and member receivers. One or more SAs are required for the multicast transmission of data-messages(unidirectional)from the Sender to other group members. This SA is known by the GCKS and by all members of the group.Similarly, regardlessRegardless of the number of instances of this third category of SA, this SA is not negotiated. Rather, all group members obtain it from the GCKS. The GCKS itself does not use this category of SA. From the perspective of the Receivers, there is at least one data security SA for the member sender (one or more) in the group.This allows forIf thepossibility of includinggroupIDs (GID) in transmission ofhas more than one datapackets fromsecurity SA, thesenders indata security protocol must have a means of differentiating thegroup.SAs (e.g., with a SPI). There are a number of possibilities with respect to the number of data securitySAs and the use of Group IDs (GIDs): (i)SAs: 1. Each sender in the group could be assigned a uniquedtadata security SA, thereby resulting in each receiver having toHardjono, Weis Expires May, 2003 13 MSEC Architecture October, 2002maintain as many data security SAs as there are senders in the group.(ii)In this case, each sender may be verified using source origin authentication techniques. 2. The entire group deploys a single data security SA forall senders, together withall senders. Receivers would then be able to maintain only one data security SA. 3. A combination of 1. and 2. 4.5 Typical Compositions of a GSA Depending on the multicast group policy, many compositions of a GSA are possible. For illustrative purposes, this section describes a few possible compositions. Hardjono, Weis Expires November, 2003 14 MSEC Architecture May, 2003 ¡ A group of memory-constrained members may require only a REG SA, and a single DATA SA. ¡ A "pay-per-session" application, where all of the SA information needed for theusesession may be distributed over a REG SA. Re-key and re-initialization ofGIDs. Receivers would thenDATA SAs may not beable to filter based on the GIDs, whilst maintaining only one data securitynecessary, so there is no REKEY SA.(iii)¡ Acombination of (i) and (ii) above.subscription group, where keying material is changed as membership changes. A REG SA is needed to distribute other SAs; a REKEY SA is needed to re-initialize a DATA SA at the time membership changes. 5. Security Services Referring toourthe Reference Diagram, this section identifies security services for designated interfaces of Figure 1. In this section, distinct security services are assigned to specific interfaces. For example, multicast source authentication, data authentication, and confidentiality occur on the multicast data interface between Senders and Receivers in Figure 1. Authentication and confidentiality services may also be needed between the Key Server and key clients (i.e., the Senders and Receivers of Figure 1), but the services that are needed for multicast key management may be unicast as well as multicast. A security service for multicast security, therefore, identifies a specific function along one or more Figure 1 interfaces. This paper does not attempt to analyze the trust relationships, detailed functional requirements, performance requirements, suitable algorithms, and protocol specifications for IP multicast and application-layer multicast security. Instead,we propose these tasks as future workthat work will occur as thefunctional building blockssecurity services are further defined and realized in algorithms and protocols.We identify a set of security services in the following sections. This preliminary list of services is intended to serve as a basis for discussion in the MSEC working group.5.2.1 Multicast Data Confidentiality This security service handles the encryption of multicast data at the Sender's end and the decryption at the Receiver's end. This security service may also apply the keying material that is provided by Multicast Key Management in accordance with Multicast Policy Management, but it is independent of both. An important part of thefuture work on theMulticast Data Confidentialitybuilding blocksecurity service is in the identification of and motivation for specific ciphers that should be used for multicast data. Obviously, not all ciphers will be suitable for IP multicast and application-layer multicast traffic. Since this traffic will usually be connectionless UDP flows, stream ciphers may beunsuitableunsuitable, though hybrid stream/block ciphers may have advantages over some block ciphers.Those working on this security service will need to evaluate the real-time and other requirements of multicast senders and receivers, and recommend a small set of promising ciphers and Hardjono, Weis Expires May, 2003 14 MSEC Architecture October, 2002 data protocols for IP multicast and application-layer multicast data confidentiality.Regarding application-layer multicast, some consideration is needed to consider the effects of sending encrypted data in a multicast environment lacking admission-control, where practically any application program can join a multicast event independently of its participation in a multicast security protocol. Thus, this security Hardjono, Weis Expires November, 2003 15 MSEC Architecture May, 2003 service is also concerned with the effects of multicast confidentialityservices, intendedservices (intended andotherwise,otherwise) on applicationprograms in allprograms. Effects to both senders andreceivers.receivers is considered. In Figure 1, the Multicast Data Confidentiality security service is placed in Multicast Data Handling Area along the interface between Senders and Receivers. The algorithms and protocols that are realized from work on this security service may be applied to other interfaces and areas of Figure 1 when multicast data confidentiality is needed. 5.2.2 Multicast Source Authentication and Data Integrity This security service handles source authentication and integrity verification of multicast data. It includes the transforms to be made both at the Sender's end and at the Receiver's end. It assumes that the appropriate signature and verification keys are provided via Multicast Key Management in accordance with Multicast Policy Management as described below.Work done by MSEC Working Group members suggests that thisThis is one of the harder areas of multicastsecurity. This issecurity due to the connectionless and real-time requirements of many IP multicast applications. There are classes of application-layer multicast security, however, where offline source and data authentication will suffice. As discussed previously, not all multicast applications require real-time authentication and data- packet integrity. A robust solution to multicast source and data authentication, however, is necessary for aWhole Protocolcomplete solution to multicast security. In Figure 1, the Multicast Source and Data Authentication security service is placed in Multicast Data Handling Area along the interface between Senders and Receivers. The algorithms and protocols that are produced for this functional area may have applicability tobuilding blockssecurity services in other functional area that use multicast services such as Group Key Management.5.2.3.5.2.3 Multicast Group Authentication This security service provides a limited amount of authenticity of the transmitted data: It only guarantees that the data originated with (or was last modified by) one of the group members. It does not guarantee authenticity of the data in case that other group members are not trusted.Hardjono, Weis Expires May, 2003 15 MSEC Architecture October, 2002The advantage of group authentication is that it is guaranteed via relatively simple and efficient cryptographic transforms. Therefore, when source authentication is notparamountparamount, group authentication becomes useful. In addition, performing group authentication is useful even when source authentication is later performed: it provides a simple-to-verify weak integrity check that is useful as a measure againstdenial-of -servicedenial-of-service attacks. Hardjono, Weis Expires November, 2003 16 MSEC Architecture May, 2003 The Multicast Group Authentication security service is placed in the Multicast Data Handling Area along the interface between Senders and Receivers. 5.2.4 Multicast Group Membership Management This security service describes the functionality of registration of members with the Group Controller, and de-registration ofmembers.members from the Group Controller. These are security functions, which are independent from IP multicast group "join" and "leave" operations that the member may need to perform (i.e., IGMP [RFC3376], MLD [RFC3019]). Registration includes member authentication, notification and negotiation of security parameters, and logging of information according to the policies of the group controller and the would-be member. (Typically, an out-of-band advertisement of group information would occur before the registration takes place. The registration process will typically be invoked by the would-be member.) De-registration may occur either at the initiative of the member or at the initiative of the group controller. It would result in logging of the de-registration event by the group controller and an invocation of the appropriate mechanism for terminating the membership of the de-registering member (see Section 5.2.5). This security service also describes the functionality of the communication related to group membership among differentGC+KSGCKS servers in a distributed group design. In Figure 1, the Multicast Group Membership security service is placed in the Group Key Management Area and has interfaces to Senders and Receivers. 5.2.5 Multicast Key Management This security service describes the functionality of distributing and updating the cryptographic keying material throughout the life of the group. Components of thisbuildingsecurity service may include: -GC+KSGCKS to Client (Sender or Receiver) notification regarding current keying material (e.g. group encryption and authentication keys, auxiliary keys used for group management, keys for source authentication, etc). - Updating of current keying material, depending on circumstances andpolicies. Hardjono, Weis Expires May, 2003 16 MSEC Architecture October, 2002policies. - Termination of groups in a secure manner, including the multicast group itself and the associated keying material. Among theproblems to be solved byresponsibilities of this security service is the secure management of keys between Key Servers and Clients, the addressing issues for the multicast distribution of keying material, and the Hardjono, Weis Expires November, 2003 17 MSEC Architecture May, 2003 scalability or other performance requirements for multicast key management [RFC2627, BMS]. To allow for an interoperable and secure IP multicast security protocol, this security service may need to specify host abstractions such as a group security association database (GSAD) and a group security policy database (GSPD) for IP multicast security. The degree of overlap between IP multicast and application-layer multicast key management needs to be considered. Thus,work onthis security servicemust taketakes into account the key management requirements for IP multicast, the key management requirements for application-layer multicast, and to what degree specific realizations of a Multicast Key Management security service can satisfy both. ISAKMP, moreover, has been designed to be extensible to multicast key management for both IP multicast and application-layer multicast security [RFC2408]. Thus, multicast key management protocols may use the existing ISAKMP standard's Phase 1 and Phase 2 protocols, possibly with needed extensions (such asan ISAKMP Domain of Interpretation for IP multicastGDOI [BHHW] or application-layer multicast security). This security service also describes the functionality of the communication related to key management among differentGC+KSGCKS servers in a distributed group design. Multicast Key Management appears in both the centralized and distributed designs as shown in Figure 1 and is placed in the Group Key Management Area. 5.2.6 Multicast Policy Management This security service handles all matters related to multicast group policy including membership policy and multicast key management policy. Indeed, one of the first tasks in further defining this security service is identifying the different areas of multicast policy. Multicast Policy Management includes the design of the policy server for multicast security, the particular policy definitions that will be used for IP multicast and application-layer multicast security, and the communication protocols between the Policy Server and the Key Server. This security service may be realized using a standard policy infrastructure such as a Policy Decision Point (PDP) and Policy Enforcement Point (PEP)architecture.architecture [RFC2748]. Thus, it may not be necessary to re-invent a separate architecture for multicast security policy;we expect thatthis work will evaluate use of theproducts of IETF efforts in the areas of network and security policy. At minimum, however, this security service will be Hardjono, Weis Expires May, 2003 17 MSEC Architecture October, 2002 realized in a set of policy definitions, such as multicast security conditions and actions. The Multicast Policy Management security service describes the functionality of the communication between an instance of a GC+KS to an instance the Policy Server. The information transmitted may include policies concerning groups, memberships, keying material definition and their permissible uses, and other information. This security service also describes communication between and among Policy Servers. Thus, the Multicast Policy Management security service is placed in Problem Area 3, along the interface between Key Servers and Policy Servers. Group members are not expected to directly participate in this security service. However, this option is not ruled out. 6. MSEC Documents Roadmap The roadmap of MSEC WG documents is shown the in the following. +--------------+ | MSEC | | Requirements | +--------------+ : : +--------------+ | MSEC | | Architecture | +--------------+ : .....................:....................... : : : +--------------+ +--------------+ +--------------+ | Policy | | GKM | | Data Security| | Architecture | | Architecture | | Architecture | +--------------+ +--------------+ +--------------+ : : : : : : . +------------+ : +------------+ : . | GDOI | : |TESLA/MESP | : | Resolution |-: | |-: | | : | | : +------------+ : +------------+ : : : : : +------------+ : +------------+ : | GSAKMP- | : | | : | Resolution |-: | TBD |-: | | : | | : +------------+ : +------------+ : : : Hardjono, Weis Expires May, 2003 18 MSEC Architecture October, 2002 : : +------------+ : +------------+ : | | : | | : | RE-KEY |-: | TBD |-: | | : | | : +------------+ : +------------+ : : : . . . . Figure 4: MSEC Document Roadmap 7. Conclusion This document has provided an architectural overview of the work being conducted in the MSEC Working Group and introduced several important aspectsproducts ofthe standardizationIETF efforts in theMSEC WG. A Reference Framework for covering the scopeareas ofthe problemsnetwork and security policy. At minimum, however, this security service will be realized in a set of policy definitions, such as multicast securitywas introduced,conditions anda division of labor along three Functional Areas pertaining toactions. The Multicast Policy Management securitywas discussed. These coverservice describes thetreatmentfunctionality of the communication between an instance ofdata fromasecurity perspective when it is to be sentGCKS toa group,an instance themanagement ofPolicy Server. The information transmitted may include policies concerning groups, memberships, keying materialused to protect the datadefinition andthe policies governing a group.their permissible uses, and other information. ThisdocumentHardjono, Weis Expires November, 2003 18 MSEC Architecture May, 2003 security service alsodefined the notion ofdescribes communication between and among Policy Servers. GroupSecurity Associations (GSA), whichmembers are not expected to directly participate in this security service. However, this option isthe foundationnot ruled out. 8. Security Considerations This document describes methods and guidelines for protecting multicast and group traffic with cryptographic protocols. 9. Acknowledgments Much of thework on group key managementtext inthe MSEC Working Group. 8. Acknowledgments Thisthis document was derived froman IRTF SMuG Working Group draft that was originallytwo research papers. The framework for this document came from a paper co-authored by Thomas Hardjono, Ran Canetti, Mark Baugher, and Pete Dinsmore.9.Description of the GSA came from a document co-authored by Hugh Harney, Mark Baugher, and Thomas Hardjono. 10. References9.110.1 Normative References [RFC2401] S. Kent, R. Atkinson, Security Architecture for the Internet Protocol, November 1998. [RFC2408] D. Maughan, M. Shertler, M. Schneider, J. Turner, Internet Security Association and Key Management Protocol, November 1998. [RFC2409] D. Harkins, D. Carrel, The Internet Key Exchange (IKE), November, 1998. 10.2 Informative References [ACLNM] J. Arkko, et. al., MIKEY: Multimedia Internet KEYing, draft- ietf-msec-mikey-06.txt, February, 2003. Work in Progress. [BCCR] M. Baugher, R. Canetti, P. Cheng, P. Rohatgi, MESP: A Multicast Framework for the Ipsec ESP, draft-ietf-msec-mesp-01.txt. IETF, October 2002. Work in Progress. [BCDL] M. Baugher, R. Canetti, L. Dondeti, F. Lindholm, Group Key Management Architecture,draft-ietf-msec-gkmarch-03.txt. IETF, October 2002. Work in Progress. [HSC] H. Harney, A. Schuett, A. Colegrove, GSAKMP Light. draft-ietf- msec-gsakmp-light-sec-01.txt.draft-ietf-msec-gkmarch-04.txt. IETF,July 2002.March 2003. Work in Progress. [BHHW] M. Baugher, T. Hardjono, H. Harney, B. Weis, The Group Domain of Interpretation,draft-ietf-msec-gdoi-06.txt. IETF, February 2002. Work in Progress. Hardjono, Weis Expires May, 2003 19 MSEC Architecture October, 2002 [BCCR] M. Baugher, R. Canetti, P. Cheng, P. Rohatgi, MESP: Multicast Encapsulating Security Payload, draft-ietf-msec-mesp-00.txt. IETF, October 2002. Work in Progress. [PCW] A. Perrig, R. Canetti, B. Whillock, TESLA: Multicast Source Authentication Transform Specification. draft-ietf-msec-tesla-spec- 00.txt.draft-ietf-msec-gdoi-07.txt. IETF,OctoberDecember 2002. Work in Progress.9.2 Informative References[BMS] D. Balenson, D. McGrew, A. Sherman, Key Management for Large Dynamic Groups: One-Way Function Trees and Amortized Initialization,http://www.ietf.org/internet-drafts/draft-balenson-groupkeymgmt-oft-http://www.securemulticast.org/draft-balenson-groupkeymgmt-oft- 00.txt, February 1999, Work in Progress.[CP99] R. Canetti and B. Pinkas, A taxonomy of multicast security issues, http://search.ietf.org/internet-drafts/draft-irtf-smug- taxonomy-01.txt, April 1999, Work in Progress.Hardjono, Weis Expires November, 2003 19 MSEC Architecture May, 2003 [CCPRRS] Canetti, R., Cheng P. C., Pendarakis D., Rao, J., Rohatgi P., Saha D., "An architecture for secure IP multicast", NDSS 2000. [Din] Dinsmore, P., Balenson, D., Heyman, M., Kruus, P., Scace, C., and Sherman, A., "Policy-Based Security Management for Large Dynamic Groups: AnOerviewOverview of the DCCM Project," DARPA Information Survivability Conference and Exposition,To Be Published.http://download.nai.com/products/media/nai/doc/discex-110199.doc. [Har1] Harney, H., and Muckenhirn, C., "Group Key Management Protocol (GKMP) Specification," RFC 2093, July 1997. [Har2] Harney, H., and Muckenhirn, C., "Group Key Management Protocol (GKMP) Architecture," RFC 2094, July 1997.[HH][HSMC] H. Harney,E. Harder, Group Secure Association Key Management Protocol, http://search.ietf.org/internet-drafts/draft-harney- sparta-gsakmp-sec-00.txt, April 1999,A. Schuett, U. Meth, A. Colegrove, GSAKMP. draft- ietf-msec-gsakmp- sec-01.txt. IETF, February 2003. Work in Progress. [McD] McDaniel, P., Honeyman, P., and Prakash, A., "Antigone: A Flexible Framework for Secure Group Communication," Proceedings of the Eight USENIX Security Symposium, pp 99-113, August, 1999.[RFC2246] Dierks, T. and C. Allen, The TLS Protocol Version 1.0, RFC 2246, January 1999.[PCW] A. Perrig, R. Canetti, B. Whillock, TESLA: Multicast Source Authentication Transform Specification. draft-ietf-msec-tesla-spec- 00.txt. IETF, October 2002. Work in Progress. [RFC2406] S. Kent, R. Atkinson, IP Encapsulating Security Payload (ESP),November 1998.[RFC2408] D. Maughan, M. Shertler, M. Schneider, J. Turner, Internet Security Association and Key Management Protocol, November 1998. [RFC2409] D. Harkins, D. Carrel, The Internet Key Exchange (IKE), November, 1998. Hardjono, Weis Expires May, 2003 20 MSEC Architecture October, 2002[RFC2627] D. M. Wallner, E. Harder, R. C. Agee, Key Management for Multicast: Issues and Architectures, September 1998. [RFC2748] D. Durham, et. al., The COPS (Common Open Policy Service) Protocol, January, 2000. [RFC3019] B. Haberman, Worzella, R., IP Version 6 Management Information Base for The Multicast Listener Discovery Protocol, January, 2001. [RFC3376] B. Cain, et. al., Internet Group Management Protocol, Version 3, October, 2002. [STW] M. Steiner, Tsudik, G., Waidner, M., CLIQUES: A New Approach to Group key Agreement, IEEE ICDCS'98 , May 1998. Authors Addresses Hardjono, Weis Expires November, 2003 20 MSEC Architecture May, 2003 Thomas Hardjono VeriSign 401 Edgewater Place, Suite 280 Wakefield, MA 01880 (781) 245-6996 thardjono@verisign.com Brian Weis Cisco Systems 170 W. Tasman Drive, San Jose, CA 95134-1706, USA (408) 526-4796 bew@cisco.com Hardjono, Weis ExpiresMay,November, 2003 21 ----