Background Bas c Cryptography Background: Basic Cryptography - - PowerPoint PPT Presentation

background bas c cryptography background basic
SMART_READER_LITE
LIVE PREVIEW

Background Bas c Cryptography Background: Basic Cryptography - - PowerPoint PPT Presentation

Background Bas c Cryptography Background: Basic Cryptography Symmetric Key System Symmetric Key System a shared symmetric key Examples: DES IDEA RC4 AES Examples: DES, IDEA, RC4, AES Asymmetric Key System y y y a pair


slide-1
SLIDE 1

1

Background: Basic Cryptography Background Bas c Cryptography

 Symmetric Key System  Symmetric Key System

 a shared symmetric key  Examples: DES IDEA RC4 AES  Examples: DES, IDEA, RC4, AES

 Asymmetric Key System

y y y

 a pair of private and public keys  Examples: RSA, DSA, ElGamal, Rabin, FFS

p

Secure Group Communications (Simon S. Lam) 1

2/28/2017

slide-2
SLIDE 2

2

Background: Authentication Services

 N

dh S h d P t l

 Needham-Schroeder Protocols (CACM, 1978)

 Kerberos (MIT, 1988) – part of project Athena (1983-

1991) to develop campus-wide distributed computing 1991) to develop campus wide distributed computing environment

 …

 Secure sockets layers

 SNP (U. Texas at Austin, 1993)

  • offshoot from authentication protocol verification work

sponsored by NSA

  • to secure Internet applications that use TCP (or UDP)
  • published in Proceedings USENIX, June 1994

 SSL (Netscape, 1995, 1996)

Secure Group Communications (Simon S. Lam) 2

 TLS (1999)

2/28/2017

slide-3
SLIDE 3

3

Motivation (circa 1997) Mot vat on (c rca 997)

 Traditional network applications  Traditional network applications

 message-oriented unicast,

e.g., email, file transfer, client-server

E k l

 Emerging network applications

 flow-oriented, e.g., audio, video, stock quotes  multicast e g

teleconference software distribution

 multicast, e.g., teleconference, software distribution

 Problem 1: Secure group communications - scalability  P

bl 2 H t i ffi i tl ?

 Problem 2: How to sign efficiently?

Secure Group Communications (Simon S. Lam) 3

2/28/2017

slide-4
SLIDE 4

4

Secure Group Communications U i K G h Using Key Graphs

b Ch K i W M h d G d d Si S L by Chung Kei Wong, Mohamed Gouda, and Simon S. Lam in Proc. ACM SIGCOMM ’98

4 Secure Group Communications (Simon S. Lam)

2/28/2017

slide-5
SLIDE 5

5

Secure group communications

 Applications

 teleconference

teleconference

 information services  collaborative work  collaborative work  virtual private networks

 Group members share a symmetric key to  Group members share a symmetric key to

 encrypt/decrypt communications

providing confidentiality, integrity, and authenticity of messages delivered between group members

 access resources

Secure Group Communications (Simon S. Lam) 5

 access resources

2/28/2017

slide-6
SLIDE 6

6

Group key management

 A group session may persist for a long time  Secure rekeying

 after each join  after each leave  periodically -> batch rekeying (another paper)

 Scalable server and protocols

 for large groups with frequent joins and leaves  for large groups with frequent joins and leaves

 Scalable and reliable transport (Zhang, Lam, Lee,

Yang, 2003)

Secure Group Communications (Simon S. Lam) 6

g

2/28/2017

slide-7
SLIDE 7

7

Assumptions Assumpt ons

 Key server is trusted and secure (may be  Key server is trusted and secure (may be

replicated)

 An authentication service  An authentication service

 for example, SSL  mutual authentication of server and joining user

j g

 distribution of a key shared by server and

joining user (individual key)  Access control by key server or by an

authorization service (e.g., a set of registrars)

Secure Group Communications (Simon S. Lam) 7

registrars)

2/28/2017

slide-8
SLIDE 8

8

Group rekeying p y g

 Non problem after a join  Non problem after a join

 new group key encrypted by old group key

