Efficient State Update for Key Management

Slides:



Advertisements
Similar presentations
Chapter 5: Tree Constructions
Advertisements

A Survey of Key Management for Secure Group Communications Celia Li.
INTERVAL TREE & SEGMENTATION TREE
Broadcast Encryption – an overview Niv Gilboa – BGU 1.
Computer Science Dr. Peng NingCSC 774 Adv. Net. Security1 CSC 774 Advanced Network Security Topic 5 Group Key Management.
Optimal Communication Complexity of Generic Multicast Key Distribution Saurabh Panjwani UC San Diego (Joint Work with Daniele Micciancio)
1 Dynamic Key-Updating: Privacy- Preserving Authentication for RFID Systems Li Lu, Lei Hu State Key Laboratory of Information Security, Graduate School.
Parallel Routing Bruce, Chiu-Wing Sham. Overview Background Routing in parallel computers Routing in hypercube network –Bit-fixing routing algorithm –Randomized.
DL Compression – Beeri/Feitelson1 Compression דחיסה Introduction Information theory Text compression IL compression.
Multicast Security May 10, 2004 Sam Irvine Andy Nguyen.
DAST 2005 Week 4 – Some Helpful Material Randomized Quick Sort & Lower bound & General remarks…
Group Key Distribution Chih-Hao Huang
CS548 Advanced Information Security Presented by Gowun Jeong Mar. 9, 2010.
CS261 Data Structures Trees Introduction and Applications.
Introduction n – length of text, m – length of search pattern string Generally suffix tree construction takes O(n) time, O(n) space and searching takes.
14/13/15 CMPS 3130/6130 Computational Geometry Spring 2015 Windowing Carola Wenk CMPS 3130/6130 Computational Geometry.
Fall, Privacy&Security - Virginia Tech – Computer Science Click to edit Master title style Broadcast Encryption Amos Fiat & Moni Naor Presented.
Compression.  Compression ratio: how much is the size reduced?  Symmetric/asymmetric: time difference to compress, decompress?  Lossless; lossy: any.
 Rooted tree and binary tree  Theorem 5.19: A full binary tree with t leaves contains i=t-1 internal vertices.
A secure re-keying scheme Introduction Background Re-keying scheme User revocation User join Conclusion.
Multicast Security: A Taxonomy and Some Efficient Constructions By Cannetti et al, appeared in INFOCOMM 99. Presenter: Ankur Gupta.
Lecture 11COMPSCI.220.FS.T Balancing an AVLTree Two mirror-symmetric pairs of cases to rebalance the tree if after the insertion of a new key to.
Group Key Distribution Xiuzhen Cheng The George Washington University.
Weichao Wang, Bharat Bhargava Youngjoo, Shin
Security Kim Soo Jin. 2 Contents Background Introduction Secure multicast using clustering Spatial Clustering Simulation Experiment Conclusions.
ECE 101 An Introduction to Information Technology Information Coding.
Design and Implementation of Secure Layer over UPnP Networks Speaker: Chai-Wei Hsu Advisor: Dr. Chin-Laung Lei.
Chapter 1 Algorithms with Numbers. Bases and Logs How many digits does it take to represent the number N >= 0 in base 2? With k digits the largest number.
Security of Broadcast Networks 1. Overview r Broadcast networks are used mostly for TV r Historical development r Commercial models r One-way or Two-way.
Discrete Methods in Mathematical Informatics Kunihiko Sadakane The University of Tokyo
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
Source: Computers & Security, Vol. 24, No. 5, pp , August 2005
Computational Geometry
AA Trees.
Source: Computers & Security, vol.23, pp , 2004 Author: Heba K. Aslan
NSF Faculty Career Award
AVL Tree.
Secret Sharing (or, more accurately, “Secret Splitting”)
Presented by: Dr. Munam Ali Shah
Qiong Zhang, Yuke Wang Jason P, Jue 2008
TREES General trees Binary trees Binary search trees AVL trees
Orthogonal Range Searching and Kd-Trees
Cryptography Lecture 4.
Randomized Algorithms: Data Structures
Broadcast Encryption Amos Fiat & Moni Naor Advances in Cryptography - CRYPTO ’93 Proceeding, LNCS, Vol. 773, 1994, pp Multimedia Security.
CMPS 3130/6130 Computational Geometry Spring 2017
CMSC 414 Computer and Network Security Lecture 3
B504/I538: Introduction to Cryptography
Order maintenance problem
Announcements All Labs and Their Demo All HWs and Their Grading
Cryptography Lecture 11.
Group Key Management Scheme for Simultaneous Multiple Groups with Overlapped Membership Andrew Moore 9/27/2011.
Data Integrity: Applications of Cryptographic Hash Functions
Design and Implementation of SUPnP Networks
Cryptography Lecture 4.
Cryptography Lecture 9.
Scalable Group Key Management with Partially Trusted Controllers
Topic 13: Message Authentication Code
Combinatorial Optimization of Multicast Key Management
Cryptography Lecture 3.
Cryptography Lecture 10.
Cryptography Lecture 10.
Switching Lemmas and Proof Complexity
Order maintenance problem
Path Oram An Extremely Simple Oblivious RAM Protocol
General Trees A general tree T is a finite set of one or more nodes such that there is one designated node r, called the root of T, and the remaining nodes.
Mathematical Induction II
A Lower Bound on the Communication Cost of Secure Group Key Management
Key Management Protocols
A Light-weight Oblivious Transfer Protocol Based on Channel Noise
Presentation transcript:

