Decentralized Key Management for Large Dynamic Multicast Groups - - PowerPoint PPT Presentation

decentralized key management for large dynamic multicast
SMART_READER_LITE
LIVE PREVIEW

Decentralized Key Management for Large Dynamic Multicast Groups - - PowerPoint PPT Presentation

Decentralized Key Management for Large Dynamic Multicast Groups using Distributed Balanced Trees Thesis by Junaid Haroon MSCS018 Supervised by Mr Shafiq ur Rahman Flow of Presentation Background Proposed Scheme Analysis


slide-1
SLIDE 1

Decentralized Key Management for Large Dynamic Multicast Groups using Distributed Balanced Trees

Thesis by

Junaid Haroon MSCS018

Supervised by

Mr Shafiq ur Rahman

slide-2
SLIDE 2

Flow of Presentation

  • Background
  • Proposed Scheme
  • Analysis
  • References
slide-3
SLIDE 3

Background

  • Two Party Secure Communication
  • Multicast Groups (Without Security)
  • Secure Multicast
  • Key Management for Secure Multicast
  • Logical Key Hierarchy
  • Problems in Existing Scheme
slide-4
SLIDE 4

Two Party Secure Communication

  • Both parties generate a pair of keys such

that data encrypted with one of them can be decrypted with the other

slide-5
SLIDE 5

Two Party Secure Communication

Receiver Sender data data Trusted Third Party Sender Public key Sender Private key Receiver Public key Receiver Private key

  • Both parties register one key with a trusted

third party. This key is called the public key while the other is called private key.

Sender Public key Receiver Public key

slide-6
SLIDE 6

Two Party Secure Communication

Receiver Sender data data Trusted Third Party Sender Public key Sender Private key Receiver Public key Receiver Private key Sender Public key Receiver Public key Sender Public key Receiver Public key

  • Both parties acquire the public key of the
  • ther party from the trusted third party
slide-7
SLIDE 7

Two Party Secure Communication

Receiver Sender data Diffie Hellman Key Exchange data Sender Public key Sender Private key Receiver Public key Receiver Private key Sender Public key Receiver Public key

  • Both parties use the Deffie Hellman

protocol to arrive at a common key at both ends

slide-8
SLIDE 8

Two Party Secure Communication

Receiver Sender Symmetric key data Diffie Hellman Key Exchange data Sender Public key Sender Private key Symmetric key Receiver Public key Receiver Private key Sender Public key Receiver Public key

  • Both parties use the Deffie Hellman

protocol to arrive at a common key at both ends

slide-9
SLIDE 9

Two Party Secure Communication

Receiver Sender Symmetric key data data Symmetric key

  • Both parties use the Deffie Hellman

protocol to arrive at a common key at both ends

slide-10
SLIDE 10
  • Both parties use symmetric encryption

using this generated key to transfer data

  • ver the public channel

Two Party Secure Communication

Security Transformations Receiver Sender channel Symmetric key data data Symmetric key

slide-11
SLIDE 11

Two Party Secure Communication

Security Transformations Receiver Sender channel Symmetric key data data Symmetric key

  • The opponent is unable to decipher

encrypted data passing over the channel

Opponent

slide-12
SLIDE 12

Multicast Groups (Without Security)

slide-13
SLIDE 13
  • Multicast is the delivery of a packet to all hosts

which have shown interest in receiving it

Multicast Groups (Without Security)

slide-14
SLIDE 14
  • Multicast capable routers construct each group’s

delivery tree

  • Hosts can join or leave a multicast group by

informing their nearest router

Multicast Groups (Without Security)

slide-15
SLIDE 15
  • In multicast there is no authentication or

authorization for group membership and for sending data to a group

Multicast Groups (Without Security)

slide-16
SLIDE 16

Secure Multicast

  • All transmitted data must be encrypted and only

group members should possess the key used to encrypt and decrypt, also called the group key

  • After every member join or leave in the secure

group, key must be changed otherwise

– A joining member can decrypt accumulated traffic – A leaving member can continue to decrypt data

  • The mechanism by which the new key is

generated and distributed is called key management

  • The message containing the new key is called

key update

slide-17
SLIDE 17
  • In simple schemes key updates are sent in a

single multicast packet containing the group key encrypted by each member’s public key. Size of key update is proportional to group size

Key Management for Multicast Groups

K18 K7 K8 K5 K6 K3 K4 K1 K2 M1 M2 M3 M4 M5 M6 M7 M8

slide-18
SLIDE 18

Key Management for Multicast Groups