ti / k s f ll isti s s

 one encryption/rekey msg for all existing users

 After a leave has occurred

 new group key encrypted by individual key of

each user 1 ti / k f i

 n-1 encryptions/rekey messages for group size n  not scalable

Secure Group Communications (Simon S. Lam) 8

2/28/2017

slide-9
SLIDE 9

9

Key graph

 A directed acyclic

graph with u-nodes

and k nodes and k-nodes

 u-node – no

incoming edge m g g

 root – a k-node with

no outgoing edge

 user u has key k if

and only if there is a directed path from directed path from node u to node k

 one or more roots

( f lti l  userset(k) is set of users that hold k  k t( ) i t f k h ld b

Secure Group Communications (Simon S. Lam) 9

(e.g., for multiple groups)  keyset(u) is set of keys held by u

slide-10
SLIDE 10

10

Key covering problem

 When a user u’ leaves a secure group, every key k’

that has been held by u’ and shared by other users should be changed should be changed

 To minimize the work of rekeying, the server

y g would like to find a minimum size subset K’ of keys and securely send new keys to affected users i.e., userset(K’) is the subset of users who need new userset(K ) is the subset of users who need new keys

 This

bl is NP h d i l

 This problem is NP-hard in general

Secure Group Communications (Simon S. Lam) 10

slide-11
SLIDE 11

11

Special cases of key graph Spec al cases of key graph

n users, 1 key server manages key graph

 St  Star  Tree - assumed to be full and balanced with height h,

degree d degree d

 Complete - a key for every nonempty subset of users

(there are 2n – 1)

Secure Group Communications (Simon S. Lam) 11

slide-12
SLIDE 12

12

Key star

G f k i di id l k Group of n users, one group key, n individual keys

Secure Group Communications (Simon S. Lam) 12

2/28/2017

slide-13
SLIDE 13

13

Join Protocol Jo n Protocol

 Protocol  Protocol u4 → s : join request s ↔ u4 : mutual authentication, distribute k4

4 4

s : generate k1234 s → u4 : {k1234}k4 s →{u1, u2, u3} : {k1234}k123  Encryption cost: 2

Secure Group Communications (Simon S. Lam) 13

2/28/2017

slide-14
SLIDE 14

14

L P t l Leave Protocol

 Protocol u4 → s: {leave request} k4 s → u4: {leave granted} k4 k s: generate k123 s → {u1}: {k123}k1 s → {u2}: {k123}k s → {u2}: {k123}k2 s → {u3}: {k123}k3  E

ti st: 1 f si

 Encryption cost: n-1 for group size n  O(n) cost is not scalable

Secure Group Communications (Simon S. Lam) 14

2/28/2017

slide-15
SLIDE 15

15

Iolus approach [Mittra 1997]

 A hierarchy of

Iolus approach [M ttra 997]

agent user

y security agents

 No globally

shared group key

...

user

...

shared group key

 join/leave affects

local subgroup only ... ... ... ... ... ... g p y  Agents forward message key

 decrypting and re-encrypting it with subgroup

keys keys  Requirement: many trusted agents

Secure Group Communications (Simon S. Lam) 15

2/28/2017

slide-16
SLIDE 16

16

Our approach pp

individual key group key subgroup key user

 A hierarchy of

...

user

... keys

 Multiple keys

for each user ... ... ... ... ... ... for each user

 user has every

key along path to root

A i l t t d k i ffi i t

 A single trusted key server is sufficient

(may be replicated for reliability)

Secure Group Communications (Simon S. Lam) 16

2/28/2017

slide-17
SLIDE 17

17

Key graph y g p

 Data structure maintained by key server  For a single secure group  For a single secure group

 key tree sufficient for scalability

 Multiple secure groups  Multiple secure groups

 merging multiple trees into a graph

Secure Group Communications (Simon S. Lam) 17

2/28/2017

slide-18
SLIDE 18

18

Rekeying strategies Rekey ng strateg es

How to compose and deliver rekey messages How to compose and deliver rekey messages

 user-oriented

k i t d

 key-oriented  group-oriented

Secure Group Communications (Simon S. Lam) 18

2/28/2017

slide-19
SLIDE 19

19

User-oriented rekeying y g

 Select new keys

k1-9 k1-8 k789 k78 k456 k123

y needed by a user or subset of users, form a rekey message

789 78 456 123

k1 k2 k3 k4 k5 k6 k7 k8 k9

form a rekey message and encrypt it

 (d-1)(h-1) rekey

Leaving

u1 u2 u9 u8 u3 u4 u5 u6 u7

y messages – sent by unicast or subgroup multicast

} , , {

3 2 1

u u u s → } , , {

6 5 4

u u u s →

: :

123

} {

8 1 k

k −

456

} {

8 1 k

k −

Leaving multicast

 Most work on server,

least work on user

} , , {

6 5 4 7

u s →

8

u s →

: :

456

} {

8 1 k

7

} , {

78 8 1 k

k k −

8

} , {

78 8 1 k

k k −

Secure Group Communications (Simon S. Lam) 19

slide-20
SLIDE 20

20

Key-oriented rekeying y y g

 Encrypt each new key,

k1-9 k1-8 k789 k78 k456 k123

yp y, then compose rekey messages - encryption cost d(h-1) -1

789 78 456 123

k1 k2 k3 k4 k5 k6 k7 k8 k9

cost d(h-1) -1

 (d-1)(h-1) rekey

messages – sent by Leaving

u1 u2 u9 u8 u3 u4 u5 u6 u7

g y unicast or subgroup multicast

 Less work on server

Leaving

} , , {

3 2 1

u u u s → } , , {

6 5 4

u u u s →

: :

123

} {

8 1 k

k −

456

} {

8 1 k

k −

 Less work on server

than user-oriented

7

u s →

8

u s →

: :

7 78

} { , } {

78 8 1 k k

k k −

8 78

} { , } {

78 8 1 k k

k k −

Secure Group Communications (Simon S. Lam) 20

slide-21
SLIDE 21

21

Group-oriented rekeying

 One rekey message

k1-9 k1-8 k789 k78 k456 k123

y g containing all encrypted new keys – sent by multicast

k789 k78 k456 k123

k1 k2 k3 k4 k5 k6 k7 k8 k9

y

 Message size O(log n)  Each user decrypts

what it needs Leaving

u1 u2 u9 u8 u3 u4 u5 u6 u7

what it needs

 Least work on server,

most work on user Leaving

} ,..., {

8 1

u u s →

:

, } { , } {

8 7

78 78 k k

k k

 A user cannot decrypt

any key that does not belong to the user

8 7

, } { , } {

456 123

8 1 8 1 k k

k k

− −

78

} {

8 1 k

k −

Secure Group Communications (Simon S. Lam) 21

g

slide-22
SLIDE 22

22

Join: group-oriented rekeying

k1-8 k1-9

 Encryption cost: 2(h-1)  Key tree incurs a

l t th k

k78 k789 k456 k123

k1 k2 k3 k4 k5 k6 k7 k8 k9

larger cost than key star

1 2 3 4 5 6 7 8 9

u1 u2 u9 u8 u3 u4 u5 u6 u7

Joining of u9:

} ,..., {

8 1

u u s →

:

78 8 1

} { , } {

789 9 1 k k

k k

− 9

u s →

:

78 8 1

} , {

9

789 9 1 k

k k −

Secure Group Communications (Simon S. Lam) 22

slide-23
SLIDE 23

23

the requesting user (a)

  • Ave. encryption/decryption cost of a request

Star Tree Complete join 1 the requesting user (a)

1 − h

n

2 -1

j leave a non-requesting user (b)

2

1

Star Tree Complete join 1 q g ( )

) 1 /( − d d

1

2 −

n

leave 1 St T C l t the server (c)

) 1 /( − d d

Star Tree Complete join 2 leave

1 − n

1

2 +

n

) 1 ( 2 − h

( 1) 1 d h

  • 2

leave

1 − n

( 1) 1 d h − −

Secure Group Communications (Simon S. Lam) 23

slide-24
SLIDE 24

24

Average encryption/decryption cost of a request (join or leave) a request (join or leave)

Star Tree Complete t f th

n

2 2 / ) 1 )( 2 ( + h d

2 /

 F

f ll d b l d t

cost of the server cost of a user

n

2 2 / ) 1 )( 2 ( − + h d

) 1 /( − d d

n

2

2 / n

1

1 l ( ) h

 For a full and balanced tree,

F k (i d f k )

1 log ( )

d

h n − =

 For a key tree (instead of key star), server

does less work, but user does slightly more work work

 Optimal key tree degree is 4

Secure Group Communications (Simon S. Lam) 24

2/28/2017

slide-25
SLIDE 25

25

Experiments Exper ments

 Two SGI machines connected by  Two SGI machines connected by

100 Mbps Ethernet

 server on one, users on the other

 Rekey messages sent as UDP packets  DES, MD5, RSA from CryptoLib

, , yp

 n joins, then 1000 randomly generated

join/leave requests j q

Secure Group Communications (Simon S. Lam) 25

2/28/2017

slide-26
SLIDE 26

26

Server processing time per join/leave request

includes:

 time to parse a request, traverses key tree

p q y to determine which keys to change, generates new keys, updates key tree

 time to encrypt new keys and construct

rekey messages, d f k

 time to compute message digest of rekey

messages and digital signatures, ti t d t k i

 time to send out rekey messages using

socket system calls

Secure Group Communications (Simon S. Lam) 26

slide-27
SLIDE 27

27

Technique for signing rekey messages

join leave join leave ave

  • ne signature per rekey msg

msg size (byte) proc time (msec) join leave join leave ave user-oriented 263.1 233.8 76.7 204.6 140.6 key-oriented 303.0 270.9 76.3 203.8 140.1 group oriented 525 5 1005 7 11 9 12 0 11 9 group-oriented 525.5 1005.7 11.9 12.0 11.9

  • ne signature for all rekey msgs

msg size (byte) proc time (msec) join leave join leave ave user-oriented 312.8 306.9 13.6 17.1 15.3 key-oriented 352.8 344.0 13.1 15.9 14.5 g ( y ) p ( ) key oriented 352.8 344.0 13.1 15.9 14.5 group-oriented 525.5 1005.7 11.9 12.0 11.9

k t d 4 i iti l i 8192 ti d i t

Secure Group Communications (Simon S. Lam) 27

key tree degree 4, initial group size 8192, encryption and signature

slide-28
SLIDE 28

28

Server processing time (per qu st) sus up si request) versus group size

3.5 user oriented 16 user oriented 2.0 2.5 3.0

g time (ms)

user-oriented key-oriented group-oriented 13 14 15

g time (ms)

user-oriented key-oriented group-oriented 0.5 1.0 1.5

processing

11 12 13

processing

encryption only encryption and signature

0.0 32 64 128 256 512 1024 2048 4096 8192

group size

10 32 64 128 256 512 1024 2048 4096 8192

group size

 Increases linearly with logarithm of group size yp y yp g

Secure Group Communications (Simon S. Lam) 28

y g g p

slide-29
SLIDE 29

29

Server processing time versus key tree degree (per join) key tree degree (per join)

Initial group size 8192

3 5 4.0 4.5 5.0 per join

user key group

15 16 17

per join user key group

g p

1.5 2.0 2.5 3.0 3.5 ssing time (ms) p

g p

12 13 14 15

ssing time (ms) p g p

0.0 0.5 1.0 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

key tree degree

proces

10 11 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

key tree degree proces y g

encryption only encryption and signature

Secure Group Communications (Simon S. Lam) 29

Cost is proportional to 2(h-1)

slide-30
SLIDE 30

30

Server processing time versus key tree degree (per leave) key tree degree (per leave)

Initial group size 8192

10 12

eave user key 26 28 30

) per

