Accessing Shared Resources with Concurrent Constraint Programming - PowerPoint PPT Presentation

slide1 n.
Skip this Video
Loading SlideShow in 5 Seconds..
Accessing Shared Resources with Concurrent Constraint Programming PowerPoint Presentation
Download Presentation
Accessing Shared Resources with Concurrent Constraint Programming

play fullscreen
1 / 21
Accessing Shared Resources with Concurrent Constraint Programming
Download Presentation
Download Presentation

Accessing Shared Resources with Concurrent Constraint Programming

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Accessing Shared Resources with Concurrent Constraint Programming Stefano Bistarelli1 and Francesco Santini2 1Dipartimento di Matematica e Informatica, University of Perugia, Italy 2Centrum Wiskunde & Informatica, Amsterdam, Netherlands

  2. Motivations • A language for agent coordination • With control on the actions they perform (Access Control Lists) • Guaranteeing security properties (integrity and confidentiality) • Based on (soft) constraints: a semiring-based framework • Resources are represented through constraints with a quantitative label: e.g., cost/preference • Fine-grained level of security: each agent has different rights • We extend (nonmonotonic) sccp [BS FundInf 2011] • Possibility for agents to interact adding and checking resource status, but also removing and modifiying resources

  3. The basic idea ACL-like rights constraints softness non-monotonicity concurrency Expressed as soft constraints a well!

  4. ACL constraints • An ACL is a list of permissions attached to an object • it specifies active entities (agents), passive entities (objects), and the allowed operations over them • Our ACL constraints • when an agent A1 adds a piece of information to the store (tell c), it specifies also the confidentiality and integrity rights on that constraint, for each agent Ai participating to the protected computation. • How much of c the agent A2 can add to the store (tell), • how much of c the agent A2 can remove from the store (retract), and • how much of c the agent A2 can query with an ask operation (ask). • e.g. “Peter may not eat more than 10% of the birthday cake”. integrity confi.ality

  5. Outline • The background frameworks • Semirings and soft constraints [BMR JACM97] • Concurrent constraints [Saraswat POPL87] • Soft concurrent constraints [BMR TOCL2006] • Nonmonotonic soft cc [BS FundInf2011] • ACL constraints and formal semantics of the language • An example • Conclusions and related works

  6. C-semirings [BMR JACM97] • A c-semiring is a tuple • A is the (possibly infinite) set of preference values • 0 and 1 represent the bottom and top preference values • + defines a partial order ( ≥S ) over A such that a ≥S b iff a+b = a • + is commutative, associative, and idempotent, it is closed, 0 is its unit element and 1 is its absorbing element • closed, associative, commutative, and distributes over +, 1 is its unit element and 0 is its absorbing element • is a complete lattice to compose the preferences and + to find the best one

  7. Classical instantiations • Weighted • Fuzzy • Probabilistic • Boolean • Boolean semirings can be used to represent classical crisp problems • The Cartesian product is still a semiring

  8. Soft Constraints • Aconstraint where each instantiation of its variables has an associated preference • Assignment • Constraint • Sum: • Combination: • Projection: • Entailment:

  9. Examples <a,a> 11 <a,b> 7 <b,a> 16 <b,b> 16 We can consider an α-consistency of the solutions

  10. Concurrent CP [Saraswat POPL87] Success: σ |-c true Success: σ∪{c} cons Fail: σ∪{c} incons Fail: σ |- c false A1 Wait: else A2 Tell c Ask c (X=3  y=5) (X=2  y=7) X=4 X=3 σ y=4 (X=6  y=1) Crisp tokens of information

  11. Soft CCP: The idea [BMR TOCL06] Success: σ|- c, σ is -cons Sucess: σ∪{c} -cons Fail: σ∪{c} -cons Fail: σ is -cons Wait: else Tell c Ask c A1 A2 (X=3  y=5) .3  (X=2  y=7) .5 X=4 .7  X=3 .1 σ y=4 .4 (X=6  y=1) .2 <S Every action is labeled with a threshold α The selection of threshold α influences the computation (to refine the solutions)

  12. The secure Nonmon. SCCP • Nonmonotonic operations!!! • [BS FundInf2011] Rights!!! [BS SEFM2012] Retract (soft) Retract (crisp) c c2 ask(c) tell tell retract retract c1 σ nask(c) Soft store Crisp store

  13. Rights as circles c A1: tell(c) A2 tell rights ask rights retract rights c has to entail added rights

  14. The matrix of rights • ACL are (object identity, user identity) -> permitted operationst • Rights are defined when information is added: • When agent A1 adds c to the store, it adds also the different rights for all the n agents in the computation to a matrix-like structure • 3 kinds of rights: tell, ask, retract, Rights for new added constraints are composed with the former ones:

  15. Operational semantics Tell and retract rights are consumed!

  16. Operational semantics (2)

  17. Security failures

  18. An RGB monitor • E.g., to display of colors on a CRT, LCD or LED displays such as a television or a computer’s monitor • Each pixel on the screen is built by driving three small and very close but still separated RGB light sources. • Each pixel can be represented in the computer memory or interface hardware as binary values for the red, green, and blue color components.

  19. Our protected computation σ= least privilege Ø

  20. Conclusion • The example can be extended to Gold, Silver and Bronze classes of traffic on QoS networks • QoS enforced at an aggregated level (i.e., per class) • Adding security on actions is novel for constraint-based languages (but not for Linda-related ones) • Rights are described as soft constraints as information • Compact and elegant • The same model stands also for crisp constraint languages • Future W.: prototype with CHR / mobile / other sec. models

  21. Thank you for your time! Contacts: