-
No último segmento, definimos criptografia autenticado, mas não o fiz
-
realmente mostrar porque a criptografia autenticado é a noção de direito de
-
segurança. Nesse segmento eu queria mostrar-lhe que a criptografia autenticada de fato
-
é uma noção muito natural de segurança e eu vou fazê-lo, mostrando-lhe a defesa
-
contra o ataque muito poderoso chamado um ataque de texto da cifra escolhida. Então na verdade nós
-
já viu uma série de exemplos de um ataque da cifra escolhida texto para imaginar o
-
adversário tem algum texto cifrado C que quer decifrar .. E o que pode fazer
-
é, por exemplo, enganar o servidor descriptografia em decifrar um texto cifrado
-
não, mas na verdade o texto cifrado c. Então, já vimos alguns exemplos disso. Se você
-
lembre-se no primeiro segmento, nós olhamos para um adversário que pode enviar arbitrária
-
texto cifrado, e se o texto original aconteceu para começar com destino igual a 25, então
-
o adversário é realmente dado o texto original em claro. Então essa é uma
-
exemplo de um adversário que pode obter a decodificação de textos cifrados, mas certas
-
não todos os textos cifrados. Outro exemplo que vimos é um adversário que pode aprender
-
algo sobre o texto original através da apresentação de textos cifrados para o decrypter.
-
Então, temos este exemplo quando o adversário apresenta criptografados pacotes TCP / IP
-
para o servidor de descodificação, e se o servidor desencriptação envia de volta um ACK. O
-
adversário aprende que o texto decifrado planície tinha uma soma de verificação válida. E caso contrário,
-
texto decifrado o simples não tem uma soma de verificação válida. Portanto, este é, novamente, um
-
exemplo de um ataque de texto cifrado escolhido, onde o invasor envia texto cifrado,
-
e aprende algo sobre a decifração do texto cifrado. Então, para lidar com estes
-
tipo de ameaças, vamos definir uma noção muito geral de segurança, chamado escolhido
-
segurança texto cifrado. Então, aqui, nós vamos dar ao adversário uma grande quantidade de energia, ok?
-
Então ele pode fazer tanto ataque de texto simples escolhido, e um ataque de texto cifrado escolhido.
-
Em outras palavras, ele pode obter a criptografia de mensagens arbitrárias de seu
-
escolha. E ele pode descriptografar qualquer texto cifrado de sua escolha, além de alguns desafiado
-
textos cifrados. E como eu mostrei antes, este é realmente um bem conservadora
-
modelagem da vida real. Na vida real, muitas vezes, o atacante pode enganar o, o
-
decrypter, em decifrar textos cifrados certos para o atacante, mas não todos cifra
-
textos. Assim, o modelo aqui é que o atacante tem um texto cifrado certeza de que
-
quer decifrar. Vai interagir com o decrypter, emitindo estes escolhidos
-
cifra consultas de texto para o decrypter. Ou seja, para descriptografar texto cifrado vários
-
diferente do texto cifrado desafio. E então o objetivo do adversário é quebrar
-
segurança semântico do texto cifrado desafio. Então você percebe que nós estamos dando o
-
adversário muito poder. E tudo o que estamos pedindo para você fazer é quebrar semântica
-
títulos, que vai ser bastante difícil para os sistemas de design que são
-
proteger contra adversários deste tipo. No entanto, vamos fazê-lo. Assim
-
vamos definir o modelo de segurança da cifra escolhida texto com mais precisão. Assim, como
-
usual, temos uma cifra (E, D). E nós vamos definir dois experimentos, experimente
-
zero e um experimento. Portanto, este deve ser um pouco familiar agora. O
-
challenger vai começar por escolher uma chave aleatória. E agora o adversário
-
vai apresentar às consultas a este challenger. Cada consulta pode ser um de dois tipos. Ele
-
pode ser uma consulta de texto escolhido simples, ou pode ser uma consulta de texto escolhido cifra. Assim, um
-
consulta de texto escolhido simples, como já sabemos. Basicamente, o adversário apresenta dois
-
mensagens, M zero e M1. Eles têm de ter o mesmo comprimento. E o adversário
-
recebe a criptografia de qualquer M zero se estamos no experimento zero, ou M1, se estamos
-
no experimento um. Então ele recebe a criptografia da esquerda ou à direita
-
dependendo se estávamos no experimento zero ou um experimento um. O segundo tipo
-
de consulta é a mais interessante. Este é o lugar onde o adversário apresenta um arbitrário
-
texto cifrado da sua escolha e que ele recebe de volta é a decodificação de que cifra
-
texto. Então você percebe o adverary tem permissão para descriptografar textos cifrados arbitrárias de seu
-
escolha. A única restrição é que o texto cifrado não é um texto cifrado
-
que foram obtidos como resultado de uma consulta de CPA. E é claro que isso não seria justo
-
contrário, pois o invasor pode simplesmente pegar um texto cifrado que foi obtido
-
de uma consulta CPA. Isso vai ser a criptografia de M0 ou o
-
criptografia de M1, se ele poderia enviar uma consulta CCA para que o texto cifrado em particular. Ele
-
vai em resposta ou obter M0 ou M1, e então ele vai saber se se ele está em experimento
-
zero ou um experimento. Então isso não seria justo. Assim, dizemos que a cifra CPA
-
textos que ele recebeu são os textos cifrados desafiados. E ele tem permissão para descriptografar
-
quaisquer textos cifrados de sua escolha, para além destes textos cifra contestada. E como
-
usual, seu objetivo é determinar se ele está em experimento zero, ou na experiência
-
um. Então eu vou enfatizar novamente, que isso é um adversário extremamente poderoso.
-
Um que pode decifrar qualquer texto cifrado de sua escolha, além do desafio
-
texto cifrado. E ainda, ele não consegue distinguir se ele está em experimento
-
zero, ou em um experimento. Então, como sempre, dizemos que a cifra é seguro CCA,
-
texto cifrado escolhido seguro. Se o adversário se comporta da mesma no experimento
-
zero como ele faz em um experimento. Ou seja, não pode distinguir os dois experimentos. Assim
-
vamos começar com um exemplo simples, e mostrar que, de fato, CBC com um IV aleatório,
-
CCA não é seguro, não é seguro contra ataques de texto da cifra escolhida. Então vamos ver
-
porque esse é o caso. Então, o que o adversário vai começar por fazer, ele é
-
vai simplesmente apresentar duas mensagens distintas, M0 e M1. E vamos fingir que
-
Estas mensagens são uma mensagem de bloco. E o que ele vai voltar é a CBC
-
criptografia de qualquer M0 ou M1. Você percebe o texto cifrado só tem
-
um bloco, porque o texto simples eram apenas um bloco longo. Agora, o que é o
-
atacante vai fazer? Bem, ele vai modificar esse texto cifrado C que lhe foi dada em
-
C privilegiada simplesmente mudando a IV. Ok? Assim, ele só tem a IV e X sobre ele com
-
um. É isso aí. Isto dá um texto cifrado novo, C nobre, que é diferente de C
-
e como resultado é perfeitamente válido para o adversário a apresentar C privilegiada como a sua
-
consulta de texto da cifra escolhida. Então, ele pede o desafiante por favor descriptografar este C
-
primordial para mim. O desafiante, porque c principal não é igual a c, deve descriptografar c
-
principal. E agora vamos ver o que acontece quando ele descriptografa c nobre? Bem, qual é o
-
descriptografia de c primo, deixe-me perguntar-lhe. Então você provavelmente se lembra da primeira
-
segmento que se XOR a IV por um lado, que simplesmente XORs o texto simples por um. Então agora
-
adversário que recebeu M0 xor um, ou M1 xor, e agora ele pode perfeitamente dizer
-
se ele está em zero e experiência, ou em um experimento. Assim, a vantagem desta
-
adversário é basicamente um, porque ele pode muito facilmente dizer que experimento que ele está dentro
-
E como resultado, ele pode ganhar o jogo de segurança da cifra escolhida texto. Então, se você pensar
-
nisso por um segundo, você verá que esta atacando exatamente capturado o primeiro
-
ataque ativo que vimos, onde o adversário alterou ligeiramente o texto cifrado
-
que lhe foi dada. E então começou o decrypter de decifrá-lo para ele. E
-
, portanto, ele foi capaz de escutar as mensagens que não foram destinados ao
-
adversário. Então eu quero enfatizar novamente que esse esquema de texto da cifra escolhida realmente
-
subir na vida real, onde o adversário pode apresentar textos cifrados para o decrypter
-
eo decrypter pode revelar informações sobre o texto simples, ou ele pode dar a
-
texto simples directo para o adversário para os textos cifrados certos, mas outros não. Assim
-
este é um conceito muito natural de segurança, ea questão é, como é que vamos projetar
-
cripto-sistemas que são CCA seguro? Assim, eu afirmo que essa criptografia autenticado
-
noção de que nós definimos antes de realmente implica segurança texto da cifra escolhida e
-
é por isso que a criptografia autenticado é um conceito natural. Ok? Assim, o
-
teorema diz basicamente que, bem, se você me der uma cifra que fornece autenticado
-
criptografia, a cifra pode resistir a ataques de texto da cifra escolhida. E mais
-
precisamente, o teorema diz o seguinte. Se temos um adversário que emite Q
-
consultas, em outras palavras, no máximo, q CPA consultas e consultas q escolhido texto cifrado,
-
, em seguida, há dois adversários eficientes, B1 e B2, que satisfazem essa desigualdade
-
aqui. Então, já que o esquema foi autenticado criptografia. Sabemos que
-
quantidade é insignificante porque é CPA seguro. E nós sabemos que este
-
quantidade é insignificante, porque o esquema de criptografia tem texto cifrado
-
integridade. E, como resultado, uma vez que ambos os termos são desprezíveis sabemos que
-
vantagem do adversário em ganhar o jogo CCA também é insignificante. Então, vamos provar
-
este teorema. É realmente um teorema muito simples de provar. E então vamos fazê-lo
-
como a prova por imagens. Ok, então aqui nós temos duas cópias do jogo CCA, de modo que este
-
seria zero experiência. E o fundo é um experimento. Você pode ver o
-
adversário está emitindo consultas CPA, e ele está emitindo consultas CCA, e no final ele
-
saídas, você sabe, um b palpite certo, vamos chamá-lo b prime, e nosso objetivo é
-
mostram que este primeiro-b é indistinguível em ambos os casos. Em outro
-
palavras, a probabilidade de que b principal é igual a um no jogo de topo é o mesmo que o
-
probabilidade de que b principal é igual a um no jogo de fundo. Ok, então o caminho que estamos
-
vai fazer é o seguinte. Bem, em primeiro lugar, nós vamos mudar o challenger
-
um pouco, de modo que em vez de realmente saindo a descriptografia de consultas CCA,
-
challenger é apenas o fundo vai sempre de saída. Então cada vez que o adversário
-
envia uma consulta CCA, o desafiante, diz fundo. E afirmam que estes dois
-
jogos são, na verdade, indistinguíveis. Em outras palavras, o adversário não pode
-
distinguir estes dois jogos, pela simples razão de que, dado que o regime tem
-
integridade texto cifrado, o adversário simplesmente não pode criar um texto cifrado que é
-
não em C1 a CI-1. Que decifra a qualquer coisa que não seja inferior. Que é o
-
definição de integridade texto cifrado. E, como resultado, mais uma vez, por causa de texto codificado
-
integridade, deve ser o caso que cada consulta de texto escolhido cifra que o
-
adversário questões resulta em baixo. Se o adversário, de fato, poderia distinguir
-
entre o jogo da esquerda e o jogo certo, isso significaria que em algum momento ele
-
emitiu uma consulta que descriptografado para algo diferente de fundo. E que nós poderíamos usar
-
para depois quebrar a integridade texto cifrado do regime. E desde que o regime tem
-
integridade texto cifrado, estes jogos esquerda e direita são indistinguíveis. Ok,
-
de modo que é uma espécie de argumento bonito que mostra que é muito fácil de responder a
-
escolhidos cifra texto consultas quando você tem texto cifrado integridade. E a mesma coisa
-
exatamente aplica-se na parte inferior, onde se pode simplesmente substituir o texto da cifra escolhida
-
respostas por apenas dizendo sempre inferior. Ok, muito bom. Mas agora, já que o escolhido
-
consultas texto cifrado sempre respondem da mesma forma, eles não estão dando o adversário
-
qualquer informação. O adversário sempre sabe que estamos sempre vai apenas responder
-
com o fundo. Então, pode muito bem retirar essas consultas, porque eles não
-
contribuir com qualquer informação para o adversário. Mas agora, uma vez que removê-los
-
consultas, o jogo resultante deve ser bastante familiar. O jogo superior direito, e
-
o jogo de fundo superior são basicamente os dois jogos que surgem na definição de
-
CPA segurança. E, como resultado, porque o sistema é seguro CPA, sabemos que o
-
adversário não consegue distinguir a parte superior do fundo. E agora, por essa mudança de
-
raciocínio, nós provamos que todos esses jogos são equivalentes. E, em particular,
-
os originais dois jogos que nós começamos com também são equivalentes e, portanto,
-
o adversário não consegue distinguir o canto superior esquerdo da parte inferior esquerda. E, portanto,
-
esquema é o CCA seguro. Então isso dá-lhe a intuição a respeito de porque autenticado
-
criptografia é um conceito legal. Porque em primeiro lugar implica segurança contra
-
ataques de teste da cifra escolhida. Ok, então como dissemos com criptografia autenticada ele
-
garante confidencialidade. Mesmo se o adversário pode decifrar um subconjunto do
-
texto cifrado e, mais genericamente, mesmo se ele pode montar um ataque de texto geral da cifra escolhida,
-
ele ainda não vai ser capaz de quebrar a segurança semântica do sistema. No entanto,
-
é importante lembrar as duas limitações. Em primeiro lugar, não faz
-
evitar ataques de repetição por conta própria. Nós vamos ter que fazer algo além
-
para se defender contra ataques de repetição. Nós vamos ver vários exemplos em que se o
-
motor descriptografia revela mais informações sobre por que um texto cifrado for rejeitado,
-
não faz exatamente parte inferior de saída, mas na verdade ela gera mais informações, por exemplo, por
-
ataques de tempo. E isso explica por que o texto cifrado é rejeitada. Em seguida, no facto de
-
pode destruir completamente a segurança do sistema de criptografia autenticado. Então, vamos
-
ver alguns ataques bonitos como este em um segmento mais tarde. Okay. Assim, no próximo segmento
-
nós vamos voltar para a construção de sistemas de criptografia autenticados.