user key

4 6 8

ng time (ms) per le key group 16 18 20 22 24 26

ssing time (ms) leave

key group

2 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

key tree degree processin 10 12 14 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

key tree degree proces y g

encryption only encryption and signature

Secure Group Communications (Simon S. Lam) 30

Cost is proportional to d(h-1)

slide-31
SLIDE 31

31

Server processing time versus k d ( ) key tree degree (per request)

6 i d 22 3 4 5

time (ms)

user-oriented key-oriented group-oriented 16 18 20

time (ms)

user-oriented key-oriented group-oriented 1 2 3

processing

12 14 16

processing

encryption only encr ption and signat re

2 4 6 8 10 12 14 16 18 20

key tree degree

10 2 4 6 8 10 12 14 16 18 20

key tree degree

 Initial group size 8192  4 is optimal degree (analytic result) encryption only encryption and signature

Secure Group Communications (Simon S. Lam) 31

 4 is optimal degree (analytic result)

slide-32
SLIDE 32

32

Number of key changes by a ( ) user (per request)

2.0 2.0 1.6 1.7 1.8 1.9 2.0

changes tree degree is 4 tree degree is 8 tree degree is 16

1.6 1.7 1.8 1.9

changes n = 1024 n = 2048 n = 4096 n = 8192 analysis