K18 K7 K8 K5 K6 K3 K4 K1 K2 M1 M2 M3 M4 M5 M6 M7 M8

  • For example, if M8 wants to leave the group, the new

K18 is sent encrypted with each of K1 through K7 but not with K8

  • These seven encrypted copies of K18 are sent in a

single multicast packet to the whole group

slide-19
SLIDE 19

Key Management for Multicast Groups

K18 K7 K8 K5 K6 K3 K4 K1 K2 M1 M2 M3 M4 M5 M6 M7 M8

  • If every pair of hosts know a common key, the

required encryptions reduce

slide-20
SLIDE 20

Key Management for Multicast Groups

K18 K7 K8 K5 K6 K3 K4 K1 K2 M1 M2 M3 M4 M5 M6 M7 M8

  • If every pair of hosts know a common key, the

required encryptions reduce

K56 K78 K12 K34

slide-21
SLIDE 21

Key Management for Multicast Groups

K18 K7 K8 K5 K6 K3 K4 K1 K2 M1 M2 M3 M4 M5 M6 M7 M8

  • If every pair of hosts know a common key, the

required encryptions reduce

  • If this is extended to form a tree the number of

encryptions become logarithmic

K14 K58 K56 K78 K12 K34

slide-22
SLIDE 22

Key Management for Multicast Groups

K18 K7 K8 K5 K6 K3 K4 K1 K2 M1 M2 M3 M4 M5 M6 M7 M8 K14 K58 K56 K78 K12 K34

  • However two more keys need to be changed

which were known by the leaving member

  • The whole process goes like this
slide-23
SLIDE 23

Key Management for Multicast Groups

K18 K7 K8 K5 K6 K3 K4 K1 K2 M1 M2 M3 M4 M5 M6 M7 M8 K14 K58 K56 K78 K12 K34

  • A total of five encryptions were needed
  • Size of message is 2 lg n
  • The scheme is called Logical Key Hierarchy
slide-24
SLIDE 24

Logical Key Hierarchy (LKH)

  • Each member knows all keys on its path to

the root

  • On member join or leave all keys on that

member’s path to the root are updated

  • A changed key is sent encrypted by both

its children keys therefore message size becomes 2 log n

slide-25
SLIDE 25

Problems in Existing Scheme

  • Single controller responsible for storing

keys for the whole group and generating key updates for them

– Performance deteriorates as group size increases

  • Key update message size is logarithmic
  • nly when the key tree is balanced which

is not guaranteed in this scheme

– Performance deteriorates as tree gets out of balance

slide-26
SLIDE 26

Proposed Scheme

  • Distributed Nature of Key Tree
  • Balancing of Key Tree
  • Key Updates
  • Member Joins
  • Member Leaves
slide-27
SLIDE 27

Distributed Nature of Key Tree

C18/4 C12/2 C58/3 C56/2 K18 – K14 – K58 – K56 – K78 – K12 – K34 – K7 – K8 – K5 – K6 – K3 – K4 – K1 – K2 – M1 M2 M3 M4 M5 M6 M7 M8

slide-28
SLIDE 28
  • Every controller has a key as allotted to it by the

parent and another key that it generates to be used in the key tree

Distributed Nature of Key Tree

C18/4

C12/2 C58/3

K18 – K14 – K34 – K3 – K4 – M3 M4

slide-29
SLIDE 29
  • There is no order in members so there is a

single case of rotation which is like single rotation in an AVL tree

Balancing of Key Tree

SH h / h +1 R S h H HH h +1

slide-30
SLIDE 30
  • There is no order in members so there is a

single case of rotation which is like single rotation in an AVL tree

Balancing of Key Tree

SH h / h +1 R S h H HH h +1

slide-31
SLIDE 31

Key Updates

  • Assume all keys need to updated

C18/4 C12/2 C58/3 C56/2 K18 – K14 – K58 – K56 – K78 – K12 – K34 – K7 – K8 – K5 – K6 – K3 – K4 – K1 – K2 – M1 M2 M3 M4 M5 M6 M7 M8

slide-32
SLIDE 32

Member Joins

C18/4 C12/2 C58/3 K18 – K14 – K34 – K3 – K4 – M3 M4 M8

slide-33
SLIDE 33
  • Sub controller takes a random decision

since the node is balanced

Member Joins

C18/4 C58/3 C56/2 K18 – K58 / M8 K56 – K5 – K6 – M5 M6

slide-34
SLIDE 34
  • Node cannot be added here since height

increase is not allowed

Member Joins

