Group Key Agreement Ph.D. Dissertation Proposal June 20, 2001 - - PowerPoint PPT Presentation

group key agreement
SMART_READER_LITE
LIVE PREVIEW

Group Key Agreement Ph.D. Dissertation Proposal June 20, 2001 - - PowerPoint PPT Presentation

Group Key Agreement Ph.D. Dissertation Proposal June 20, 2001 Yongdae Kim 1 Outline Definitions and concepts Motivations and goals Related work Work done Protocols Implementation and Integration Research plan


slide-1
SLIDE 1

1

Group Key Agreement

Ph.D. Dissertation Proposal June 20, 2001 Yongdae Kim

slide-2
SLIDE 2

2/55

Outline

  • Definitions and concepts
  • Motivations and goals
  • Related work
  • Work done

Protocols Implementation and Integration

  • Research plan and expected contribution
slide-3
SLIDE 3

3/55

Background ?

slide-4
SLIDE 4

4/55

Group Communication Settings

  • 1-to-Many

Single-source broadcast: Cable/sat., TV, radio

  • Few-to-Many

Multi-source broadcast: Televised debates, GPS

  • Any-to-Any

Collaborative applications need inherently underlying peer groups. Video/Audio conferencing, collaborative workspaces, interactive

chat, network games and gambling

Rich communication semantics, tighter control, more emphasis on

reliability and security

slide-5
SLIDE 5

5/55

Dynamic Peer Groups (DPG)

  • Relatively small (<100 of members)
  • No hierarchy
  • Frequent membership changes
  • Any member can be sender and receiver

My focus: key management in DPGs

slide-6
SLIDE 6

6/55

Key Management is a building block

Encryption, Authentication Key Management Authorization, Access control, Non-repudiation … Secure Applications

slide-7
SLIDE 7

7/55

Group Key Management

  • Group key: a secret quantity known only to current group

members

  • Group Key Distribution

One party generates a secret key and distributes to others.

  • Group Key Agreement

Secret key is derived jointly by two or more parties. Key is a function of information contributed by each member. No party can pre-determine the result.

slide-8
SLIDE 8

8/55

Can we use Key Distribution in DPG?

  • Centralized key server

Single point of failure Attractive attack target

  • Can key server be sufficiently replicated? ⇒ Very costly

Availability of a key server in any and all possible partitions

Network can have arbitrary faults!

slide-9
SLIDE 9

9/55

Settings for Group Key Management

Static Dynamic Large Small Few-to-many Any-to-Any Distributed Centralized Stronger Weaker Agreement Distribution

Research Focus

size nature setting authority security key

slide-10
SLIDE 10

10/55

Secure Group Communication

  • Group key agreement protocols rely on the underlying

group communication systems.

Protocol message transport Strong membership semantics (Notification of a group membership) Not for security reasons

  • Group communication system needs specialized security

mechanisms.

Mutual benefit and interdependency

slide-11
SLIDE 11

11/55

Membership Operations

Formation Member add Member leave Group merge Group partition

slide-12
SLIDE 12

12/55

Motivation

  • We need group key agreement methods satisfying the

following:

Strong security Dynamic operation Robustness Efficiency in communication and computation Implementation, integration, and measurement

slide-13
SLIDE 13

13/55

Why care about computation overhead?

  • Most group key agreement methods rely on modular

exponentiation.

512 bit modular exponentiation on Pentium 400 Mhz = 2 msec 1024 bit modular exponentiation = 8 msec

  • Most methods require a lot of modular exponentiations for

each membership operation.

Cliques: When current group size is n , join of a member to this

group requires 2 n + 1 modular exponentiation.

slide-14
SLIDE 14

14/55

Goals

  • To design efficient group key agreement protocols

Low communication and computation overhead Suitable for various network environments

  • Rigorous proof of security
  • Development of group key management software
  • Integration with group communication systems
  • Evaluation of the group key agreement methods
slide-15
SLIDE 15

15/55

Security Requirements

  • Group key secrecy

computationally infeasible for a passive adversary to discover any

group key

  • Backward secrecy

Any subset of group keys cannot be used to discover previous

group keys.

  • Forward secrecy

Any subset of group keys cannot be used to discover subsequent

group keys.

  • Key Independence

Any subset of group keys cannot be used to discover any other

group keys.

