Top Banner
Sum´ ario Introdu¸c˜ ao Abordagem PRP/PRF Switching Lemma Sintaxe ecnicas de reescrita (transforma¸ ao) Prova Elementar para CBC MAC The Game-Playing Technique Marcelo Correia Pinheiro Universidade do Vale do Rio dos Sinos Teoria da Informa¸c˜ ao Prof. Ernesto Lindstaedt 14 de junho de 2007 Marcelo Correia Pinheiro The Game-Playing Technique
37

The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

Dec 25, 2018

Download

Documents

duonghuong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

The Game-Playing Technique

Marcelo Correia Pinheiro

Universidade do Vale do Rio dos SinosTeoria da Informacao

Prof. Ernesto Lindstaedt

14 de junho de 2007

Marcelo Correia Pinheiro The Game-Playing Technique

Page 2: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

1 Sumario2 Introducao

O que e?3 Abordagem

Como funciona?4 PRP/PRF Switching Lemma

Provando o lema4 Sintaxe

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

5 Tecnicas de reescrita (transformacao)Depois de bad ser true, nada importaCoin fixingLazy sampling

6 Prova Elementar para CBC MACAlgoritmoTeorema

Marcelo Correia Pinheiro The Game-Playing Technique

Page 3: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

O que e?

E uma tecnica baseada na utilizacao de “jogos” em pseudo-codigo,cuja vantagem do adversario em atacar uma construcaocriptografica e calculada sobre a probabilidade que este jogoatribua uma flag chamada bad como true. A probabilidade eincrementada atraves de uma sequencia de modificacoes nopseudo-codigo que levam a uma cadeia de jogos, ate que a flagbad seja atribuıda.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 4: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Como funciona?

Suponha a necessidade de calcular a vantagem de um adversario Aem atacar uma construcao criptografica. Essa vantagem e obtidaatraves da probabilidade (um numero n ∈ < entre 0 e 1)computada atraves da diferenca entre as probabilidades de que Aretorne 1 em dois diferentes “mundos”. Sejam os seguintes passos:

Marcelo Correia Pinheiro The Game-Playing Technique

Page 5: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Como funciona?

Um pseudo-codigo - um jogo - e criado, obtendo oscomportamentos do mundo 1. Este jogo inicializa variaveis, interagecom o adversario e executa seu codigo.

Outro pseudo-codigo - um segundo jogo - e escrito, capturando oscomportamentos do mundo 0. Os pseudo-codigos dos jogos 1 e 0sao sintaticamente identicos, com excecao do codigo que seta badpara true.

Aplica-se o lema fundamental dos jogos para calcular, na presenteconfiguracao dos jogos, a vantagem do adversario limitada naprobabilidade de bad ser atribuıda em outro jogo.

Se escolhe um dos dois jogos e aplica-se pequenas transformacoesno codigo, de forma a aumentar ou manter inalterada aprobabilidade de bad ser atribuıda.

Assim obtem-se uma cadeia de jogos, terminando com algum jogoterminal, onde obtem-se a probabilidade da flag bad ser atribuıda.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 6: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Como funciona?

Um pseudo-codigo - um jogo - e criado, obtendo oscomportamentos do mundo 1. Este jogo inicializa variaveis, interagecom o adversario e executa seu codigo.

Outro pseudo-codigo - um segundo jogo - e escrito, capturando oscomportamentos do mundo 0. Os pseudo-codigos dos jogos 1 e 0sao sintaticamente identicos, com excecao do codigo que seta badpara true.

Aplica-se o lema fundamental dos jogos para calcular, na presenteconfiguracao dos jogos, a vantagem do adversario limitada naprobabilidade de bad ser atribuıda em outro jogo.

Se escolhe um dos dois jogos e aplica-se pequenas transformacoesno codigo, de forma a aumentar ou manter inalterada aprobabilidade de bad ser atribuıda.

Assim obtem-se uma cadeia de jogos, terminando com algum jogoterminal, onde obtem-se a probabilidade da flag bad ser atribuıda.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 7: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Como funciona?

Um pseudo-codigo - um jogo - e criado, obtendo oscomportamentos do mundo 1. Este jogo inicializa variaveis, interagecom o adversario e executa seu codigo.

Outro pseudo-codigo - um segundo jogo - e escrito, capturando oscomportamentos do mundo 0. Os pseudo-codigos dos jogos 1 e 0sao sintaticamente identicos, com excecao do codigo que seta badpara true.

Aplica-se o lema fundamental dos jogos para calcular, na presenteconfiguracao dos jogos, a vantagem do adversario limitada naprobabilidade de bad ser atribuıda em outro jogo.

Se escolhe um dos dois jogos e aplica-se pequenas transformacoesno codigo, de forma a aumentar ou manter inalterada aprobabilidade de bad ser atribuıda.