Efficient State Update for Key Management Proc. IEEE, Vol. 92, No.6, June 2004

Outline Introduction The LKH (logical key hierarchy) scheme The state update problem A concise presentation of keys A method with no security against collusions A method secure against collusions Updating keys

Introduction Encryption is widely used to enforce usage rules for digital content Content is encrypted using a group key which is known to a group of users in many scenarios When users leave or join the group, the group key must be changed prevent leaving members from decrypting content in the future Prevent joining members from decrypting previous content (backward secrecy) O(n) messages How to reduce the overhead of the key update messages?

The LKH scheme

The LKH scheme The GC (group controller) associates a binary tree with the group and associates each user with a different leaf of this tree The GC associate a random key with each node of the tree and knows the keys of all the nodes Each user knows the keys in the path from the user’s leaf to the root

The LKH scheme When a user is removed from the group The GC must change all the keys in the path from this user’s leaf to the root All the users that remain in the group must update their keys The GC send a single message containing an encryption of 2log(n)-1 keys Canetti etc. reduce the overhead to a single message with log(n) encryptions of keys

The LKH scheme When a user wants to join the group The keys that the joining user receives must be different than the keys previously used in the system The joining user is assigned a leaf All the keys in the path from this leaf to the root must be updated (Why not change only the root key?)

The state update problem The LKH method is efficient Each user has to keep a personal key with log n keys (length=log(n)|k|bits) The length of a key update message is also log(n)|k|bits The main drawback of the basic LKH method The requirement that group users update their state whenever users join or leave the group The total length of the message = t log(n) |k| The key update messages might not be received by all users since Internet’s multicast communication is lossy Users might be offline most of the time in a DRM setting-Once the user is online again, it should get the group keys that were used since the last time it was connected

The state update problem Make state updates as efficient as possible Traditional method: t log(n) keys if t key updates New method : t + log(n) keys if t key updates (only need to know the “current” personal keys of the nodes in the path from the user’s leaf to root) Additional improvements Group keys can be generated in a method that enables a concise representation of a sequence of consecutive keys Insecure against collusion attacks t consecutive group keys can be sent using a message of O(1) keys ( 2|k|bits ) Secure against collusion attacks t consecutive group keys can be sent using a message of O(log t ) keys ( 2 log t|k| bits )

