Trade-Offs in Cryptographic Schemes for

Size: px
Start display at page:

Download "Trade-Offs in Cryptographic Schemes for"

Transcription

1 in Cryptographic Jason Crampton Information Security Group Royal Holloway, University of London NordSec 2009

2 Cryptographic

3 Cryptography for Suppose we have a poset of security labels (L, ) Each x L is associated with a cryptographic key κ(x) Each user u is associated with a security label λ(u) L Each protected object o is associated with a label λ(o) L and encrypted using κ(λ(o)) top secret secret classified unclassified

4 Cryptography for Suppose we have a poset of security labels (L, ) Each x L is associated with a cryptographic key κ(x) Each user u is associated with a security label λ(u) L Each protected object o is associated with a label λ(o) L and encrypted using κ(λ(o)) top secret secret classified unclassified u should be able to derive κ(y) for all y λ(u) We ignore the trivial solution in which u is given {κ(y) : y λ(u)} We focus on solutions in which the user is given a single key

5 A Generic Solution Given an acyclic directed graph G = (V,E) For each edge (x,y), publish information that enables the computation of κ(y) given κ(x) Typical instantiation is to publish G and Enc κ(x) (κ(y)) for all (x,y) E u can only (feasibly) compute κ(y) with knowledge of κ(x) The computation can be repeated to derive keys along any path in G

6 The enforcement model proposed requires iterative key derivation In the worst case a user will need to derive d keys, where d is the diameter of G (the length of the longest path in the graph G) Alternatively, we could compute E and then publish information for the policy defined by G = (V,E ) Key derivation always requires a single step The amount of public information increases

7 Example 12 edges d = 3 25 edges d = 1 [All edges are directed downwards]

8 Cryptographic

9 Authorization Information is released periodically Each period has an associated encryption key Users are authorized to access information for a certain (continuous) interval of time One possible application is subscription-based services

10 and Hierarchical Model the set of time intervals as a poset ordered by subset inclusion Denote the time periods by t1,..., t m Let L = {[i, j] : 1 i j m} Suggested in CSFW 2006, first schemes appeared in CCS 2006 and ESORICS 2007 User authorized for time period [t i,t j ] is assigned [i,j] L Resource published at time point t i is assigned [i,i] L [1,5] [2,3] [2,2] [3,3]

11 The Naïve Approach Use iterative key encrypting scheme There are m(m 1) edges User has a single key Key derivation requires no more than m 1 hops [1,5] [2,3] [2,2] [3,3]

12 The Naïve Approach Use iterative key encrypting scheme There are m(m 1) edges User has a single key Key derivation requires no more than m 1 hops [1,5] [2,3] [2,2] [3,3] What trade-offs are possible for this particular poset and this particular application?

13 A Crucial Observation Protected objects are keys used to encrypt data for a particular period The key for period i is assigned label [i,i] No labels need be assigned to any other object Users only need to derive keys for labels of the form [i,i] This statement is not true in general (compare L = {top secret, secret, classified, unclassified}) Hence, we can focus on re-engineering the directed graph so that we can get from node [i,j] to node [k,k], i k j, as quickly as possible

14 A Direct Scheme Note that we can simply connect every non- leaf node to the appropriate leaf nodes We require 1 6m(m 1)(m + 4) edges Key derivation requires a single hop

15 Problem Summary Given L = {[i,j] : 1 i j m} find an edge set E such that there exists a path from [i,j] to [k,k] for all k [i,j] the edge set is small the maximum number of hops is small?

16 Cryptographic

17 Reducing the Derivation Time Triangle T 2n contains two copies of T n and one copy of D n The edges connecting nodes in D n are redundant Replace two edges from each node in D n with two edges that enter T n Number of edges remains the same Derivation requires no more than h n + 1 hops, where h n is number of hops for T n

18 Reducing the Derivation Time Triangle T 2n contains two copies of T n and one copy of D n The edges connecting nodes in D n are redundant Replace two edges from each node in D n with two edges that enter T n Number of edges remains the same Derivation requires no more than h n + 1 hops, where h n is number of hops for T n Since h 2n = h n + 1 and h 2 = 1, derivation for T n requires no more than log 2 n hops

19 Skipping a Level Triangle T 4n contains two copies of T 2n, one copy of D 2n and four copies of T n Split D 2n into four copies of D n Replace two edges from each node in D n with edges connecting it to copies of T n

20 Skipping a Level Triangle T 4n contains two copies of T 2n, one copy of D 2n and four copies of T n Split D 2n into four copies of D n Replace two edges from each node in D n with edges connecting it to copies of T n Derivation requires no more than h 2n hops (if h n < h 2n ) If h2n = h n + 1, then h 4n = h n + 1 = h 2n

21 Applications and Generalizations Lemma For n = 2 m, we can construct a scheme where e n 3 2 n(n 1) and h n = 1 2 log 2 n Lemma For n = 2 2k, we can construct a scheme for T n, where e n ne n = 1 6 n n( n 1)( n + 4) and h n = log 2 log 2 n