Assim obtem-se uma cadeia de jogos, terminando com algum jogoterminal, onde obtem-se a probabilidade da flag bad ser atribuıda.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 8: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Como funciona?

Um pseudo-codigo - um jogo - e criado, obtendo oscomportamentos do mundo 1. Este jogo inicializa variaveis, interagecom o adversario e executa seu codigo.

Outro pseudo-codigo - um segundo jogo - e escrito, capturando oscomportamentos do mundo 0. Os pseudo-codigos dos jogos 1 e 0sao sintaticamente identicos, com excecao do codigo que seta badpara true.

Aplica-se o lema fundamental dos jogos para calcular, na presenteconfiguracao dos jogos, a vantagem do adversario limitada naprobabilidade de bad ser atribuıda em outro jogo.

Se escolhe um dos dois jogos e aplica-se pequenas transformacoesno codigo, de forma a aumentar ou manter inalterada aprobabilidade de bad ser atribuıda.

Assim obtem-se uma cadeia de jogos, terminando com algum jogoterminal, onde obtem-se a probabilidade da flag bad ser atribuıda.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 9: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Como funciona?

Um pseudo-codigo - um jogo - e criado, obtendo oscomportamentos do mundo 1. Este jogo inicializa variaveis, interagecom o adversario e executa seu codigo.

Outro pseudo-codigo - um segundo jogo - e escrito, capturando oscomportamentos do mundo 0. Os pseudo-codigos dos jogos 1 e 0sao sintaticamente identicos, com excecao do codigo que seta badpara true.

Aplica-se o lema fundamental dos jogos para calcular, na presenteconfiguracao dos jogos, a vantagem do adversario limitada naprobabilidade de bad ser atribuıda em outro jogo.

Se escolhe um dos dois jogos e aplica-se pequenas transformacoesno codigo, de forma a aumentar ou manter inalterada aprobabilidade de bad ser atribuıda.

Assim obtem-se uma cadeia de jogos, terminando com algum jogoterminal, onde obtem-se a probabilidade da flag bad ser atribuıda.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 10: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Como funciona?

Cada jogo G e composto por uma tupla de programas, cada umescrito numa linguagem de programacao. Ambos os programaspossuem um conjunto comum de variaveis globais e locais, sendoidenticos ate a atribuicao da variavel bad .

Marcelo Correia Pinheiro The Game-Playing Technique

Page 11: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Provando o lema

Seja Perm(n) o conjunto de todas as permutacoes de {0, 1}n, eRand(n) o conjunto de todas as funcoes de {0, 1}n para {0, 1}n.Para Af ⇒ 1 denota-se o evento do adversario A, utilizando umoraculo f , retorna um bit de saıda com valor 1. Assume-se que πseja extraıdo randomicamente de Perm(n) e ρ seja selecionado deRand(n).

Lema

Seja n ≥ 1 um inteiro. Seja A um adversario que pergunta apos qconsultas ao oraculo. Entao |Pr [Aπ ⇒ 1]| − Pr [Aρ ⇒ 1]| ≤ q(q−1)

2n+1 .

Marcelo Correia Pinheiro The Game-Playing Technique

Page 12: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Provando o lema

Marcelo Correia Pinheiro The Game-Playing Technique

Page 13: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Provando o lema

Para provar o lema utilizando uma cadeia de jogos, seja o seguintecenario: multiplas respostas a consultas A estao rodando em umde dois jogos. Considere a interacao de A com Game S1 ao invesde interar com a permutacao randomica π ← Perm(n), e damesma forma a interacao de A com Game S1 no lugar de interarcom a funcao randomica do oraculo ρ← Rand(n). Cada jogo esintaticamente identico, com excecao de Game S0, que nao possuia atribuicao bad = true.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 14: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Provando o lema

Como Game S0 simula a funcao randomica ρ← Rand(n), temosque Pr [Aρ ⇒ 1] = Pr [AS0 ⇒ 1]. Similarmente, ao verificar GameS1, obtem-se Pr [Aπ ⇒ 1] = Pr [AS1 ⇒ 1]. Logo, reescrevendoparcialmente a formula chega-se a|Pr [Aπ ⇒ 1]− Pr [Aρ ⇒ 1]| = |Pr [AS1 ⇒ 1]− Pr [AS0 ⇒ 1]|.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 15: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Provando o lema

