238
Introdução à Segurança Demonstrável Rafael Dantas de Castro Agosto de 2007 Rafael Dantas de Castro ()  Introdução à Segurança Demonstrável  Ag osto de 2007 1 / 90

Demonstrações de Seguranças - Semântica

Embed Size (px)

Citation preview

Page 1: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 1/238

Introdução à Segurança Demonstrável

Rafael Dantas de Castro

Agosto de 2007

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 1 / 90

Page 2: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 2/238

Organização geral

1   O que é “Segurança”?

2   Um primeiro criptossistema seguro

3   O Modelo do Oráculo Aleatório

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 2 / 90

Page 3: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 3/238

Nesta seção

1   O que é “Segurança”?Definição ingênua de segurançaA abordagem de Diffie-HellmanReduções de Segurança

Objeções à abordagem de Diffie-HellmanDefinições fortes de segurança

2   Um primeiro criptossistema seguro

3   O Modelo do Oráculo Aleatório

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 3 / 90

Page 4: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 4/238

O que é “Segurança”?

Apenas pessoas autorizadas devem ter acesso a informaçãoMecanismos para proteção: Obscuridade →  Esteganografia 

Transformações invertíveis →  Criptografia A criptografia estuda como transformar a informação garantindoque:

1   Pessoas não-autorizadas não conseguem “decifrar” a informaçãooriginal

2

  Pessoas autorizadas conseguem recuperar a informação original

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 4 / 90

Page 5: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 5/238

O que é “Segurança”?

Apenas pessoas autorizadas devem ter acesso a informaçãoMecanismos para proteção: Obscuridade →  Esteganografia 

Transformações invertíveis →  Criptografia A criptografia estuda como transformar a informação garantindoque:

1   Pessoas não-autorizadas não conseguem “decifrar” a informaçãooriginal

2

  Pessoas autorizadas conseguem recuperar a informação original

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 4 / 90

Page 6: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 6/238

O que é “Segurança”?

Apenas pessoas autorizadas devem ter acesso a informaçãoMecanismos para proteção: Obscuridade →  Esteganografia  Transformações invertíveis

 → Criptografia 

A criptografia estuda como transformar a informação garantindoque:

1   Pessoas não-autorizadas não conseguem “decifrar” a informaçãooriginal

2

  Pessoas autorizadas conseguem recuperar a informação original

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 4 / 90

Page 7: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 7/238

Criptossistemas

Conjunto de operações  que nos permite realizar os objetivosdescritos anteriormente:

Ciframento. transforma uma mensagem  em um texto cifrado Deciframento. obtém a mensagem original a partir de um textocifrado

Uma primeira definição de segurança:

Um criptossistema é seguro se apenas pessoas autorizadas 

conseguem decifrar textos cifrados 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 5 / 90

Page 8: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 8/238

Criptossistemas

Conjunto de operações  que nos permite realizar os objetivosdescritos anteriormente:

Ciframento. transforma uma mensagem  em um texto cifrado Deciframento. obtém a mensagem original a partir de um textocifrado

Uma primeira definição de segurança:

Um criptossistema é seguro se apenas pessoas autorizadas 

conseguem decifrar textos cifrados 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 5 / 90

Page 9: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 9/238

Chaves

Como definir pessoas autorizadas ? Pessoas que conhecem alguma informação especial , uma chave

Um criptossistema é seguro se apenas pessoas que conhecem a 

chave  correta podem decifrar textos cifrados 

Dois fatos importantes: Assumimos que a descrição do criptossistema é pública Como um adversário pode tentar todas as chaves possíveis, um

criptossistema segura precisa ter um conjunto  suficientemente 

grande  de chaves para evitar ataques de força bruta

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 6 / 90

Page 10: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 10/238

Chaves

Como definir pessoas autorizadas ? Pessoas que conhecem alguma informação especial , uma chave

Um criptossistema é seguro se apenas pessoas que conhecem a 

chave  correta podem decifrar textos cifrados 

Dois fatos importantes: Assumimos que a descrição do criptossistema é pública Como um adversário pode tentar todas as chaves possíveis, um

criptossistema segura precisa ter um conjunto  suficientemente 

grande  de chaves para evitar ataques de força bruta

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 6 / 90

Page 11: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 11/238

Chaves

Como definir pessoas autorizadas ? Pessoas que conhecem alguma informação especial , uma chave

Um criptossistema é seguro se apenas pessoas que conhecem a 

chave  correta podem decifrar textos cifrados 

Dois fatos importantes: Assumimos que a descrição do criptossistema é pública Como um adversário pode tentar todas as chaves possíveis, um

criptossistema segura precisa ter um conjunto  suficientemente 

grande  de chaves para evitar ataques de força bruta

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 6 / 90

Page 12: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 12/238

Chaves

Como definir pessoas autorizadas ? Pessoas que conhecem alguma informação especial , uma chave

Um criptossistema é seguro se apenas pessoas que conhecem a 

chave  correta podem decifrar textos cifrados 

Dois fatos importantes: Assumimos que a descrição do criptossistema é pública Como um adversário pode tentar todas as chaves possíveis, um

criptossistema segura precisa ter um conjunto  suficientemente 

grande  de chaves para evitar ataques de força bruta

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 6 / 90

Page 13: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 13/238

Criptossistemas

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 7 / 90

Page 14: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 14/238

Criptografia assimétrica (chave pública)

Introduzida por Diffie & Hellman em 1976

Funções unidirecionais com segredo  → as chaves utilizadas parao ciframento e para o deciframento não precisam ser iguais,apenas  relacionadas 

Resolve (parcialmente) o problema de distribuição de chaves

Não altera significativamente a idéia intuitiva de segurança

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 8 / 90

Page 15: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 15/238

Criptografia assimétrica (chave pública)

Introduzida por Diffie & Hellman em 1976

Funções unidirecionais com segredo  → as chaves utilizadas parao ciframento e para o deciframento não precisam ser iguais,apenas  relacionadas 

Resolve (parcialmente) o problema de distribuição de chaves

Não altera significativamente a idéia intuitiva de segurança

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 8 / 90

C i fi i é i ( h úbli )

Page 16: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 16/238

Criptografia assimétrica (chave pública)

Introduzida por Diffie & Hellman em 1976

Funções unidirecionais com segredo  → as chaves utilizadas parao ciframento e para o deciframento não precisam ser iguais,apenas  relacionadas 

Resolve (parcialmente) o problema de distribuição de chaves

Não altera significativamente a idéia intuitiva de segurança

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 8 / 90

C i fi d h úbli

Page 17: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 17/238

Criptografia de chave pública

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 9 / 90

Ti d S

Page 18: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 18/238

Tipos de Segurança

Segurança geralmente não é um conceito absoluto.Um criptossistema pode ser incondicionalmente  seguro:

possível em criptossistemas simétricos; caracterização feita por Shannon (Teoria da Informação); One-Time Pad:  chaves tão grandes quanto mensagens. Impossível para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 10 / 90

Ti d S

Page 19: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 19/238

Tipos de Segurança

Segurança geralmente não é um conceito absoluto.Um criptossistema pode ser incondicionalmente  seguro:

possível em criptossistemas simétricos; caracterização feita por Shannon (Teoria da Informação); One-Time Pad:  chaves tão grandes quanto mensagens. Impossível para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 10 / 90

Tipos de Seg rança

Page 20: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 20/238

Tipos de Segurança

Segurança geralmente não é um conceito absoluto.Um criptossistema pode ser incondicionalmente  seguro:

possível em criptossistemas simétricos; caracterização feita por Shannon (Teoria da Informação); One-Time Pad:  chaves tão grandes quanto mensagens. Impossível para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 10 / 90

Tipos de Segurança

Page 21: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 21/238

Tipos de Segurança

Incondicional

Estatística

Computacional Não existem algoritmos eficientes capazes de quebrar o

criptossistema. Objetivo para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 11 / 90

Tipos de Segurança

Page 22: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 22/238

Tipos de Segurança

Incondicional

Estatística

Computacional Não existem algoritmos eficientes capazes de quebrar o

criptossistema. Objetivo para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 11 / 90

Tipos de Segurança

Page 23: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 23/238

Tipos de Segurança

Incondicional

Estatística

Computacional Não existem algoritmos eficientes capazes de quebrar o

criptossistema. Objetivo para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 11 / 90

Tipos de Segurança

Page 24: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 24/238

Tipos de Segurança

Incondicional

Estatística

Computacional Não existem algoritmos eficientes capazes de quebrar ocriptossistema.

Objetivo para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 11 / 90

Tipos de Segurança

Page 25: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 25/238

Tipos de Segurança

Incondicional

Estatística

Computacional Não existem algoritmos eficientes capazes de quebrar ocriptossistema.

Objetivo para criptossistemas assimétricos.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 11 / 90

Criptossistemas de chave pública

Page 26: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 26/238

Criptossistemas de chave pública

DefiniçãoUm criptossistema de chave pública  C  é uma tupla G ,E ,D  dealgoritmos tais que:

G  : {0,1}∗ → {0, 1}∗ × {0,1}∗ é o algoritmo de geração dechaves:  G (1k ) → (SK,PK)

E PK : MC  → CC é o algoritmo de ciframento;

D SK  : CC  → MC é o algoritmo de deciframento

Eficiência.  G ,E ,D  são algoritmos polinomiais

Correção.  ∀M  ∈M

C, e ∀(SK,PK) ∈ G (1

), tem-se queD SK(E PK(M )) = M 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 12 / 90

Funções (unidirecionais) com segredo

Page 27: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 27/238

Funções (unidirecionais) com segredo

DefiniçãoUma função f   : D f   → I f  é dita unidirecional com segredo se existemalgoritmos polinomiais (I ,D ,A,A−1) tais que:

1 Geração com Segredo.  (f , s ) ← I (1n )

2

Amostragem.  D (1n 

) é uniformemente distribuída em  D f .3 Eficiência de Cálculo.  X n  ← D (1n ),A(X n ) = f (X n )

4 Dificuldade de Inversão. Para todo algoritmo B  polinomial, e n 

suficientemente grande