22 Nodes and Supernodes If n = ab, then T n can be regarded as a b-triangle in which the supernodes are a-triangles and a-diamonds n = 12, a = 4 and b = 3

23 A 2-Hop Scheme We create a 2 copies of a direct scheme for T b (one for each node in the supernode) We create b copies of a direct scheme for T a (one for each triangle supernode)

24 A 2-Hop Scheme We create a 2 copies of a direct scheme for T b (one for each node in the supernode) We create b copies of a direct scheme for T a (one for each triangle supernode) Then we can get from any node in a diamond supernode to a node in a triangle supernode in one hop We can also get from any node in a diamond supernode to a leaf node in one hop The number of edges required is given by 1 n(a(b 1)(b + 4) + (a 1)(a + 4)) 6

25 Minimizing the Number of Edges Clearly, the number of edges will vary with a and b Some high school calculus shows that the number of edges is minimized when a = 1 2 (b2 + 1) a b Edges 2a b

26 Minimizing the Number of Edges Clearly, the number of edges will vary with a and b Some high school calculus shows that the number of edges is minimized when a = 1 2 (b2 + 1) a b Edges 2a b Note that a = b = n is not optimal The number of edges is 1 6 n(n 1)( n + 4) For n = 256, choosing a = 32 and b = 8 yields a scheme with edges, whereas the scheme in which a = b = 16 requires

27 Cryptographic

28 Atallah et al (ESORICS 2007) Insert additional edges in Tn so that key derivation requires small number of steps for each straight path in T n These constructions are based on known schemes for total orders Then for Tn, recursively construct schemes for T n De Santis et al (CCS 2006) Use techniques due to Thorup and to Dushnik and Miller for reducing the diameter of an acyclic DAG Neither approach makes use of the crucial observation Both approaches apply generic techniques to full Hasse diagram

29 Comparison Edges Derivation Crampton n(n 1) log 2 n 3 2 n(n 1) 1 2 log 2 n 1 6 n(n 1)( n + 4) 1 2 Atallah et al O ( n 2) O (log 2 n) O ( n 2 log 2 n ) 4 De Santis et al O ( n 2) O (log 2 n log 2 n) O ( n 2 log 2 n ) O (log 2 n) O ( n 2 log 2 n log 2 (log 2 n) ) 3 1 [Not optimal]

30 Advantages of my approach Attacks the problem directly and makes use of specific characteristics of problem Existing approaches apply known shortcutting techniques to graph May be possible to apply shortcutting techniques to my constructions to obtain further improvements Explicit formulae (rather than asymptotic behaviour) for storage and number of hops Makes it simpler to decide which scheme is most appropriate for a given value of n For values of n that are likely to be used in practice my schemes are likely to be a good choice My schemes can be implemented directly using existing iterative key encrypting schemes

31 References M.J. Atallah, M. Blanton, and K.B. Frikken. Incorporating temporal capabilities in existing key management schemes. ESORICS 2007 G. Ateniese, A. De Santis, A.L. Ferrara, and B. Masucci. Provably-secure time-bound hierarchical key assignment schemes. ACM CCS 2006 J. Crampton, K. Martin, and P. Wild. On key assignment for hierarchical access control. CSFW 2006 A. De Santis, A.L. Ferrara, and B. Masucci. New constructions for provaby-secure time-bound hierarchical key assignment schemes. SACMAT 2007

On Key Assignment for Hierarchical Access Control

On Key Assignment for Hierarchical Access Control On Key Assignment for Hierarchical Access Control Information Security Group Royal Holloway University of London 19th Computer Security Foundations Workshop Introduction On Key Assignment for Hierarchical

More information

On Key Assignment for Hierarchical Access Control

On Key Assignment for Hierarchical Access Control On Key Assignment for Hierarchical Access Control Information Security Group, Royal Holloway, University of London On Key Assignment for Hierarchical Access Control/Introduction What is hierarchical access

More information

The Journal of Logic and Algebraic Programming xxx (2009) xxx xxx. Contents lists available at ScienceDirect

The Journal of Logic and Algebraic Programming xxx (2009) xxx xxx. Contents lists available at ScienceDirect 1 2 3 4 56 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 The Journal of Logic and Algebraic Programming xxx (2009) xxx xxx Contents lists available at ScienceDirect The Journal of Logic and Algebraic

More information

Incorporating Temporal Capabilities in Existing Key Management Schemes

Incorporating Temporal Capabilities in Existing Key Management Schemes Incorporating Temporal Capabilities in Existing Key Management Schemes Mikhail J. Atallah 1, Marina Blanton 2, and Keith B. Frikken 3 1 Department of Computer Science, Purdue University mja@cs.purdue.edu

More information

CERIAS Tech Report

CERIAS Tech Report CERIAS Tech Report 2007-30 EFFICIENT KEY DERIVATION FOR ACCESS HIERARCHIES by Mikhail Atallah, Marina Blanton, and Keith Frikken Center for Education and Research in Information Assurance and Security,

More information

An Algebraic Approach to the Analysis of Constrained Workflow Systems