1.2 1.3 1.4 1.5

number of key

1 1 1.2 1.3 1.4 1.5

number of key

1.0 1.1 32 64 128 256 512 1024 2048 4096 8192

group size

1.0 1.1 2 4 6 8 10 12 14 16 18 20

key tree degree

 Very close to analytic result d / (d – 1)

Secure Group Communications (Simon S. Lam) 32

 Very close to analytic result, d / (d – 1)

slide-33
SLIDE 33

33

Rekey messages sent by server

 With encryption and signature

(initial group size 8192, key tree degree 4)

  • Ave. rekey message

size (bytes)

  • Ave. number of

rekey messages per join per leave per join per leave per join per leave per join per leave User-oriented 312.8 306.9 7.00 19.02 Key oriented 352 8 344 0 7 00 19 02 Key-oriented 352.8 344.0 7.00 19.02 Group-oriented 525.5 1005.7 1 1

 Total number of bytes sent is much smaller for

group-oriented rekeying than the others

Secure Group Communications (Simon S. Lam) 33

2/28/2017

slide-34
SLIDE 34

34

Rekey messages received by user

 With encryption and signature  With encryption and signature

(initial group size 8192, key tree degree 4)

  • Ave. rekey message

size (bytes)

  • Ave. number of

rekey messages per join per leave per join per leave per join per leave per join per leave User-oriented 209.3 237.4 1 1 Key-oriented 227.9 256.0 1 1 ey o e ted 7.9 56.0 Group-oriented 525.5 1005.7 1 1

