590 likes | 703 Views
Daniel Moran & Marina Yatsina. Security Analysis of Cryptographically Controlled Access to XML Documents. Introduction. Access control through encryption. Access control through encryption. Publish data in such way that each client can only see the appropriate parts.
E N D
Daniel Moran & Marina Yatsina Security Analysis of Cryptographically Controlled Access to XML Documents
Introduction Access control through encryption
Access control through encryption Publish data in such way that each client can only see the appropriate parts.
Access control through encryptionexample <hospital> <physician> <administrative> </administrative> </physician> <nurse> <patientID> </patientID> <patientID> </patientID> </nurse> </hospital>
Access control through encryptionexample <hospital> <physician> <administrative> </administrative> </physician> safasfdsfdsgdsgdnml gmpodsngnjyjnsbigfs </hospital> The physician doesn’t see the nurse’s information <hospital> <physician> <administrative> </administrative> </physician> <nurse> <patientID> </patientID> <patientID> </patientID> </nurse> </hospital>
Protectionsexample <hospital> nvoidsnfnvodsnvonds foinfbidpadmpnfosbgj <nurse> <patientID> </patientID> <patientID> </patientID> </nurse> </hospital> The nurse doesn’t see the physician’s information <hospital> <physician> <administrative> </administrative> </physician> <nurse> <patientID> </patientID> <patientID> </patientID> </nurse> </hospital>
Access control through encryption <hospital> <physician> <administrative> </administrative> </physician> <nurse> <patientID> </patientID> <patientID> </patientID> </nurse> </hospital> I’m a nurse I’m a physician Publish data in such way that each client can only see the appropriate parts. Alternative to keeping data on servers and relying on them for mediating between data and clients.
Access control through encryption There is only one copy of the data, each client sees the information in it based on the set of keys he posses. Publish data in such way that each client can only see the appropriate parts. Alternative to keeping data on servers and relying on them for mediating between data and clients. Avoids data duplication.
Agenda • Protections. • Security & data Secrecy. • Motivation. • Basic notations. • Formal analysis. • Computational analysis. • Summary & conclusions. We need them to understand the motivation
Agenda • Protections. • Security & data Secrecy. • Motivation. • Basic notations. • Formal analysis. • Computational analysis. • Summary & conclusions. Protections
Protectionsexample <hospital> <physician> <administrative> </administrative> </physician> <nurse> <patientID> </patientID> <patientID> </patientID> </nurse> </hospital>
Protections • XML tree in which nodes are guarded by positive boolean formulas over a set of cryptographic keys.
Protections cont. If you don’t have you can’t access any of the nodes Accessing a node is conditioned by possessing a combination of keys that satisfy the formula that guards the node (and the formulas that guard its ancestors).
Protections cont. hospital, physician, administrative Formally: protection is a function that maps each possible set of keys to the set of nodes that can be accessed using those keys.
Agenda • Protections. • Security & data Secrecy. • Motivation. • Basic notations • Formal analysis. • Computational analysis. • Summary & conclusions. Security & data secrecy
Security & data secrecy Adversary is given an arbitrary set of keys.
Security & data secrecy cont. <theSmurfs> <gargamel /> <papaSmurf /> </theSmurfs> <theSmurfs> <gargamel /> <smurfette /> </theSmurfs> The adversary select 2 documents which contain the same information in the nodes he has access too according to his keys .
Security & data secrecy cont. <theSmurfs> <gargamel /> dsdmhtkinhf </theSmurfs> The adversary is given a partially encrypted document that corresponds to one of its 2 documents.
Security & data secrecy cont. <theSmurfs> <gargamel /> <papaSmurf /> </theSmurfs> <theSmurfs> <gargamel /> dsdmhtkinhf </theSmurfs> ? <theSmurfs> <gargamel /> <smurfette /> </theSmurfs> ? Security means that the adversary cannot decide which of the 2 documents was used in creation of the partially encrypted document (better than picking randomly) .
Security & data secrecy cont. Security means that the adversary cannot decide which of the 2 documents was used in creation of the partially encrypted document (better than picking randomly) . Meaning, partially encrypted document reveals no information on the data in the nodes that should be hidden from the adversary.
Agenda • Protections. • Security & data Secrecy. • Motivation. • Basic notations. • Formal analysis. • Computational analysis. • Summary & conclusions. Motivation
Motivation <theSmurfs> <gargamel /> dsdmhtkinhf </theSmurfs> <theSmurfs> <gargamel /> <papaSmurf /> </theSmurfs> ? <theSmurfs> <gargamel /> <smurfette /> </theSmurfs> ? Bridge the gap between the abstract semantic of protections and the use of actual keys and (symmetric) encryption. Establish that if data is hidden according to protection, then it is secret according to the presented definition of secrecy.
XML Protection Normalized protection Key shares Agenda • Protections. • Security & data Secrecy. • Motivation. • Basic notations. • Formal analysis. • Computational analysis. • Summary & conclusions. Basic notations
Basic notations - XML We describe XML tree as follows: For example:
Basic notations – Protection Lets recall:
Basic notations – Protection cont. Explanation in a couple of slides We describe protection tree as follows:
Basic notations – Protection cont. For example:
Basic notations – Normalized protection In standard encryption schemes we can encrypt under a single key but not under a boolean combination of keys. Using simple transition we can rewrite any protection into an equivalent normalized protection where all formulas that guard a node are atomic.
Basic notations – Normallized protection Lets recall:
Basic notations – Key shares We’ve split key into 2 pieces , each piece is called key share. Key shares are pieces of information that together allow the recovery of the key . No proper subset of key shares suffices for computing . We define:
Expression Recoverable keys Structure Pattern Pattern-protection semantics Agenda • Protections. • Security & data Secrecy. • Motivation. • Basic notations • Formal analysis. • Computational analysis. • Summary & conclusions. Formal analysis
Formal analysis - Expression Lets recall:
Formal analysis – Expression cont. We describe expressions as follows: For example:
Formal analysis – Expression cont. <hospital> <physician> <administrative> </administrative> </physician> safasfdsfdsgdsgdnml gmpodsngnjyjnsbigfs </hospital> We use expressions for giving a precise definition of how to map normalized protection to a partially encrypted document.
Formal analysis – Expression cont. are normalized protections We describe expressions as follows:
Formal analysis – Expression cont. For example:
Formal analysis – Recoverable keys key symbols that occur in E or their shares occur in E A key is recoverable from expression if it occurs in clear (not encrypted) form, or if it’s encrypted under For example:
Formal analysis – Structure We use structures to describe the structure of the partially encrypted document.
Formal analysis – Structure We describe structures as follows:
Formal analysis – Structure cont. Lets recall:
Formal analysis – Structure cont. Lets recall:
Formal analysis – Pattern A pattern represents the information an expression reveilles to the adversary.
Formal analysis – Pattern We describe pattern that can be observed in using for decryption keys from as follows:
Formal analysis – Pattern cont. Lets recall:
Formal analysis – Pattern cont. Lets recall:
Formal analysis – Pattern cont. We describe patterns as follows: For example: