Presentation is loading. Please wait.

Presentation is loading. Please wait.

Distributed System Security via Logical Frameworks Frank Pfenning Carnegie Mellon University Joint work with Lujo Bauer, Deepak Garg, and Mike Reiter.

Similar presentations


Presentation on theme: "Distributed System Security via Logical Frameworks Frank Pfenning Carnegie Mellon University Joint work with Lujo Bauer, Deepak Garg, and Mike Reiter."— Presentation transcript:

1 Distributed System Security via Logical Frameworks Frank Pfenning Carnegie Mellon University Joint work with Lujo Bauer, Deepak Garg, and Mike Reiter

2 11/18/2005 McGill University2 Outline  The Grey Project  Authentication and Authorization  Affirmation and Truth  Proof Search  Absence of Interference  Consumable Resources  Conclusion

3 11/18/2005 McGill University3 The Grey Project  Smartphones for universal access control  Doors, computers, food?, cars?, …  Being deployed at CMU CyLab building  Exploit communication capabilities  Bluetooth, camera, speaker, microphone  Mobile data services, keypad  Exploit computational power  500 mHz processor, J2ME

4 11/18/2005 McGill University4 Technical Challenges  Distributed multi-modal access control  Flexible and extensible  Formally analyzable  Intuitive and usable  Efficient fair contract signing  Capture resilience  Privacy protection  Interfaces, programming realities

5 11/18/2005 McGill University5 Authentication & Authorization Jack: Please let me into the castle. Jack: ``Jack’’. Here is my passport. Guard: Who are you? Guard: The seal is valid. Guard: You are in my list. Guard: You may enter. The King These may enter: King, Queen, Jack, Jill,… Policy This is Jack The King

6 11/18/2005 McGill University6 Access Control Lists  Authentication via certificates  Use digitally signed certificates  Verify with public key cryptography  Employed in Grey architecture  Authorization via access control lists  Check membership in access control list  Inflexible and difficult to extend  Replace by other mechanism in Grey

7 11/18/2005 McGill University7 Certificates for Authorization Authentication as before Jack: Here is my commission. Guard: Why should I let you in? Guard: Your commission is valid. Guard: You may enter. The King Jack may enter Affirmation

8 11/18/2005 McGill University8 Authorization via Propositions  Policy: let pass if  Enforcement: check if King signed  Apply in other scenarios  File systems (may-read, may-write)  Doors (may-open)

9 11/18/2005 McGill University9 Distributed Authorization Authentication as before Jack: I belong to the Queen’s household. Guard: Why should I let you in? Guard: Is Jack a member of your household? Queen: Yes. The King Policy These may enter: King, Queen, …, Members of the Queen’s household Guard: You may enter. The Queen Jack is a member of my household Affirmation

10 11/18/2005 McGill University10 Reasoning about Authorization  Policy, given as signed certificates:  Enforcement: Check proof of  Requires verification of certificates and logical reasoning

11 11/18/2005 McGill University11 Proof-Carrying Authorization  Resource monitor challenges w. proposition  Client assembles and sends proof object  Using local and remote certificates  Exploits communication abilities of cell phone  Resource monitor checks proof  Check proper application of inference rules  Validate embedded certificates  [Appel & Felten’99] [Bauer’03]

12 11/18/2005 McGill University12 Some Issues  Authorization logic  General logical rules  Policy expression  Proof search, representation, and verification  Properties of policies  Certificates  Verification authority, expiration, revocation  Use X.509 standard

13 11/18/2005 McGill University13 Authorization Logic  Logical reasoning about access control  [Abadi,Burrows,Lampson,Plotkin’93]  Much subsequent work omitted here  General characteristics of prior work  Decidable (propositional or datalog fragment)  Classical (law of excluded middle)  Modal logic (“K says” as modality)

14 11/18/2005 McGill University14 A New Foundation  Goals  Inherent extensibility  Tie between meaning of connectives (policy expression) and proofs (policy enforcement)  Formal reasoning about policies  Further Goals  Reasoning with state, time, and knowledge  [Garg & Pf’05] [Bauer, Bowers, Pf, Reiter’05]

15 11/18/2005 McGill University15 Logic, the Multi-Headed Hydra Classical Intuitionistic Epistemic “Intentional” Temporal Linear Modal Traditional Mathematics Functional Programming Model Checking Consumable Resources Authorization Knowledge Distributed Systems

16 11/18/2005 McGill University16 How Do We Define a Logic?  Must explain the meaning of propositions  The meaning of a proposition is determined by what counts as evidence for its truth  [Gentzen’35] [Martin-Löf’83] [Pf & Davies’01]  Meaning via proofs, proofs via meaning  Well-suited for proof-carrying authorization  Other approaches possible  Axiomatic, categorical, denotational, …

17 11/18/2005 McGill University17 Examples  Disjunction ``A or B’’  Conjunction ``A and B’’

18 11/18/2005 McGill University18 Hypothetical Judgments  Reasoning from assumptions  Hypothesis rule  Hypotheses can be used arbitrarily often HypothesesConclusion Gamma, for arbitrary hypotheses