Para calcular a probabilidade de atribuicao da variavel bad com asalteracoes realizadas, seja a seguinte formula:|Pr [AS1 ⇒ 1]− Pr [AS0 ⇒ 1]| ≤ Pr [AS0 setar bad ]. Essatransformacao resulta no lema fundamental dos jogos. Esse lemadiz que, quando dois jogos sao escritos e sao sinteticamente iguaisate a atribuicao da variavel bad , a diferenca das probabilidades queA retorna 1 nos dois jogos e limitada pela probabilidade que bad eatribuıda no outro jogo.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 16: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Um programa P e uma sequencia finita de instrucoes escritas emalguma linguagem de programacao L. Cada programa seraidentificado pelo sua arvore sintatica. Estes programas possuemtodas as construcoes de uma linguagem procedural: variaveis,atribuicoes, instruicoes if, for, etc. Seja a seguinte definicao:

Jogos

Um jogo G = ( Inicializa, P1, P2, ..., Pn, Finaliza) e umasequencia de programas.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 17: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Marcelo Correia Pinheiro The Game-Playing Technique

Page 18: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Um adversario e um algoritmo probabilıstico com a habilidade deconsultar algum numero n ≥ 0 de oraculos, normalmente descritocomo um programa. O par de um jogo G e um adversario A echamado de jogo em execucao, denotados normalmente como GA

ou AG .

Marcelo Correia Pinheiro The Game-Playing Technique

Page 19: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Inıcio do jogo

Para rodar G = (Inicializa, P1, P2, ..., Pn, Finaliza) com A e umastring de parametro param, inicializa-se invocando o programaInicializa enviando o parametro param. Entao se roda A, passandoqualquer valor de retorno produzido por Inicializa para P1.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 20: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Execucao intermediaria

Quando o adversario A chama seu iesimo oraculo dada uma string,essa string e informada ao programa Pi e este e executado. Oadversario A volta a ser executado quando Pi retorna a stringresultante.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 21: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Termino do jogo

Quando Pn termina sua execucao, o metodo Finaliza e executado,recebendo como parametro a string resultante da execucao doadversario A.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 22: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Seja Pr [GA ⇒ 1] a probabilidade de que o resultado do jogo G seja1 quando roda-se Ga. Diz-se que os jogos G e H sao equivalentesse, para qualquer adversario A, tem-se quePr [GA ⇒ 1] = Pr [HA ⇒ 1].Define-se Pr [AG ⇒ 1] como a probabilidade do adversario Aretorne 1 quando se roda Ga. A vantagem de A em distinguir jogosG e H e o numero real Advdist

G ,H(A) = Pr [AG ⇒ 1]− Pr [AH ⇒ 1].Diz-se que os jogos G e H sao indistinguıveis se, para qualqueradversario A, obtem-se a igualdade Pr [AG ⇒ 1] = Pr [AH ⇒ 1].

Marcelo Correia Pinheiro The Game-Playing Technique

Page 23: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Executando um jogoCalculo da ProbabilidadeLema fundamental dos jogos

Lema fundamental

Sejam G e H jogos sintaticamente identicos, e A um adversario.Entao Pr [GA ⇒ 1]− Pr [HA ⇒ 1] ≤ Pr [GA setar bad ].

Marcelo Correia Pinheiro The Game-Playing Technique

Page 24: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Ha algumas tecnicas uteis na transformacao de jogos, de forma aaumentar ou manter a probabilidade da flag bad ser atribuıda.Destacam-se:

Depois de bad ser atribuıda, nada mais importa

Coin fixing

Lazy sampling

Marcelo Correia Pinheiro The Game-Playing Technique

Page 25: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Ha algumas tecnicas uteis na transformacao de jogos, de forma aaumentar ou manter a probabilidade da flag bad ser atribuıda.Destacam-se:

Depois de bad ser atribuıda, nada mais importa

Coin fixing

Lazy sampling

Marcelo Correia Pinheiro The Game-Playing Technique

Page 26: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Ha algumas tecnicas uteis na transformacao de jogos, de forma aaumentar ou manter a probabilidade da flag bad ser atribuıda.Destacam-se:

Depois de bad ser atribuıda, nada mais importa

Coin fixing

Lazy sampling

Marcelo Correia Pinheiro The Game-Playing Technique

Page 27: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Apos a flag bad ser atribuıda com true, pode-se remover ostrechos conseguintes de codigo do programa ou simplesmentemante-los; a probabilidade sera inalterada.

Depois de bad ser true, nada importa

Sejam G e H jogos sintaticamente identicos e A um adversario.Entao Pr [GA setar bad ] = Pr [HA setar bad ].

Marcelo Correia Pinheiro The Game-Playing Technique

