rfc2627.txt

来自「著名的RFC文档,其中有一些文档是已经翻译成中文的的.」· 文本 代码 · 共 1,292 行 · 第 1/4 页

TXT
1,292
字号
         attributes, the root will then pass the multicast group list to         all other participants and create and distribute the Net Key.         If a participant on the multicast group list did not meet the         required security attributes, the leaf must be deleted from the         list.         Multiple issues can be raised with the distribution of the         multicast group list and Net Key.Wallner, et al.              Informational                      [Page 6]RFC 2627             Key Management for Multicast              June 1999          a.  An issue exists with the time ordering of these functions.              The multicast group list could be distributed before or              after the link is secured (i.e. the Net Key is              distributed).          b.  An issue exists when a leaf refuses to join the session.              If a leaf refuses to join a session, we can send out a              modified list before sending out the Net Key, however              sending out modified lists, potentially multiple times,              would be inefficient.  Instead, the root could continue              on, and would not send the Net Key to those participants              on the list who rejected the session.          For the scenario architectures which follow, we assume the          multicast group list will be distributed to the group          participants once before the Net Key is distributed.  Unlike          the scheme described in [4], we recommend that the multicast          group participant list be provided to all leaves.  By          distributing this list to the leaves, it allows them to          determine upfront whether they desire to participate in the          multicast group or not, thus saving potentially unnecessary          key exchanges.   Four potential key management architectures to distribute keying   material for multicast sessions are presented.  Recall that the   features that are highly desirable for the architecture to possess   include the time required to setup the multicast group should be   minimized, the number of transmissions should be minimized, and   memory/storage requirements should be minimized. As will be seen, the   first three proposals each fall short in a different aspect of these   desired qualities, whereas the fourth proposal appears to strike a   balance in the features desired.  Thus, the fourth proposal is the   one recommended for general implementation and use.   Please note that these approaches also address securely eliminating   users from the multicast group, but don't specifically address adding   new users to the multicast group following initial setup because this   is viewed as evident as to how it would be performed.5.1  MANUAL KEY DISTRIBUTION   Through manual key distribution, symmetric key is delivered without   the use of public key exchanges.  To set up a multicast group Net Key   utilizing manual key distribution would require a sequence of events   where Net Key and spare Net Keys would be ordered by the root of the   multicast session group. Alternate (supersession) Net Keys are   ordered (by the root) to be used in case of a compromise of a group   participant(s). The Net Keys would be distributed to each individualWallner, et al.              Informational                      [Page 7]RFC 2627             Key Management for Multicast              June 1999   group participant, often through some centralized physical   intermediate location. At some predetermined time, all group   participants would switch to the new Net Key.  Group participants use   this Net Key until a predetermined time when they need another new   Net Key. If the Net Key is compromised during this time, the   alternate Net Key is used. Group participants switch to the alternate   Net Key as soon as they receive it, or upon notification from the   root that everyone has the new Net Key and thus the switch over   should take place. This procedure is repeated for each cryptoperiod.   A scheme like this may be attractive because the methods exist today   and are understood by users.  Unfortunately, this type of scheme can   be time consuming to set up the multicast group based on time   necessary to order keying material and having it delivered.  For most   real time scenarios, this method is much too slow.5.2  N Root/Leaf Pairwise Keys Approach   This approach is a brute force method to provide a common multicast   group Net Key to the group participants. In this scheme, the   initiator sets the security attributes for a particular session,   generates a list of desired group participants and transmits the list   to all group participants.  The leaves then respond with an initial   acceptance or rejection of participation.  By sending the list up   front, time can be saved by not performing key exchanges with people   who rejected participation in the session.  The root (who for this   and future examples is assumed to be the initiator) generates a   pairwise key with one of the participants (leaves) in the multicast   group using some standard public key exchange technique (e.g., a   Diffie-Hellman public key exchange.)  The root will then provide the   security association parameters of the multicast (which may be   different from the parameters of the initial pairwise key) to this   first leaf.  Parameters may include items such as classification and   policy.  Some negotiation (through the use of a Security Association   Management Protocol, or SAMP) of the parameters may be necessary.   The possibility exists for the leaf to reject the connection to the   multicast group based on the above parameters and  multicast group   list.  If the leaf rejects this session, the root will repeat this   process with another leaf.   Once a leaf accepts participation in the multicast session, these two   then choose a Net Key to be used by the multicast group.  The Net Key   could be generated through another public key exchange between the   two entities, or simply chosen by the root, depending upon the policy   which is in place for the multicast group ( i.e. this policy decision   will not be a real time choice).  The issue here is the level of   trust that the leaf has in the root.  If the initial pairwise key   exchange provides some level of user authentication, then it seemsWallner, et al.              Informational                      [Page 8]RFC 2627             Key Management for Multicast              June 1999   adequate to just have the root select the Net Key at this stage.   Another issue is the level of trust in the strength of the security   of the generated key.  Through a cooperative process, both entities   (leaf and root) will be providing information to be used in the   formation of the Net Key.   The root then performs a pairwise key exchange with another leaf and   optionally performs the negotiation discussed earlier.  Upon   acceptance by the leaf to join the multicast group, the root sends   the leaf the Net Key.   This pairwise key exchange and Net Key distribution continues for all   N users of the multicast group.   Root/leaves cache pairwise keys for future use.  These keys serve as   Key Encryption Keys (KEKs) used for rekeying leaves in the net at a   later time.  Only the root will cache all of the leaves' pairwise   keys.  Each individual leaf will cache only its own unique pairwise   Key Encryption Key.   There are two cases to consider when caching the KEKs.  The first   case is when the Net key and KEK are per session keys. In this case,   if one wants to exclude a group participant from the multicast   session (and rekey the remaining participants with a new Net Key),   the root would distribute a new Net key encrypted with each   individual KEK to every legitimate remaining participant.  These KEKs   are deleted once the multicast session is completed.   The second case to consider is when the KEKs are valid for more than   one session.  In this case, the Net Key may also be valid for   multiple sessions, or the Net Key may still only be valid for one   session as in the above case.  Whether the Net Key is valid for one   session or more than one session, the KEK will be cached.  If the Net   Key is only valid per session, the KEKs will be used to encrypt new   Net Keys for subsequent multicast sessions.  The deleting of group   participants occurs as in the previous case described above,   regardless of whether the Net Key is per session or to be used for   multiple sessions.   A scheme like this may be attractive to a user because it is a   straightforward extension of certifiable public key exchange   techniques. It may also be attractive because it does not involve   third parties.  Only the participants who are part of the multicast   session participate in the keying mechanism.  What makes this scheme   so undesirable is that it will be transmission intensive as we scaleWallner, et al.              Informational                      [Page 9]RFC 2627             Key Management for Multicast              June 1999   up in numbers, even for the most computationally efficient   participants, not to mention those with less capable hardware   (tactical, wireless, etc.).  Every time the need arises to drop an   "unauthorized" participant, a new Net Key must be distributed.   This distribution requires a transmission from the Root to each   remaining participant, whereby the new Net Key will be encrypted   under the cover of each participant's unique pairwise Key Encryption   Key (KEK).   Note: This approach is essentially the same as one proposal to the   Internet Engineering Task Force (IETF) Security Subworking Group [Ref   1,2].   Also note that there exist multiple twists to an approach like this.   For example, instead of having the root do all N key exchanges, the   root could pass some of this functionality (and control) to a number   of leaves beneath him.  For example, the multicast group list could   be split in half and the root tells one leaf to take half of the   users and perform a key exchange with them (and then distribute the   Net key) while the root will take care of the other half of the list.   (The chosen leaves are thus functioning as a root and we can call   them "subroots."  These subroots will have leaves beneath them, and   the subroots will maintain the KEK of each leaf beneath it.)  This   scales better than original approach as N becomes large.   Specifically, it will require less time to set up (or rekey) the   multicast net because the singular responsibility of performing   pairwise key exchanges and distributing Net Key will be shared among   multiple group participants and can be performed in parallel, as   opposed to the root only distributing the Net Key to all of the   participants.   This scheme is not without its own security concerns.  This scheme   pushes trust down to each subgroup controller - the root assumes that   these "subroot" controllers are acting in a trustworthy way.  Every   control element (root and subroots) must remain in the system   throughout the multicast.  This effectively makes removing someone   from the net (especially the subroots) harder and slower due to the   distributed control.  When removing a participant from the multicast   group which has functioned on behalf of the root, as a subroot, to   distribute Net Key, additional steps will be necessary.  A new   subroot must be delegated by the root to replace the removed subroot.   A key exchange (to generate a new pairwise KEK) must occur between   the new subroot and each leaf the removed subroot was responsible   for.  A new Net Key will now be distributed from the root, to the   subroots, and to the leaves.  Note that this last step would have   been the only step required if the removed party was a leaf with no   controlling responsibilities.Wallner, et al.              Informational                     [Page 10]RFC 2627             Key Management for Multicast              June 19995.3   COMPLEMENTARY VARIABLE APPROACH   Let us suppose we have N leaves.  The Root performs a public key   exchange with each leaf i (i= 1,2, ..., N).  The Root will cache each   pairwise KEK. Each leaf stores their own KEK.  The root would provide   the multicast group list of participants and attributes to all users.   Participants would accept or reject participation in the multicast   session as described in previous sections.  The root encrypts the Net   Key for the Multicast group to each leaf, using their own unique   KEK(i).  (The Root either generated this Net Key himself, or   cooperatively generated with one of the leaves as was discussed   earlier).  In addition to the encrypted Net Key, the root will also   encrypt something called complementary variables and send them to the   leaves.   A leaf will NOT receive his own complementary variable, but he will   receive the other N-1 leaf complementary variables.  The root sends   the Net Key and complementary variables j, where j=1,2,...,N and j   not equal to i, encrypted by KEK(i) to each leaf. Thus, every leaf   receives and stores N variables which are the Net key, and N-1   complementary variables.   Thus to cut a user from the multicast group and get the remaining   participants back up again on a new Net Key would involve the   following. Basically, to cut leaf number 20 out of the net, one   message is sent out that says "cut leaf 20 from the net." All of the   other leaves (and Root) generate a new Net Key based on the current   Net Key and Complementary variable 20.  [Thus some type of   deterministic key variable generation process will be necessary for   all participants of the multicast group]. This newly generated   variable will be used as the new Net Key by all remaining   participants of the multicast group.  Everyone except leaf 20 is able   to generate the new Net Key, because they have complementary variable   20, but leaf 20 does not.   A scheme like this seems very desirable from the viewpoint of   transmission savings since a rekey message encrypted with each   individual KEK to every leaf does not have to be sent to delete   someone from the net.  In other words, there will be one plaintext   message to the multicast group versus N encrypted rekey messages.   There exists two major drawbacks with this scheme.  First are the   storage requirements necessary for the (N-1) complementary variables.   Secondly, when deleting multiple users from the multicast group,   collusion will be a concern.  What this means is that these deleted   users could work together and share their individual complementary   variables to regain access to the multicast session.Wallner, et al.              Informational                     [Page 11]RFC 2627             Key Management for Multicast              June 19995.4  HIERARCHICAL TREE APPROACH   The Hierarchical Tree Approach is our recommended approach to address   the multicast key management problem.  This approach provides for the   following requisite features:      1. Provides for the secure removal of a compromised user from the         multicast group      2. Provides for transmission efficiency      3. Provides for storage efficiency   This approach balances the costs of time, storage and number of   required message transmissions, using a hierarchical system of   auxiliary keys to facilitate distribution of new Net Key. The result   is that the storage requirement for each user and the transmissions   required for key replacement are both logarithmic in the number of   users, with no background transmissions required. This approach is   robust against collusion of excluded users. Moreover, while the   scheme is hierarchical in nature, no infrastructure is needed beyond   a server (e.g., a root), though the presence of such elements could   be used to advantage (See Figure 1).

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?