19 11/18/2005 McGill University19 Two Sides to Every Story  For each connective:  Show how to prove it on the right-hand side  Show how to use it on the left-hand side  Example: Disjunction ``A or B’’

20 11/18/2005 McGill University20 Cut Elimination  The right and left rules must be in harmony  The rule of Cut must be redundant  All uses of Cut can be eliminated  Cut does not analyze the given propositions in Γ or C, but introduces arbitrary A in premises

21 11/18/2005 McGill University21 Implication  Hypothetical reasoning as a proposition  All rules break down connectives  Meaning of proposition composed from the meanings of it parts

22 11/18/2005 McGill University22 Affirmation  Only judgment so far: “A true”  Affirmation expresses policy (intent)  New judgment: “K affirms A”  Externally new evidence (signed certificates)  Internally new rules (relation to truth)  Example

23 11/18/2005 McGill University23 Affirmation and Truth  Principals may affirm any proposition  Principals will affirm all true propositions  Principals can reason logically  This form of Cut must be also be redundant

24 11/18/2005 McGill University24 Affirmation as a Proposition  New proposition “K says A”  Define meaning by right and left rules  Reason from affirmation assumptions

25 11/18/2005 McGill University25 Example Proof

26 11/18/2005 McGill University26 Example Proof  First subproof  Follows by hypothesis rule

27 11/18/2005 McGill University27 Example Proof  Second subproof  Proof complete by hypothesis rule

28 11/18/2005 McGill University28 Distributed Proof Search  Locally known certificates as hypotheses  Resource monitor’s challenge as conclusion  Construct proof bottom-up  Choose rule and apply (backwards)  Backtrack if necessary  Contact remote data base or principal when “K says A” is unprovable subgoal  [Bauer, Garriss, Reiter’05]

29 11/18/2005 McGill University29 Proof Representation  Proofs unwieldy on paper  Formal representation compact & efficient  Use logical framework  Logic specification  Proof search, representation, and checking  Reasoning about logic  Example: earlier proof becomes

30 11/18/2005 McGill University30 Logical Frameworks  LF logical framework  [Harper, Honsell, Plotkin’93]  Judgments as types; proofs as objects  Specifications are open-ended  Inherent extensibility of authorization logic  Twelf implementation  [Schürmann’01] [Pientka’03]  Reasoning about encoded logic

31 11/18/2005 McGill University31 Some General Theorems  Some characteristic theorems  Familiar from functional programming  “K says” forms strong monad  Used to isolate effects  [Moggi’91] [Wadler’93] [Pf & Davies’01]

32 11/18/2005 McGill University32 Some Non-Theorems  Understand when access is denied  Some non-theorems (for unknown K, A, Q)  Sample meta-argument Does not match conclusion of any rule

33 11/18/2005 McGill University33 Absence of Interference  Explore consequences of access control policy, expressed in authorization logic  Metatheorem:If “K says” occurs only as conclusion in P and assumption in C then  More complex non-interference theorems  [Garg & Pf’05] if and only if

34 11/18/2005 McGill University34 Formal Metatheory  Formal metatheory of authorization logic in Twelf  Cut elimination  Simple non-interference results  Proof search for existential question  “Does there exist a proof of A true”  Metatheory for universal questions  “No proof concludes that A true”

35 11/18/2005 McGill University35 Consumable Resources Authentication as before Jack: I will pay you Gld 100. Guard: Why should I let you in? Guard: You may enter when you pay. Guard: The King These may enter: King, Queen, …, anyone who pays Gld 100. Policy Jack:

36 11/18/2005 McGill University36 Consumable Resources  Logically  Ephemeral hypotheses (use only once in proof)  Supported in linear logic  Cryptographically  Consumable certificates  Multi-party contract signing  Atomic fair exchange

37 11/18/2005 McGill University37 Linear Logic  Persistent and ephemeral hypotheses  Some new connectives  A ( B : with ephemeral A we can prove B  A ­ B : both A and B ephemerally  Truth, affirmation, and prior connectives still make sense Persistent, use arbitrarily Ephemeral, use once

38 11/18/2005 McGill University38 Linear Authorization Logic  Example (simplified)  Omitted consent (Bank)

39 11/18/2005 McGill University39 Realization  Proving does not consume actual resources  Realizing a complete proof will consume resources (certificates)  Must be atomic  Implement with multi-party contract signing  Involves separate ratification authority  [Bauer, Bauers, Pf, Reiter’05]

40 11/18/2005 McGill University40 Summary  Cell phones for universal access control  Exploit communication capabilities  Being deployed at CMU CyLab floor  Logical approach to access control  Flexible and extensible  Unifies policy expression and enforcement  Permits formal reasoning about policies  Implemented in logical framework

41 11/18/2005 McGill University41 Current and Future Work  Consumable certificates and linear logic  Reasoning with state, multi-party contracts  Privacy and epistemic logic  Reasoning with local knowledge, protocols  Expiration and temporal logic  Reasoning about time, details of certificates  Engineering the infrastructure, interfaces


Download ppt "Distributed System Security via Logical Frameworks Frank Pfenning Carnegie Mellon University Joint work with Lujo Bauer, Deepak Garg, and Mike Reiter."

Similar presentations


Ads by Google