Analyse formelle des protocoles cryptographiques

65
Analyse formelle des protocoles cryptogra- phiques Larbaoui lotfi Protocoles cryptogra- phiques Repr´ esentation formelle : Message ; Protocole ; Attaquant erification des protocoles π-calcul appliqu´ e Example : handshake protocol ProVerif Analyse formelle des protocoles cryptographiques Larbaoui lotfi Universit´ e de M’sila Alg´ erie 10 janvier 2016

Transcript of Analyse formelle des protocoles cryptographiques

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Analyse formelle des protocolescryptographiques

Larbaoui lotfi

Universite de M’sila Algerie

10 janvier 2016

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

1 Protocoles cryptographiques

2 Representation formelle : Message ; Protocole ; Attaquant

3 Verification des protocoles

4 π-calcul applique

5 Example : handshake protocol

6 ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

1 Protocoles cryptographiques

2 Representation formelle : Message ; Protocole ; Attaquant

3 Verification des protocoles

4 π-calcul applique

5 Example : handshake protocol

6 ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Un protocole est une convention qui determine les messagesechanges entre plusieurs ordinateurs sur un reseau.

Un protocole cryptographique utilise des primitivescryptographiques (AES, RC4, RSA, DSA,etc) afin de garantirque les messages sont echanges de facon sure .

Bibliotheques de protocoles :• Clarck et Jacob :

www.csl.sri.com/users/millen/capsl/library.html

• SPORE :www.lsv.ens-cachan.fr/Software/spore/table.html

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Un protocole est une convention qui determine les messagesechanges entre plusieurs ordinateurs sur un reseau.

Un protocole cryptographique utilise des primitivescryptographiques (AES, RC4, RSA, DSA,etc) afin de garantirque les messages sont echanges de facon sure .

Bibliotheques de protocoles :• Clarck et Jacob :

www.csl.sri.com/users/millen/capsl/library.html

• SPORE :www.lsv.ens-cachan.fr/Software/spore/table.html

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Un protocole est une convention qui determine les messagesechanges entre plusieurs ordinateurs sur un reseau.

Un protocole cryptographique utilise des primitivescryptographiques (AES, RC4, RSA, DSA,etc) afin de garantirque les messages sont echanges de facon sure .

Bibliotheques de protocoles :• Clarck et Jacob :

www.csl.sri.com/users/millen/capsl/library.html

• SPORE :www.lsv.ens-cachan.fr/Software/spore/table.html

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Domaines d’utilisation

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Reseaux non surs

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Reseaux non surs

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Attaques

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

1 Protocoles cryptographiques

2 Representation formelle : Message ; Protocole ; Attaquant

3 Verification des protocoles

4 π-calcul applique

5 Example : handshake protocol

6 ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

l’interet de l’analyse formelle

• La conception de protocoles cryptographiques estparticulierement delicate

• Nombreuses attaques dans des protocoles publies ouutilises en pratique.

• les failles de securite ne peuvent pas etre detectees par letest des protocoles

• car elles n’apparaissent qu’en presence d’un attaquant

• Des erreurs dans des protocoles peuvent avoir desconsequences graves

• pertes financieres dans le e-commerce

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Modelisation des Messages

Abstraction par des termes :Exemple :Un {〈A,Na〉}K message est represente par :

Algebre des messages :L’ensemble des T termes est construit selon la grammaire :t ::= n (nombre) | id (identificateur) | x (variable)| (t, t) couple|{t}t cryptage

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Modelisation des Protocoles

Un protocole est constitue en un ensemble fini de rolesR1, ...,Rm.Un role est une suite finie d’actions : emission,reception ougeneration d’une nonce .Un exemple de protocole dans π-calcul applique :P0 = (νskA)(νskB)let pkA = pk(skA) in let pkB = pk(skB) in c〈pkA〉.c〈pkB〉.( PA(pkA, skA) | PB(pkB , skB , pkA) )

” Creation les deux cles secretes (νskA)(νskB) ”” Calcule les cles publiques correspondantes pkA et pkB ”” Envoie ces cles sur le canal public c ”” Ensuite,il execute les processus PA et PA en parallele.

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Modelisation des Protocoles

Un protocole est constitue en un ensemble fini de rolesR1, ...,Rm.Un role est une suite finie d’actions : emission,reception ougeneration d’une nonce .Un exemple de protocole dans π-calcul applique :P0 = (νskA)(νskB)let pkA = pk(skA) in let pkB = pk(skB) in c〈pkA〉.c〈pkB〉.( PA(pkA, skA) | PB(pkB , skB , pkA) )” Creation les deux cles secretes (νskA)(νskB) ”” Calcule les cles publiques correspondantes pkA et pkB ”” Envoie ces cles sur le canal public c ”” Ensuite,il execute les processus PA et PA en parallele.

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Modele de Dolev-Yao (1981)