C18/4 C58/3 C56/2 K18 – K58 / M8 K56 – K5 – K6 – M5 M6

slide-35
SLIDE 35
  • Request is passed on to parent controller

C58

Member Joins

C18/4 C58/3 C56/2 K18 – K58 / K7 – M7 M8

slide-36
SLIDE 36
  • Controller must add the new member on

right side with height increase allowed

Member Joins

C18/4 C58/3 C56/2 K18 – K58 / K7 – M7 M8

slide-37
SLIDE 37
  • Leaf node K7 must be split to

accommodate for the new member

Member Joins

C18/4 C58/3 C56/2 K18 – K58 / K7 – M7 M8

slide-38
SLIDE 38
  • Leaf node K7 must be split to

accommodate for the new member

Member Joins

C18/4 C58/3 C56/2 K18 – K78 – K7 – K8 – M7 M8 K58 –

slide-39
SLIDE 39

Member Joins

  • To balance load the root controller forwards join

requests to different controllers

  • Height increase is only allowed when moving in

a smaller sub-tree or when starting from root

  • If insertion without height increase is impossible

request is forwarded to parent controller

  • Parent controller repeats the same algorithm

except that it does not send the member back to the same controller

slide-40
SLIDE 40
  • M6 wants to leave the group and informs

its parent controller C56

C18/4 C58/3 C56/2

Member Leaves

K58 / K56 – K5 – K6 – M5 M6 K18 /

slide-41
SLIDE 41
  • Controller merges nodes to remove M6

from the tree

C18/4 C58/3 C56/2

Member Leaves

K58 / K5 – M5 M6 K18 /

slide-42
SLIDE 42
  • Sub controller height is changed so parent

controller is informed

C18/4 C58/3 C56/2

Member Leaves

K58 / K7 – M7 K5 – M6 C56/1 K18 /

slide-43
SLIDE 43
  • Parent adjusts the balance of its nodes

C18/4 C58/3 C56/2

Member Leaves

K58 / K7 – M7 K58 – K5 – M6 C56/1 K18 /

slide-44
SLIDE 44
  • Height of controller is changed so the root

controller is informed

C18/4 C58/3 C56/2

Member Leaves

C12/3 K58 / K34 – K7 – K3 – K4 – M3 M4 K58 – K5 – M6 C56/1 C58/2 K14 / K18 /

slide-45
SLIDE 45
  • Smaller sub tree reduced in height so the

root controller must undergo a rotation

C18/4 C58/3 C56/2

Member Leaves

C12/3 K58 / K34 – K7 – K3 – K4 – M3 M4 K58 – K5 – C56/1 C58/2 K18 – K14 – K14 / K18 /

slide-46
SLIDE 46
  • Balance of rotated nodes are adjusted

C18/4 C18/3 C58/3 C56/2

Member Leaves

C12/3 K58 / K34 – K7 – K3 – K4 – M3 M4 K58 – K5 – C56/1 C58/2 K18 – K14 –

slide-47
SLIDE 47
  • All keys on leaving member’s path to the

root are updated

C18/4 C18/3 C58/3 C56/2

Member Leaves

C12/3 K58 / K34 – K7 – K3 – K4 – M3 M4 K58 – K5 – C56/1 C58/2 K18 – K14 –

slide-48
SLIDE 48

Member Leaves

  • Member informs parent controller
  • Parent controller removes node from tree

and adjusts nodes’ balances

  • If there is a difference of two in heights of

sub trees a rotation is done

  • If due to rotations height of total tree

decreases the grandparent is informed which may itself need to go into rotations

slide-49
SLIDE 49

Analysis

  • Frequency of Rotations
  • Analytic Comparison
  • Conclusion
slide-50
SLIDE 50

Frequency of Rotations

Group size Rotations Rotations Group size Zero One Two Three 10000 7692 2213 93 2 100000 77441 20535 2022 2 1000000 759008 230774 10142 76

One rotation 0.24 rotations ation causes 2 ext tations per leave o s 2 extra keys to b ave or 0.48 keys p ys to be sent keys per leave ve

slide-51
SLIDE 51

Analytic Comparison

LKH Proposed LKH Multicast message size for key Update (2d-1)K (2d-1+c +0.48)K Storage at controller (2n-1)K (2n-1+C)K Distributed Key update processing at Controller (2d-1)E (2d-1+C)E Distributed

d – depth of the tree n – number of group members c – number of controller in the path to the ro C – total number of controllers K – key size E – cost of encryption the root

slide-52
SLIDE 52

