+ All Categories
Home > Documents > 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft...

07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft...

Date post: 01-Apr-2015
Category:
Upload: jaheim-tribett
View: 213 times
Download: 0 times
Share this document with a friend
61
06/26/22 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)
Transcript
Page 1: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

04/11/23 Agay Spring School, March'02

Mobility 2 : Mobile Values

Cédric FournetMicrosoft Research

Cambridge

(joint work with Martin Abadi)

Page 2: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

ReferencesMobile Values, New Names, and Secure Communication (.

ps) (.pdf), with Martín Abadi. Proceedings of the 28th ACM Symposium on Principles of Programming Languages (POPL'01), pages 104-115. January 2001.

Authentication Primitives and their Compilation (.ps) (.pdf), with Martín Abadi and Georges Gonthier. Proceedings of the 27th ACM Symposium on Principles of Programming Languages (POPL'00), pages 302-315. January 2000.

Secure Implementation of Channel Abstractions, with Martín Abadi and Georges Gonthier. To appear in Information and Computation. May 1999.

See also http://research.microsoft.com/~fournet/

Page 3: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

A case for impurity In foundational calculi (pi, lambda),

purity often comes before convenience & faithfulness.

In applications, ad hoc extensions are often required: integers, strings,… , I/O,… , cryptography,…

Extensions can sometimes be encoded, at some cost (complicated reasoning, ugly properties).

Many results are first stated and proved in a pure setting, then proved again and again for extensions.

Page 4: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Security in the pi calculus ?

Domain: security protocols,with interactions between cryptographic computations, controlled usage of secrets, and communications.

Process calculi are useful for such protocols, e.g., Pi calculus, to reason on high-level security

properties. Spi calculus [Abadi&Gordon], to tackle some

cryptography.

Still, there is a gap between typical security specifications(e.g. RFCs) and what can be represented in those calculi.

Page 5: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

The Applied Pi Calculus

Parameterise the pi calculus with computations on values.

Keep communications and scopes! Uniformly develop equivalences and proof

techniques.

Page 6: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Contents

1. Syntax, semantics, … (reminder)2. Some cryptographic primitives and protocols.3. New issues:

1. How to communicate opaque values? Active substitutions

2. How to relate equations on values and observational equivalence for protocols? Static Equivalence

3. How to establish equivalences? Labeled semantics

4. Detailed example: a Diffie-Hellman key exchange 5. Secure implementations of channel abstractions:

relating channel-name mobility to cryptographic-name mobility.

Page 7: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Syntax for processes

Processes are those of the plain calculus.Communicated values are terms, rather than names.The calculus is parameterized by an equational theory for

terms.

Page 8: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Syntax for terms

We assume given: a signature: a set of function symbols with an arity; a sort system; an equational theory:

an equivalence relation (=) on terms; closed by substitutions of terms for variables; closed by one-to-one substitutions on names.

We distinguish three similar notions: constants, names, variables.

Page 9: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Example: pairs A constructor function “cons”, written (M,N) Two selector functions, written fst(M) and

snd(M) The equations

+all equations obtained by reflexivity, symmetry, transitivity, and substitutions.

Similarly, we can model tuples, arrays, lists, …

Page 10: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Shared-key cryptography To model shared-key cryptography,

we can use two binary functions related with:

We can use names as keys (or not) This is much as the spi calculus.

(For each variant of the spi calculus, there is an equational theory that yields an applied pi calculus with the same reductions.)

Page 11: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Operational semantics

We use a standard chemical-style semantics:

structural equivalence (´) is defined as usual, and also closed by equality on terms.

reduction step (!) contains the rules

closed by structural equivalence & application of evaluation contexts.

Page 12: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Token-based authentication

The name s in the pair is a capability for the forwarding.

Expected behaviour:

using the equations

Page 13: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Token-based authentication ?

The name s in the pair acts as a capability for the forwarding.

Expected behaviour:

The token is not protected; we can representan (obvious) interception attack as a context:

Page 14: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Cryptographic hash A one-way, collision-free hash function

is modelled as a constructor “h” with no equation.

Example: message authentication code (MAC)

A sends a hash code that depends on the secret.(The secret is not communicated.)

B checks the authenticity of the received messageby recomputing its hash code.

Attackers cannot produce another valid hash code.

Page 15: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Scope restriction for terms In the plain pi calculus,

new restricted names can be created; scope restrictions nicely disappear when those

names are passed to the environment (“scope extrusion”).

Page 16: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

In the plain pi calculus,

With terms instead of names, scope restriction gets more interesting:

How to represent the result of sending an opaque term?

The environment can accumulate partial knowledge on restricted names, and use it later.

The problem already occurs in the spi calculus,when sending messages encrypted with a restricted key.[Abadi Gordon, Boreale deNicola Pugliese]

Scope restriction for terms

Page 17: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

In the plain pi calculus,

With terms instead of names, scope restriction gets more interesting:

How to represent the result of sending an opaque term?

We extend processes with active substitutions that keep track of the values passed to the environment.

Scope restriction for terms

Page 18: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Substitutions as processes

Active substitutions map distinct variables to terms They may appear under restrictions (not under guards) They operate on the environment. They represent terms passed to the environment

“by reference”, much as a floating let x = M in …

(There are well-formed conditions for extended processes.)

Page 19: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Operational semantics Structural equivalence ´ is extended with rules

for active substitutions (reduction is defined as before).

Page 20: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Substitutions as processes (2) Locally, active substitutions and ordinary substitutions

on processes are related by structural equivalence:

Page 21: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Substitutions as processes (3) Every closed extended process can be put in a normal form

that separates its “static” and “dynamic” parts

The static part, or frame, operates only on the environment The dynamic part is a plain process that describes

communications. These two parts can share some restricted names.

(However, “flattening” processes is not necessarily a good idea.)

Page 22: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Cryptographic hash, again

Using active substitutions, we can represent a processthat has MACed several messages using the secret s:

What an attacker can effectively do with x and y depends on the equational theory being considered.

Page 23: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Asymmetric encryption To model public-key cryptography,

we generate public- and private-keys from a seed:

Using active substitutions, we can write a process that exports the public key and keeps the private key secret:

Besides, we can add “problematic” equations for protocols,for instance reflecting a typical weakness of RSA encryption:

Page 24: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Non-deterministic encryption To model probabilistic cryptography,

we may add a third argument to the encryption function:

With this variant, we can write:

Without access to the decryption key, an attacker cannotdetect whether the underlying plaintexts are identical.

Page 25: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

04/11/23 Agay Spring School, March'02

Contextual Equivalences

Page 26: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Observational equivalence Our basic observation predicate, written A a,

tests whether A can send a message on the free channel a.

Barbed Congruence (¼) is the largest symmetric relation between closed extended processes defining the same variables such that A ¼ B implies:

1. if A a , then B a

2. if A !* A’ , then B !* B’ with A’ ¼ B’ 3. C[A] ¼ C[B] for all closing evaluation contexts C[_]

Many security properties can be expressed usingobservational equivalences (attackers = evaluation contexts).

How to prove such properties?

Page 27: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Equivalence for frames ? Frames are extended processes that only consist of active

substitutions and restrictions. What is equivalence for frames?

Consider two functions f and g, no equations, and the frames:

0 and 1 have the same observable behaviour: they provide two fresh, seemingly independent values.

2 is visibly different: we have y = f(x) with 2 only.

Page 28: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

We write when the terms and areequal in the theory after alpha-conversion and substitution.

Two frames are statically equivalentwhen they agree for all term comparisons:

Two extended processes are statically equivalentwhen their frames are equivalent.

Static equivalence (definition)

Page 29: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Static equivalence (properties)

Static equivalence is closed by ´, !, C[_].

For extended processes,observational equivalence is finer than static equivalence.

For frames, static equivalence and observational equivalence coincide.

Hence, we can uniformly lift equational propertiesfrom (restricted) terms to (extended) processes.

We use special evaluation contexts instead of frame comparisons:

Page 30: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Labelled semantics Can we characterize observational semantics

using labelled transitions? A good technical test for the calculus Standard, effective proof techniques

No quantification over all evaluation contexts. Proofs “up to active substitutions”

We have two such labelled semanticsthat refine static equivalence.

Theorem: for any equational theory,the labelled and observational semantics coincide.

However, the generalization of the pi calculus LTS with scope extrusion (exporting terms instead of names) yields a labelled semantics that “sees through” all term constructors and discriminates too much.

Page 31: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

A Simple Labelled Semantics

In addition to ! and ´, we adopt the following rules:

Page 32: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Example Transitions Labelled transitions systematically pass values

by aliasing them to fresh variables. The environment can use these values indirectly,

by forming terms that contain these variables.

Page 33: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Labelled Bisimilarity Labelled bisimilarity (¼l) is defined almost as usual:

the largest symmetric relation such that A ¼ l B implies

1. A ¼ s B

2. if A * A’ , then B * B’ and A’ ¼ l B’ for some B’;3. if A A’ and has free variables in dom(A),

and has no bound names that are free in B,

then B * * B’ and A’ ¼ l B’ for some B’.

Labelled bisimilarity is observational equivalence: ¼l = ¼

Labelled bisimilarity has nice technical properties(e.g. proofs up to frame simplification).

In the paper: another formulation of labelled semantics,equivalent but more explicit on communicated values.

Page 34: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Symbolic Bisimulations (1/2) Message Output: active substitutions rely on

“partial extrusion”, to deal with opaque terms.

Message Input: the environment can supply arbitrary terms

Infinite-branching transition systems Unbounded nesting of functions Infinite number of names

Many different terms are uniformly handled by the protocol

Symbolic inputs (and symbolic bisimulations) use insteadabstract “environment” variables for input terms [Huimin & Hennessy; Boreale].

Page 35: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Symbolic Bisimulations (2/2)

Symbolic inputs (and symbolic bisimulations) use instead abstract “environment” variables for input terms.

Symbolic reductions introduce constraints on those variables.

Equality between open terms Occur-checks on output variables (no causality loop)

Constraints must be solvable to obtain concrete reductions.

Page 36: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

04/11/23 Agay Spring School, March'02

Example: Diffie-Hellman

Page 37: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

A cryptographic protocol for creating a shared secret between two parties, e.g. establishing a session key.

Assumption: two one-way functions with the equation:

In practice,and we have the equations:

Diffie-Hellman key exchange

Page 38: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Diffie-Hellman key exchange

A protocol for creating a shared secret. Two functions with Two symmetric parties:

Page 39: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Processes A0, A1 represent the initial state. Processes P0, P1 represent the final state

with free variable for the shared key.

Auxiliary substitutions account for the messagesbeing exchanged and the shared key .

Diffie-Hellman in the pi calculus

Page 40: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

A normal run consists of two reduction steps:

A passive attacker intercepts both messages and forwards those messages unchanged, leading to the final state:

We use frames to record messages and computations:

Diffie-Hellman in the pi calculus

Page 41: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

A normal run consists of two reduction steps:

Diffie-Hellman in the pi calculus

Page 42: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

A correctness property Specification:

1. The final processes share a “pure secret” = a local name:

2. Intercepted messages are “pure noise” = unrelated names.

Theorem:

The result does not depend on the usage of the shared secret; this useful property is “perfect forward secrecy”.

Page 43: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Perfect Forward Secrecy

We can forget about the key establishment protocol:the freshness and the secrecy of the keydo not depend on its usage.

Examples: Send a pair of messages

Reveal the keyto the environment

Page 44: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

A correctness property (3/3)

Sketch of the proof: 1. Static equivalence (not so easy: for all M and N…)

2. Hence the process equivalence

3. Apply an evaluation context + structural equivalence

Page 45: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Conclusions (on Applied Pi) We develop a pi calculus parameterised by

an equational theory for values.

We obtain an expressive and flexible framework for reasoning on security protocols, which typically mix:

creations of “fresh” values : “new” & scope extrusions various cryptographic operations : various equational

theories communications : pi calculus

We uniformly build tools to state and prove their properties (inspired by concurrency theory).

Equational reasoning on values is hard!

Page 46: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Related works1. Complexity-theoretical analyses,

focusing on the cryptographic operations.

2. Higher-level presentations with black box cryptography, focusing on their usage in protocols. Trace models Process calculi

the spi calculus [Abadi & Gordon] Labelled bisimilarity for cryptographic protocols

[Boreale & De Nicola] Specific type systems for security

Information control flow [Honda] Syntactic containment [Abadi, Blanchet] Correspondence assertions [Gordon, Jeffrey]

Page 47: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

04/11/23 Agay Spring School, March'02

Secure Implementations of Channel Abstractions

From high-level names (private channels) to low-level names

(private keys)

Page 48: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

From cryptography to security

High-level code should not know (much) about network security

for modularity and transparency because cryptographic protocols are hard.

High-level code usually relies on communication abstractions.

Communications processing should take care of security.

Page 49: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

AttackerAttacker

S2

ClientS1

Attacker

SS11

FF

SS22

FF

Client

FF

Secure implementation?

High-level language:

Distributed implementation:RPC, RMI, COM+serialization, SOAPcrypto APIs, SSLcrypto protocolsTCP/IP

???

Page 50: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Implicit security properties Programs have strong, implicit security properties

secrecy (scopes for local variables) safety (types for free variables) some network transparency (RPC, COM) reliable, single delivery for all messages.

The attacker can cheat! eavesdropping message interception, leading to deadlocks. traffic analysis on addresses, on message contents replay attacks.

As regards security in distributed systems,programming abstractions are usually broken.

Page 51: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

High-level language:

Distributed implementation:

AttackerAttacker

S2

ClientS1

Attacker

SS11

FF

SS22

FF

Client

FF

strong implicit security

lower-level model on top of an insecure network, with explicit cryptography.

Secure implementation

Page 52: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

AttackerAttackerSS11

FF

SS22

FF

Client

FF are just as bad as in

The implementation does not enable attacks:

S2

ClientS1

AttackerThe attacks in

Correctness theorem

Page 53: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

An Attempt in Applied Pi

Page 54: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Problem: Leak of Traffic Pattern

Page 55: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Problem: Denial Of Service

Page 56: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Problem: Replay Attacks

Page 57: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Problem: Leak of Message Equality

Page 58: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Problem: Lack of Forward Secrecy

Page 59: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Translations (in the join calculus)

A translation [[ ]] on processes recursively substitutes a run of a secure messaging protocol for every message.

We pass asymmetric (“public”) encryption keysinstead of one-way channels

The translation can be made compositional. Theorem (full abstraction):

The contexts are very different!

Page 60: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

AttackerAttackerSS11

FF

SS22

FF

Client

FF

S2

ClientS1Attacker

High level programs may still be poorly written.

Low-level cryptography may still be broken.

Issues left above and below…

Page 61: 07/09/2014 Agay Spring School, March'02 Mobility 2 : Mobile Values Cédric Fournet Microsoft Research Cambridge (joint work with Martin Abadi)

Conclusions (2/2) Mobile channels

are very expressive have strong implicit security properties can sometimes be faithfully implemented on a public

network,at a considerable cost.

Mobile values (= mobile names + equational theory) provide direct support for modeling data in protocols. are especially useful for modeling crypto protocols can be handled in a uniform manner

active substitutions static equivalence, labelled proof techniques

Process calculi provide flexible tools to model security properties in context to prove them


Recommended