Dolev & Yao 81 ont propose un modele de deduction pourmodeliser l’intrus.

• Hypotheses :• Chiffrement parfait [C. Shannon]• l’intrus est le reseaux.

• Formalisation logique :• Soit I (Connaissance initiale)

C (Connaissances courantes)u (terme)

• La notation : C ` u( l’intrus a partir de C peut deduire u )

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Modele de Dolev-Yao (1981)

• Formalisation logique : (suite.)

Les regles de deduction de l’intrus :

u ∈ C

C ` u

C ` 〈u, v〉C ` u

C ` 〈u, v〉C ` v

C ` u C ` v

C ` 〈u, v〉

C ` u C ` k

C ` enc(u, k)

C ` dec(u, k) C ` u

C ` k

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Modele de Dolev-Yao (1981)

Pour montrer qu’un message s est secret, il faut demontrerque :

I 0 sExemple :

Bob〈Bob,k〉−−−−→ Alice

Bob〈Alice,enc(s,k)〉←−−−−−−−−− Alice

〈Alice,enc(s,k)〉enc(s,k)

〈Bob,k)〉k

s

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Modele de Dolev-Yao (1981)

Pour montrer qu’un message s est secret, il faut demontrerque :

I 0 sExemple :

Bob〈Bob,k〉−−−−→ Alice

Bob〈Alice,enc(s,k)〉←−−−−−−−−− Alice

〈Alice,enc(s,k)〉enc(s,k)

〈Bob,k)〉k

s

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

1 Protocoles cryptographiques

2 Representation formelle : Message ; Protocole ; Attaquant

3 Verification des protocoles

4 π-calcul applique

5 Example : handshake protocol

6 ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Verification des protocolesProprietes de securite

Le secret specifie qu’une donnee ne doit jamais etre connuepar l’attaquant.

Le secret

On dit que le protocole P ne preserve pas le secret s si :∃{αi}i ,P

α1−→ ...αn−→ 0 : α1, ..., αn ` s

ou {αi} sont les sorties du protocole lors des transitions .Une sortie αi 6= τ

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Verification des protocolesProprietes de securite

Le secret specifie qu’une donnee ne doit jamais etre connuepar l’attaquant.

Le secret

On dit que le protocole P ne preserve pas le secret s si :∃{αi}i ,P

