170 likes | 303 Views
Action Comète Concurrency, Mobility, and Transactions. Catuscia Palamidessi INRIA-Futurs and LIX. People. Permanent members: Catuscia Palamidessi (coordinator) Fabrice Le Fessant Collaborations Frank Valencia, BRICS and Uppsala Univ.
E N D
Action ComèteConcurrency, Mobility, and Transactions Catuscia Palamidessi INRIA-Futurs and LIX LIX
People • Permanent members: • Catuscia Palamidessi (coordinator) • Fabrice Le Fessant • Collaborations • Frank Valencia, BRICS and Uppsala Univ. • p-calculus Concurrent Constraint Programming, Security • Vijay Saraswat, IBM Yorktown • p-calculus, Concurrent Constraint Programming • Diletta Cacciagrano, Univ. de L’Aquila • p-calculus, fairness • Yuxin Deng, Paris VII • Type systems for probabilistic process calculi • Bernadette Charron Bost, STIX • Safety and liveness LIX
Projects • ACI Securité ROSSIGNOL: Verification of Cryptographic Protocols • LIF responsable: D. Luigiez • LSV Responsable: F. Jacquemard • INRIA-Futurs & LIX responsable: C. Palamidessi • Verimag Responsible: Y. Lackhnech LIX
Main Goals • Foundations of Languages for Concurrent and Distributed Systems • Process Calculi (p-calculus) • Mobility, Probabilities • Development of a probabilistic version of the asynchronous -calculus • Distributed implementation of the p-calculus • A language for specification and verification of security protocols (ProPiS) • Development of a platform for distributed programming LIX
Probabilistic Asynchronousp (ppa)Catuscia Palamidessi, INRIA Futurs, FranceMihaela Herescu, IBM, Austin • Aim: add the power of randomization to obtain a language that • is as expressive as p(it is possible to encode p into it) • can be implemented in a fully distributed way • Expressive power of ppa : • Solution to problems requiring distributed agreement • Encodingofp into ppacompleted and proved correct wrt a notion of testing semantics LIX
ppa: the Probabilistic Asynchonousp Syntax g ::= x(y) | t prefixes P ::= Sipigi . Pi pr. inp. guard. choiceSi pi = 1 | x^youtputaction | P | Pparallel | (x) Pnewname | recA Precursion | Aprocedurename LIX
1/2 1/3 1/2 1/3 1/3 1/2 1/3 1/2 1/3 1/3 2/3 2/3 1/3 1/3 1/2 1/3 1/3 1/2 1/3 2/3 1/3 The operational semantics ofppa • Based on the Probabilistic Automata of Segala and Lynch • Distinction between • nondeterministic behavior (choice of the scheduler)and • probabilistic behavior (choice of the process) Scheduling Policy: The scheduler chooses the group of transitions Execution: The process choosesprobabilistically the transition within the group LIX
The operational semantics ofppa • Representation of a group of transition P { --gi-> piPi } i • Rules Choice Si pi gi . Pi {--gi-> piPi }i P{--gi-> piPi }i Par ____________________ Q | P {--gi-> piQ | Pi }i LIX
The operational semantics ofppa • Rules (continued) P{--xi(yi)-> piPi }i Q{--x^z-> 1 Q’}i Com ___________________________________________ P | Q {--t-> piPi[z/yi]|Q’ }xi=x U { --xi(yi)-> pi Pi |Q }xi=/=x P{--xi(yi)-> piPi }i Res _____________________________ qi renormalized (x) P { --xi(yi)-> qi (x) Pi }xi =/= x LIX
Implementation ofppa • Compilation in Java << >> :ppaJava • Distributed << P | Q >> = << P >>.start(); << Q >>.start(); • Compositional << P op Q >> = << P >> jop << Q >> for all op • Channels are one-position buffers with test-and-set (synchronized) methods for input and output LIX
Encodingpintoppa • [[ ]] :pppa • Fully distributed [[ P | Q ]] = [[ P ]] | [[ Q ]] • Preserves the communication structure [[ Ps]] = [[ P ]]s • Correct wrt a notion of probabilistic testing semantics P must O iff [[ P ]] must [[ O ]] with prob 1 LIX
Conclusion • We have developed a probabilistic version of the asynchronous p-calculus, ppa • We have provided an encoding of p into ppa • fully distributed • compositional • correct wrt a notion of testing semantics • Advantages: • high-level solutions to distributed algorithms • Easier to prove correct (no reasoning about randomization required) LIX
Features of ProPiS • Probabilistic Pi for Security • ppaenriched with cryptographic primitives similar to those of the spi-calculus [Abadi and Gordon] • The probability features will allow to analyse security protocols at a finer level (cryptographic level), i.e. beyond the Dolew-Yao assumptions of perfect cryptography:In our approach an attacker can try to guess a key, for instance. The point is to prove that the probability that his attack can be effective is negligible. • The probability features will also allow to express protocols that require randomization. LIX
Crypt(0) notpays0 pays0 Master Crypt(1) Crypt(2) Example: The dining cryptographers A problem of anonymity LIX
The dining cryptographers • The Problem: • Three cryptographers share a meal • The meal is paid either by the organization (master) or by one of them. The master decides who pays • Each of the cryptographers is informed by the master whether or not he is paying • Goal: • The cryptographers would like to know whether the meal is being paid by the master or by one of them, but without knowing who is paying (if it is one of them). LIX
The dining cryptographers: Solution • Solution:Each cryptographer tosses a coin (probabilistic choice). Each coin is in between two cryptographers. • The result of each coin-tossing is visible to the adjacent cryptographers, and only to them. • Each cryptographer examines the two adjacent coins • If he is paying, he announces “agree” if the results are the same, and “disagree” otherwise. • If he is not paying, he says the opposite • Claim 1: if the number of “disagree” is even, then the master is paying. Otherwise, one of them is paying. • Claim 2: In the latter case, if the coin is fair the non paying cryptographers will not be able to deduce whom exactly is paying LIX
Crypt(0) notpays0 pays0 Coin(0) Coin(1) look20 Master out1 Coin(2) Crypt(1) Crypt(2) The dining cryptographers: Solution LIX