An Algebraic Approach to the Analysis of Constrained Workflow Systems An Algebraic Approach to the Analysis of Constrained Workflow Systems Jason Crampton Information Security Group, Royal Holloway, University of London 7th June 2004 Abstract The enforcement of authorization

More information

Optimizing Segment Based Document Protection

Optimizing Segment Based Document Protection Optimizing Segment Based Document Protection Corrected Version Miros law Kuty lowski and Maciej Gȩbala Faculty of Fundamental Problems of Technology, Wroc law University of Technology {miroslaw.kutylowski,

More information

CS2 Algorithms and Data Structures Note 10. Depth-First Search and Topological Sorting

CS2 Algorithms and Data Structures Note 10. Depth-First Search and Topological Sorting CS2 Algorithms and Data Structures Note 10 Depth-First Search and Topological Sorting In this lecture, we will analyse the running time of DFS and discuss a few applications. 10.1 A recursive implementation

More information

Faster parameterized algorithms for Minimum Fill-In

Faster parameterized algorithms for Minimum Fill-In Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Abstract We present two parameterized algorithms for the Minimum Fill-In problem, also known as Chordal

More information

[Me] Meisters, G. H., Polygons have ears, American Mathematical Monthly, June/July 1975, pp

[Me] Meisters, G. H., Polygons have ears, American Mathematical Monthly, June/July 1975, pp 4. Applications Meisters [Me] Two-Ears Theorem was motivated by the problem of triangulating a simple polygon. In fact Meisters suggests a greedy, but concise algorithm to achieve this goal, i.e., find

More information

CS 3114 Data Structures and Algorithms Test 1 READ THIS NOW!

CS 3114 Data Structures and Algorithms Test 1 READ THIS NOW! READ THIS NOW! Print your name in the space provided below. There are 7 short-answer questions, priced as marked. The maximum score is 100. This examination is closed book and closed notes, aside from

More information

A DAG-BASED ALGORITHM FOR DISTRIBUTED MUTUAL EXCLUSION ATHESIS MASTER OF SCIENCE

A DAG-BASED ALGORITHM FOR DISTRIBUTED MUTUAL EXCLUSION ATHESIS MASTER OF SCIENCE A DAG-BASED ALGORITHM FOR DISTRIBUTED MUTUAL EXCLUSION by Mitchell L. Neilsen ATHESIS submitted in partial fulfillment of the requirements for the degree MASTER OF SCIENCE Department of Computing and Information

More information

These notes present some properties of chordal graphs, a set of undirected graphs that are important for undirected graphical models.

These notes present some properties of chordal graphs, a set of undirected graphs that are important for undirected graphical models. Undirected Graphical Models: Chordal Graphs, Decomposable Graphs, Junction Trees, and Factorizations Peter Bartlett. October 2003. These notes present some properties of chordal graphs, a set of undirected

More information

9.1 Cook-Levin Theorem

9.1 Cook-Levin Theorem CS787: Advanced Algorithms Scribe: Shijin Kong and David Malec Lecturer: Shuchi Chawla Topic: NP-Completeness, Approximation Algorithms Date: 10/1/2007 As we ve already seen in the preceding lecture, two

More information

Unit-5 Dynamic Programming 2016

Unit-5 Dynamic Programming 2016 5 Dynamic programming Overview, Applications - shortest path in graph, matrix multiplication, travelling salesman problem, Fibonacci Series. 20% 12 Origin: Richard Bellman, 1957 Programming referred to

More information

CS 561, Lecture 1. Jared Saia University of New Mexico

CS 561, Lecture 1. Jared Saia University of New Mexico CS 561, Lecture 1 Jared Saia University of New Mexico Quicksort Based on divide and conquer strategy Worst case is Θ(n 2 ) Expected running time is Θ(n log n) An In-place sorting algorithm Almost always

More information

Discrete mathematics , Fall Instructor: prof. János Pach

Discrete mathematics , Fall Instructor: prof. János Pach Discrete mathematics 2016-2017, Fall Instructor: prof. János Pach - covered material - Lecture 1. Counting problems To read: [Lov]: 1.2. Sets, 1.3. Number of subsets, 1.5. Sequences, 1.6. Permutations,

More information

On the Page Number of Upward Planar Directed Acyclic Graphs

On the Page Number of Upward Planar Directed Acyclic Graphs Journal of Graph Algorithms and Applications http://jgaa.info/ vol. 17, no. 3, pp. 221 244 (2013) DOI: 10.7155/jgaa.00292 On the Page Number of Upward Planar Directed Acyclic Graphs Fabrizio Frati 1 Radoslav

More information

Dynamic and Efficient Key Management for Access Hierarchies

Dynamic and Efficient Key Management for Access Hierarchies Dynamic and Efficient Key Management for Access Hierarchies Mikhail J. Atallah, Keith B. Frikken, and Marina Blanton Department of Computer Science Purdue University {mja,kbf,mbykova}@cs.purdue.edu ABSTRACT

More information

Polygon Triangulation

Polygon Triangulation Polygon Triangulation Definition Simple Polygons 1. A polygon is the region of a plane bounded by a finite collection of line segments forming a simple closed curve. 2. Simple closed curve means a certain

More information

Generic collision attacks on hash-functions and HMAC

Generic collision attacks on hash-functions and HMAC Generic collision attacks on hash-functions and HMAC Chris Mitchell Royal Holloway, University of London 1 Agenda 1. Hash-functions and collision attacks 2. Memoryless strategy for finding collisions 3.

More information

Graphical models and message-passing algorithms: Some introductory lectures

Graphical models and message-passing algorithms: Some introductory lectures Graphical models and message-passing algorithms: Some introductory lectures Martin J. Wainwright 1 Introduction Graphical models provide a framework for describing statistical dependencies in (possibly

More information

Number Theory and Graph Theory

Number Theory and Graph Theory 1 Number Theory and Graph Theory Chapter 6 Basic concepts and definitions of graph theory By A. Satyanarayana Reddy Department of Mathematics Shiv Nadar University Uttar Pradesh, India E-mail: satya8118@gmail.com

More information

6.842 Randomness and Computation September 25-27, Lecture 6 & 7. Definition 1 Interactive Proof Systems (IPS) [Goldwasser, Micali, Rackoff]

6.842 Randomness and Computation September 25-27, Lecture 6 & 7. Definition 1 Interactive Proof Systems (IPS) [Goldwasser, Micali, Rackoff] 6.84 Randomness and Computation September 5-7, 017 Lecture 6 & 7 Lecturer: Ronitt Rubinfeld Scribe: Leo de Castro & Kritkorn Karntikoon 1 Interactive Proof Systems An interactive proof system is a protocol

More information

Reading for this lecture (Goodrich and Tamassia):

Reading for this lecture (Goodrich and Tamassia): COMP26120: Algorithms and Imperative Programming Basic sorting algorithms Ian Pratt-Hartmann Room KB2.38: email: ipratt@cs.man.ac.uk 2017 18 Reading for this lecture (Goodrich and Tamassia): Secs. 8.1,

More information

Analysis of Algorithms. Unit 4 - Analysis of well known Algorithms

Analysis of Algorithms. Unit 4 - Analysis of well known Algorithms Analysis of Algorithms Unit 4 - Analysis of well known Algorithms 1 Analysis of well known Algorithms Brute Force Algorithms Greedy Algorithms Divide and Conquer Algorithms Decrease and Conquer Algorithms

More information

val(y, I) α (9.0.2) α (9.0.3)

val(y, I) α (9.0.2) α (9.0.3) CS787: Advanced Algorithms Lecture 9: Approximation Algorithms In this lecture we will discuss some NP-complete optimization problems and give algorithms for solving them that produce a nearly optimal,

More information

Framework for Design of Dynamic Programming Algorithms

Framework for Design of Dynamic Programming Algorithms CSE 441T/541T Advanced Algorithms September 22, 2010 Framework for Design of Dynamic Programming Algorithms Dynamic programming algorithms for combinatorial optimization generalize the strategy we studied

More information

RBAC Administration in Distributed Systems

RBAC Administration in Distributed Systems RBAC Administration in Marnix Dekker, Jason Crampton, Sandro Etalle and Embedded groep (DIES), Universitity of Twente Information Security Group (ISG), Royal Holloway University of London Security Group

More information

CSE 3101: Introduction to the Design and Analysis of Algorithms. Office hours: Wed 4-6 pm (CSEB 3043), or by appointment.

CSE 3101: Introduction to the Design and Analysis of Algorithms. Office hours: Wed 4-6 pm (CSEB 3043), or by appointment. CSE 3101: Introduction to the Design and Analysis of Algorithms Instructor: Suprakash Datta (datta[at]cse.yorku.ca) ext 77875 Lectures: Tues, BC 215, 7 10 PM Office hours: Wed 4-6 pm (CSEB 3043), or by

More information

Problem Set 2 Solutions

Problem Set 2 Solutions Problem Set 2 Solutions Graph Theory 2016 EPFL Frank de Zeeuw & Claudiu Valculescu 1. Prove that the following statements about a graph G are equivalent. - G is a tree; - G is minimally connected (it is

More information

Data Structure and Algorithm Midterm Reference Solution TA

Data Structure and Algorithm Midterm Reference Solution TA Data Structure and Algorithm Midterm Reference Solution TA email: dsa1@csie.ntu.edu.tw Problem 1. To prove log 2 n! = Θ(n log n), it suffices to show N N, c 1, c 2 > 0 such that c 1 n ln n ln n! c 2 n

More information

2.2 Optimal cost spanning trees

2.2 Optimal cost spanning trees . Optimal cost spanning trees Spanning trees have a number of applications: network design (communication, electrical,...) IP network protocols compact memory storage (DNA)... E. Amaldi Foundations of

More information

Power Set of a set and Relations

Power Set of a set and Relations Power Set of a set and Relations 1 Power Set (1) Definition: The power set of a set S, denoted P(S), is the set of all subsets of S. Examples Let A={a,b,c}, P(A)={,{a},{b},{c},{a,b},{b,c},{a,c},{a,b,c}}

More information

A step towards the Bermond-Thomassen conjecture about disjoint cycles in digraphs

A step towards the Bermond-Thomassen conjecture about disjoint cycles in digraphs A step towards the Bermond-Thomassen conjecture about disjoint cycles in digraphs Nicolas Lichiardopol Attila Pór Jean-Sébastien Sereni Abstract In 1981, Bermond and Thomassen conjectured that every digraph

More information

Proofs for Key Establishment Protocols

Proofs for Key Establishment Protocols Information Security Institute Queensland University of Technology December 2007 Outline Key Establishment 1 Key Establishment 2 3 4 Purpose of key establishment Two or more networked parties wish to establish

More information

Faster parameterized algorithms for Minimum Fill-In

Faster parameterized algorithms for Minimum Fill-In Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Technical Report UU-CS-2008-042 December 2008 Department of Information and Computing Sciences Utrecht

More information

Joint Entity Resolution

Joint Entity Resolution Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute

More information

EMBEDDING INTO l n. 1 Notation and Lemmas

EMBEDDING INTO l n. 1 Notation and Lemmas EMBEDDING INTO l n We are looking at trying to embed a metric space into l n, our goal is to try and embed an n point metric space into as low a dimension l m as possible. We will show that, in fact, every

More information

Let G 1 = (V 1, E 1 ) and G 2 = (V 2, E 2 ) be graphs. Introduction. Some facts about Graph Isomorphism. Proving Graph Isomorphism completeness

Let G 1 = (V 1, E 1 ) and G 2 = (V 2, E 2 ) be graphs. Introduction. Some facts about Graph Isomorphism. Proving Graph Isomorphism completeness Graph Let G 1 = (V 1, E 1 ) and G 2 = (V 2, E 2 ) be graphs. Algorithms and Networks Graph Hans Bodlaender and Stefan Kratsch March 24, 2011 An G 1 to G 2 is a bijection φ : V 1 V 2 s.t.: {u, v} E 1 {φ(u),

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Given an NP-hard problem, what should be done? Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one of three desired features. Solve problem to optimality.

More information

Planar Point Location

Planar Point Location C.S. 252 Prof. Roberto Tamassia Computational Geometry Sem. II, 1992 1993 Lecture 04 Date: February 15, 1993 Scribe: John Bazik Planar Point Location 1 Introduction In range searching, a set of values,

More information

Clustering Using Graph Connectivity

Clustering Using Graph Connectivity Clustering Using Graph Connectivity Patrick Williams June 3, 010 1 Introduction It is often desirable to group elements of a set into disjoint subsets, based on the similarity between the elements in the

More information

Fundamental mathematical techniques reviewed: Mathematical induction Recursion. Typically taught in courses such as Calculus and Discrete Mathematics.

Fundamental mathematical techniques reviewed: Mathematical induction Recursion. Typically taught in courses such as Calculus and Discrete Mathematics. Fundamental mathematical techniques reviewed: Mathematical induction Recursion Typically taught in courses such as Calculus and Discrete Mathematics. Techniques introduced: Divide-and-Conquer Algorithms

More information

Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube

Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube Kavish Gandhi April 4, 2015 Abstract A geodesic in the hypercube is the shortest possible path between two vertices. Leader and Long

More information

Right-to-Left or Left-to-Right Exponentiation?

Right-to-Left or Left-to-Right Exponentiation? Right-to-Left or Left-to-Right Exponentiation? Colin D. Walter Information Security Group, Royal Holloway, University of London Colin.Walter@rhul.ac.uk Abstract. The most recent left-to-right and right-to-left

More information

On the number of quasi-kernels in digraphs

On the number of quasi-kernels in digraphs On the number of quasi-kernels in digraphs Gregory Gutin Department of Computer Science Royal Holloway, University of London Egham, Surrey, TW20 0EX, UK gutin@dcs.rhbnc.ac.uk Khee Meng Koh Department of

More information

Ferianakademie 2010 Course 2: Distance Problems: Theory and Praxis. Distance Labelings. Stepahn M. Günther. September 23, 2010

Ferianakademie 2010 Course 2: Distance Problems: Theory and Praxis. Distance Labelings. Stepahn M. Günther. September 23, 2010 Ferianakademie 00 Course : Distance Problems: Theory and Praxis Distance Labelings Stepahn M. Günther September, 00 Abstract Distance labels allow to infer the shortest distance between any two vertices

More information

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018 CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved.

More information

Section 13. Basis for a Topology

Section 13. Basis for a Topology 13. Basis for a Topology 1 Section 13. Basis for a Topology Note. In this section, we consider a basis for a topology on a set which is, in a sense, analogous to the basis for a vector space. Whereas a

More information

1. (a) O(log n) algorithm for finding the logical AND of n bits with n processors

1. (a) O(log n) algorithm for finding the logical AND of n bits with n processors 1. (a) O(log n) algorithm for finding the logical AND of n bits with n processors on an EREW PRAM: See solution for the next problem. Omit the step where each processor sequentially computes the AND of

More information

4 Fractional Dimension of Posets from Trees

4 Fractional Dimension of Posets from Trees 57 4 Fractional Dimension of Posets from Trees In this last chapter, we switch gears a little bit, and fractionalize the dimension of posets We start with a few simple definitions to develop the language

More information

Approximation Algorithms for Item Pricing

Approximation Algorithms for Item Pricing Approximation Algorithms for Item Pricing Maria-Florina Balcan July 2005 CMU-CS-05-176 Avrim Blum School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 School of Computer Science,

More information

Test 2 Review. (b) Give one significant advantage of a nonce over a timestamp.

Test 2 Review. (b) Give one significant advantage of a nonce over a timestamp. Test 2 Review Name Student ID number Notation: {X} Bob Apply Bob s public key to X [Y ] Bob Apply Bob s private key to Y E(P, K) Encrypt P with symmetric key K D(C, K) Decrypt C with symmetric key K h(x)

More information

arxiv: v2 [cs.ds] 30 Nov 2012

arxiv: v2 [cs.ds] 30 Nov 2012 A New Upper Bound for the Traveling Salesman Problem in Cubic Graphs Maciej Liśkiewicz 1 and Martin R. Schuster 1 1 Institute of Theoretical Computer Science, University of Lübeck Ratzeburger Allee 160,

More information

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 In this lecture, we describe a very general problem called linear programming

More information

A Joint Performance-Vulnerability Metric Framework for Designing Ad Hoc Routing Protocols

A Joint Performance-Vulnerability Metric Framework for Designing Ad Hoc Routing Protocols The 2010 Military Communications Conference - Unclassified rogram - Cyber Security and Network Management A Joint erformance-vulnerability Metric Framework for Designing Ad Hoc Routing rotocols Andrew

More information

arxiv: v1 [cs.ds] 23 Jul 2014

arxiv: v1 [cs.ds] 23 Jul 2014 Efficient Enumeration of Induced Subtrees in a K-Degenerate Graph Kunihiro Wasa 1, Hiroki Arimura 1, and Takeaki Uno 2 arxiv:1407.6140v1 [cs.ds] 23 Jul 2014 1 Hokkaido University, Graduate School of Information

More information

Simpler, Linear-time Transitive Orientation via Lexicographic Breadth-First Search

Simpler, Linear-time Transitive Orientation via Lexicographic Breadth-First Search Simpler, Linear-time Transitive Orientation via Lexicographic Breadth-First Search Marc Tedder University of Toronto arxiv:1503.02773v1 [cs.ds] 10 Mar 2015 Abstract Comparability graphs are the undirected

More information

Geometric Steiner Trees

Geometric Steiner Trees Geometric Steiner Trees From the book: Optimal Interconnection Trees in the Plane By Marcus Brazil and Martin Zachariasen Part 2: Global properties of Euclidean Steiner Trees and GeoSteiner Marcus Brazil

More information

16 Greedy Algorithms

16 Greedy Algorithms 16 Greedy Algorithms Optimization algorithms typically go through a sequence of steps, with a set of choices at each For many optimization problems, using dynamic programming to determine the best choices

More information

K 4 C 5. Figure 4.5: Some well known family of graphs

K 4 C 5. Figure 4.5: Some well known family of graphs 08 CHAPTER. TOPICS IN CLASSICAL GRAPH THEORY K, K K K, K K, K K, K C C C C 6 6 P P P P P. Graph Operations Figure.: Some well known family of graphs A graph Y = (V,E ) is said to be a subgraph of a graph

More information

1 Computing alignments in only linear space

1 Computing alignments in only linear space 1 Computing alignments in only linear space One of the defects of dynamic programming for all the problems we have discussed is that the dynamic programming tables use Θ(nm) space when the input strings

More information

In this lecture, we ll look at applications of duality to three problems:

In this lecture, we ll look at applications of duality to three problems: Lecture 7 Duality Applications (Part II) In this lecture, we ll look at applications of duality to three problems: 1. Finding maximum spanning trees (MST). We know that Kruskal s algorithm finds this,

More information

Lecture 16: Introduction to Dynamic Programming Steven Skiena. Department of Computer Science State University of New York Stony Brook, NY

Lecture 16: Introduction to Dynamic Programming Steven Skiena. Department of Computer Science State University of New York Stony Brook, NY Lecture 16: Introduction to Dynamic Programming Steven Skiena Department of Computer Science State University of New York Stony Brook, NY 11794 4400 http://www.cs.sunysb.edu/ skiena Problem of the Day

More information

EECS 2011M: Fundamentals of Data Structures

EECS 2011M: Fundamentals of Data Structures M: Fundamentals of Data Structures Instructor: Suprakash Datta Office : LAS 3043 Course page: http://www.eecs.yorku.ca/course/2011m Also on Moodle Note: Some slides in this lecture are adopted from James

More information

Efficient Generation of Linear Secret Sharing. Scheme Matrices from Threshold Access Trees

Efficient Generation of Linear Secret Sharing. Scheme Matrices from Threshold Access Trees Efficient Generation of Linear Secret Sharing 1 Scheme Matrices from Threshold Access Trees Zhen Liu, Zhenfu Cao, and Duncan S. Wong Abstract Linear Secret Sharing Scheme (LSSS) matrices are commonly used

More information

Primality Testing. Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers

Primality Testing. Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers Primality Testing Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers Exponential in p (number of bits to represent p) Improvement:

More information

A new key recovery attack on the ANSI retail MAC

A new key recovery attack on the ANSI retail MAC A new key recovery attack on the ANSI retail MAC Chris J. Mitchell Information Security Group, Royal Holloway, University of London Egham, Surrey TW20 0EX, UK c.mitchell@rhul.ac.uk 13th November 2002 Abstract

More information

Design and Analysis of Algorithms

Design and Analysis of Algorithms Design and Analysis of Algorithms CSE 5311 Lecture 8 Sorting in Linear Time Junzhou Huang, Ph.D. Department of Computer Science and Engineering CSE5311 Design and Analysis of Algorithms 1 Sorting So Far

More information

Lattice Tutorial Version 1.0

Lattice Tutorial Version 1.0 Lattice Tutorial Version 1.0 Nenad Jovanovic Secure Systems Lab www.seclab.tuwien.ac.at enji@infosys.tuwien.ac.at November 3, 2005 1 Introduction This tutorial gives an introduction to a number of concepts

More information

Today: Amortized Analysis (examples) Multithreaded Algs.

Today: Amortized Analysis (examples) Multithreaded Algs. Today: Amortized Analysis (examples) Multithreaded Algs. COSC 581, Algorithms March 11, 2014 Many of these slides are adapted from several online sources Reading Assignments Today s class: Chapter 17 (Amortized

More information

Lecture 1 August 31, 2017

Lecture 1 August 31, 2017 CS 388R: Randomized Algorithms Fall 017 Lecture 1 August 31, 017 Prof. Eric Price Scribe: Garrett Goble, Daniel Brown NOTE: THESE NOTES HAVE NOT BEEN EDITED OR CHECKED FOR CORRECTNESS 1 Randomized Algorithms

More information

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points MC 0 GRAPH THEORY 0// Solutions to HW # 0 points + XC points ) [CH] p.,..7. This problem introduces an important class of graphs called the hypercubes or k-cubes, Q, Q, Q, etc. I suggest that before you

More information

Complexity of Algorithms. Andreas Klappenecker

Complexity of Algorithms. Andreas Klappenecker Complexity of Algorithms Andreas Klappenecker Example Fibonacci The sequence of Fibonacci numbers is defined as 0, 1, 1, 2, 3, 5, 8, 13, 21, 34,... F n 1 + F n 2 if n>1 F n = 1 if n =1 0 if n =0 Fibonacci

More information

SAT-CNF Is N P-complete

SAT-CNF Is N P-complete SAT-CNF Is N P-complete Rod Howell Kansas State University November 9, 2000 The purpose of this paper is to give a detailed presentation of an N P- completeness proof using the definition of N P given

More information

Information Science. No. For each question, choose one correct answer and write its symbol (A E) in the box.

Information Science. No. For each question, choose one correct answer and write its symbol (A E) in the box. For each question, choose one correct answer and write its symbol (A E) in the box. (A E) Q16. When compiling the program below, the name of which is prog.c, the following error is reported. Which program

More information

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3) COMPSCI 632: Approximation Algorithms September 18, 2017 Lecturer: Debmalya Panigrahi Lecture 7 Scribe: Xiang Wang 1 Overview In this lecture, we will use Primal-Dual method to design approximation algorithms

More information

Remote user authentication using public information

Remote user authentication using public information Remote user authentication using public information Chris J. Mitchell Mobile VCE Research Group, Information Security Group Royal Holloway, University of London Egham, Surrey TW20 0EX, UK C.Mitchell@rhul.ac.uk

More information

The divide and conquer strategy has three basic parts. For a given problem of size n,

The divide and conquer strategy has three basic parts. For a given problem of size n, 1 Divide & Conquer One strategy for designing efficient algorithms is the divide and conquer approach, which is also called, more simply, a recursive approach. The analysis of recursive algorithms often

More information

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748 COT 6936: Topics in Algorithms! Giri Narasimhan ECS 254A / EC 2443; Phone: x3748 giri@cs.fiu.edu http://www.cs.fiu.edu/~giri/teach/cot6936_s12.html https://moodle.cis.fiu.edu/v2.1/course/view.php?id=174

More information

Lemma (x, y, z) is a Pythagorean triple iff (y, x, z) is a Pythagorean triple.

Lemma (x, y, z) is a Pythagorean triple iff (y, x, z) is a Pythagorean triple. Chapter Pythagorean Triples.1 Introduction. The Pythagorean triples have been known since the time of Euclid and can be found in the third century work Arithmetica by Diophantus [9]. An ancient Babylonian

More information

7. Relational Calculus (Part I) 7.1 Introduction

7. Relational Calculus (Part I) 7.1 Introduction 7. Relational Calculus (Part I) 7.1 Introduction We established earlier the fundamental role of relational algebra and calculus in relational databases (see 5.1). More specifically, relational calculus

More information

Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes

Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes J.-F. Couturier 1 P. Heggernes 2 D. Kratsch 1 P. van t Hof 2 1 LITA Université de Lorraine F-57045 Metz France 2 University

More information

Efficient Compilers for Authenticated Group Key Exchange

Efficient Compilers for Authenticated Group Key Exchange Efficient Compilers for Authenticated Group Key Exchange Qiang Tang and Chris J. Mitchell Information Security Group, Royal Holloway, University of London Egham, Surrey TW20 0EX, UK {qiang.tang, c.mitchell}@rhul.ac.uk

More information

Algorithm Analysis and Design

Algorithm Analysis and Design Algorithm Analysis and Design Dr. Truong Tuan Anh Faculty of Computer Science and Engineering Ho Chi Minh City University of Technology VNU- Ho Chi Minh City 1 References [1] Cormen, T. H., Leiserson,

More information

Fast algorithms for max independent set

Fast algorithms for max independent set Fast algorithms for max independent set N. Bourgeois 1 B. Escoffier 1 V. Th. Paschos 1 J.M.M. van Rooij 2 1 LAMSADE, CNRS and Université Paris-Dauphine, France {bourgeois,escoffier,paschos}@lamsade.dauphine.fr

More information

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 02/26/15

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 02/26/15 CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) HW#3 Due at the beginning of class Thursday 02/26/15 1. Consider a model of a nonbipartite undirected graph in which

More information

Bipartite Ramsey numbers involving stars, stripes and trees

Bipartite Ramsey numbers involving stars, stripes and trees Electronic Journal of Graph Theory and Applications 1 () (013), 89 99 Bipartite Ramsey numbers involving stars, stripes and trees Michalis Christou a, Costas S. Iliopoulos a,b, Mirka Miller c,d, a Department

More information

Orthogonal Range Search and its Relatives

Orthogonal Range Search and its Relatives Orthogonal Range Search and its Relatives Coordinate-wise dominance and minima Definition: dominates Say that point (x,y) dominates (x', y') if x

More information

1 The Traveling Salesperson Problem (TSP)

1 The Traveling Salesperson Problem (TSP) CS 598CSC: Approximation Algorithms Lecture date: January 23, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im In the previous lecture, we had a quick overview of several basic aspects of approximation

More information

CS 3114 Data Structures and Algorithms READ THIS NOW!

CS 3114 Data Structures and Algorithms READ THIS NOW! READ THIS NOW! Print your name in the space provided below. There are 9 short-answer questions, priced as marked. The maximum score is 100. When you have finished, sign the pledge at the bottom of this

More information

2016 ACM ICPC Southeast USA Regional Programming Contest. Division 1

2016 ACM ICPC Southeast USA Regional Programming Contest. Division 1 206 ACM ICPC Southeast USA Regional Programming Contest Division Alphabet... Base Sums... 2 Buggy Robot... 3 Enclosure... 5 Illumination... 6 InTents... 7 Islands... 9 Paint... 0 Periodic Strings... Water...

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information

Privacy-Preserving Sensor Cloud. Hung Dang, Yun Long Chong, Francois Brun, Ee-Chien Chang School of Computing National University of Singapore

Privacy-Preserving Sensor Cloud. Hung Dang, Yun Long Chong, Francois Brun, Ee-Chien Chang School of Computing National University of Singapore Privacy-Preserving Sensor Cloud Hung Dang, Yun Long Chong, Francois Brun, Ee-Chien Chang School of Computing National University of Singapore Motivation The ubiquity of time series/multimedia data. Privacy

More information

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PAUL BALISTER Abstract It has been shown [Balister, 2001] that if n is odd and m 1,, m t are integers with m i 3 and t i=1 m i = E(K n) then K n can be decomposed

More information

arxiv: v1 [cs.ds] 3 Oct 2017

arxiv: v1 [cs.ds] 3 Oct 2017 ORDERED DAGS: HYPERCUBESORT MIKHAIL GUDIM arxiv:70.00v [cs.ds] Oct 07 Abstract. We generalize the insertion into a binary heap to any directed acyclic graph (DAG) with one source vertex. This lets us formulate

More information

Lecture The Ellipsoid Algorithm

Lecture The Ellipsoid Algorithm 8.433 Combinatorial Optimization November 4,9 Lecture The Ellipsoid Algorithm November 4,9 Lecturer: Santosh Vempala The Algorithm for Linear rograms roblem. Given a polyhedron, written as Ax b, find a

More information

Data Structures and Algorithms Week 4

Data Structures and Algorithms Week 4 Data Structures and Algorithms Week. About sorting algorithms. Heapsort Complete binary trees Heap data structure. Quicksort a popular algorithm very fast on average Previous Week Divide and conquer Merge

More information

CPSC 467b: Cryptography and Computer Security

CPSC 467b: Cryptography and Computer Security CPSC 467b: Cryptography and Computer Security Michael J. Fischer Lecture 7 January 30, 2012 CPSC 467b, Lecture 7 1/44 Public-key cryptography RSA Factoring Assumption Computing with Big Numbers Fast Exponentiation

More information