Page 28: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Suponha que um jogo GA possua as seguintes caracterısticas: umoraculo P cujo parametro de entrada input informado por A estejavazio e o resultado tambem seja vazio. Esse jogo contera uma flagbad . A seguir o adversario A solicita, em sequencia, exatas qstrings de consulta para P, onde o programa armazena emvariaveis X1, ...,Xq tais strings de entrada; o resultado dessasstrings e armazenado em variaveis Y1, ...,Yq. Seja entao C umconjunto de tuplas (X1, ...,Xq,Y1, ...,Yq) onde cada vetor deconsultas X1, ...,Xq e suas respostas Y1, ...,Yq podem ocorrer naexecucao de GA em C . Este conjunto e denominado conjunto deconsulta/resposta para GA.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 29: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Seja γ o conjunto de todas as variaveis Y /∈ {X1, ...,Xq,Y1, ...,Yq}em um jogo G para cada Yi . Diz-se que GA e ignorado se avariavel bad nao depende de qualquer variavel de γ, ou seja,nenhuma variavel Yi influencia na computacao de bad .

Marcelo Correia Pinheiro The Game-Playing Technique

Page 30: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Com um jogo ignorado GA, um conjunto consulta/resposta C paraGA e um ponto Q = (X1, ...,Xq,Y1, ...,Yq) ∈ C , forma-se um novojogo HC , semelhante a G exceto pelo fato de nao ter um oraculoP.Seja H = CoinFixC

A (G ) de HC para o primeiro item Q ∈ C quemaximiza Pr [HC

A setar bad ]. Como HA nao depende de A, pode-seomitı-lo e assim ainda ter um jogo em execucao.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 31: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Tecnica Coin-fixing

Seja GA um jogo ignorado que possua um conjunto C do tipoconsulta/resposta. Seja H = CoinFixC

A (G ). EntaoPr [GA setar bad ] ≤ Pr [H setar bad ].

Marcelo Correia Pinheiro The Game-Playing Technique

Page 32: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

Depois de bad ser true, nada importaCoin fixingLazy sampling

Ao inves de realizar escolhas a cada transformacao, pode serconveniente reescrever o jogo prorrogando essas escolhar ate omomento ideal. Considere o seguinte exemplo: seja um jogo queinterage com um adversario utilizando uma permutacao randomicaπ em n bits. Uma forma de montar esse jogo seria escolher πrandomicamente de Perm(n) durante a funcao Inicializa e entao,quando solicitada uma consulta X ∈ {0, 1}n, retorna π(X ). Aalternativa tardia para implementar π seria comecar com umapermutacao parcial de π de n bits para n bits, todos indefinidos.Quando solicitada uma consulta X ainda nao pertencente aodomınio de π, o oraculo pode escolher um valor Y randomicamenteda escala de π, definindo π(X )← Y , e retornando Y .

Marcelo Correia Pinheiro The Game-Playing Technique

Page 33: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

AlgoritmoTeorema

Seja o seguinte algoritmo para o cifrador CBC:

Algoritmo CBC

Parse M as M1..Mm

C0 ← 0n

for i ← 1 to m do Ci ← Ci−1 ⊕Mi

return Cm

Marcelo Correia Pinheiro The Game-Playing Technique

Page 34: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

AlgoritmoTeorema

Seja Perm(n) a notacao do conjunto de todas as permutacoes em{0, 1}n e Rand(mn, n) a notacao do conjunto de todas as funcoesde {0, 1}mn para {0, 1}n. Para m ≥ 1 e π ∈ Perm(n) seja CBCm

π arestricao de CBCn para o domınio {0, 1}mn. Tendo um algoritmoA com um oraculo de acesso para a funcao F : {0, 1}mn ← {0,1}n, seja

Advcbcn,m(A) = Pr [π ←$ Perm(n): ACBCm

π (.) ⇒ 1]− Pr [ρ←$

Rand(mn, n): Aρ(.) ⇒ 1]

a notacao da vantagem de A. Entao

Advcbcn,m(q) = max

{Advcbc

n,m(A)}

denota o maximo que todos os adversarios A solicitam ate qconsultas.

Marcelo Correia Pinheiro The Game-Playing Technique

Page 35: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

AlgoritmoTeorema

CBC MAC

Suponha m, q ≥ 2 e n ≥ 1. Entao

Advcbcn,m(q) ≤ m2q2

2n

Marcelo Correia Pinheiro The Game-Playing Technique

Page 36: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

AlgoritmoTeorema

Figura do paper!

Marcelo Correia Pinheiro The Game-Playing Technique

Page 37: The Game-Playing Technique - professor.unisinos.brprofessor.unisinos.br/linds/teoinfo/sem_gameplaying_presentation.pdf · Aplica-se o lema fundamental dos jogos para calcular, na

SumarioIntroducao

AbordagemPRP/PRF Switching Lemma

SintaxeTecnicas de reescrita (transformacao)

Prova Elementar para CBC MAC

AlgoritmoTeorema

M. Bellare e P. Rogaway, The Game-Playing Technique. 11 deDezembro de 2004.http://inf.unisinos.br/∼linds/teoinfo/bellare04gameplaying.pdf

Marcelo Correia Pinheiro The Game-Playing Technique