The state update problem The communication overhead of t state updates Traditional method: O(t log(n)|k|)bits New method in this paper: O(log t|k|) bits Insecure against collusion attacks O(|k|) + O(log t|k|) bits Secure against collusion attacks O(log t|k|) + O(log t|k|) bits

A concise representation of keys- A method with no security against collusions Let N be a predefined constant, and let F be a pseudorandom generator with input length |k|bits and output length 2|k|bits The GC chooses two seeds L1 and RN, each of length k. Denote by F0(x) and F1(x), the left and right halves of the output of F F F0(x) F1(x) x

The method is not secure against collusions A concise representation of keys- A method with no security against collusions The method is not secure against collusions e.g. user A paid for content during [1,100] user B paid for content during [201,300] user A is offline during [50,70] user B is offline during [250,270]  the GC gives user A L50, R70 gives user B L250, R270 A and B can use L50 and R270 to compute k50,…,k270

A concise representation of keys- A method with no security against collusions The key ki is used as the group key after the ith key update Given Li and Rj with i<j, one can compute all the keys ki,…,kj  the length of the update message is 2|k| bits

A concise representation of keys- A method with no security against collusions <proof>

A concise representation of keys- A method secure against collusions let F be a pseudorandom generator with input length |k|bits and output length 2|k|bits, and denote by F0(x), F1(x) the left and right halves of the output of F for an input x The GC choose a random key of length |k| for the root of a full binary tree of depth log(N) which as N leaves Go from the root down: let v be a node, and let v0, v1 be its two sons. Denote the key of node v by kv, then kv0=F0(kv) and kv1=F1(kv) The key of the ith leaf is used as the group key after the ith key update

A concise representation of keys- A method secure against collusions A key of a node v can be used to compute the keys of all the leaves of the subtree rooted in v <Theorem 2> Given any set S of leaves, and the values of the keys of a set of nodes R (either internal nodes or leaves) such that S is exactly the union of the leaves of the subtrees rooted by nodes in R, the values of the other nodes of the tree are pseudorandom Consider a user which did not receive the messages of t successive key updates and needs to learn the keys of the t successive leaves which were associated with the group keys sent in these key updates. Denote this set of leaves as S, the GC should send to the user the keys of the nodes in R

A concise representation of keys- A method secure against collusions <Lemma 2> Let T be a complete binary tree with N=2n leaves. Then given any set S of consecutive leaves, there is a set R of at most 2n-2 nodes such that S is exactly the union of the leaves of the subtrees rooted by the nodes in R. <proof> <Theorem 3> Given any set S of t consecutive leaves in a complete binary tree, there is a set R of at most nodes such that S is exactly the union of the leaves of the subtrees rooted by the nodes in R. <proof>

Updating keys on the path from a leaf to the root <Theorem4> For any user, after t key updates of random leaf keys using the LKH protocol: It holds with high probability that log t + O(1) keys need to be updated; The expected number of keys that have to be updated is at most log(t) + log log(n/t) + O(1) <proof>

Updating keys on the path from a leaf to the root

A concise representation of keys- A method with no security against collusions

A concise representation of keys- A method with no security against collusions

A concise representation of keys- A method secure against collusions Let Ti be a complete binary tree with 2i leaves. Ri=max(Ri-1,2Ei-1) Ei=max(Ei-1,Ei-1+1)=Ei-1+1 R1=E1=1 Ri=2Ei-1=2i-2 Ei=i

A concise representation of keys- A method secure against collusions Let N=2n be the number of leaves in the tree Let r= Consider the tree of as a collection of N/2r subtrees t/2<2r≤t leaves in S can span at most three consecutive such subtrees (some or all of the leaves of the outer subtrees are contained in S) Applying Lemma 2, |R|=Er+1+Er=2r+1=

Updating keys on the path from a leaf to the root Considering t key updates, P( the intersection with all the paths from the leaves of the updated keys are of length at most l) =(1-2-l)t Setting l=log t +c, (1-2-l)t= E( the length of the intersection path) < Setting c=loglog(n/t) E( )=logt+loglog(n/t)+O(1) High prob.