-
Meu objetivo para os segmentos próximos anos é para mostrar que, se usarmos um PRG seguro Iremos
-
obter um fluxo seguro mais seguro. A primeira coisa que temos a fazer é definir é, o que faz
-
significa para um fluxo mais seguro para ser seguro? Portanto, sempre que definir a segurança sempre
-
defini-lo em termos do que pode fazer o atacante? E qual é o atacante
-
tentando fazer? No contexto do fluxo cifras lembrar estas só são utilizados
-
com uma chave de uma única vez, e como resultado, o mais invasor a é sempre indo para ver é
-
cifra apenas um texto criptografado utilizando a chave que estamos usando. E assim nós vamos
-
limitar os atacantes? capacidade de, basicamente, obter apenas um texto cifrado. E em
-
fato, mais tarde, vamos permitir que o invasor fazer muito, muito, muito mais, mas
-
por enquanto estamos só vai lhe dar uma cifra de texto. E nós queríamos encontrar,
-
o que significa para a cifra a ser seguro? Assim, a primeira definição que
-
me vem à mente é, basicamente, quer dizer, bem, talvez nós queremos exigir que o atacante
-
não pode realmente recuperar a chave secreta. Ok então dado texto [inaudível] você
-
não deve ser capaz de recuperar a chave secreta. Mas isso é uma definição terrível
-
porque pensar sobre o brilhante caindo [inaudível], mas a forma como criptografar a
-
mensagem utilizando uma chave K é basicamente de saída [inaudível] a mensagem. Ok isto
-
é um sim cifra brilhante é claro que não faz nada dado uma mensagem apenas
-
saída uma mensagem que o texto cifrado. Esta não é uma encriptação particularmente boa
-
esquema, no entanto, dado o texto cifrado, principalmente o atacante mensagem pobres
-
não pode recuperar a chave porque ele não sabe o que é a chave. E assim, como resultado
-
esta cifra claramente que é inseguro, seria considerado seguro nos termos do presente
-
exigência de segurança. Portanto, esta definição não será bom. Ok então é
-
recuperar a chave do segredo é o caminho errado para definir a segurança. Assim, a próxima coisa que nós
-
pode tentar meio que é, basicamente, apenas dizer, bem, talvez o atacante não se preocupa com
-
chave secreta, o que ele realmente se preocupa é o texto puro. Então, talvez ele deve ser
-
difícil para o atacante recuperar todo o texto sem formatação. Mas mesmo que não
-
trabalho, porque vamos pensar sobre o esquema de criptografia seguinte. Então, suponhamos que
-
que este esquema de criptografia não é que demora duas mensagens, então eu vou usar dois
-
linhas para denotar concatenação de duas mensagens M0 linha, linha M1 significa
-
concatenar M0 e M1. E imaginar que o esquema não é realmente ele produz
-
M0 no. clara e concatenar para que a criptografia de M1 Talvez ainda
-
usando o Bloco de One Time ok? E aqui é o atacante vai ser dado um
-
texto cifrado. E seu objetivo seria recuperar os textos inteiros simples. Mas o
-
atacante pobres não podem fazer isso porque aqui nós temos talvez M1 criptografada usando o One
-
Time Pad para que o atacante não pode realmente recuperar M1 porque sabemos que o
-
Time Pad Um dado é seguro apenas um texto cifrado. Então, essa construção
-
iria satisfazer a definição, mas, infelizmente, claramente este não é um seguro
-
esquema de criptografia, porque nós só vazou metade do texto simples. M0 é
-
completamente disponível para o atacante por isso mesmo que ele não pode recuperar todo o
-
texto simples ele pode ser capaz de recuperar a maior parte do texto simples, e isso é claramente
-
inseguro. Então é claro que já sabe a solução para isso e falamos sobre
-
Shanon definição de segurança segredo perfeito, onde Shannon idéia era que, em
-
fato, quando as interceptações atacante um texto cifrado, ele deve aprender absolutamente nenhuma
-
informações sobre os textos simples. Ele não deve mesmo aprender um pouco sobre o
-
texto simples ou até mesmo que ele não deveria saber, ele não deve mesmo ser capaz de prever um pouco
-
pouco sobre um lance do texto simples. Absolutamente nenhuma informação sobre o texto sem formatação.
-
Então vamos recordar muito brevemente conceito de Shannon de sigilo perfeito
-
basicamente dissemos que você sabe que dada uma cifra Dissemos a cifra tem perfeita
-
sigilo se dado duas mensagens do mesmo comprimento acontece que a distribuição
-
de textos cifrados. No entanto, se escolher uma chave aleatória e olharmos para a distribuição de
-
textos cifrados que criptografam M0 temos exatamente a mesma distribuição de quando nós
-
encrypt M1. A intuição aqui é que se a consultoria observa os textos cifrados
-
então ele não sabe se ele veio a partir da distribuição do resultado da criptografia
-
M0 ou veio da distribuição como o resultado de criptografar M1. E como um
-
resultado, ele não pode dizer se nós criptografado M0 ou M1. E isso é verdade para todos
-
mensagens do mesmo comprimento e como resultado, um atacante pobre não sabe
-
que a mensagem foi criptografada. Claro que já disse que esta definição é muito
-
forte no sentido de que requer chaves realmente longas se cifra tem curta
-
chaves não pode satisfazer esta definição em um fluxo cifras particulares
-
pode satisfazer essa definição. Ok, então vamos tentar enfraquecer a definição um pouco
-
e vamos pensar para o segmento anterior, e podemos dizer que em vez de exigir
-
as duas distribuições para ser absolutamente idênticas o que podemos exigir é, é que
-
duas distribuições apenas ser computacionalmente indistinguíveis. Em outras palavras, um pobre
-
atacante eficiente não é possível distinguir as duas distribuições mesmo que a
-
distribuições pode ser muito, muito, muito diferente. Que acaba de dar uma amostra para
-
uma distribuição e uma amostra para outra distribuição o atacante não pode dizer que
-
distribuição foi-lhe dada uma amostra. Acontece que esta definição é realmente
-
quase certo, mas ainda é um pouco forte demais, que ainda não pode ser satisfeita, de modo
-
temos de acrescentar mais uma restrição, e isso é que em vez de dizer que este
-
definição deveria ter mantenha durante toda a M0 e M1. É manter para pares somente M0 M1
-
que os atacantes podem realmente apresentam. Ok então isso realmente
-
nos leva à definição de segurança semântica. E assim, novamente, isso é semântica
-
segurança para uma chave de tempo em outras palavras, quando o atacante só é dada uma cifra
-
texto. E assim a nossa forma de definir a segurança semântica é através da definição de dois experimentos,
-
ok vamos definir 0 experimento e experimento 1. E, mais geralmente vamos
-
pensar neles como experimentos B parênteses, onde B pode ser zero ou um. Ok então o
-
forma o experimento é definido é o seguinte, temos um adversário que é
-
tentando quebrar o sistema. A um adversário, que é meio o análogo de estatística
-
testes no mundo de pseudo geradores aleatórios. E então o desafiante faz
-
o seguinte, então realmente temos dois adversários, mas os adversários são tão
-
semelhante que pode apenas descrevê-los como um desafio único que em um caso leva
-
bits de seus insumos definido para zero, e outro caso, leva seus insumos bits definidos como
-
um. E deixe-me mostrar-lhe o que esses challengers fazer. A primeira coisa que o
-
challenger vai fazer é que vai pegar uma chave aleatória e, em seguida, o adversário
-
basicamente está indo para a saída de duas mensagens M0 e M1. Ok então esta é uma explícita
-
par de mensagens que o atacante quer ser posta em causa e como de costume não estamos
-
tentando esconder o comprimento das mensagens, é necessário que as mensagens de ser igual
-
comprimento. E então o desafiante basicamente irá imprimir ou a criptografia de M0
-
ou a criptografia de M1, bem assim no experimento 0, o adversário será a saída
-
criptografia de M0. No experimento 1, a saída será o challenger de criptografia
-
de M1. Razoável de modo que a diferença entre as duas experiências. E então o
-
adversário é tentar adivinhar, basicamente, se ele foi dado a criptografia de M0
-
ou dada a criptografia de M1. Ok então aqui está um pouco de notação vamos
-
definir o Wb eventos para os eventos que um experimento B, a saída do adversário.
-
Ok então que é apenas um evento que, basicamente, em experimento de zero significa que W0
-
saída do adversário e um experimento em uma W1 significa a saída do adversário um. E
-
agora podemos definir a vantagem deste adversário, basicamente para dizer que este é
-
chamado a vantagem de segurança semântica do adversário Um contra o regime de E,
-
para ser a diferença de que a probabilidade de estes dois eventos. Em outras palavras, estamos
-
olhando se o adversário se comporta de maneira diferente, quando foi dada a
-
criptografia de M0 a partir de quando ele foi dada a criptografia de M1. E eu quero fazer
-
certeza que isso é claro que eu vou dizer isso mais uma vez. Então, em zero experimento era
-
dada a criptografia de M0 e na experiência que ele foi dado a criptografia
-
de M1. Agora nós estamos apenas interessados em saber se a saída de um adversário ou não.
-
... Nestas experiências. Se em ambos os experimentos a saída 1 com adversário
-
a mesma probabilidade que significa que o adversário não era capaz de distinguir o
-
dois experimentos. Experimentos de zero, basicamente, olha para o adversário, o mesmo
-
como a experiência de um, porque em ambos os casos carregar uma com a mesma probabilidade.
-
No entanto, se o adversário é capaz de produzir 1 em um experimento com significativa
-
probabilidade diferente do que em outro experimento, em seguida, o adversário era
-
realmente capaz de distinguir os dois experimentos. Ok então ... Para dizer isso mais
-
formalmente, essencialmente, a vantagem mais uma vez porque é a diferença de dois
-
probabilidades a vantagem é um número entre zero e um. Se a vantagem é
-
próximo de zero o que significa que o adversário não foi capaz de distinguir
-
nula experiência de um experimento. No entanto, se a vantagem está perto de uma,
-
isso significa que o adversário era muito bem capaz de distinguir a zero a partir de experimento
-
experimento um e que realmente significa que ele era capaz de distinguir uma criptografia
-
de M0 a partir de uma criptografia de M1, ok? Então essa é a definição. Na realidade
-
que é apenas a definição do partido ea definição é exatamente o que
-
que seria de esperar, basicamente, vamos dizer que um esquema de criptografia simétrica é
-
semanticamente seguro se para todos os adversários eficientes aqui eu vou colocá-las entre aspas
-
novamente, "Para todos os adversários eficientes a vantagem é insignificante." Em outras palavras,
-
adversário não eficiente pode distinguir a criptografia de M0 da criptografia
-
de M1 e basicamente este é o que diz repetidamente que, para estes dois
-
mensagens que o adversário foi capaz de mostrar que ele não era capaz de distinguir
-
mensagens que o adversário foi capaz de mostrar que ele não era capaz de distinguir
-
definição elegante. Pode não parecer tão imediato, mas eu quero mostrar-lhe algumas
-
implicações dessa definição e você verá exatamente por isso que a definição é o caminho
-
é. Ok, então vamos olhar alguns exemplos. Assim, o primeiro exemplo é supor
-
temos um esquema de criptografia quebrada, em outras palavras, suponha que temos um adversário Um
-
que de alguma forma dado o texto cifrado, ele é sempre capaz de deduzir menos
-
pouco significativa do texto simples. Ok então, dada a criptografia de M0, este adversário
-
é capaz de deduzir o bit menos significativo do M0. Então isso é um terrível
-
esquema de criptografia porque basicamente vazamentos o bit menos significativo do
-
texto simples apenas dado o texto cifrado. Então, eu quero mostrar-lhe que este regime é
-
, portanto, semanticamente seguro para esse tipo de mostra que se um sistema é semanticamente
-
assegurar que não há invasor deste tipo. Ok, então vamos ver porque é que o sistema
-
não semanticamente segura bem assim o que nós vamos fazer é basicamente nós vamos usar
-
adversário nosso que é capaz de aprender as partes de nosso mais insignificantes, vamos
-
usá-lo para quebrar a segurança semântico, vamos usá-lo para distinguir
-
usá-lo para quebrar a segurança semântico, vamos usá-lo para distinguir
-
B algoritmo, vamos ser algoritmo B e este B algoritmo vai usar
-
Um algoritmo em sua barriga. Ok então a primeira coisa que vai acontecer é de
-
curso o desafiante vai escolher uma chave aleatória. A primeira coisa que vai
-
acontecer é que nós precisamos para a saída de duas mensagens. As mensagens que vamos
-
para a saída, basicamente, vai ter pedaços significativos de forma diferente. Assim, um
-
mensagem vai terminar com zero e uma mensagem vai acabar com um. Agora, o que
-
é o adversário vai fazer? O challenger vai nos dar a
-
criptografia de qualquer M0 ou M1, dependendo se na experiência 0 ou
-
no experimento 1. E então nós apenas transmitir a presente texto cifrado para o adversário
-
bem assim o adversário A. Agora, qual é a propriedade de um adversário? Dada a cifra
-
texto adversário, A pode nos dizer o que os bits menos significativos do texto simples é.
-
Em outras palavras, o adversário vai para a saída dos bits menos significativos de M0 ou M1
-
mas baixa e eis que é basicamente o B. bit E então nós somos apenas
-
indo para a saída que, como nosso convidado então vamos? s chamar essa coisa B principal Ok então agora este
-
descreve o adversário segurança semântica. E agora você me dizer o que é a semântica
-
vantagem de segurança deste adversário? Bem, então vamos ver. Em zero experimento, o que é
-
a probabilidade de que B gera um adversário? Bem em zero de experiência, é sempre
-
dada a criptografia de M zero e, portanto, um adversário sempre é a saída do
-
bit menos significativo do M zero, o que sempre acontece de ser zero. No experimento
-
zero, B sempre envia zero. Assim, a probabilidade de que produz uma é zero.
-
No entanto, em um experimento, estamos dado a criptografia de M1. Então, como é provável
-
B adversário para a saída de um experimento em um poço que sempre envia uma, mais uma vez por
-
as propriedades de algoritmo A e, por conseguinte, a vantagem é basicamente um.
-
Portanto, esta é uma grande vantagem, é tão grande quanto ele vai chegar. O que significa que este
-
adversário quebrou completamente o sistema. Ok então nós consideramos, portanto, sob semântica
-
segurança, basicamente, apenas deduzir o bit menos significativo é o suficiente para completamente
-
quebrar o sistema em uma definição de segurança semântica. Ok, agora o interessante
-
coisa aqui, claro, é que este não é apenas sobre o bit menos significativo, em
-
fato de a mensagem, por exemplo, o bit mais significativo, você sabe
-
bit número sete Talvez o XOR de todos os bits da mensagem e assim por diante
-
e assim por diante qualquer tipo de informação, qualquer pouco sobre o texto simples que pode ser
-
aprendeu basicamente significa que o sistema não é semanticamente seguro. Assim
-
basicamente tudo o que o adversário teria que fazer seria chegar com duas mensagens
-
M0 e M1 tal que, sob uma coisa que aprendi é o valor zero e, em seguida,
-
coisa a outra, o valor, é um deles. Por exemplo, se um era capaz de aprender a XOR
-
bits da mensagem, em seguida, M0 e M1 teria apenas diferente
-
XOR para todos os bits de suas mensagens e, em seguida, este seria um adversário
-
também ser suficiente para quebrar a segurança semântica. Ok então, basicamente para criptografia
-
é semanticamente seguro então nenhum bit de informação é revelada a um
-
adversário eficiente. Ok então este é exatamente um conceito de sigilo perfeito só
-
aplicada adversários apenas eficientes, em vez de todos os adversários. Assim, a próxima
-
coisa que eu quero mostrar é que na verdade o teclado uma vez, de facto, é
-
semanticamente seguro, é melhor ser semanticamente seguro porque é de fato,
-
é mais do que isso é perfeitamente seguro. Então, vamos ver por que isso é verdade. Bem assim
-
de novo, é uma dessas experiências, assim supor que temos um adversário que alega
-
para quebrar a segurança semântica do bloco de uma vez. O adversário é o primeiro vai fazer
-
é que ele vai de saída duas mensagens M0 e M1 do mesmo comprimento.
-
Agora o que ele voltar como um desafio? Como um desafio, ele recebe a criptografia do
-
de M0 ou a criptografia de M1 sob a almofada de uma vez.
-
E ele está tentando fazer a distinção entre esses dois textos cifrados possíveis que ele recebe, certo?
-
No experimento zero, ele recebe a criptografia de M0 e no experimento um, ele recebe o
-
criptografia de M1. Bem então deixe-me perguntar-lhe, então qual é a vantagem do adversário
-
Um contra a patente tempo um? Então eu me lembro que a propriedade dos que eu
-
tinha é que, que K, XOR M0 é distribuído de forma idêntica ao K, XOR M1.
-
Em outras palavras, essas distribuições são a distribuição absolutamente idênticos,
-
distribuições, idênticos. Esta é uma propriedade do XOR. Se XOR a almofada aleatória
-
K com qualquer coisa, seja M0 ou M1, temos uma distribuição uniforme. Assim, em ambos
-
casos, algoritmo A é dado como entrada no exactamente a mesma distribuição. Talvez o
-
distribuição uniforme em textos cifrados. E, portanto, vai se comportar exatamente o
-
mesma em ambos os casos, porque foi dada a distribuição exacta como entrada. E como um
-
resultado, a sua vantagem é zero, o que significa que a almofada de uma única vez é semanticamente
-
seguro. Agora a coisa interessante aqui não é só é semanticamente seguro, é
-
semanticamente seguro para todos os adversários. Nós nem sequer tem que restringir o
-
adversários para ser eficiente. Sem adversário, não importa o quão inteligente você é, não
-
adversário será capaz de distinguir K XOR M0 a partir de K XOR M1 porque os dois
-
distribuições são idênticos. Ok, então o bloco de uma vez é semanticamente seguro. Ok,
-
assim que completa a nossa definição de segurança semântico, a próxima coisa que nós estamos
-
vai fazer é provar para o PRG seguro, de fato implica que a cifra de fluxo é
-
semanticamente seguro.