α1−→ ...αn−→ 0 : α1, ..., αn ` s

ou {αi} sont les sorties du protocole lors des transitions .Une sortie αi 6= τ

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Verification des protocolesProprietes de securite

Authentification est interpretee de plusieurs faconsdifferentes :

1 Authentifications de messageUn message est authentifie s’il est bien tel que l’expediteurl’a envoye.

2 Authentifications des agentsconsiste a s’assurer qu’un agent correspond bien avecl’agent avec lequel il est communiquer.

Proprietes de correspondance

injective : e1 =⇒ e2

non-injective : ∀e1 ∃e2 e1 =⇒ e2

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Verification des protocolesProprietes de securite

Authentification est interpretee de plusieurs faconsdifferentes :

1 Authentifications de messageUn message est authentifie s’il est bien tel que l’expediteurl’a envoye.

2 Authentifications des agentsconsiste a s’assurer qu’un agent correspond bien avecl’agent avec lequel il est communiquer.

Proprietes de correspondance

injective : e1 =⇒ e2

non-injective : ∀e1 ∃e2 e1 =⇒ e2

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

1 Protocoles cryptographiques

2 Representation formelle : Message ; Protocole ; Attaquant

3 Verification des protocoles

4 π-calcul applique

5 Example : handshake protocol

6 ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueSes origines

• π-calcul [Robin Milner,Joachim Parrow et Davide Walker1990]est une algebre de processus communicants,concurrents etlabiles.

• Spi-calcul [Martin Abadi, Andrew Gordon. 1997]Extension du π-calcul pour mettre primitivescryptographiques.

• π-calcul applique [Martin Abadi, Cedric Fournet. 2001]Extension du Spi-calcul dans laquelle la bisimulation estdefinie.

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueSa syntaxe

M,N ::= termes

| x variable

| n nom

| f (M1, ...,Mk) application de constructeur

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueSa syntaxe

P,Q ::= processus

| 0 processus nul

| n nom

| M〈N〉.P emission

| M〈x〉.P reception

| (νn).P restriction

| P|Q composition parallele

| !P replication

| if M = N then P else Q conditionnelle

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueTheories equationnelles

Chiffrement symetrique :

decrypt(encrypt(x , y), x) = y (1)

Chiffrement asymetrique :

adecrypt(sk(x), aencrypt(pk(x), y)) = y (2)

D’autre exemples : Signatures , fonctions de hachage ,etc.

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueTheories equationnelles

Chiffrement symetrique :

decrypt(encrypt(x , y), x) = y (1)

Chiffrement asymetrique :

adecrypt(sk(x), aencrypt(pk(x), y)) = y (2)

D’autre exemples : Signatures , fonctions de hachage ,etc.

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueTheories equationnelles

Chiffrement symetrique :

decrypt(encrypt(x , y), x) = y (1)

Chiffrement asymetrique :

adecrypt(sk(x), aencrypt(pk(x), y)) = y (2)

D’autre exemples : Signatures , fonctions de hachage ,etc.

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueSa semantique

Les relations binaires de reduction :

c〈M〉.P | c(x).Q −→ P|Q[M/x ]

if M = M then P else Q −→ Pif M = N then P else Q −→ Q

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueLa notion d’equivalence

Le test d’equivalence entre deux processus P et Q :Toutes ses execution est indistinguable par RPour un canal n :

P|R peuvent emettre m sur nssi

Q|R peuvent emettre m sur n

↪→ R represente une attaquantExemple : ( ! !)(vk).c〈encrypt(k , 0)〉 (vk).c〈encrypt(k, 1)〉

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueLa notion d’equivalence

Le test d’equivalence entre deux processus P et Q :Toutes ses execution est indistinguable par RPour un canal n :

P|R peuvent emettre m sur nssi

Q|R peuvent emettre m sur n

↪→ R represente une attaquant

Exemple : ( ! !)(vk).c〈encrypt(k , 0)〉 (vk).c〈encrypt(k, 1)〉

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueLa notion d’equivalence

Le test d’equivalence entre deux processus P et Q :Toutes ses execution est indistinguable par RPour un canal n :

P|R peuvent emettre m sur nssi

Q|R peuvent emettre m sur n

↪→ R represente une attaquantExemple : ( ! !)

(vk).c〈encrypt(k , 0)〉 (vk).c〈encrypt(k, 1)〉

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

π-calcul appliqueLa notion d’equivalence

Le test d’equivalence entre deux processus P et Q :Toutes ses execution est indistinguable par RPour un canal n :

P|R peuvent emettre m sur nssi

Q|R peuvent emettre m sur n

↪→ R represente une attaquantExemple : ( ! !)(vk).c〈encrypt(k , 0)〉 (vk).c〈encrypt(k, 1)〉

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

1 Protocoles cryptographiques

2 Representation formelle : Message ; Protocole ; Attaquant

3 Verification des protocoles

4 π-calcul applique

5 Example : handshake protocol

6 ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

handshake protocol

Un protocole qui permet a deux utilisateurs de verifiermutuellement des proprietes et, en cas de correspondance

simultanee, de partager une cle pour securiser lescommunications.

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Handshake naive

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Handshake naive

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Handshake naive

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Handshake naive

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Handshake naive

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Handshake naive

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Handshake naive

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Attaque Man-in-the-midlle

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Attaque Man-in-the-midlle

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Attaque Man-in-the-midlle

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Attaque Man-in-the-midlle

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Attaque Man-in-the-midlle

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Attaque Man-in-the-midlle

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Protocole de handshake corrige

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Protocole de handshake corrige

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Protocole de handshake corrige

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Protocole de handshake corrige

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Protocole de handshake corrige

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Protocole de handshake corrige

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

1 Protocoles cryptographiques

2 Representation formelle : Message ; Protocole ; Attaquant

3 Verification des protocoles

4 π-calcul applique

5 Example : handshake protocol

6 ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

A Propos de ProVerif

ProVerif est un outil de verification automatique de protocolescryptographiques developpe par Bruno Blanchet a l’ENS Ulm .

http ://prosecco.gforge.inria.fr/personal/bblanche/proverif/

Ces principales fonctionnalite sont les suivantes :• Il peut manipuler differents primitives cryptographiques

• Il manipule un nombre non limite de sessions du protocoleet une taille de message non limite .

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Comment fonctionne Proverif ?Horn de clause

Une clause de Horn est une clause comportant au plus unlitteral positif.

H1 ∧ ... ∧ Hn → C

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

ProVerif demo

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Applications de ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Applications de ProVerif

Analyseformelle desprotocolescryptogra-

phiques

Larbaoui lotfi

Protocolescryptogra-phiques

Representationformelle :Message ;Protocole ;Attaquant

Verificationdes protocoles

π-calculapplique

Example :handshakeprotocol

ProVerif

Bibliographie

Bruno BlanchetVerification automatique de protocoles cryptographiques :modele formel et modele calculatoireCNRS, Ecole Normale Superieure, INRIA

Martin AbadiSecurity Protocols : Principles and Calculi Tutorial NotesMicrosoft Research and University of California, Santa Cruz

Veronique Cortier & Steve KremerFormal Models and Techniques for Analyzing SecurityProtocols : A TutorialFoundations and Trends R©in Programming Languages