Forward + Backward secrecy

slide-16
SLIDE 16

16/55

Functional Requirements

  • Group key agreement
  • Dynamic membership operation
  • Robustness against cascaded failures

Cascade faults: when a membership event occurs while handling prior one.

slide-17
SLIDE 17

17/55

Outline

  • Definitions and notions
  • Motivation and goals
  • Related work
  • Work done

Protocols Implementation and Integration

  • Research and evaluation plan
slide-18
SLIDE 18

18/55

Related Work

  • Only provide formation of a group key

Steer et. al (1988): fast join, slow leave Burmester and Desmedt (BD, 1993): fast but too many broadcasts Becker and Wille (1998): always log n communication rounds and

computation overhead

Tzeng and Tzeng (1999, 2000): Fast but does not provide forward

and backward secrecy

slide-19
SLIDE 19

19/55

Related Work

  • Cliques project

DARPA-sponsored project (1997 ~ 2000) Follow-on project from 2000 co-work with JHU

  • Cliques protocol: Foundation of the proposed work

Key Agreement in Dynamic Peer Groups (1996, 1997, 2000)

Steiner, Tsudik and Waidner Group Diffie-Hellman key agreement protocols Dynamic membership operations

New Multi-party Authentication Services and Key Agreement

Protocols (1998, 2000)

Ateniese, Steiner and Tsudik A notion of group key authentication is considered

Drawbacks