Conclusion

  • Key update increased from 2d-1 keys to

2d-1+c+0.48 keys

  • However d is now guaranteed to be log n
  • The overhead of balancing (0.48K) is less

than overhead of height increase (2K)

  • Storage and processing at controllers

increases by factor of C keys but is distributed among all controllers

slide-53
SLIDE 53

References

  • W. Stallings; “Cryptography and Network Security – Principles

and Practice”, 2nd Edition; Prentice Hall 1998

  • RFC 2401, Security Architecture for IP, November 1998, S. Kent
  • RFC 2406, IP Encapsulating Security Payload (ESP), November

1998, S. Kent

  • RFC 2402, IP Authentication Header, November 1998, S. Kent
  • Implementation and deployment of IPv6 Multicasting Jinmei T.

Toshiba Corporation

  • TCP/IP Blueprints Burk R., Bligh M., and Lee T. Techmedia 1998
  • RFC 3376, Internet Group Management Protocol, Version 3. B.

Cain, S. Deering, I. Kouvelas, B. Fenner, A. Thyagarajan. October 2002

  • Survey of Different Multicast Routing Protocols by M. Capan,

http://cn.carnet.hr/materijali/1998/980518mipro/mcapan.html

  • Deploying IP Multicast in the Enterprise Thomas A. Maufer,

Prentice Hall, 1998

slide-54
SLIDE 54
  • MBONE: Multicasting Tomorrow's Internet, A book about the

multicasting backbone and the future of multimedia on the Internet Chapter 3: The MBONE and Multicasting

  • IP Multicast Security: Issues and Directions by Hardjono T. and

Tsudik G.

  • Deployment Issues for the IP Multicast Service and Architecture
  • Key Management for Multicast: Issues and Architectures, RFC

2627, D. Wallner et al. June 1999

  • A taxonomy of multicast security issues <draft-irtf-smug-

taxonomy-01.txt>, R. Canetti, April 1999

  • Secure IP Multicast: Problem areas, Framework, and Building

Blocks <draft-irtf-smug-framework-01.txt>, Thomas Hardjono, March 2001

  • A Survey of Key Management for Secure Group Communication,

Rafaeli S. and Hutchison D., ACM Computing Surveys, September 2003

  • A Survey of Key Management for Secure Group Communication,

Rafaeli S. and Hutchison D.

  • Batch Rekeying for Secure Group Communications, Xiaozhou Steve

Li, May 2001

  • RFC 2093, Group Key Management Protocol (GKMP) Specification,
slide-55
SLIDE 55
  • RFC 2094, Group Key Management Protocol (GKMP) Architecture,

July 1997, H. Harney

  • A. Ballardie A., “Scalable Multicast Key Distribution”, RFC 1949,

May 1996

  • Secure Group Communications Using Key Graphs, Chung Kei

Wong, IEEE/ACM TRANSACTIONS ON NETWORKING. VOL. 8,

  • NO. 1, February 2000
  • Secure Group Communication using Key Graphs, Wong K. et al.,

February 2000, IEEE/ACM Transactions on Networking

  • D. A. McGrew and A. T. Sherman. Key Establishment in Large

Dynamic Groups Using One-Way Function Trees. Technical Report

  • No. 0755, TIS Labs at Network Associates, Inc., Glenwood, MD,

May 1998

  • Rafaeli S. et al., “An efficient one-way function tree implementation

for group key management”

  • Key Management for Large Dynamic Groups: One-Way Function

Trees and Amortized Initialization, February 1999, D. Balenson et al., IRTF Draft

  • EHBT: An efficient protocol for group key management, Rafaeli S.
  • ELK, a New Protocol for Efficient Large-Group Key Distribution,

Perrig A. et al.

  • Key Management for Secure Internet Multicast using Boolean
slide-56
SLIDE 56
  • Performance Optimizations for Group Key Management Schemes

for Secure Multicast, Zhu S. et al.

  • Optimized Group Rekey for Group Communication Systems, Rodeh

O.

  • A Decentralised Architecture for Group Key Management, Rafaeli

S., September 2000

  • Reliable Group Rekeying: A Performance Analysis, Yang R. et al.
  • Group Rekeying with Limited Unicast Recovery, Brian X.
  • A Scalable and Reliable Key Distribution Protocol for Multicast

Group Rekeying, Setia S.

  • Keystone: A Group Key Management Service, Wong C. and Lam S.,

Proceedings International Conference on Telecommunications, May 2000

  • The VersaKey Framework: Versatile Group Key Management,

Waldvogel M. et al.