Secure Group Communications (Simon S. Lam) 34

2/28/2017

slide-35
SLIDE 35

35

Conclusions

 Scalable server performance demonstrated

experimentally and analytically

 Group-oriented rekeying requires smallest processing  Group oriented rekeying requires smallest processing

time and transmission bandwidth of server (signing is also easier), but requires each user to do more work

 Hybrid approach with use of user- or key-oriented

rekeying for users with limited capabilities  Solution to just the most obvious problem of

scalable server processing

 Many more papers to follow

Secure Group Communications (Simon S. Lam) 35

2/28/2017

slide-36
SLIDE 36

36

Keystone system architecture

[C. K. Wong and S. S. Lam, 2000] [ . K. Wong an . . Lam, ]

Client data plane App DP C l M Data Mcast control plane

encrypted app data

Ctrl Mgr p Client Client

rekey msgs

Mcast/Ucast

registration requests/replies

Key Server Registrar

q p

Secure Group Communications (Simon S. Lam) 36

Key Server Registrar

slide-37
SLIDE 37

37

Extensions Extens ons

 Batch rekeying

l bl d l bl

 Reliable and scalable communications [Zhang, Lam, Lee, Yang, 2003] P ti FEC ith i t thi

 Proactive FEC with unicast recovery – this

works well because each client needs only a small fraction of new keys y

 Adaptive FEC  Key identification, FEC block id estimation, etc.

 Not done

 Replicated servers and registrars

l l l

Secure Group Communications (Simon S. Lam) 37

 Multiple groups - access control of resources

2/28/2017

slide-38
SLIDE 38

38

End

Secure Group Communications (Simon S. Lam) 38

2/28/2017