Slow computation: O(n) computation for each membership event Communication overhead: k rounds for merge (k: # of new members)

slide-20
SLIDE 20

20/55

Outline

  • Definitions and notions
  • Motivation and goals
  • Related work
  • Work done

Protocols Implementation and Integration

  • Research and evaluation plan
slide-21
SLIDE 21

21/55

Work done: Protocols

  • Simple and Fault-Tolerant Key Agreement for Dynamic

Collaborative Groups

TGDH (Tree-based Group Diffie-Hellman)

  • Y. Kim, A. Perrig, G. Tsudik

ACM CCS 2000, Nov. 2000 Computation overhead reduced from O(n) to O(log n) Providing robustness against cascaded failure inherently

  • Communication-Efficient Group Key Agreement

STR

  • Y. Kim, A. Perrig, G. Tsudik

In submission Communication overhead is lower than any other methods

slide-22
SLIDE 22

22/55

Work done: Implementations

  • The Design of a Group Key Agreement API

CLQ_API (Cliques Application Program Interface)

  • G. Ateniese, O. Chevassut, D. Hasse, Y. Kim, and G. Tsudik

DARPA DISCEX 2000, Jan. 2000

  • Related APIs

TREE_API: Implementation of TGDH, May 2000 STR_API: Implementation of STR, June 2000 BD_API: Implementation of BD, Aug. 2000

slide-23
SLIDE 23

23/55

Work done: Integration

  • Secure Group Communication in Asynchronous Networks with

Failures: Integration and Experiments

  • Y. Amir, G. Ateniese, D. Hasse, Y. Kim, C. Nita-Rotaru, T. Schlossnagle,
  • J. Schultz, J. Stanton and G. Tsudik

IEEE ICDCS 2000, April 2000 Integrating Cliques with Spread Have some measurement ⇒ Will be used in our evaluation

  • Exploring Robustness in Group Key Agreement
  • Y. Amir, C. Nita-Rotaru, Y. Kim, J. Schultz, J. Stanton and G. Tsudik

Accepted to IEEE ICDCS 2001 First paper which provides robustness in secure group communication

slide-24
SLIDE 24

24/55

Outline

  • Definitions and notions
  • Motivation and goals
  • Related work
  • Work done

Protocols Implementation and Integration

  • Research and evaluation plan
slide-25
SLIDE 25

25/55

Diffie-Hellman

  • Setting

p – large prime (e.g. 512 or 1024 bits) Zp* = {1, 2, … , p – 1} g – base generator

  • A → B : NA = gn1 mod p
  • B → A : NB = gn2 mod p
  • A : NB

n1 = gn1n2 mod p

  • B : NA

n2 = gn1n2 mod p

  • Diffie-Hellman Key : gn1 n2
  • Blinded Key of n1 : NA = gn1 mod p

n1 n2 gn1n2

slide-26
SLIDE 26

26/55

Diffie-Hellman Problem

  • Computational Diffie-Hellman Assumption (CDH)

Loose Definition: Having known ga, gb, computing gab is hard. CDH is not sufficient to prove that Diffie-Hellman Key can be used

as secret key.

Eve may recover part of information with some confidence One cannot simply use bits of gab as a shared key

  • Decision Diffie-Hellman Assumption (DDH)

Loose Definition

Knowing ga and gb, and guessing gc, can you check gc = gab ?

Stronger than CDH

slide-27
SLIDE 27

27/55

Proof in Cryptography

  • Common Assumption

Factorization is hard ⇒ RSA Computing discrete logarithm is hard ⇒ ElGamal DDH problem is hard ⇒ Diffie-Hellman, Group key agreement

methods

  • We usually prove that the given problem can be formally

reduced to a known common assumption.

If our system is broken, then the common assumption will be

broken.

slide-28
SLIDE 28

28/55

Cliques

  • Steiner, Tsudik, and Waidner in ACM CCS ’96
  • Contributory group key agreement protocol
  • Security

Formal proof of security Authentication Key Independence

  • Efficiency

Small communication round except merge

  • Introduce dynamic group operation
slide-29
SLIDE 29

29/55

TGDH

  • Simple: One function is enough to implement it
  • Fault-tolerant: Robust against cascaded faults
  • Secure

Contributory Provable security Key independence

  • Efficient

d is the height of key tree ( < O(log 2 N)), N is the number of users Maximum number of exponentiation = 4(d-1) # of exp. in Cliques = 2N+1

slide-30
SLIDE 30

30/55

Key Tree (General)

n4 n5 gn4n5 n6 n1 n2 n3 gn2n3 gn1gn2n3

ggn1gn2n3 gn6gn4n5

gn6gn4n5

slide-31
SLIDE 31

31/55

Key Tree (n3’s view)

gn4 gn5 ggn4n5 gn6 gn1 gn2 n3 gn2n3 gn1gn2n3

GROUP KEY

ggn6gn4n5 = ggn1gn2n3 gn6gn4n5

n3 gn2n3 gn1gn2n3

GROUP KEY

Key-path: Set of nodes on the path from member node to root node

gn1 gn2

ggn6gn4n5

Co-path: Set of siblings of nodes on the key-path

Member knows all keys on the key-path and all blinded keys Any member who knows blinded keys on every nodes and its session random can compute the group key.

slide-32
SLIDE 32

32/55

Join (n3’s view)

n3 gn1 gn2 ggn1n2 gn3gn1n2 gn4 Tree(n4) n3

slide-33
SLIDE 33

33/55

n3

Join (n3’s view)

gn1 gn2 ggn1n2 gn3gn1n2 gn4 n3 gn3n4 ggn1n2gn3n4

slide-34
SLIDE 34

34/55

Leave (n2’s view)

gn1 n2 gn1n2 gn3 gn4 ggn1n2gn3n4 ggn3n4 n2 gn1

slide-35
SLIDE 35

35/55

Leave (n2’s view)

n2 gn1n2 gn3 gn4 ggn1n2gn3n4 ggn3n4 n2

slide-36
SLIDE 36

36/55

Leave (n2’s view)

gn3 gn4 ggn3n4 n2’ gn2’gn3n4

slide-37
SLIDE 37

37/55

Partition (n5’s view)

gn4 n5 gn4n5 gn1 gn3 ggn2n3

ggn1gn2n3

ggn1gn2n3 gn6gn4n5

gn6gn4n5 n6 n2 gn6 gn2 gn6 gn2 n5

slide-38
SLIDE 38

38/55

Partition (n5’s view)

gn4 n5 gn4n5 gn1 gn3 gn2n3

slide-39
SLIDE 39

39/55

Partition (n5’s view)

gn1 gn3 gn4n5 gn4 n5 n5 gn3 n5 Change share n5’

ggn1n3

gn4n5’

ggn1n3gn4n5’

slide-40
SLIDE 40

40/55

Partition: Both Sides

gn4 n5 gn1 gn3 gn6 gn2

slide-41
SLIDE 41

41/55

Partition: Both sides (N5 and N6’s view)

gn1 gn3 gn2 ggn1n3 n5’ gn4n5’ ggn1n3gn4n5’ gn2n6’ n6 n2 n6’ gn4

slide-42
SLIDE 42

42/55

Merge (to intermediate node, N2’s view)

ggn3n4 gn4 ggn5gn3n4 gn5 gn3

ggn1n2gn5gn3n4

ggn6n7

gn7 gn6 gn1n2

n2

gn1

n2

gn1 gn1n2

n2

slide-43
SLIDE 43

43/55

Merge (to intermediate node)

ggn3n4

gn4 ggn5gn3n4 gn5 gn3

n1 n2

gn1 gn1n2

ggn6n7

gn7 gn6

n2 ggn1n2gn6n7

gggn1n2gn6n7gn5gn3n4

slide-44
SLIDE 44

44/55

Tree Management: do one’s best

  • Join or Merge Policy

Join to leaf or intermediate node, if height of the tree will not

increase.

Join to root, if height of the tree increases.

  • Leave or Partition policy

No one can expect who will leave or be partitioned out. No policy for leave or partition event

  • Successful

Still maintaining logarithmic (height < 2 log2 N)

  • Future Work

Other tree management technique Rebalancing

slide-45
SLIDE 45

45/55

Self-stabilization and Fault-tolerance

  • Each protocol represents different strands of a single

protocol.

  • Every protocol consists of

Tree management (delete or add) for each membership event Compute missing keys if I can If I computed, broadcast my tree

  • This leads us to design self-stabilizing protocol.
  • If cascaded event finishes, then our protocol will also finish.
slide-46
SLIDE 46

46/55

Security

  • Group key secrecy

We have proofs using

Random Oracle Model Becker and Wille’s proof

Rigorous DDH proof ⇒ next page

  • We can provide key independence.

By changing session random of a member on every additive event

slide-47
SLIDE 47

47/55

Tree DDH Problem

  • Intuitive Definition

Given all blinded keys of a random key tree, can we distinguish the group key with the random number?

  • Proof goal

If we can distinguish, we can distinguish 2-party DDH.

  • We proved three-party case.
  • Simple induction does not work.
slide-48
SLIDE 48

48/55

STR

  • Communication efficient

Maximum 2 communication round Maximum 2 broadcast messages

  • Simple: One function is enough to implement it.
  • Fault-tolerant: Easier than TGDH
  • Secure

Contributory Backward and forward secrecy Provable security Key independence

  • Computation is bit more expensive.

Maximum number of exponentiation = 4(N-1) N is the number of users.

slide-49
SLIDE 49

49/55

Implementation

  • OpenSSL
  • Group communication

system

Message transport Membership control

  • Access control and

encryption are out of scope

Application

Secure Group communication Group communication

GKA_API Encryption

Access control Crypto Library Engine

slide-50
SLIDE 50

50/55

Research Plan:

  • Evaluation:

Depending on application, different GKA may be used. Based on complexity analysis and measurement

High/low delay network (LAN,WAN,Satellite,sensor,etc.) CPU speed Key size

We will measure the efficiency of our protocol after the integration.

Not whole APIs, but at least we will compare TGDH and Cliques.

We will collect some group dynamics from DoE and Spread.

Life time of a group Dynamicity Cascaded events

slide-51
SLIDE 51

51/55

Research Plan:

  • Theoretical to-do:

Complete security proofs (Tree-DDH problem)

  • More Integration activities:

Depends on other parties (JHU, LBL) Hybrid group key agreement (STR + TGDH?)

slide-52
SLIDE 52

52/55

Summary

TGDH+Spread (STR+Spread?, Hybrid? ) Cliques+Spread (Integration, Robust) Integration Evaluation, Recommendation, Measurement Evaluation ? CLQ_API, TREE_API, STR_API, BD_API Implementation Tree-DDH, Tree balancing Theoretical ? TGDH, STR* Protocols Future Work Work Done

slide-53
SLIDE 53

53/55

Time Line (optimistic)

1 2 3 4 5 6 7 8 9 10 11 12

Evaluation Integration Support Thesis writing Security Proof Optimization

2001 Month

slide-54
SLIDE 54

54/55

Expected Contribution

  • Practical and Provably Secure Group Key Agreements
  • Proof of Security: Tree DDH equivalent to 2-party DDH
  • Evaluation of Group Key Agreement Schemes
  • Group Key Agreement API
  • Integration with Group Communication System
slide-55
SLIDE 55

55/55

End

  • Thank you very much!
slide-56
SLIDE 56

56/55

Membership Operations

  • Join: a prospective member wants to join
  • Leave: a member wants to (or is forced to) leave
  • Partition: a group is split into smaller groups

Network failure: network event causes disconnectivity Explicit partition: application decides to split the group

  • Merge: two or more groups merge to form a single group

Network fault heal: previously disconnected partitions reconnect Explicit merge: application decides to merge multiple pre-existing

groups into a single group

slide-57
SLIDE 57

57/55

Key Distribution vs. Agreement

Multiple Single (no acks) Number of rounds Required Supported Fault-tolerance No Yes Single point of attack? Group communication IP Multicast Communication Yes No Contributory < 100 > 10,000 Group Size High (Similar complexity) Low (very high for center) Computation Overhead Diffie-Hellman variants Secret key Encryption Hash and MAC Crypto Primitive Each member’s contribution Center Key Generation Key Agreement Key Distribution

slide-58
SLIDE 58

58/55

Comparison

Easy 3 2n 2 2n 2 BD 2 1 2 3 2 Merge 2n 1 1 1

Leave, Partition

Easy 2 1 1 2 1 Join STR log n log n log n log n/2 Partition log n 1 1 1 Leave Easy 2log n 3 3 2 Join, Merge TGDH n+2k 2 n+2k-1 n+2k+1 k+3 Merge n 1 1 1

Leave, Partition

Hard 2n 1 1 2 2 Join CLQ Exp Broad Uni Msg Round Robust Comp Comm

slide-59
SLIDE 59

59/55

Motivation

  • Why group communication system is important?
  • Why it needs to be secured?
  • Application of secure group communication system
  • Is this a hard problem?
  • Why focusing on DPG?
slide-60
SLIDE 60

60/55

Evaluation Plan

  • How can you say this work is successful?
  • If you say “your group key agreement” is practical, why? If

you have an

slide-61
SLIDE 61

61/55

Self-stabilization

  • Four protocols actually represent different strands of a

single protocol

receive msg (msg type = membership event) construct new tree while there are missing blinded keys if (I can compute any missing keys) compute missing blinded keys broadcast new blinded keys endif receive msg (msg type = broadcast) update current tree endwhile

slide-62
SLIDE 62

62/55

Cascaded Events

  • A join, leave, merge, or partition takes place while a prior event is

being handled

receive msg (msg type = membership event) construct new tree while there are missing blinded keys if (I can compute any missing keys) compute missing blinded keys broadcast new blinded keys endif receive msg if (msg type = broadcast) update current tree else (msg type = membership event) construct new tree endwhile

slide-63
SLIDE 63

63/55

Merge (N5’s view)

gn1 gn3 gn2 ggn1n3 n5’ gn4n5’ ggn1n3gn4n5’ ggn2n6’ n6 n2 gn6’ gn4 Tree(n6’) Tree(n5’) No nodes to merge without increasing height of the tree Join to root

gggn1n3gn4n5’ gn2n6’

slide-64
SLIDE 64

64/55

Join

gn3 gn1 gn2 ggn1n2 ggn3gn1n2 n4

  • 1. Tree(n3)
  • 2. Tree(n4)

gn4gn3gn1n2 n3 gn1 gn2 ggn1n2 gn3gn1n2 gn4 gn4gn3gn1n2

slide-65
SLIDE 65

65/55

Leave

gn3 gn1 n2 gn1n2 gn3gn1n2 gn4 gn4gn3gn1n2 gn3 gn3 gn4 n2’ gn1n2’ gn4gn1n2’

slide-66
SLIDE 66

66/55

Tree Management: Etc

  • Why balanced tree

# of exponentiation depends on height of tree

  • How good is our policy

With a fully balanced tree (height 8) with 256 users, generate

random partition and merge for 10000 times

Maximum height of tree: 15 Average height of tree: 12 Still logarithmic to number of users

slide-67
SLIDE 67

67/55

Self-stabilization and Fault-tolerance

  • Four protocols actually represent different strands of a

single protocol

  • Every protocol consists of

Tree management (delete or add nodes) for each membership

event

Compute missing keys if I can If I computed, broadcast my tree

  • This leads us to design self-stabilizing protocol
  • Cascaded event: Join, leave, merge, or partition occurs

while a prior event is being handled