Pr[B (f (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(f (X n ), s ) = X n 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 13 / 90

Funções (unidirecionais) com segredo

Page 28: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 28/238

Funções (unidirecionais) com segredo

DefiniçãoUma função f   : D f   → I f  é dita unidirecional com segredo se existemalgoritmos polinomiais (I ,D ,A,A−1) tais que:

1 Geração com Segredo.  (f , s ) ← I (1n )

2

Amostragem.  D (1n 

) é uniformemente distribuída em  D f .3 Eficiência de Cálculo.  X n  ← D (1n ),A(X n ) = f (X n )

4 Dificuldade de Inversão. Para todo algoritmo B  polinomial, e n 

suficientemente grande

Pr[B (f (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(f (X n ), s ) = X n 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 13 / 90

Funções (unidirecionais) com segredo

Page 29: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 29/238

Funções (unidirecionais) com segredo

DefiniçãoUma função f   : D f   → I f  é dita unidirecional com segredo se existemalgoritmos polinomiais (I ,D ,A,A−1) tais que:

1 Geração com Segredo.  (f , s ) ← I (1n )

2

Amostragem.  D (1n 

) é uniformemente distribuída em  D f .3 Eficiência de Cálculo.  X n  ← D (1n ),A(X n ) = f (X n )

4 Dificuldade de Inversão. Para todo algoritmo B  polinomial, e n 

suficientemente grande

Pr[B (f (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(f (X n ), s ) = X n 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 13 / 90

Funções (unidirecionais) com segredo

Page 30: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 30/238

Funções (unidirecionais) com segredo

DefiniçãoUma função f   : D f   → I f  é dita unidirecional com segredo se existemalgoritmos polinomiais (I ,D ,A,A−1) tais que:

1 Geração com Segredo.  (f , s ) ← I (1n )

2

Amostragem.  D (1n 

) é uniformemente distribuída em  D f .3 Eficiência de Cálculo.  X n  ← D (1n ),A(X n ) = f (X n )

4 Dificuldade de Inversão. Para todo algoritmo B  polinomial, e n 

suficientemente grande

Pr[B (f (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(f (X n ), s ) = X n 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 13 / 90

Funções (unidirecionais) com segredo

Page 31: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 31/238

Funções (unidirecionais) com segredo

DefiniçãoUma função f   : D f   → I f  é dita unidirecional com segredo se existemalgoritmos polinomiais (I ,D ,A,A−1) tais que:

1 Geração com Segredo.  (f , s ) ← I (1n )

2

Amostragem.  D (1n 

) é uniformemente distribuída em  D f .3 Eficiência de Cálculo.  X n  ← D (1n ),A(X n ) = f (X n )

4 Dificuldade de Inversão. Para todo algoritmo B  polinomial, e n 

suficientemente grande

Pr[B (f (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(f (X n ), s ) = X n 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 13 / 90

Funções unidirecionais com segredo - RSA

Page 32: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 32/238

ç g

Geração.

Escolhe dois primos p  e q ; calcula n  = pq ; escolhe e , d  tais queed  ≡ 1   (mod  φ(n )); retorna (n ,e ),d .

Função.Dado um x , F RSA(x ) = x e  mod  n .

Inversão com segredo.

Dado um y  = F RSA(x ), calcule F −1RSA(y ) = y d  mod  n  ≡ x   (mod  n ).

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 14 / 90

Funções Unidirecionais com segredo - Rabin

Page 33: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 33/238

ç g

Geração.Escolhe dois primos p  e q ; calcula n  = pq ; retorna n , (p , q ).

Função.

Dado um x , F Rabin(x ) = x 2 mod  n .

Inversão com segredo.

Dado um y  = F Rabin(x ), calcular x 1 = y 12   mod  p  e  x 2 = y 

12   mod  q ;

combinar usando o TCR; x  é uma das quatro possíveis soluções.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 15 / 90

Como avaliar a segurança de um criptossistema?

Page 34: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 34/238

g ç p

Digamos que queremos avaliar o Rabin .O que podemos fazer?

1   Tentar atacar de todas as formas possíveis. Impossível obter garantias

2   Derivar evidências matemáticas sobre sua segurança. Idealmente, queremos obter uma demonstração de segurança .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 16 / 90

Como avaliar a segurança de um criptossistema?

Page 35: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 35/238

g ç p

Digamos que queremos avaliar o Rabin .O que podemos fazer?

1   Tentar atacar de todas as formas possíveis. Impossível obter garantias

2   Derivar evidências matemáticas sobre sua segurança. Idealmente, queremos obter uma demonstração de segurança .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 16 / 90

Como avaliar a segurança de um criptossistema?

Page 36: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 36/238

Digamos que queremos avaliar o Rabin .O que podemos fazer?

1   Tentar atacar de todas as formas possíveis. Impossível obter garantias

2   Derivar evidências matemáticas sobre sua segurança. Idealmente, queremos obter uma demonstração de segurança .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 16 / 90

Como avaliar a segurança de um criptossistema?

Page 37: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 37/238

Digamos que queremos avaliar o Rabin .O que podemos fazer?

1   Tentar atacar de todas as formas possíveis. Impossível obter garantias

2   Derivar evidências matemáticas sobre sua segurança. Idealmente, queremos obter uma demonstração de segurança .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 16 / 90

Demonstrações de Segurança

Page 38: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 38/238

Todo criptossistema de chave pública é naturalmente baseado emuma suposição de intratabilidade . Fatoração  no caso do RSA e do Rabin.

Isto não significa que quebrar o criptossistema seja tão difícil

quanto resolver o problema difícil. A fatoração é redutível ao Rabin. Não há evidência que o mesmo valha para o RSA.

Como reduzimos então um problema (difícil) à segurança de umcriptossistema?

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 17 / 90

Demonstrações de Segurança

Page 39: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 39/238

Todo criptossistema de chave pública é naturalmente baseado emuma suposição de intratabilidade . Fatoração  no caso do RSA e do Rabin.

Isto não significa que quebrar o criptossistema seja tão difícil

quanto resolver o problema difícil. A fatoração é redutível ao Rabin. Não há evidência que o mesmo valha para o RSA.

Como reduzimos então um problema (difícil) à segurança de umcriptossistema?

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 17 / 90

Demonstrações de Segurança

Page 40: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 40/238

Todo criptossistema de chave pública é naturalmente baseado emuma suposição de intratabilidade . Fatoração  no caso do RSA e do Rabin.

Isto não significa que quebrar o criptossistema seja tão difícil

quanto resolver o problema difícil. A fatoração é redutível ao Rabin. Não há evidência que o mesmo valha para o RSA.

Como reduzimos então um problema (difícil) à segurança de umcriptossistema?

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 17 / 90

Page 41: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 41/238

Demonstrações de Segurança

Page 42: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 42/238

Todo criptossistema de chave pública é naturalmente baseado emuma suposição de intratabilidade . Fatoração  no caso do RSA e do Rabin.

Isto não significa que quebrar o criptossistema seja tão difícil

quanto resolver o problema difícil. A fatoração é redutível ao Rabin. Não há evidência que o mesmo valha para o RSA.

Como reduzimos então um problema (difícil) à segurança de umcriptossistema?

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 17 / 90

Estrutura de uma redução

Page 43: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 43/238

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 18 / 90

Segurança do Rabin

Page 44: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 44/238

TeoremaSe existir um algoritmo A capaz de decifrar textos cifrados do Rabin,existe um algoritmo D capaz de fatorar inteiros grandes.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 19 / 90

Segurança do Rabin

Page 45: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 45/238

Descrição de D.1 Recebe N .2 enquanto não tiver sucesso:

1   escolhe x 

  r

← ZN ;2   calcula y  = x 2 mod  N ;3   executa w  ← A(y ,N );

Se w  = ±x   (mod  N )  SUCESSO Caso contrário,  FALHA

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 20 / 90

Segurança do Rabin

Page 46: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 46/238

Descrição de D.1 Recebe N .2 enquanto não tiver sucesso:

1   escolhe x 

  r

← ZN ;2   calcula y  = x 2 mod  N ;3   executa w  ← A(y ,N );

Se w  = ±x   (mod  N )  SUCESSO Caso contrário,  FALHA

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 20 / 90

Segurança do Rabin

Page 47: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 47/238

Descrição de D.1 Recebe N .2 enquanto não tiver sucesso:

1   escolhe x 

  r

← ZN ;2   calcula y  = x 2 mod  N ;3   executa w  ← A(y ,N );

Se w  = ±x   (mod  N )  SUCESSO Caso contrário,  FALHA

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 20 / 90

Segurança do Rabin

Page 48: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 48/238

Descrição de D.1 Recebe N .2 enquanto não tiver sucesso:

1   escolhe x 

  r

← ZN ;2   calcula y  = x 2 mod  N ;3   executa w  ← A(y ,N );

Se w  = ±x   (mod  N )  SUCESSO Caso contrário,  FALHA

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 20 / 90

Segurança do Rabin

Page 49: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 49/238

Descrição de D.1 Recebe N .2 enquanto não tiver sucesso:

1   escolhe x 

  r

←Z

N ;2   calcula y  = x 2 mod  N ;3   executa w  ← A(y ,N );

Se w  = ±x   (mod  N )  SUCESSO Caso contrário,  FALHA

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 20 / 90

Segurança do Rabin

Page 50: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 50/238

Descrição de D.1 Recebe N .2 enquanto não tiver sucesso:

1   escolhe x 

  r

←Z

N ;2   calcula y  = x 2 mod  N ;3   executa w  ← A(y ,N );

Se w  = ±x   (mod  N )  SUCESSO Caso contrário,  FALHA

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 20 / 90

Segurança do Rabin

Page 51: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 51/238

Sabemos que y  = x 2 mod  N  tem quatro raízes quadradas seN  = pq . ±r 1 ±r 2

Em caso de sucesso, D conhece x ,w  tais que x 2 ≡ w 2 (mod N ), mas x  = ±w   (mod  N )

Então d  = MDC ((w  − x ),N ) divide N .

w 2 ≡   x 2 (mod  N )

w 2 − x 2 ≡   0   (mod  N )

(w  − x )(w  + x )   ≡   0   (mod  N )(w  − x )(w  + x ) = kN 

Logo, em caso de sucesso,  D consegue fatorar N .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 21 / 90

Segurança do Rabin

Page 52: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 52/238

Sabemos que y  = x 2 mod  N  tem quatro raízes quadradas seN  = pq . ±r 1 ±r 2

Em caso de sucesso, D conhece x ,w  tais que x 2 ≡ w 2 (mod N ), mas x  = ±w   (mod  N )

Então d  = MDC ((w  − x ),N ) divide N .

w 2 ≡   x 2 (mod  N )

w 2 − x 2 ≡   0   (mod  N )

(w  − x )(w  + x )   ≡   0   (mod  N )(w  − x )(w  + x ) = kN 

Logo, em caso de sucesso,  D consegue fatorar N .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 21 / 90

Segurança do Rabin

Page 53: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 53/238

Sabemos que y  = x 2 mod  N  tem quatro raízes quadradas seN  = pq . ±r 1 ±r 2

Em caso de sucesso, D conhece x ,w  tais que x 2 ≡ w 2 (mod N ), mas x  = ±w   (mod  N )

Então d  = MDC ((w  − x ),N ) divide N .

w 2 ≡   x 2 (mod  N )

w 2 − x 2 ≡   0   (mod  N )

(w  − x )(w  + x )   ≡   0   (mod  N )(w  − x )(w  + x ) = kN 

Logo, em caso de sucesso,  D consegue fatorar N .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 21 / 90

Segurança do Rabin

Page 54: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 54/238

Sabemos que y  = x 2 mod  N  tem quatro raízes quadradas seN  = pq . ±r 1 ±r 2

Em caso de sucesso, D conhece x ,w  tais que x 2 ≡ w 2 (mod N ), mas x  = ±w   (mod  N )

Então d  = MDC ((w  − x ),N ) divide N .

w 2 ≡   x 2 (mod  N )

w 2 − x 2 ≡   0   (mod  N )

(w  − x )(w  + x )   ≡   0   (mod  N )(w  − x )(w  + x ) = kN 

Logo, em caso de sucesso,  D consegue fatorar N .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 21 / 90

Segurança do Rabin

Page 55: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 55/238

Sabemos que y  = x 2 mod  N  tem quatro raízes quadradas seN  = pq .

±r 1 ±r 2

Em caso de sucesso, D conhece x ,w  tais que x 2 ≡ w 2 (mod N ), mas x  = ±w   (mod  N )

Então d  = MDC ((w  − x ),N ) divide N .

w 2 ≡   x 2 (mod  N )

w 2 − x 2 ≡   0   (mod  N )

(w  − x )(w  + x )   ≡   0   (mod  N )(w  − x )(w  + x ) = kN 

Logo, em caso de sucesso,  D consegue fatorar N .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 21 / 90

Segurança do Rabin

Page 56: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 56/238

Probabilidade de sucesso.1   Seja λ(k ) a chance de A quebrar o Rabin. Supomos que  λ(k ) é não-desprezível. (λ(k ) ≥   1

p (n ))

2   A probabilidade de uma iteração de D  conseguir fatorar N  éPr[D 1] =   1

2λ(k ).3   Logo, a probabilidade de n  iterações de D  fatorarem N  é

Pr[D n ] = (1 − λ(k )

2  )n 

4   O tempo de execução de D  cai exponencialmente com o aumentoda probabilidade de acerto de A

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 22 / 90

Segurança do Rabin

Page 57: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 57/238

Probabilidade de sucesso.1   Seja λ(k ) a chance de A quebrar o Rabin. Supomos que  λ(k ) é não-desprezível. (λ(k ) ≥   1

p (n ))

2   A probabilidade de uma iteração de D  conseguir fatorar N  éPr[D 1] =   1

2λ(k ).3   Logo, a probabilidade de n  iterações de D  fatorarem N  é

Pr[D n ] = (1 − λ(k )

2  )n 

4   O tempo de execução de D  cai exponencialmente com o aumentoda probabilidade de acerto de A

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 22 / 90

Segurança do Rabin

Page 58: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 58/238

Probabilidade de sucesso.1   Seja λ(k ) a chance de A quebrar o Rabin. Supomos que  λ(k ) é não-desprezível. (λ(k ) ≥   1

p (n ))

2   A probabilidade de uma iteração de D  conseguir fatorar N  éPr[D 1] =   1

2λ(k ).3   Logo, a probabilidade de n  iterações de D  fatorarem N  é

Pr[D n ] = (1 − λ(k )

2  )n 

4   O tempo de execução de D  cai exponencialmente com o aumentoda probabilidade de acerto de A

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 22 / 90

Objeções

Page 59: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 59/238

“Problemas” utilizando esquemas do estilo Diffie-Hellman:1   Como enviar um bit  de maneira segura2   Como jogar pôquer pelo telefone

As idéias originais de Diffie & Hellman não são suficientes para

garantir a segurança nestes dois cenáriosA nossa noção “intuitiva” de segurança também não garante asegurança destes casos

Precisamos de melhores definições de “segurança” 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 23 / 90

Objeções

Page 60: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 60/238

“Problemas” utilizando esquemas do estilo Diffie-Hellman:1   Como enviar um bit  de maneira segura2   Como jogar pôquer pelo telefone

As idéias originais de Diffie & Hellman não são suficientes para

garantir a segurança nestes dois cenáriosA nossa noção “intuitiva” de segurança também não garante asegurança destes casos

Precisamos de melhores definições de “segurança” 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 23 / 90

Objeções

Page 61: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 61/238

“Problemas” utilizando esquemas do estilo Diffie-Hellman:1   Como enviar um bit  de maneira segura2   Como jogar pôquer pelo telefone

As idéias originais de Diffie & Hellman não são suficientes para

garantir a segurança nestes dois cenáriosA nossa noção “intuitiva” de segurança também não garante asegurança destes casos

Precisamos de melhores definições de “segurança” 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 23 / 90

Objeções

Page 62: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 62/238

“Problemas” utilizando esquemas do estilo Diffie-Hellman:1   Como enviar um bit  de maneira segura2   Como jogar pôquer pelo telefone

As idéias originais de Diffie & Hellman não são suficientes para

garantir a segurança nestes dois cenáriosA nossa noção “intuitiva” de segurança também não garante asegurança destes casos

Precisamos de melhores definições de “segurança” 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 23 / 90

Modelos de ataque

Page 63: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 63/238

O que é um ataque? Informações a que um adversário tem acesso Possibilidade de interação com usuários

O que é um ataque bem-sucedido?

Que informação desejamos esconder O que é “quebrar” o criptossistema

Modelo simplificado de ataque: adversário passivo Intercepta mensagens cifradas Tenta atacar o criptossistema sem capacidade extra

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 24 / 90

Modelos de ataque

Page 64: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 64/238

O que é um ataque? Informações a que um adversário tem acesso Possibilidade de interação com usuários

O que é um ataque bem-sucedido?

Que informação desejamos esconder O que é “quebrar” o criptossistema

Modelo simplificado de ataque: adversário passivo Intercepta mensagens cifradas Tenta atacar o criptossistema sem capacidade extra

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 24 / 90

Modelos de ataque

Page 65: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 65/238

O que é um ataque? Informações a que um adversário tem acesso Possibilidade de interação com usuários

O que é um ataque bem-sucedido?

Que informação desejamos esconder O que é “quebrar” o criptossistema

Modelo simplificado de ataque: adversário passivo Intercepta mensagens cifradas Tenta atacar o criptossistema sem capacidade extra

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 24 / 90

Modelos de ataque

Page 66: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 66/238

O que é um ataque? Informações a que um adversário tem acesso Possibilidade de interação com usuários

O que é um ataque bem-sucedido?

Que informação desejamos esconder O que é “quebrar” o criptossistema

Modelo simplificado de ataque: adversário passivo Intercepta mensagens cifradas Tenta atacar o criptossistema sem capacidade extra

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 24 / 90

Segurança Semântica

Page 67: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 67/238

“Um bom disfarce não deve revelar a altura da pessoa”,

[Goldwasser & Micali, 1982]

Segurança Semântica:  nenhuma informação adicional  pode serobtida a partir da observação de um texto cifrado

Qualquer função polinomial do texto claro que pode ser calculadaa partir do texto cifrado pode ser calculada sem a sua observação.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 25 / 90

Segurança Semântica

Page 68: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 68/238

“Um bom disfarce não deve revelar a altura da pessoa”,

[Goldwasser & Micali, 1982]

Segurança Semântica:  nenhuma informação adicional  pode serobtida a partir da observação de um texto cifrado

Qualquer função polinomial do texto claro que pode ser calculadaa partir do texto cifrado pode ser calculada sem a sua observação.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 25 / 90

Segurança Semântica

Page 69: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 69/238

Definição

Um criptossistema (G ,E ,D ) é semanticamente seguro se para todoalgoritmo polinomial A existe um A tal que

Pr[A(1n ,G 1(1n ),E G 1(1n )(X n ),1|X n |,h (1n ,X n )) = f (1n ,X n )]

< Pr[A(1n , 1|X n |, h (1n ,X n )) = f (1n ,X n )] +  1p (n ) ,

para

todo par de funções polinomiais  f ,h  : {0,1}∗ → {0, 1}∗

todo polinômio positivo p todo n  suficientemente grande

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 26 / 90

Indistinguibilidade

Page 70: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 70/238

“Um bom disfarce não deve permitir que uma mãe distinga entre seus próprios filhos”,

[Goldwasser & Micali, 1982]

Segurança Polinomial – “Indistinguibilidade”

Sejam duas mensagems m 0,m 1

Sejam os textos cifrados respectivos x 0  = E (m 0), x 1 = E (m 1)

Um adversário não consegue escolher m 0,m 1 tais que, ao receber o texto cifrado x i , para i 

  r← {0,1}, ele consiga decidir a

qual mensagem x i  se refere.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 27 / 90

Indistinguibilidade

Page 71: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 71/238

Definição 1Um criptossistema (G ,E ,D ) é polinomialmente seguro se para todoalgoritmo polinomial A

| Pr[A(1n , x , y ,G 1(1n ),E G 1(1n )(x )) = 1]

− Pr[A(1n , x , y ,G 1(1n ),E G 1(1n )(y )) = 1]|   <   1p (n )

,

para

todo polinômio positivo p 

todo n  suficientemente grande

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 28 / 90

Indistinguibilidade

Page 72: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 72/238

Definição 2Um criptossistema (G ,E ,D ) é polinomialmente seguro se para todoalgoritmo polinomial A

Pr[A(1n ,m 0,m 1,G 1(1n ),E G 1(1n )(m i )) = i ] < 1

2

 +  1

p (n )para

i   r← {0,1}

todo polinômio positivo p 

todo n  suficientemente grande

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 29 / 90

Ciframento probabilístico

Page 73: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 73/238

O ciframento (determinístico) como em Diffie & Hellman nuncapode ser polinomialmente seguro O texto cifrado de cada mensagem é único

Goldwasser & Micali propuseram a noção de ciframentoprobabilístico Uma única mensagem pode resultar um número imenso de textos

cifrados diferentes

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 30 / 90

Ciframento probabilístico

Page 74: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 74/238

O ciframento (determinístico) como em Diffie & Hellman nuncapode ser polinomialmente seguro O texto cifrado de cada mensagem é único

Goldwasser & Micali propuseram a noção de ciframentoprobabilístico Uma única mensagem pode resultar um número imenso de textos

cifrados diferentes

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 30 / 90

A noção “correta” de segurança

Page 75: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 75/238

Segurança semântica ou indistinguibilidade?Segurança Semântica Intuitiva: qualquer informação relacionada à mensagem é difícil de

calcular dado apenas o texto cifrado

Indistinguibilidade Mais artificial porém muito mais fácil de se trabalhar

Em [Goldwasser & Micali, 1982] prova-se que indistinguibilidade 

implica segurança semântica.

Em [Micali et al., 1988] prova-se que as duas noções são 

equivalentes (em ataques passivos)

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 31 / 90

A noção “correta” de segurança

Page 76: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 76/238

Segurança semântica ou indistinguibilidade?Segurança Semântica Intuitiva: qualquer informação relacionada à mensagem é difícil de

calcular dado apenas o texto cifrado

Indistinguibilidade Mais artificial porém muito mais fácil de se trabalhar

Em [Goldwasser & Micali, 1982] prova-se que indistinguibilidade 

implica segurança semântica.

Em [Micali et al., 1988] prova-se que as duas noções são 

equivalentes (em ataques passivos)

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 31 / 90

A noção “correta” de segurança

Page 77: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 77/238

Segurança semântica ou indistinguibilidade?Segurança Semântica Intuitiva: qualquer informação relacionada à mensagem é difícil de

calcular dado apenas o texto cifrado

Indistinguibilidade Mais artificial porém muito mais fácil de se trabalhar

Em [Goldwasser & Micali, 1982] prova-se que indistinguibilidade 

implica segurança semântica.

Em [Micali et al., 1988] prova-se que as duas noções são 

equivalentes (em ataques passivos)

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 31 / 90

A noção “correta” de segurança

Page 78: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 78/238

Segurança semântica ou indistinguibilidade?Segurança Semântica Intuitiva: qualquer informação relacionada à mensagem é difícil de

calcular dado apenas o texto cifrado

Indistinguibilidade Mais artificial porém muito mais fácil de se trabalhar

Em [Goldwasser & Micali, 1982] prova-se que indistinguibilidade 

implica segurança semântica.

Em [Micali et al., 1988] prova-se que as duas noções são 

equivalentes (em ataques passivos)

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 31 / 90

Retrato de um ataque

Page 79: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 79/238

Apenas adversários passivos (CPA)Indistinguibilidade  como noção de segurançaUm adversário é um algoritmo A que

1   Recebe como entrada PK2   Escolhe um par de mensagens m 0,m 13   Recebe como entrada αi  = E SK (m i ), para i    r← {0,1}.4   Após um número polinomial de passos deve responder o valor i 

As primeiras provas vão então supor, por absurdo, que um tal Aexista e construir um desafiante  D que o utiliza para resolver

algum problema (suposto) difícil

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 32 / 90

Retrato de um ataque

Page 80: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 80/238

Apenas adversários passivos (CPA)Indistinguibilidade  como noção de segurançaUm adversário é um algoritmo A que

1   Recebe como entrada PK2   Escolhe um par de mensagens m 0,m 13   Recebe como entrada αi  = E SK (m i ), para i    r← {0,1}.4   Após um número polinomial de passos deve responder o valor i 

As primeiras provas vão então supor, por absurdo, que um tal Aexista e construir um desafiante  D que o utiliza para resolver

algum problema (suposto) difícil

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 32 / 90

Retrato de um ataque

Page 81: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 81/238

Apenas adversários passivos (CPA)Indistinguibilidade  como noção de segurançaUm adversário é um algoritmo A que

1   Recebe como entrada PK2   Escolhe um par de mensagens m 0,m 13   Recebe como entrada αi  = E SK (m i ), para i    r← {0,1}.4   Após um número polinomial de passos deve responder o valor i 

As primeiras provas vão então supor, por absurdo, que um tal Aexista e construir um desafiante  D que o utiliza para resolver

algum problema (suposto) difícil

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 32 / 90

Retrato de um Ataque (CPA)

Page 82: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 82/238

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 33 / 90

Perguntas?

Page 83: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 83/238

Dúvidas?? Perguntas???

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 34 / 90

Page 84: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 84/238

Permutações (unidirecionais) com segredoUma permutação com segredo é uma função unidirecional comsegredo que também é uma permutação no seu domínio

Page 85: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 85/238

segredo que também é uma permutação no seu domínio

Permutação com segredoUma permutação p  : D p  → D p  é dita unidirecional com segredo seexistem algoritmos (I ,D ,A,A−1) tais que:

1   Geração com Segredo.  (p , s ) ←  I (1n )

2   Amostragem. A saída de D (1n ) é uniformemente distribuída em  D p 

3   Eficiência de Cálculo. X n  ← D (1n ),A(X n ) = p (X n )

4   Dificuldade de Inversão. Para todo B  polinomial, e n  suficientementegrande

Pr[B (p (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(p (X n ), s ) = X n 

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 36 / 90

Permutações (unidirecionais) com segredoUma permutação com segredo é uma função unidirecional comsegredo que também é uma permutação no seu domínio

Page 86: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 86/238

segredo que também é uma permutação no seu domínio

Permutação com segredoUma permutação p  : D p  → D p  é dita unidirecional com segredo seexistem algoritmos (I ,D ,A,A−1) tais que:

1   Geração com Segredo.  (p , s ) ←  I (1n )

2   Amostragem. A saída de D (1n ) é uniformemente distribuída em  D p 

3   Eficiência de Cálculo. X n  ← D (1n ),A(X n ) = p (X n )

4   Dificuldade de Inversão. Para todo B  polinomial, e n  suficientementegrande

Pr[B (p (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(p (X n ), s ) = X n 

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 36 / 90

Permutações (unidirecionais) com segredoUma permutação com segredo é uma função unidirecional comsegredo que também é uma permutação no seu domínio

Page 87: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 87/238

segredo que também é uma permutação no seu domínio

Permutação com segredoUma permutação p  : D p  → D p  é dita unidirecional com segredo seexistem algoritmos (I ,D ,A,A−1) tais que:

1   Geração com Segredo.  (p , s ) ←  I (1n )

2   Amostragem. A saída de D (1n ) é uniformemente distribuída em  D p 

3   Eficiência de Cálculo. X n  ← D (1n ),A(X n ) = p (X n )

4   Dificuldade de Inversão. Para todo B  polinomial, e n  suficientementegrande

Pr[B (p (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(p (X n ), s ) = X n 

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 36 / 90

Permutações (unidirecionais) com segredoUma permutação com segredo é uma função unidirecional comsegredo que também é uma permutação no seu domínio

Page 88: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 88/238

segredo que também é uma permutação no seu domínio

Permutação com segredoUma permutação p  : D p  → D p  é dita unidirecional com segredo seexistem algoritmos (I ,D ,A,A−1) tais que:

1   Geração com Segredo.  (p , s ) ←  I (1n )

2   Amostragem. A saída de D (1n ) é uniformemente distribuída em  D p 

3   Eficiência de Cálculo. X n  ← D (1n ),A(X n ) = p (X n )

4   Dificuldade de Inversão. Para todo B  polinomial, e n  suficientementegrande

Pr[B (p (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(p (X n ), s ) = X n 

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 36 / 90

Permutações (unidirecionais) com segredoUma permutação com segredo é uma função unidirecional comsegredo que também é uma permutação no seu domínio

Page 89: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 89/238

segredo que também é uma permutação no seu domínio

Permutação com segredoUma permutação p  : D p  → D p  é dita unidirecional com segredo seexistem algoritmos (I ,D ,A,A−1) tais que:

1   Geração com Segredo.  (p , s ) ←  I (1n )

2   Amostragem. A saída de D (1n ) é uniformemente distribuída em  D p 

3   Eficiência de Cálculo. X n  ← D (1n ),A(X n ) = p (X n )

4   Dificuldade de Inversão. Para todo B  polinomial, e n  suficientementegrande

Pr[B (p (X n )) = X n ] <  1

poli (n )

5 Inversão com Segredo.  X n  ← D (1n ),A−1(p (X n ), s ) = X n 

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 36 / 90

Page 90: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 90/238

Hard-core de uma função

Page 91: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 91/238

Hard-Core de uma funçãoSeja b  : {0,1}∗ → {0,1}∗ tal que que ∀x , y  |x | =  |y | → |b (x )| =  |b (y )|.

Seja l (n ) def=   |b (1n )|.

A função b  é chamada de hard-core  da função f  se, para todoalgoritmo polinomial A e  n  suficientemente grande, tem-se

abs Pr[A(f (X n ),b (X n )) = 1] − Pr[A(f (X n ),R l (n )) = 1]

 <

  1p (n )

,

onde X n  e R l (n ) são duas variáveis aleatórias independentes

uniformemente distribuídas em {0,1}n  e {0, 1}l (n ) respectivamente.

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 38 / 90

Exemplo

Page 92: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 92/238

Suponha que, para escolhas apropriadas de parâmetros, a função

F e ,N (x ) = x e  mod  N 

seja uma permutação com segredoSabe-se [Goldwasser et al., 1982] que o bit menos significativo dex  é um hard-core de F e ,N 

Rafael Dantas de Castro () Introdução à Segurança Demonstrável Agosto de 2007 39 / 90

O criptossistema CS-2

Geração de Chaves.

Page 93: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 93/238

Geração de Chaves.

Seleciona-se aleatoriamente uma permutação p  com segredo s p 

associado, e um hard-core b p  de p .

Ciframento.

Seja σ  o bit a ser cifrado. Selecione  r   r

← D p  e calcule o texto cifradoC  = p (r ), σ ⊕ b p (r ).

Deciframento.

Seja C  = γ 1, γ 2 o texto a decifrar. Utilizando  s p , calcule r 

= p −1

(γ 1);o bit original é σ  = γ 2 ⊕ b p (r ).

R f l D t d C t () I t d ã à S D t á l A t d 2007 40 / 90

CS-2 - Demonstração de segurança

Page 94: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 94/238

Lembrando indistinguibilidade Não existe adversário A capaz de escolher m 0,m 1, tais que ele

consegue diferenciar E PK(m 0) de E PK (m 1) com probabilidadenão-desprezível

Como o ciframento aqui ocorre bit-a-bit, podemos supor que

m 0  = 0 e m 1  = 1.Precisamos provar então que, para todo adversário A,

Prα,r 

[A(p α(r ),1 ⊕ b (r )) = 1] − Prα,r 

[A(p α(r ), 0 ⊕ b (r )) = 1] <  1

poli (n )

R f l D t d C t () I t d ã à S D t á l A t d 2007 41 / 90

CS-2 - Demonstração de segurança

Page 95: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 95/238

Lembrando indistinguibilidade Não existe adversário A capaz de escolher m 0,m 1, tais que ele

consegue diferenciar E PK(m 0) de E PK (m 1) com probabilidadenão-desprezível

Como o ciframento aqui ocorre bit-a-bit, podemos supor que

m 0  = 0 e m 1  = 1.Precisamos provar então que, para todo adversário A,

Prα,r 

[A(p α(r ),1 ⊕ b (r )) = 1] − Prα,r 

[A(p α(r ), 0 ⊕ b (r )) = 1] <  1

poli (n )

R f l D t d C t () I t d ã à S D t á l A t d 2007 41 / 90

CS-2 - Demonstração de segurança

Page 96: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 96/238

Lembrando indistinguibilidade Não existe adversário A capaz de escolher m 0,m 1, tais que ele

consegue diferenciar E PK(m 0) de E PK (m 1) com probabilidadenão-desprezível

Como o ciframento aqui ocorre bit-a-bit, podemos supor que

m 0  = 0 e m 1  = 1.Precisamos provar então que, para todo adversário A,

Prα,r 

[A(p α(r ),1 ⊕ b (r )) = 1] − Prα,r 

[A(p α(r ), 0 ⊕ b (r )) = 1] <  1

poli (n )

R f l D t d C t () I t d ã à S D t á l A t d 2007 41 / 90

CS-2 - Demonstração de segurança

Suponha então, por absurdo, que exista um  A que distingueE (0) e E (1) com probabilidade não desprezível

Page 97: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 97/238

E α(0) e  E α(1) com probabilidade não-desprezível Construímos então um D capaz de calcular b (x ) a partir de p (x )

com probabilidade também não-desprezível

Relembrando a definição de hard-core , para todo algoritmo B :

Pr[B (p (X n ),b (X n )) = 1] − Pr[B (p (X n ),R l (n )) = 1] <

  1poli (n )

Logo, se construirmos D a partir de A chegamos a umacontradição...

. . . e portanto não pode haver A com probabilidade de sucessonão-desprezível

R f l D t d C t () I t d ã à S D t á l A t d 2007 42 / 90

CS-2 - Demonstração de segurança

Suponha então, por absurdo, que exista um  A que distingueE (0) e E (1) com probabilidade não desprezível

Page 98: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 98/238

E α(0) e  E α(1) com probabilidade não-desprezível Construímos então um D capaz de calcular b (x ) a partir de p (x )

com probabilidade também não-desprezível

Relembrando a definição de hard-core , para todo algoritmo B :

Pr[B (p (X n ),b (X n )) = 1] − Pr[B (p (X n ),R l (n )) = 1] <

  1

poli (n )

Logo, se construirmos D a partir de A chegamos a umacontradição...

. . . e portanto não pode haver A com probabilidade de sucessonão-desprezível

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 42 / 90

Page 99: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 99/238

CS-2 - Demonstração de segurança

Suponha então, por absurdo, que exista um  A que distingueE (0) e E (1) com probabilidade não-desprezível

Page 100: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 100/238

E α(0) e  E α(1) com probabilidade não-desprezível Construímos então um D capaz de calcular b (x ) a partir de p (x )

com probabilidade também não-desprezível

Relembrando a definição de hard-core , para todo algoritmo B :

Pr[B (p (X n ),b (X n )) = 1] − Pr[B (p (X n ),R l (n )) = 1] <

  1

poli (n )

Logo, se construirmos D a partir de A chegamos a umacontradição...

. . . e portanto não pode haver A com probabilidade de sucessonão-desprezível

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 42 / 90

CS-2 - Demonstração de segurança

Suponha então, por absurdo, que exista um  A que distingueE (0) e E (1) com probabilidade não-desprezível

Page 101: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 101/238

E α(0) e  E α(1) com probabilidade não desprezível Construímos então um D capaz de calcular b (x ) a partir de p (x )

com probabilidade também não-desprezível

Relembrando a definição de hard-core , para todo algoritmo B :

Pr[B (p (X n ),b (X n )) = 1] − Pr[B (p (X n ),R l (n )) = 1] <

  1

poli (n )

Logo, se construirmos D a partir de A chegamos a umacontradição...

. . . e portanto não pode haver A com probabilidade de sucessonão-desprezível

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 42 / 90

Page 102: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 102/238

CS-2 - Redução de segurança

A descrição de D é bastante simples

Page 103: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 103/238

A descrição de D é bastante simples1 Recebe p (X n ), σ

2 Lembre-se que m 0 = 0 e m 1 = 13 Executa i  ← A(m 0,m 1, p (X n ), σ)

i  é o chute de A

4 Responde o inverso de i  Se i  = 0:

σ = m 0 ⊕ b p (X n ) = b p (X n )

Se i  = 1: σ = m 1 ⊕ b p (X n ) = b p (X n )

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 43 / 90

CS-2 - Redução de segurança

A descrição de D é bastante simples

Page 104: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 104/238

A descrição de D é bastante simples1 Recebe p (X n ), σ

2 Lembre-se que m 0 = 0 e m 1 = 13 Executa i  ← A(m 0,m 1, p (X n ), σ)

i  é o chute de A

4 Responde o inverso de i  Se i  = 0:

σ = m 0 ⊕ b p (X n ) = b p (X n )

Se i  = 1: σ = m 1 ⊕ b p (X n ) = b p (X n )

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 43 / 90

CS-2 - Redução de segurança

A descrição de D é bastante simples

Page 105: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 105/238

A descrição de D é bastante simples1 Recebe p (X n ), σ

2 Lembre-se que m 0 = 0 e m 1 = 13 Executa i  ← A(m 0,m 1, p (X n ), σ)

i  é o chute de A

4 Responde o inverso de i  Se i  = 0:

σ = m 0 ⊕ b p (X n ) = b p (X n )

Se i  = 1: σ = m 1 ⊕ b p (X n ) = b p (X n )

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 43 / 90

CS-2 - Redução de segurança

A descrição de D é bastante simples

Page 106: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 106/238

A descrição de D é bastante simples1 Recebe p (X n ), σ

2 Lembre-se que m 0 = 0 e m 1 = 13 Executa i  ← A(m 0,m 1, p (X n ), σ)

i  é o chute de A

4 Responde o inverso de i  Se i  = 0:

σ = m 0 ⊕ b p (X n ) = b p (X n )

Se i  = 1: σ = m 1 ⊕ b p (X n ) = b p (X n )

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 43 / 90

CS-2 - Redução de segurança

Page 107: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 107/238

Tempo de execução: O tempo de execução de D  é basicamente o mesmo que A

A probabilidade de sucesso de D é a mesma que a de A Contradição

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 44 / 90

CS-2 - Redução de segurança

Page 108: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 108/238

Tempo de execução: O tempo de execução de D  é basicamente o mesmo que A

A probabilidade de sucesso de D é a mesma que a de A Contradição

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 44 / 90

CS-2 - Redução de segurança

Page 109: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 109/238

Tempo de execução: O tempo de execução de D  é basicamente o mesmo que A

A probabilidade de sucesso de D é a mesma que a de A Contradição

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 44 / 90

Esquemas seguros e eficientes

O  CS-2, como foi apresentado é extremamente ineficiente: ciframento bit-a-bit

Page 110: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 110/238

ciframento bit a bit

Precisamos encontrar hard-cores  de funções que forneçamresultados maiores que 1 bit Chor e Goldreich provaram em 1985 que  O (log n ) bits menos

significativos no RSA são um  hard-core  Conjetura: será que os n /2 bits menos significativos são um

hard-core ?Blum-Goldwasser proposto em 1985 eficiência comparável à do RSA demonstravelmente seguro

Por que continuar com o RSA simples?

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 45 / 90

Esquemas seguros e eficientes

O  CS-2, como foi apresentado é extremamente ineficiente: ciframento bit-a-bit

Page 111: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 111/238

ciframento bit a bit

Precisamos encontrar hard-cores  de funções que forneçamresultados maiores que 1 bit Chor e Goldreich provaram em 1985 que  O (log n ) bits menos

significativos no RSA são um  hard-core  Conjetura: será que os n /2 bits menos significativos são um

hard-core ?Blum-Goldwasser proposto em 1985 eficiência comparável à do RSA demonstravelmente seguro

Por que continuar com o RSA simples?

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 45 / 90

Esquemas seguros e eficientes

O  CS-2, como foi apresentado é extremamente ineficiente: ciframento bit-a-bit

Page 112: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 112/238

ciframento bit a bit

Precisamos encontrar hard-cores  de funções que forneçamresultados maiores que 1 bit Chor e Goldreich provaram em 1985 que  O (log n ) bits menos

significativos no RSA são um  hard-core  Conjetura: será que os n /2 bits menos significativos são um

hard-core ?Blum-Goldwasser proposto em 1985 eficiência comparável à do RSA demonstravelmente seguro

Por que continuar com o RSA simples?

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 45 / 90

Modelo de adversário

Page 113: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 113/238

Somente adversários passivos até agoraEste certamente não é o modelo mais desejável  de adversárioPode-se imaginar adversários bastante mais poderosos: Conhecem pares de texto em claro/texto cifrado Interagem com usuários legítimos Podem requisitar deciframento de mensagens arbitrárias

Não se conheciam esquemas eficientes e demonstravelmenteseguros contra adversários adaptativos

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 46 / 90

Modelo de adversário

Page 114: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 114/238

Somente adversários passivos até agoraEste certamente não é o modelo mais desejável  de adversárioPode-se imaginar adversários bastante mais poderosos: Conhecem pares de texto em claro/texto cifrado Interagem com usuários legítimos Podem requisitar deciframento de mensagens arbitrárias

Não se conheciam esquemas eficientes e demonstravelmenteseguros contra adversários adaptativos

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 46 / 90

Modelo de adversário

Page 115: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 115/238

Somente adversários passivos até agoraEste certamente não é o modelo mais desejável  de adversárioPode-se imaginar adversários bastante mais poderosos: Conhecem pares de texto em claro/texto cifrado Interagem com usuários legítimos Podem requisitar deciframento de mensagens arbitrárias

Não se conheciam esquemas eficientes e demonstravelmenteseguros contra adversários adaptativos

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 46 / 90

Final dos anos 80

Page 116: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 116/238

Final de uma década de grandes avanços na criptografia

Certa discrepância entre a criptografia teórica e a prática

Segurança contra adversários ativos em aberto

Papel cada vez mais proeminente das funções de hashSurgimento do Paradigma do Oráculo Aleatório

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 47 / 90

Final dos anos 80

Page 117: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 117/238

Final de uma década de grandes avanços na criptografia

Certa discrepância entre a criptografia teórica e a prática

Segurança contra adversários ativos em aberto

Papel cada vez mais proeminente das funções de hashSurgimento do Paradigma do Oráculo Aleatório

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 47 / 90

Final dos anos 80

Page 118: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 118/238

Final de uma década de grandes avanços na criptografia

Certa discrepância entre a criptografia teórica e a prática

Segurança contra adversários ativos em aberto

Papel cada vez mais proeminente das funções de hashSurgimento do Paradigma do Oráculo Aleatório

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 47 / 90

Final dos anos 80

Page 119: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 119/238

Final de uma década de grandes avanços na criptografia

Certa discrepância entre a criptografia teórica e a prática

Segurança contra adversários ativos em aberto

Papel cada vez mais proeminente das funções de hashSurgimento do Paradigma do Oráculo Aleatório

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 47 / 90

Final dos anos 80

Page 120: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 120/238

Final de uma década de grandes avanços na criptografia

Certa discrepância entre a criptografia teórica e a prática

Segurança contra adversários ativos em aberto

Papel cada vez mais proeminente das funções de hashSurgimento do Paradigma do Oráculo Aleatório

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 47 / 90

Final da primeira parte

Page 121: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 121/238

Perguntas???

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 48 / 90

Nesta seção

1   O que é “Segurança”?

Page 122: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 122/238

2   Um primeiro criptossistema seguro

3   O Modelo do Oráculo Aleatório

Funções de HashO Paradigma do Oráculo AleatórioSegurança Contra no ROMSegurança Contra Adversários Ativos no ROMControvérsia ao redor do ROM

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 49 / 90

O que é uma função de hash?

Page 123: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 123/238

Termo usado desde os anos 50.Diferentes requisitos em diferentes áreas: hash tables; correção e detecção de erros; “fingerprinting” Hash criptográfico.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 50 / 90

O que é uma função de hash  criptográfico ?

Page 124: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 124/238

Seja H  a função em análise, buscamos: Resistência a cálculo de pré-imagem.

→ Dado um y , calcular x  tal que H (x ) = y . Resistência a cálculo de segunda pré-imagem.

→ Dados y , x  onde H (x ) = y , calcular x 

tal que H (x 

) = y . Resistência a colisões.→ Calcular x 1, x 2 tais que H (x 1) = H (x 2).

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 51 / 90

O que é uma função de hash  criptográfico ?

Page 125: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 125/238

Seja H  a função em análise, buscamos: Resistência a cálculo de pré-imagem.

→ Dado um y , calcular x  tal que H (x ) = y . Resistência a cálculo de segunda pré-imagem.

→ Dados y , x  onde H (x ) = y , calcular x 

tal que H (x 

) = y . Resistência a colisões.→ Calcular x 1, x 2 tais que H (x 1) = H (x 2).

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 51 / 90

O que é uma função de hash  criptográfico ?

Page 126: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 126/238

Seja H  a função em análise, buscamos: Resistência a cálculo de pré-imagem.

→ Dado um y , calcular x  tal que H (x ) = y . Resistência a cálculo de segunda pré-imagem.

→ Dados y , x  onde H (x ) = y , calcular x 

tal que H (x 

) = y . Resistência a colisões.→ Calcular x 1, x 2 tais que H (x 1) = H (x 2).

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 51 / 90

O que é uma função de hash  criptográfico ?

Page 127: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 127/238

Uma função de hash ideal  deve: Identificar unicamente um objeto; não trazer qualquer informação “útil” sobre este objeto.

Modelar como função aleatória.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 52 / 90

O que é uma função de hash  criptográfico ?

Page 128: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 128/238

Uma função de hash ideal  deve: Identificar unicamente um objeto; não trazer qualquer informação “útil” sobre este objeto.

Modelar como função aleatória.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 52 / 90

O Paradigma do Oráculo Aleatório[Bellare & Rogaway, 1993] 

Page 129: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 129/238

Um paradigma para o projeto de protocolos eficientes; modela funções de hash como funções aleatórias;

Oráculo: descrição da função aleatória é desconhecida.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 53 / 90

O Paradigma do Oráculo Aleatório[Bellare & Rogaway, 1993] 

Page 130: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 130/238

Um paradigma para o projeto de protocolos eficientes; modela funções de hash como funções aleatórias;

Oráculo: descrição da função aleatória é desconhecida.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 53 / 90

O Paradigma do Oráculo Aleatório

Propõe abordagem heurística  para avaliação da segurança dei t i t m

Page 131: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 131/238

criptossistemas;Para projetar um protocolo P :

1   Projete o protocolo P O; todos os participantes tem acesso ao oráculo aleatório O.

2   Prove a segurança de P O

.3   Escolha uma “boa” função H (.) para implementar O.4   Defina P  como o protocolo onde consultas ao oráculo são

simuladas por chamadas a H (.).5 A menos de vulnerabilidades em  H (.), P  é seguro.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 54 / 90

O Paradigma do Oráculo Aleatório

Propõe abordagem heurística  para avaliação da segurança decriptossistemas;

Page 132: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 132/238

criptossistemas;Para projetar um protocolo P :

1   Projete o protocolo P O; todos os participantes tem acesso ao oráculo aleatório O.

2   Prove a segurança de P O

.3   Escolha uma “boa” função H (.) para implementar O.4   Defina P  como o protocolo onde consultas ao oráculo são

simuladas por chamadas a H (.).5 A menos de vulnerabilidades em  H (.), P  é seguro.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 54 / 90

O Paradigma do Oráculo Aleatório

Propõe abordagem heurística  para avaliação da segurança decriptossistemas;

Page 133: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 133/238

criptossistemas;Para projetar um protocolo P :

1   Projete o protocolo P O; todos os participantes tem acesso ao oráculo aleatório O.

2   Prove a segurança de P O

.3   Escolha uma “boa” função H (.) para implementar O.4   Defina P  como o protocolo onde consultas ao oráculo são

simuladas por chamadas a H (.).5 A menos de vulnerabilidades em  H (.), P  é seguro.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 54 / 90

O Paradigma do Oráculo Aleatório

Propõe abordagem heurística  para avaliação da segurança decriptossistemas;

Page 134: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 134/238

criptossistemas;Para projetar um protocolo P :

1   Projete o protocolo P O; todos os participantes tem acesso ao oráculo aleatório O.

2

  Prove a segurança de P O

.3   Escolha uma “boa” função H (.) para implementar O.4   Defina P  como o protocolo onde consultas ao oráculo são

simuladas por chamadas a H (.).5 A menos de vulnerabilidades em  H (.), P  é seguro.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 54 / 90

O Paradigma do Oráculo Aleatório

Propõe abordagem heurística  para avaliação da segurança decriptossistemas;

Page 135: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 135/238

criptossistemas;Para projetar um protocolo P :

1   Projete o protocolo P O; todos os participantes tem acesso ao oráculo aleatório O.

2

  Prove a segurança de P O

.3   Escolha uma “boa” função H (.) para implementar O.4   Defina P  como o protocolo onde consultas ao oráculo são

simuladas por chamadas a H (.).5 A menos de vulnerabilidades em  H (.), P  é seguro.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 54 / 90

O Paradigma do Oráculo Aleatório

Por melhor que H( ) seja ela:

Page 136: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 136/238

Por melhor que H (.) seja, ela: nunca será realmente aleatória; nunca será um oráculo.

Acredita-se que uma prova de segurança no ROM implica a

ausência de vulnerabilidades “estruturais”  no protocolo.A menos de vulnerabilidades em  H (.), a instanciação P  doprotocolo ideal P O seria segura.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 55 / 90

O Paradigma do Oráculo Aleatório

Por melhor que H(.) seja ela:

Page 137: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 137/238

Por melhor que H (.) seja, ela: nunca será realmente aleatória; nunca será um oráculo.

Acredita-se que uma prova de segurança no ROM implica a

ausência de vulnerabilidades “estruturais”  no protocolo.A menos de vulnerabilidades em  H (.), a instanciação P  doprotocolo ideal P O seria segura.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 55 / 90

O Paradigma do Oráculo Aleatório

Por melhor que H(.) seja ela:

Page 138: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 138/238

Por melhor que H (.) seja, ela: nunca será realmente aleatória; nunca será um oráculo.

Acredita-se que uma prova de segurança no ROM implica a

ausência de vulnerabilidades “estruturais”  no protocolo.A menos de vulnerabilidades em  H (.), a instanciação P  doprotocolo ideal P O seria segura.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 55 / 90

Alguns exemplos do poder do Oráculo AleatórioSeja p  uma permutação com segredo.

Esquema de ciframento semanticamente seguro contra ataquespassivos:

E (x ) = p (r ) || (G (r ) ⊕ x )

Page 139: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 139/238

( ) p( ) || ( ( ) ⊕ )

Esquema de ciframento semanticamente seguro contra ataquesadaptativos:

E (x ) = p (r ) || (G (r ) ⊕ x ) || H (rx )

Esquema de assinatura existencialmente inforjável sob ataquesadaptativos:

S (m ) = p −1

(H (m ))Muitos outros esquemas mais eficientes, como RSA-OAEP ePSS.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 56 / 90

Alguns exemplos do poder do Oráculo AleatórioSeja p  uma permutação com segredo.

Esquema de ciframento semanticamente seguro contra ataquespassivos:

E (x ) = p (r ) || (G (r ) ⊕ x )

Page 140: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 140/238

( ) p( ) || ( ( ) ⊕ )

Esquema de ciframento semanticamente seguro contra ataquesadaptativos:

E (x ) = p (r ) || (G (r ) ⊕ x ) || H (rx )

Esquema de assinatura existencialmente inforjável sob ataquesadaptativos:

S (m ) = p −1

(H (m ))Muitos outros esquemas mais eficientes, como RSA-OAEP ePSS.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 56 / 90

Alguns exemplos do poder do Oráculo AleatórioSeja p  uma permutação com segredo.

Esquema de ciframento semanticamente seguro contra ataquespassivos:

E (x ) = p (r ) || (G (r ) ⊕ x )

Page 141: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 141/238

( ) p( ) || ( ( ) )

Esquema de ciframento semanticamente seguro contra ataquesadaptativos:

E (x ) = p (r ) || (G (r ) ⊕ x ) || H (rx )

Esquema de assinatura existencialmente inforjável sob ataquesadaptativos:

S (m ) = p −1

(H (m ))Muitos outros esquemas mais eficientes, como RSA-OAEP ePSS.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 56 / 90

Adversários passivos no ROM

Page 142: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 142/238

A estrutura da prova é completamente análoga; porém, todos os participantes têm acesso ao oráculo.

O algoritmo que faz a redução do ataque (D) deve simular O.

As respostas de D  tem que parecer  aleatórias.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 57 / 90

Adversários passivos no ROM

Page 143: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 143/238

A estrutura da prova é completamente análoga; porém, todos os participantes têm acesso ao oráculo.

O algoritmo que faz a redução do ataque (D) deve simular O.

As respostas de D  tem que parecer  aleatórias.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 57 / 90

Jogo CPA no ROM

Page 144: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 144/238

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 58 / 90

Criptossistema BR-1

Geração de ChavesSeja G (.) um oráculo aleatório. Seleciona-se aleatoriamente uma

permutação  p  com segredo s p  associado.  p  é a chave pública e s p  é achave privada

Page 145: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 145/238

p ç g pchave privada.

Ciframento

Seja M  a mensagem a ser cifrada. Selecione r   r

← D p  e calcule o textocifrado C  = p (r ),M  ⊕ G (r ).

Deciframento

Seja C  = γ 1, γ 2 o texto a decifrar. Utilizando  s p , calcule r 

= p −1

(γ 1);a mensagem original é M  = γ 2 ⊕ G (r ).

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 59 / 90

Segurança do  BR-1

Page 146: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 146/238

O  BR-1 é bastante semelhante ao  CS-2 trocamos um hard-core  por uma consulta ao oráculo aleatório.

A idéia intuitiva de sua segurança é semelhante.

Demonstração apresentada a seguir.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 60 / 90

Segurança do  BR-1

O é b lh

Page 147: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 147/238

O  BR-1 é bastante semelhante ao  CS-2 trocamos um hard-core  por uma consulta ao oráculo aleatório.

A idéia intuitiva de sua segurança é semelhante.

Demonstração apresentada a seguir.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 60 / 90

Segurança do  BR-1

O é b t t lh t

Page 148: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 148/238

O  BR-1 é bastante semelhante ao  CS-2 trocamos um hard-core  por uma consulta ao oráculo aleatório.

A idéia intuitiva de sua segurança é semelhante.

Demonstração apresentada a seguir.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 60 / 90

Segurança do  BR-1

Page 149: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 149/238

Suponha que existe um adversário A = (A1,A2) que quebra oesquema;

Construímos então o algoritmo D capaz e inverter p ;

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 61 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 1 (p ) D simula G( )

Page 150: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 150/238

D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 1 (p )

D simula G( )

Page 151: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 151/238

D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 1 (p )

D simula G(.).

Page 152: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 152/238

D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 

1 (p ) D simula G (.).

Page 153: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 153/238

s u a G( ) Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 

1 (p ) D simula G (.).

Page 154: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 154/238

( ) Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 

1 (p ) D simula G (.).

Page 155: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 155/238

( ) Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 

1 (p ) D simula G (.).

Page 156: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 156/238

( ) Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}

|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 

1 (p ) D simula G (.).

Page 157: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 157/238

Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}

|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

1 D recebe p , y  como parâmetro; D deseja calcular x , tal que p (x ) = y .

2 D executa AG 

1 (p ) D simula G (.).

Page 158: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 158/238

Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4

D escolhe s 

  r

← {0,1}

|m 0|

e faz γ  = (y , s )5 D executa AG 

2 (p ,m 0,m 1, γ ) D simula G (.). Se for feita a consulta G (r i ), tal que p (r i ) = y , D  pára.  SUCESSO.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 62 / 90

Segurança do  BR-1

Ciframento: γ  = p (r ),M  ⊕ G (r )

Caso a consulta G (r ) não seja feita, A não tem vantagem emdistinguir E(m0) de E(m1);

Page 159: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 159/238

distinguir  E (m 0) de  E (m 1);Seja γ  = (γ 1, γ 2); como G  é aleatório, A não tem informação sobre γ 2  = G (f −1(γ 1)) ⊕ M  a não ser que

G (f 

−1

(γ 1)) seja conhecido.único jeito de conhecer qualquer coisa sobre o valor deG (f −1(γ 1)) é fazer a consulta;

probabilidade de sucesso sem conhecer G (f −1(γ 1)) é

Pr[sucesso de A|D  falha] =  12

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 63 / 90

Segurança do  BR-1

Ciframento: γ  = p (r ),M  ⊕ G (r )

Caso a consulta G (r ) não seja feita, A não tem vantagem emdistinguir E(m0) de E(m1);

Page 160: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 160/238

distinguir  E (m 0) de  E (m 1);Seja γ  = (γ 1, γ 2); como G  é aleatório, A não tem informação sobre γ 2  = G (f −1(γ 1)) ⊕ M  a não ser que

G (f 

−1

(γ 1)) seja conhecido.único jeito de conhecer qualquer coisa sobre o valor deG (f −1(γ 1)) é fazer a consulta;

probabilidade de sucesso sem conhecer G (f −1(γ 1)) é

Pr[sucesso de A|D  falha] =  12

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 63 / 90

Segurança do  BR-1

Ciframento: γ  = p (r ),M  ⊕ G (r )

Caso a consulta G (r ) não seja feita, A não tem vantagem emdistinguir E(m0) de E(m1);

Page 161: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 161/238

distinguir  E (m 0) de  E (m 1);Seja γ  = (γ 1, γ 2); como G  é aleatório, A não tem informação sobre γ 2  = G (f −1(γ 1)) ⊕ M  a não ser que

G (f 

−1

(γ 1)) seja conhecido.único jeito de conhecer qualquer coisa sobre o valor deG (f −1(γ 1)) é fazer a consulta;

probabilidade de sucesso sem conhecer G (f −1(γ 1)) é

Pr[sucesso de A|D  falha] =  12

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 63 / 90

Segurança do  BR-1

Ciframento: γ  = p (r ),M  ⊕ G (r )

Caso a consulta G (r ) não seja feita, A não tem vantagem emdistinguir E(m0) de E(m1);

Page 162: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 162/238

distinguir  E (m 0) de  E (m 1);Seja γ  = (γ 1, γ 2); como G  é aleatório, A não tem informação sobre γ 2  = G (f −1(γ 1)) ⊕ M  a não ser que

G (f 

−1

(γ 1)) seja conhecido.único jeito de conhecer qualquer coisa sobre o valor deG (f −1(γ 1)) é fazer a consulta;

probabilidade de sucesso sem conhecer G (f −1(γ 1)) é

Pr[sucesso de A|D  falha] =  12

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 63 / 90

Segurança do  BR-1

Certamente,

Pr[A] =  1

2 + λ(k ),  para λ(k ) não desprezível

=   Pr[A|D ] Pr[D ] + Pr[A|D ] Pr[D ]

Pr[A|D]  1

Pr[A|D] ≤ 1 Pr[D] ≤ 1

Page 163: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 163/238

Pr[A|D ] =2,Pr[A|D ] ≤ 1,Pr[D ] ≤ 1

Logo,12

 + λ(k )   ≤  1

2 + Pr[D ]

Provando assim que a probabilidade de sucesso de  D énão-desprezível.Contradição.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 64 / 90

Segurança do  BR-1

Certamente,

Pr[A] =  1

2 + λ(k ),  para λ(k ) não desprezível

=   Pr[A|D ] Pr[D ] + Pr[A|D ] Pr[D ]

Pr[A|D] =  1

Pr[A|D] ≤ 1 Pr[D] ≤ 1

Page 164: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 164/238

Pr[A|D ] =2,Pr[A|D ] ≤ 1,Pr[D ] ≤ 1

Logo,12

 + λ(k )   ≤  1

2 + Pr[D ]

Provando assim que a probabilidade de sucesso de  D énão-desprezível.Contradição.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 64 / 90

Segurança do  BR-1

Certamente,

Pr[A] =  1

2 + λ(k ),  para λ(k ) não desprezível

=   Pr[A|D ] Pr[D ] + Pr[A|D ] Pr[D ]

Pr[A|D] =  1

Pr[A|D] ≤ 1 Pr[D] ≤ 1

Page 165: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 165/238

Pr[A|D ] =2,Pr[A|D ] ≤ 1,Pr[D ] ≤ 1

Logo,12

 + λ(k )   ≤  1

2 + Pr[D ]

Provando assim que a probabilidade de sucesso de  D énão-desprezível.Contradição.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 64 / 90

Segurança do  BR-1

Certamente,

Pr[A] =  1

2 + λ(k ),  para λ(k ) não desprezível

=   Pr[A|D ] Pr[D ] + Pr[A|D ] Pr[D ]

Pr[A|D] =  1

Pr[A|D] ≤ 1 Pr[D] ≤ 1

Page 166: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 166/238

Pr[A|D ] =2,Pr[A|D ] ≤ 1,Pr[D ] ≤ 1

Logo,12

 + λ(k )   ≤  1

2 + Pr[D ]

Provando assim que a probabilidade de sucesso de  D énão-desprezível.Contradição.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 64 / 90

Adversários adaptativos no ROM

Trataremos do tipo mais poderoso de adversário: adversários adaptativos executando ataques de mensagem cifrada

Page 167: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 167/238

adversários adaptativos executando ataques de mensagem cifradaescolhida.

Modelar interação entre adversário e usuário: reduções de segurança mais complexas.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 65 / 90

Adversários adaptativos no ROM

Trataremos do tipo mais poderoso de adversário: adversários adaptativos executando ataques de mensagem cifrada

Page 168: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 168/238

adversários adaptativos executando ataques de mensagem cifradaescolhida.

Modelar interação entre adversário e usuário: reduções de segurança mais complexas.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 65 / 90

Retrato de um CCA

1 Desafiante  gera os parâmetros do sistema  params;2 adversário recebe  params e executa por um tempo polinomial:

interage com o usuário; consulta oráculos aleatórios;

Page 169: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 169/238

3 adversário gera um par de mensagens-desafio m 0,m 1;

4 desafiante escolhe i   r← {0, 1} e calcula γ  = E SK(m i );

5 adversário recebe γ  e executa por um tempo polinomial: interage com o usuário; consulta oráculos aleatórios;

6 adversário responde seu “chute” i .

O adversário vence se i 

= i .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 66 / 90

Retrato de um CCA

1 Desafiante  gera os parâmetros do sistema  params;2 adversário recebe  params e executa por um tempo polinomial:

interage com o usuário; consulta oráculos aleatórios;

Page 170: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 170/238

3 adversário gera um par de mensagens-desafio m 0,m 1;

4 desafiante escolhe i   r← {0, 1} e calcula γ  = E SK(m i );

5 adversário recebe γ  e executa por um tempo polinomial: interage com o usuário; consulta oráculos aleatórios;

6 adversário responde seu “chute” i .

O adversário vence se i 

= i .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 66 / 90

Retrato de um CCA

1 Desafiante  gera os parâmetros do sistema  params;2 adversário recebe  params e executa por um tempo polinomial:

interage com o usuário; consulta oráculos aleatórios;

Page 171: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 171/238

3 adversário gera um par de mensagens-desafio m 0,m 1;

4 desafiante escolhe i   r← {0, 1} e calcula γ  = E SK(m i );

5 adversário recebe γ  e executa por um tempo polinomial: interage com o usuário; consulta oráculos aleatórios;

6 adversário responde seu “chute” i .

O adversário vence se i 

= i .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 66 / 90

Retrato de um CCA

1 Desafiante  gera os parâmetros do sistema  params;2 adversário recebe  params e executa por um tempo polinomial:

interage com o usuário; consulta oráculos aleatórios;

Page 172: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 172/238

3 adversário gera um par de mensagens-desafio m 0,m 1;

4 desafiante escolhe i   r← {0, 1} e calcula γ  = E SK(m i );

5 adversário recebe γ  e executa por um tempo polinomial: interage com o usuário; consulta oráculos aleatórios;

6 adversário responde seu “chute” i .

O adversário vence se i 

= i .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 66 / 90

Retrato de um CCA

1 Desafiante  gera os parâmetros do sistema  params;2 adversário recebe  params e executa por um tempo polinomial:

interage com o usuário; consulta oráculos aleatórios;

á

Page 173: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 173/238

3 adversário gera um par de mensagens-desafio m 0,m 1;

4 desafiante escolhe i   r← {0, 1} e calcula γ  = E SK(m i );

5 adversário recebe γ  e executa por um tempo polinomial: interage com o usuário; consulta oráculos aleatórios;

6 adversário responde seu “chute” i .

O adversário vence se i 

= i .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 66 / 90

Retrato de um CCA

1 Desafiante  gera os parâmetros do sistema  params;2 adversário recebe  params e executa por um tempo polinomial:

interage com o usuário; consulta oráculos aleatórios;

d á i d d fi

Page 174: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 174/238

3 adversário gera um par de mensagens-desafio m 0,m 1;

4 desafiante escolhe i   r← {0, 1} e calcula γ  = E SK(m i );

5 adversário recebe γ  e executa por um tempo polinomial: interage com o usuário; consulta oráculos aleatórios;

6 adversário responde seu “chute” i .

O adversário vence se i 

= i .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 66 / 90

Retrato de um CCA

Page 175: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 175/238

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 67 / 90

(In)Segurança Contra Adversários Ativos -  BR-1

BR-1Ciframento.  γ  = p (r ),M  ⊕ G (r ).

Deciframento.  M  = γ 2 ⊕ G (r 

),  r 

= p −1

(γ 1)

Dado um texto cifrado γ = γ1, γ2;

Page 176: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 176/238

Dado um texto cifrado γ    γ 1, γ 2;1   calcule γ  = γ 1, γ 

2  = γ 2 ⊕ M ;

2   peça que o usuário decifre γ , obtendo α  =  γ 2 ⊕ G (r );3   calcule M  = α ⊕ M , pois

α   =   γ 2 ⊕ G (r )

=   γ 2 ⊕ M  ⊕ G (r )

=   M  ⊕ G (r ) ⊕ M  ⊕ G (r )

=   M  ⊕ M 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 68 / 90

(In)Segurança Contra Adversários Ativos -  BR-1

BR-1Ciframento.  γ  = p (r ),M  ⊕ G (r ).

Deciframento.  M  = γ 2 ⊕ G (r 

),  r 

= p −1

(γ 1)

Dado um texto cifrado γ = γ1, γ2;

Page 177: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 177/238

Dado um texto cifrado γ    γ 1, γ 2;1   calcule γ  = γ 1, γ 

2  = γ 2 ⊕ M ;

2   peça que o usuário decifre γ , obtendo α  =  γ 2 ⊕ G (r );

3   calcule M  = α ⊕ M 

, pois

α   =   γ 2 ⊕ G (r )

=   γ 2 ⊕ M  ⊕ G (r )

=   M  ⊕ G (r ) ⊕ M  ⊕ G (r )

=   M  ⊕ M 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 68 / 90

(In)Segurança Contra Adversários Ativos -  BR-1

BR-1Ciframento.  γ  = p (r ),M  ⊕ G (r ).

Deciframento.  M  = γ 2 ⊕ G (r 

),  r 

= p −1

(γ 1)

Dado um texto cifrado γ  = γ 1, γ 2;

Page 178: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 178/238

γ γ1, γ2;1   calcule γ  = γ 1, γ 

2  = γ 2 ⊕ M ;

2   peça que o usuário decifre γ , obtendo α  =  γ 2 ⊕ G (r );

3   calcule M  = α ⊕ M 

, pois

α   =   γ 2 ⊕ G (r )

=   γ 2 ⊕ M  ⊕ G (r )

=   M  ⊕ G (r ) ⊕ M  ⊕ G (r )

=   M  ⊕ M 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 68 / 90

(In)Segurança Contra Adversários Ativos -  BR-1

BR-1Ciframento.  γ  = p (r ),M  ⊕ G (r ).

Deciframento.  M  = γ 2 ⊕ G (r 

),  r 

= p −1

(γ 1)

Dado um texto cifrado γ  = γ 1, γ 2;

Page 179: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 179/238

γ γ1, γ2;1   calcule γ  = γ 1, γ 

2  = γ 2 ⊕ M ;

2   peça que o usuário decifre γ , obtendo α  =  γ 2 ⊕ G (r );

3   calcule M  = α ⊕ M 

, pois

α   =   γ 2 ⊕ G (r )

=   γ 2 ⊕ M  ⊕ G (r )

=   M  ⊕ G (r ) ⊕ M  ⊕ G (r )

=   M  ⊕ M 

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 68 / 90

Criptossistema  BR-2

Geração de ChavesSejam G (.),H (.) oráculos aleatórios. Seleciona-se aleatoriamenteuma permutação p  com segredo s p  associado.  p  é a chave pública es p  é a chave privada.

Cif m t

Page 180: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 180/238

Ciframento

Seja M  a mensagem a ser cifrada. Selecione r   r← D p  e calcule o texto

cifrado C  = p (r ),M  ⊕ G (r ),H (rM ).

DeciframentoSeja C  = γ 1, γ 2, γ 3 o texto a decifrar. Utilizando  s p , calcule

r  = p −1

(γ 1); calcule M  = γ 2 ⊕ G (r ); se H (r M ) = γ 3 a mensagemoriginal é M ; caso contrário, o deciframento falha.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 69 / 90

Segurança do  BR-2

1 D recebe f , y  como parâmetro; D deseja calcular x , tal que f (x ) = y .

2 D executa AG ,H ,D 1   (f )

Simulação de G ,H ,D  definidas a seguir.

A t d d fi ( )

Page 181: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 181/238

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4 D escolhe w   r← {0,1}|m 0|,b 

  r← {0, 1}k  e faz γ  = (y ,w ,b )

5 D executa AG ,H ,D 2   (f ,m 0,m 1, γ )

Simulação de G ,H ,D  definidas a seguir.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 70 / 90

Segurança do  BR-2

1 D recebe f , y  como parâmetro; D deseja calcular x , tal que f (x ) = y .

2 D executa AG ,H ,D 1   (f )

Simulação de G ,H ,D  definidas a seguir.3 A t d d fi ( )

Page 182: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 182/238

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4 D escolhe w   r← {0,1}|m 0|,b 

  r← {0, 1}k  e faz γ  = (y ,w ,b )

5 D executa AG ,H ,D 2   (f ,m 0,m 1, γ )

Simulação de G ,H ,D  definidas a seguir.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 70 / 90

Page 183: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 183/238

Segurança do  BR-2

1 D recebe f , y  como parâmetro; D deseja calcular x , tal que f (x ) = y .

2 D executa AG ,H ,D 1   (f ) Simulação de G ,H ,D  definidas a seguir.

3 A retorna o par de mensagens desafio (m m )

Page 184: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 184/238

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4 D escolhe w   r← {0,1}|m 0|,b 

  r← {0, 1}k  e faz γ  = (y ,w ,b )

5 D executa AG ,H ,D 2   (f ,m 0,m 1, γ )

Simulação de G ,H ,D  definidas a seguir.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 70 / 90

Segurança do  BR-2

1 D recebe f , y  como parâmetro; D deseja calcular x , tal que f (x ) = y .

2 D executa AG ,H ,D 1   (f ) Simulação de G ,H ,D  definidas a seguir.

3 A retorna o par de mensagens desafio (m m )

Page 185: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 185/238

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4 D escolhe w   r← {0,1}|m 0|,b 

  r← {0, 1}k  e faz γ  = (y ,w ,b )

5 D executa AG ,H ,D 2   (f ,m 0,m 1, γ )

Simulação de G ,H ,D  definidas a seguir.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 70 / 90

Segurança do  BR-2

1 D recebe f , y  como parâmetro; D deseja calcular x , tal que f (x ) = y .

2 D executa AG ,H ,D 1   (f ) Simulação de G ,H ,D  definidas a seguir.

3 A1 retorna o par de mensagens desafio (m0 m1)

Page 186: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 186/238

3 A1 retorna o par de mensagens-desafio (m 0,m 1)

4 D escolhe w   r← {0,1}|m 0|,b 

  r← {0, 1}k  e faz γ  = (y ,w ,b )

5 D executa AG ,H ,D 2   (f ,m 0,m 1, γ )

Simulação de G ,H ,D  definidas a seguir.

6 A2 retorna seu palpite para i 

7 Se a consulta aguardada por  D não foi feita,  FALHA.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 70 / 90

Segurança do  BR-2

Especificação dos oráculos:

H (r , x ). Se r  é tal que f (r ) = y ,  SUCESSO. Caso contrário,

reponde com uma string aleatória do tamanho apropriado.G (r ). Se r  é tal que f (r ) = y ,  SUCESSO. Caso contrário, repondecom uma string aleatória do tamanho apropriado.

Page 187: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 187/238

com uma string aleatória do tamanho apropriado.

D (a ,w ,b ). Se foram consultados r i  a G  e  r i u i  a H  tais que,

a    =   f (r i ),

w    =   G (r i ) ⊕ u i ,

responde u . Caso contrário rejeita a consulta como inválida.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 71 / 90

Segurança do  BR-2

Especificação dos oráculos:

H (r , x ). Se r  é tal que f (r ) = y ,  SUCESSO. Caso contrário,

reponde com uma string aleatória do tamanho apropriado.G (r ). Se r  é tal que f (r ) = y ,  SUCESSO. Caso contrário, repondecom uma string aleatória do tamanho apropriado.

Page 188: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 188/238

co u a st g a eató a do ta a o ap op ado

D (a ,w ,b ). Se foram consultados r i  a G  e  r i u i  a H  tais que,

a    =   f (r i ),

w    =   G (r i ) ⊕ u i ,

responde u . Caso contrário rejeita a consulta como inválida.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 71 / 90

Segurança do  BR-2

Especificação dos oráculos:

H (r , x ). Se r  é tal que f (r ) = y ,  SUCESSO. Caso contrário,

reponde com uma string aleatória do tamanho apropriado.G (r ). Se r  é tal que f (r ) = y ,  SUCESSO. Caso contrário, repondecom uma string aleatória do tamanho apropriado.

Page 189: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 189/238

g p p

D (a ,w ,b ). Se foram consultados r i  a G  e  r i u i  a H  tais que,

a    =   f (r i ),

w    =   G (r i ) ⊕ u i ,

responde u . Caso contrário rejeita a consulta como inválida.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 71 / 90

Segurança do  BR-2

Precisamos provar:

o tempo de execução de D é polinomial (se o de A o for);

Page 190: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 190/238

a simulação dos oráculos é fiel;

as probabilidades de sucesso de D e A estão relacionadas.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 72 / 90

Segurança do  BR-2

Precisamos provar:

o tempo de execução de D é polinomial (se o de A o for);

i l d á l é fi l

Page 191: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 191/238

a simulação dos oráculos é fiel;

as probabilidades de sucesso de D e A estão relacionadas.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 72 / 90

Segurança do  BR-2

Precisamos provar:

o tempo de execução de D é polinomial (se o de A o for);

i l ã d á l é fi l

Page 192: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 192/238

a simulação dos oráculos é fiel;

as probabilidades de sucesso de D e A estão relacionadas.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 72 / 90

Segurança do  BR-2 - Tempo de Execução de D

Todas as operações executadas diretamente por D sãopolinomiais.

Page 193: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 193/238

Se o tempo de execução de A é polinomial, o de D também o é.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 73 / 90

Segurança do  BR-2 - Tempo de Execução de D

Todas as operações executadas diretamente por D sãopolinomiais.

Page 194: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 194/238

Se o tempo de execução de A é polinomial, o de D também o é.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 73 / 90

Segurança do  BR-2 - Fidelidade da Simulação

Certamente G  e  H  são simulados corretamente.A simulação de D  falha quando uma consulta é consideradainválida erroneamente: Uma consulta a    w   b  é  considerada  inválida se

G (r ) não foi consultado, onde a  =  p (r ); ou H (r   u ) não foi consultado, onde w  = G (r ) ⊕ u .

Page 195: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 195/238

Uma consulta a    w   b  é  de fato  inválida se b = H (r   u ), onde a  =  p (r ) e  w  = G (r ) ⊕ u .

Seja Lk  o evento em que o oráculo D  falha erroneamente

Pr[Lk ] ≤  n (k )2−k ,

onde n (k ) é o número de consultas feitas ao oráculo.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 74 / 90

Segurança do  BR-2 - Fidelidade da Simulação

Certamente G  e  H  são simulados corretamente.A simulação de D  falha quando uma consulta é consideradainválida erroneamente: Uma consulta a    w   b  é  considerada  inválida se

G (r ) não foi consultado, onde a  =  p (r ); ou H (r   u ) não foi consultado, onde w  = G (r ) ⊕ u .

Page 196: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 196/238

Uma consulta a    w   b  é  de fato  inválida se b = H (r   u ), onde a  =  p (r ) e  w  = G (r ) ⊕ u .

Seja Lk  o evento em que o oráculo D  falha erroneamente

Pr[Lk ] ≤  n (k )2−k ,

onde n (k ) é o número de consultas feitas ao oráculo.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 74 / 90

Segurança do  BR-2 - Fidelidade da Simulação

Certamente G  e  H  são simulados corretamente.A simulação de D  falha quando uma consulta é consideradainválida erroneamente: Uma consulta a    w   b  é  considerada  inválida se

G (r ) não foi consultado, onde a  =  p (r ); ou H (r   u ) não foi consultado, onde w  = G (r ) ⊕ u .

Page 197: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 197/238

Uma consulta a    w   b  é  de fato  inválida se b = H (r   u ), onde a  =  p (r ) e  w  = G (r ) ⊕ u .

Seja Lk  o evento em que o oráculo D  falha erroneamente

Pr[Lk ] ≤  n (k )2−k ,

onde n (

k ) é o número de consultas feitas ao oráculo.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 74 / 90

Segurança do  BR-2 - Fidelidade da Simulação

Certamente G  e  H  são simulados corretamente.A simulação de D  falha quando uma consulta é consideradainválida erroneamente: Uma consulta a    w   b  é  considerada  inválida se

G (r ) não foi consultado, onde a  =  p (r ); ou H (r   u ) não foi consultado, onde w  = G (r ) ⊕ u .

U l b é d f i álid

Page 198: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 198/238

Uma consulta a    w   b  é  de fato  inválida se b = H (r   u ), onde a  =  p (r ) e  w  = G (r ) ⊕ u .

Seja Lk  o evento em que o oráculo D  falha erroneamente

Pr[Lk ] ≤  n (k )2−k ,

onde n (

k ) é o número de consultas feitas ao oráculo.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 74 / 90

Segurança do  BR-2 - Fidelidade da Simulação

Certamente G  e  H  são simulados corretamente.A simulação de D  falha quando uma consulta é consideradainválida erroneamente: Uma consulta a    w   b  é  considerada  inválida se

G (r ) não foi consultado, onde a  =  p (r ); ou H (r   u ) não foi consultado, onde w  = G (r ) ⊕ u .

U lt b é d f t i álid

Page 199: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 199/238

Uma consulta a    w   b  é  de fato  inválida se b = H (r   u ), onde a  =  p (r ) e  w  = G (r ) ⊕ u .

Seja Lk  o evento em que o oráculo D  falha erroneamente

Pr[Lk ] ≤  n (k )2−k ,

onde n (k ) é o número de consultas feitas ao oráculo.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 74 / 90

Page 200: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 200/238

Segurança do  BR-2 - Probabilidade de Sucesso

Seja Ak  o evento em que A tem sucesso.

Seja D k  o evento em que D tem sucesso.

Pr[Ak |Lk  ∧ D k ] =

 1

2

Logo Pr[Ak ] =   12 + λ(k) é limitado por

Page 201: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 201/238

Logo Pr[Ak ] 2  + λ(k ) é limitado por

Pr[Ak ] =   Pr[Ak |Lk ] Pr[Lk ] + Pr[Ak |Lk  ∧ D k ] Pr[Lk  ∧ D k ]+ Pr[Ak |Lk  ∧ D k ] Pr[Lk  ∧ D k ]

≤   n (k )2−k  + Pr[D k ] + 12.

Temos então Pr[D k ] ≥  λ(k ) − n (k )2−k .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 75 / 90

Segurança do  BR-2 - Probabilidade de Sucesso

Seja Ak  o evento em que A tem sucesso.

Seja D k  o evento em que D tem sucesso.

Pr[Ak |Lk  ∧ D k ] =

 1

2

Logo Pr[Ak ] =   12  + λ(k ) é limitado por

Page 202: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 202/238

g [ k ] 2 + ( ) p

Pr[Ak ] =   Pr[Ak |Lk ] Pr[Lk ] + Pr[Ak |Lk  ∧ D k ] Pr[Lk  ∧ D k ]+ Pr[Ak |Lk  ∧ D k ] Pr[Lk  ∧ D k ]

≤   n (k )2−k  + Pr[D k ] + 12.

Temos então Pr[D k ] ≥  λ(k ) − n (k )2−k .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 75 / 90

Segurança do  BR-2 - Probabilidade de Sucesso

Seja Ak  o evento em que A tem sucesso.

Seja D k  o evento em que D tem sucesso.

Pr[Ak |Lk  ∧ D k ] =

 1

2

Logo Pr[Ak ] =   12  + λ(k ) é limitado por

Page 203: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 203/238

g [ k ] 2 ( ) p

Pr[Ak ] =   Pr[Ak |Lk ] Pr[Lk ] + Pr[Ak |Lk  ∧ D k ] Pr[Lk  ∧ D k ]+ Pr[Ak |Lk  ∧ D k ] Pr[Lk  ∧ D k ]

≤   n (k )2−k  + Pr[D k ] + 12.

Temos então Pr[D k ] ≥  λ(k ) − n (k )2−k .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 75 / 90

Perguntas?

Dúvidas?? Perguntas???

Page 204: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 204/238

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 76 / 90

Page 205: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 205/238

The Random Oracle Methodology, Revisited - 1998

Canetti, Goldreich & Halevi reavaliam o ROM;apresentam fortes resultados teóricos contra a sua validade; Esquemas seguros no ROM, porém inseguros em qualquer 

instanciação

Page 206: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 206/238

instanciação.

Resultado altamente controverso por sua aparente artificialidade.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 77 / 90

Como implementar o oráculo aleatório?

Queremos determinar se existem “boas” implementações dooráculo aleatório. Uma boa implementação mantém a segurança do esquema

equivalente na prática ao que era no ROM.

Page 207: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 207/238

1   Uma função F (.).

2   Uma família de funções F k  = {f s }s ∈S .3   Escolher caso-a-caso.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 78 / 90

Como implementar o oráculo aleatório?

Queremos determinar se existem “boas” implementações dooráculo aleatório. Uma boa implementação mantém a segurança do esquema

equivalente na prática ao que era no ROM.

Page 208: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 208/238

1   Uma função F (.).

2   Uma família de funções F k  = {f s }s ∈S .3   Escolher caso-a-caso.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 78 / 90

Como implementar o oráculo aleatório?

Queremos determinar se existem “boas” implementações dooráculo aleatório. Uma boa implementação mantém a segurança do esquema

equivalente na prática ao que era no ROM.

Page 209: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 209/238

1   Uma função F (.).

2   Uma família de funções F k  = {f s }s ∈S .3   Escolher caso-a-caso.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 78 / 90

Implementando o ROM com uma função

O ideal é construir uma função F (.) que, independente do

protocolo, se ja uma boa implementação de O. Impossível!

Uma aplicação (artificial) E  que mostra isso é a seguinte:1   Seja f  a função candidata;

b M d

Page 210: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 210/238

2   E  recebe uma mensagem M  como entrada;

Se O(M ) = f (M ), E  revela seus dados privados. Senão retorna O(M ).

O adversário tem sucesso se descobre os dados secretos de E .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 79 / 90

Page 211: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 211/238

Implementando o ROM com uma função

O ideal é construir uma função F (.) que, independente do

protocolo, se ja uma boa implementação de O. Impossível!

Uma aplicação (artificial) E  que mostra isso é a seguinte:1   Seja f  a função candidata;2 E b M t d

Page 212: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 212/238

2   E  recebe uma mensagem M  como entrada;

Se O(M ) = f (M ), E  revela seus dados privados. Senão retorna O(M ).

O adversário tem sucesso se descobre os dados secretos de E .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 79 / 90

Implementando o ROM com uma função

O ideal é construir uma função F (.) que, independente do

protocolo, se ja uma boa implementação de O. Impossível!

Uma aplicação (artificial) E  que mostra isso é a seguinte:1   Seja f  a função candidata;2 E recebe uma mensagem M como entrada;

Page 213: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 213/238

2   E  recebe uma mensagem M  como entrada;

Se O(M ) = f (M ), E  revela seus dados privados. Senão retorna O(M ).

O adversário tem sucesso se descobre os dados secretos de E .

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 79 / 90

Implementando o ROM com uma função

E  é seguro no ROM. A probabilidade de O(x ) = f (x ) é baixíssima; O é aleatório.

E  é inseguro quando implementado por f . Of (x ) = f (x ) é trivialmente verdade.

Page 214: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 214/238

O adversário sempre tem sucesso.

Uma única função f  não pode ser então uma boa implementaçãopara O.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 80 / 90

Implementando o ROM com uma função

E  é seguro no ROM. A probabilidade de O(x ) = f (x ) é baixíssima; O é aleatório.

E  é inseguro quando implementado por f . Of (x ) = f (x ) é trivialmente verdade.

Page 215: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 215/238

O adversário sempre tem sucesso.

Uma única função f  não pode ser então uma boa implementaçãopara O.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 80 / 90

Implementando o ROM com uma função

E  é seguro no ROM. A probabilidade de O(x ) = f (x ) é baixíssima; O é aleatório.

E  é inseguro quando implementado por f . Of (x ) = f (x ) é trivialmente verdade.

O d á i

Page 216: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 216/238

O adversário sempre tem sucesso.

Uma única função f  não pode ser então uma boa implementaçãopara O.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 80 / 90

Implemetando O com uma família de funções

Consideremos uma família infinita de funçõesF k  = {f s   : {0,1}poli(k ) → {0,1}

l out(k )

s ∈{0,1}k }

A implementação ocorre da seguinte forma:1   Dado um parâmetro de segurança k , a família F k  está

implicitamente definida;2   Escolhemos s 

  r← {0,1}k 

Page 217: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 217/238

{ , }3   Substituimos invocações ao oráculo

 O por chamadas à função f 

s .

O problema anterior não se repete neste cenário.

Será que podemos então utilizar famílias de funções paraimplementar O?  Não!.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 81 / 90

Implemetando O com uma família de funções

Consideremos uma família infinita de funçõesF k  = {f s   : {0,1}poli(k ) → {0,1}

l out(k )

s ∈{0,1}k }

A implementação ocorre da seguinte forma:1   Dado um parâmetro de segurança k , a família F k  está

implicitamente definida;2   Escolhemos s 

  r← {0,1}k 

Page 218: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 218/238

{ , }3   Substituimos invocações ao oráculo O  por chamadas à função f 

s .

O problema anterior não se repete neste cenário.

Será que podemos então utilizar famílias de funções paraimplementar O?  Não!.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 81 / 90

Implemetando O com uma família de funções

Consideremos uma família infinita de funçõesF k  = {f s   : {0,1}poli(k ) → {0,1}

l out(k )

s ∈{0,1}k }

A implementação ocorre da seguinte forma:1   Dado um parâmetro de segurança k , a família F k  está

implicitamente definida;2   Escolhemos s 

  r← {0,1}k 

Page 219: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 219/238

{ , }3   Substituimos invocações ao oráculo O  por chamadas à função f 

s .

O problema anterior não se repete neste cenário.

Será que podemos então utilizar famílias de funções paraimplementar O?  Não!.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 81 / 90

Esquema de assinatura (quase) “não-instanciável”

Seja S  = (G ,S ,V ) um esquema de assinaturas seguro, e seja  R  umarelação evasiva . Contruímos o esquema modificado S R  = (G ,S R ,V R ):

Assinatura Modificada, S OR  (SK,M ):1   Se (M ,O(M )) ∈  R , retorna (SK,M )2   Caso contrário, retorna  S O(SK,M )

Verificação Modificada VOR (PK M σ):

Page 220: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 220/238

Verificação Modificada, V R  (PK,M , σ):

1   Se (M ,O(M )) ∈  R ,  ACEITA.2   Caso contrário, retorna  V O(PK,M , σ)

Este esquema é seguro no ROM porém inseguro em qualquerinstanciação.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 82 / 90

Esquema de assinatura (quase) “não-instanciável”

Seja S  = (G ,S ,V ) um esquema de assinaturas seguro, e seja  R  umarelação evasiva . Contruímos o esquema modificado S R  = (G ,S R ,V R ):

Assinatura Modificada, S OR  (SK,M ):1   Se (M ,O(M )) ∈  R , retorna (SK,M )2   Caso contrário, retorna  S O(SK,M )

Verificação Modificada, VOR (PK M σ):

Page 221: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 221/238

Verificação Modificada, V R  (PK,M , σ):

1   Se (M ,O(M )) ∈  R ,  ACEITA.2   Caso contrário, retorna  V O(PK,M , σ)

Este esquema é seguro no ROM porém inseguro em qualquerinstanciação.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 82 / 90

Esquema de assinatura (quase) “não-instanciável”

Seja S  = (G ,S ,V ) um esquema de assinaturas seguro, e seja  R  umarelação evasiva . Contruímos o esquema modificado S R  = (G ,S R ,V R ):

Assinatura Modificada, S OR  (SK,M ):1   Se (M ,O(M )) ∈  R , retorna (SK,M )2   Caso contrário, retorna  S O(SK,M )

Verificação Modificada, VOR (PK,M, σ):

Page 222: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 222/238

Verificação Modificada, V R  (PK,M , σ):

1   Se (M ,O(M )) ∈  R ,  ACEITA.2   Caso contrário, retorna  V O(PK,M , σ)

Este esquema é seguro no ROM porém inseguro em qualquerinstanciação.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 82 / 90

Relações Evasivas - Definição

Definição

Uma relação binária R é dita evasiva  se para qualquer algoritmoprobabilístico A

PrO

[x  ← AO(1k ), (x ,O(x )) ∈ R] =  1

poli(k),

Page 223: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 223/238

O poli(k )

É difícil de achar um x  tal que (x ,O(x )) pertence à relação.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 83 / 90

Relações Evasivas - Construção

Para qualquer família de funções F  = {f s } é possível construiruma função evasiva R F  correspondente

R F   def =

{(s , f s (s ) : s  ∈ {0,1}k }.

Para qualquer família F candidata a implementar o oráculo existe

Page 224: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 224/238

Para qualquer família F  candidata a implementar o oráculo existe

um esquema de assinaturas seguro no ROM porém inseguroquando instanciado por F 

Não existem famílias de funções que implementem bem o oráculoaleatório.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 84 / 90

Page 225: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 225/238

Relações Evasivas - Construção

Para qualquer família de funções F  = {f s } é possível construiruma função evasiva R F  correspondente

R F   def =

{(s , f s (s ) : s  ∈ {0,1}k }.

Para qualquer família F candidata a implementar o oráculo existe

Page 226: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 226/238

Para qualquer família F  candidata a implementar o oráculo existe

um esquema de assinaturas seguro no ROM porém inseguroquando instanciado por F 

Não existem famílias de funções que implementem bem o oráculoaleatório.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 84 / 90

Page 227: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 227/238

Implementando o ROM caso-a-caso

Só nos resta a esperança de escolher caso-a-caso a função que

implementa O. Dado um protocolo P  qualquer, escolhemos uma f  apropriada paraa sua implementação

Extensão do resultado anterior: Existem esquemas de assinaturas inseguros em qualquer 

Page 228: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 228/238

q g q q

instanciação.

Não existem boas implementações para o oráculo aleatório.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 85 / 90

Implementando o ROM caso-a-caso

Só nos resta a esperança de escolher caso-a-caso a função que

implementa O. Dado um protocolo P  qualquer, escolhemos uma f  apropriada paraa sua implementação

Extensão do resultado anterior: Existem esquemas de assinaturas inseguros em qualquer 

Page 229: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 229/238

instanciação.

Não existem boas implementações para o oráculo aleatório.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 85 / 90

Implementando o ROM caso-a-caso

Só nos resta a esperança de escolher caso-a-caso a função que

implementa O. Dado um protocolo P  qualquer, escolhemos uma f  apropriada paraa sua implementação

Extensão do resultado anterior: Existem esquemas de assinaturas inseguros em qualquer 

Page 230: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 230/238

instanciação.

Não existem boas implementações para o oráculo aleatório.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 85 / 90

Aftermatch

An Uninstantiable Random-Oracle-Model Scheme for aHybrid-Encryption Problem [Bellare et al., 2004].

On the random-oracle methodology as applied to length-restrictedsignature schemes [Canetti et al., 2004]

Another Look at “Provable Security” [Koblitz e Menezes 2004]

Page 231: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 231/238

Another Look at Provable Security [Koblitz e Menezes, 2004]

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 86 / 90

Aftermatch

An Uninstantiable Random-Oracle-Model Scheme for aHybrid-Encryption Problem [Bellare et al., 2004].

On the random-oracle methodology as applied to length-restrictedsignature schemes [Canetti et al., 2004]

Another Look at “Provable Security” [Koblitz e Menezes 2004]

Page 232: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 232/238

Another Look at Provable Security [Koblitz e Menezes, 2004]

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 86 / 90

Page 233: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 233/238

O Futuro do Modelo do Oráculo Aleatório

Situação incerta: especialistas se pronunciam contra e a favor do

modelo.Atualmente única opção viável para análise de segurança demuitos protocolos eficientes;Pôr fim ao impasse: Ataques mais realistas.

Page 234: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 234/238

q Delimitação precisa das vulnerabilidades. Delimitação precisa da sua aplicabilidade.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 87 / 90

O Futuro do Modelo do Oráculo Aleatório

Situação incerta: especialistas se pronunciam contra e a favor do

modelo.Atualmente única opção viável para análise de segurança demuitos protocolos eficientes;Pôr fim ao impasse: Ataques mais realistas.

Page 235: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 235/238

q Delimitação precisa das vulnerabilidades. Delimitação precisa da sua aplicabilidade.

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 87 / 90

Agradecimentos

Gostaria de agradecer a ajuda dos meus co-autores e de DiegoAranha.

Muito obrigado pela presença.

Page 236: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 236/238

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 88 / 90

Dúvidas

Perguntas???

Page 237: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 237/238

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 89 / 90

Problemas Difíceis

Page 238: Demonstrações de Seguranças - Semântica

8/17/2019 Demonstrações de Seguranças - Semântica

http://slidepdf.com/reader/full/demonstracoes-de-segurancas-semantica 238/238

Rafael Dantas de Castro ()   Introdução à Segurança Demonstrável   Agosto de 2007 90 / 90