[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.00,0:00:03.58,Default,,0000,0000,0000,,na semana passada, aprendemos a teoria dos números que é necessário para a criptografia de chave pública. Dialogue: 0,0:00:03.58,0:00:07.17,Default,,0000,0000,0000,,Esta semana vamos colocar esse conhecimento para trabalhar, e vamos construir uma Dialogue: 0,0:00:07.17,0:00:10.89,Default,,0000,0000,0000,,seguras número de sistemas públicos de criptografia de chave. Mas, primeiro, precisamos definir o que Dialogue: 0,0:00:10.89,0:00:14.56,Default,,0000,0000,0000,,é a criptografia de chave pública, eo que isso significa para a criptografia de chave pública para ser Dialogue: 0,0:00:14.56,0:00:18.24,Default,,0000,0000,0000,,é seguro? Então deixe-me lembrá-lo que, em um esquema de criptografia de chave pública, há uma Dialogue: 0,0:00:18.24,0:00:21.78,Default,,0000,0000,0000,,algoritmo de criptografia que normalmente é representado por E, e há uma decodificação Dialogue: 0,0:00:21.78,0:00:25.36,Default,,0000,0000,0000,,algoritmo que denotamos por D. No entanto, aqui, o algoritmo de criptografia tem um Dialogue: 0,0:00:25.36,0:00:29.48,Default,,0000,0000,0000,,chave pública, enquanto o algoritmo de descodificação leva uma chave secreta. Este par é chamado um Dialogue: 0,0:00:29.48,0:00:34.36,Default,,0000,0000,0000,,par de chaves. E a chave pública é usada para criptografar mensagens, enquanto a chave secreta Dialogue: 0,0:00:34.36,0:00:39.00,Default,,0000,0000,0000,,é utilizado para decifrar mensagens. Assim, neste caso uma mensagem m é criptografar usando Dialogue: 0,0:00:39.00,0:00:43.88,Default,,0000,0000,0000,,a chave pública eo que sai do que é o c texto cifrado. E da mesma forma o Dialogue: 0,0:00:43.88,0:00:48.64,Default,,0000,0000,0000,,cifrado é alimentada no algoritmo de descodificação e usando a chave secreta, o que Dialogue: 0,0:00:48.64,0:00:53.58,Default,,0000,0000,0000,,sai do algoritmo de descodificação é o m mensagem original. Agora chave pública Dialogue: 0,0:00:53.58,0:00:57.99,Default,,0000,0000,0000,,criptografia tem muitas aplicações. Na semana passada vimos o clássico de uma aplicação que Dialogue: 0,0:00:57.99,0:01:02.46,Default,,0000,0000,0000,,é a configuração da sessão, ou seja, de troca de chaves e agora estamos apenas olhando para troca de chaves Dialogue: 0,0:01:02.46,0:01:06.87,Default,,0000,0000,0000,,que é seguro contra a espionagem só. E se você se lembrar da forma como o protocolo Dialogue: 0,0:01:06.87,0:01:11.23,Default,,0000,0000,0000,,obras, basicamente de Alice, o que ela faria se ela gerar um segredo de chave pública Dialogue: 0,0:01:11.23,0:01:15.55,Default,,0000,0000,0000,,par. Ela iria enviar a chave pública para Bob. Bob irá gerar uma aleatória X, o qual Dialogue: 0,0:01:15.55,0:01:20.14,Default,,0000,0000,0000,,vai servir como seu segredo compartilhado, e então ele envia X criptografadas para Alice, Dialogue: 0,0:01:20.14,0:01:24.90,Default,,0000,0000,0000,,criptografada com sua chave pública. Alice pode descriptografar, recuperar X e agora ambos Dialogue: 0,0:01:24.90,0:01:29.55,Default,,0000,0000,0000,,tem esse X segredo compartilhado que eles podem usar para comunicar de forma segura com um Dialogue: 0,0:01:29.55,0:01:34.14,Default,,0000,0000,0000,,outro. O atacante, é claro, tudo o que ele consegue ver é apenas a chave pública, o Dialogue: 0,0:01:34.14,0:01:38.97,Default,,0000,0000,0000,,criptografia de X sob a chave pública, a partir do qual ele não deveria ser capaz de obter qualquer Dialogue: 0,0:01:38.97,0:01:43.80,Default,,0000,0000,0000,,informações sobre X. E nós vamos definir que, mais precisamente para entender Dialogue: 0,0:01:43.80,0:01:48.51,Default,,0000,0000,0000,,o que significa não ser capaz de aprender qualquer coisa sobre X. criptografia de chave pública Dialogue: 0,0:01:48.51,0:01:52.52,Default,,0000,0000,0000,,realmente tem muitas outras aplicações. Por exemplo, é muito útil na Dialogue: 0,0:01:52.52,0:01:57.24,Default,,0000,0000,0000,,não aplicações interativas. Então, acho que de um sistema de e-mail por exemplo. Então, aqui, Bob Dialogue: 0,0:01:57.24,0:02:01.72,Default,,0000,0000,0000,,quer enviar e-mail para Alice, e como Bob envia o e-mail, o e-mail passa de Dialogue: 0,0:02:01.72,0:02:06.60,Default,,0000,0000,0000,,retransmissão de email para retransmitir emails até que finalmente chega Alice, altura em que Alice deve Dialogue: 0,0:02:06.60,0:02:10.50,Default,,0000,0000,0000,,descriptografar. A forma como o sistema de e-mail está configurado, é projetado para o tipo de Dialogue: 0,0:02:10.50,0:02:15.04,Default,,0000,0000,0000,,não-interativas locais onde Bob envia o e-mail. E, em seguida, Alice é suposto Dialogue: 0,0:02:15.04,0:02:19.20,Default,,0000,0000,0000,,recebê-lo. E Alice não deve ser para comunicar com Bob para descodificar Dialogue: 0,0:02:19.20,0:02:23.50,Default,,0000,0000,0000,,e-mail o. Portanto, neste caso, por causa da interatividade não, não há oportunidade Dialogue: 0,0:02:23.50,0:02:27.70,Default,,0000,0000,0000,,para a criação de um segredo compartilhado entre Alice e Bob. Portanto, neste caso, qual seria Dialogue: 0,0:02:27.70,0:02:32.17,Default,,0000,0000,0000,,acontecer é, basicamente, Bob teria, seria enviar o e-mail criptografado, usando de Alice, pública Dialogue: 0,0:02:32.17,0:02:36.57,Default,,0000,0000,0000,,chave. Então ele envia o e-mail. Qualquer pessoa no mundo pode enviar o e-mail criptografado para Dialogue: 0,0:02:36.57,0:02:41.10,Default,,0000,0000,0000,,Alice, criptografados usando sua chave pública. Quando Alice recebe este e-mail, ela utiliza Dialogue: 0,0:02:41.10,0:02:45.75,Default,,0000,0000,0000,,chave o seu segredo para descriptografar o texto cifrado e recuperar a mensagem de texto simples. Dialogue: 0,0:02:45.75,0:02:50.51,Default,,0000,0000,0000,,Claro que a única ressalva em um sistema como este é que, de facto, Bob precisa de alguma forma Dialogue: 0,0:02:50.51,0:02:54.80,Default,,0000,0000,0000,,obter a chave pública de Alice Então, por agora estamos apenas indo supor que Bob já tem Dialogue: 0,0:02:54.80,0:02:58.30,Default,,0000,0000,0000,,chave pública de Alice, mas mais tarde, na verdade, quando falamos sobre digitais Dialogue: 0,0:02:58.30,0:03:02.46,Default,,0000,0000,0000,,assinaturas nós vamos ver como, este pode realmente ser feito de forma muito eficiente utilizando o que há de Dialogue: 0,0:03:02.46,0:03:06.82,Default,,0000,0000,0000,,chamado de gerenciamento de chave pública e como eu disse nós vamos realmente voltar para que em uma tarde Dialogue: 0,0:03:06.82,0:03:10.93,Default,,0000,0000,0000,,tempo. Mas a principal coisa que eu quero que você lembre-se, é que a criptografia de chave pública é Dialogue: 0,0:03:10.93,0:03:14.58,Default,,0000,0000,0000,,usado para a instalação da sessão. Isso é muito comum na web, onde a chave pública Dialogue: 0,0:03:14.58,0:03:18.84,Default,,0000,0000,0000,,criptografia é usada para criar uma chave segura entre um navegador da web e e servidor web. Dialogue: 0,0:03:18.84,0:03:22.90,Default,,0000,0000,0000,,E a criptografia de chave pública também é muito útil para aplicações não-interativas, Dialogue: 0,0:03:22.90,0:03:26.39,Default,,0000,0000,0000,,onde qualquer pessoa no mundo, não interativa, precisa enviar uma mensagem Dialogue: 0,0:03:26.39,0:03:30.65,Default,,0000,0000,0000,,para Alice, que pode criptografar a mensagem utilizando a chave pública de Alice, e Alice pode descriptografar Dialogue: 0,0:03:30.65,0:03:36.10,Default,,0000,0000,0000,,e recuperar o texto puro. Então deixe-me lembrá-lo em detalhe um pouco mais que um Dialogue: 0,0:03:36.10,0:03:40.35,Default,,0000,0000,0000,,sistema de criptografia de chave pública é. Bem, ela é composta de três algoritmos G, E, e Dialogue: 0,0:03:40.35,0:03:44.43,Default,,0000,0000,0000,,D. G é chamado o algoritmo de geração de chave. Basicamente o que ele vai fazer é que vai Dialogue: 0,0:03:44.43,0:03:48.67,Default,,0000,0000,0000,,gerar esse par de chaves, a chave pública ea chave secreta. Como escrevi aqui, G leva Dialogue: 0,0:03:48.67,0:03:53.02,Default,,0000,0000,0000,,sem argumentos, mas na vida real, G, na verdade não ter um argumento chamado a segurança Dialogue: 0,0:03:53.02,0:03:57.26,Default,,0000,0000,0000,,parâmetro que especifica o tamanho das teclas que são gerados por esta chave Dialogue: 0,0:03:57.26,0:04:01.73,Default,,0000,0000,0000,,algoritmo de geração. Então há esses algoritmos de criptografia, como de costume que tomar uma Dialogue: 0,0:04:01.73,0:04:06.05,Default,,0000,0000,0000,,chave pública e uma mensagem e produzir uma mensagem cifrada em um algoritmo de descodificação que Dialogue: 0,0:04:06.05,0:04:10.53,Default,,0000,0000,0000,,pega a chave correspondente secreta e um texto cifrado e produz uma correspondente Dialogue: 0,0:04:10.53,0:04:14.96,Default,,0000,0000,0000,,mensagem. E como de costume para a consistência nós dizemos que se criptografar uma mensagem sob uma Dialogue: 0,0:04:14.96,0:04:19.38,Default,,0000,0000,0000,,dada chave pública e, então, decifrar com uma correspondente chave secreta que deve começar a Dialogue: 0,0:04:19.38,0:04:23.85,Default,,0000,0000,0000,,volta mensagem original. Agora o que isso significa para uma criptografia de chave pública a ser Dialogue: 0,0:04:23.85,0:04:27.91,Default,,0000,0000,0000,,seguro? Vou começar por definir, a segurança contra a espionagem. Dialogue: 0,0:04:27.91,0:04:32.00,Default,,0000,0000,0000,,E então vamos definir a segurança contra ataques ativos. Assim, a maneira para Dialogue: 0,0:04:32.00,0:04:36.24,Default,,0000,0000,0000,,definir a segurança contra a espionagem é muito semelhante com o caso simétrico nós temos Dialogue: 0,0:04:36.24,0:04:40.63,Default,,0000,0000,0000,,já esta semana passada, então nós vamos passar por isso rapidamente, assim como uma revisão. Dialogue: 0,0:04:40.63,0:04:44.81,Default,,0000,0000,0000,,Basicamente jogo o ataque é definido como segue. Definimos estes dois experimentos, Dialogue: 0,0:04:44.81,0:04:49.25,Default,,0000,0000,0000,,nula experiência e experimentação. No experimento em ambos o desafiante está indo Dialogue: 0,0:04:49.25,0:04:52.96,Default,,0000,0000,0000,,gerar um público e um par de chave secreta. Ele vai dar ao público Dialogue: 0,0:04:52.96,0:04:57.34,Default,,0000,0000,0000,,chave para o adversário. O adversário mundo vai querer saída de duas mensagens M0 e M1 de Dialogue: 0,0:04:57.34,0:05:01.66,Default,,0000,0000,0000,,comprimento igual e então o que ele recebe de volta é a criptografia de m0 ou o Dialogue: 0,0:05:01.66,0:05:06.04,Default,,0000,0000,0000,,criptografia de m1. No experimento que ele recebe de zero a criptografia de m0. No experimento Dialogue: 0,0:05:06.04,0:05:10.75,Default,,0000,0000,0000,,que ele recebe a criptografia de m1. E, em seguida, o adversário é suposto dizer que um Dialogue: 0,0:05:10.75,0:05:15.24,Default,,0000,0000,0000,,ele conseguiu. Ele começa a criptografia de m0 ou ele conseguiu a criptografia de m1? Assim Dialogue: 0,0:05:15.24,0:05:19.68,Default,,0000,0000,0000,,neste jogo, o atacante só fica um texto cifrado. Isto corresponde a uma Dialogue: 0,0:05:19.68,0:05:24.23,Default,,0000,0000,0000,,ataque escutas onde ele simplesmente escutado sobre esse texto cifrado C. E agora Dialogue: 0,0:05:24.23,0:05:28.72,Default,,0000,0000,0000,,seu objetivo é saber se o texto cifrado C é a criptografia de M0 ou M1. Não Dialogue: 0,0:05:28.72,0:05:34.22,Default,,0000,0000,0000,,adulteração no texto cifrado C é permitido ainda. E como sempre dizemos que o Dialogue: 0,0:05:34.22,0:05:38.21,Default,,0000,0000,0000,,esquema de criptografia de chave pública semanticamente seguro se o atacante não pode Dialogue: 0,0:05:38.21,0:05:42.08,Default,,0000,0000,0000,,distinguir de zero experiência de um experimento. Em outras palavras, ele não pode Dialogue: 0,0:05:42.08,0:05:47.76,Default,,0000,0000,0000,,dizer se ele chegou a criptografia de M0, ou a criptografia de M1. Antes de seguir em frente Dialogue: 0,0:05:47.76,0:05:52.31,Default,,0000,0000,0000,,aos ataques ativos, quero mencionar uma relação rápida entre a definição que Dialogue: 0,0:05:52.31,0:05:56.10,Default,,0000,0000,0000,,acabamos de ver, E a definição de, de segurança espionagem para simétrico Dialogue: 0,0:05:56.10,0:06:00.44,Default,,0000,0000,0000,,cifras. Se você se lembrar, quando falamos de segurança espionagem para simétrico Dialogue: 0,0:06:00.44,0:06:04.77,Default,,0000,0000,0000,,cifras, foi possível distinguir entre o caso em que a chave é usada uma vez, e no caso Dialogue: 0,0:06:04.77,0:06:08.100,Default,,0000,0000,0000,,onde a chave é usada várias vezes. E, de fato, vimos que, há uma clara Dialogue: 0,0:06:08.100,0:06:13.36,Default,,0000,0000,0000,,separação. Por exemplo, a almofada de uma única vez. É seguro se a chave é usada para criptografar uma Dialogue: 0,0:06:13.36,0:06:17.38,Default,,0000,0000,0000,,única mensagem, mas é completamente inseguro se a chave é utilizada para encriptar múltipla Dialogue: 0,0:06:17.38,0:06:21.36,Default,,0000,0000,0000,,mensagens. E, de fato, tivemos duas definições diferentes se você se lembra, tivemos uma Dialogue: 0,0:06:21.36,0:06:25.38,Default,,0000,0000,0000,,definição de um tempo de segurança, e depois tivemos uma definição separada, o que era Dialogue: 0,0:06:25.38,0:06:29.70,Default,,0000,0000,0000,,mais forte, quando a chave foi usada várias vezes. A definição que eu mostrei no Dialogue: 0,0:06:29.70,0:06:34.04,Default,,0000,0000,0000,,slide anterior é muito similar à definição de um tempo para segurança Dialogue: 0,0:06:34.04,0:06:38.50,Default,,0000,0000,0000,,cifras simétricas. E, de fato, verifica-se que para a criptografia de chave pública, se um Dialogue: 0,0:06:38.50,0:06:43.12,Default,,0000,0000,0000,,sistema é seguro em uma chave única vez, em certo sentido, também é seguro por um tempo, muitos Dialogue: 0,0:06:43.12,0:06:47.93,Default,,0000,0000,0000,,chave. Em outras palavras, não temos explicitamente dar ao invasor a capacidade Dialogue: 0,0:06:47.93,0:06:53.17,Default,,0000,0000,0000,,para, criptografias de mensagens de solicitação de sua escolha. Porque ele poderia apenas criar as Dialogue: 0,0:06:53.17,0:06:57.87,Default,,0000,0000,0000,,criptografias sozinho. Ele recebe a chave pública e, portanto, ele pode, por Dialogue: 0,0:06:57.87,0:07:04.67,Default,,0000,0000,0000,,se criptografar qualquer mensagem que ele gosta. Como resultado qualquer par de chave pública secreta em alguns Dialogue: 0,0:07:04.67,0:07:09.29,Default,,0000,0000,0000,,sentido inerentemente é usada para criptografar mensagens múltiplas porque o atacante Dialogue: 0,0:07:09.29,0:07:13.90,Default,,0000,0000,0000,,poderia ter apenas criptografados muitas, muitas mensagens de sua escolha usando o dado Dialogue: 0,0:07:13.90,0:07:18.89,Default,,0000,0000,0000,,chave pública que nós apenas lhe deu na primeira etapa. E assim, como resultado, na verdade, Dialogue: 0,0:07:18.89,0:07:23.69,Default,,0000,0000,0000,,definição de um segurança o tempo é suficiente para implicar a segurança do tempo e muitos Dialogue: 0,0:07:23.69,0:07:28.80,Default,,0000,0000,0000,,é por isso que nos referimos ao conceito como indistinguibilidade sob uma planície escolhida Dialogue: 0,0:07:28.80,0:07:34.01,Default,,0000,0000,0000,,texto anexar. Portanto, esta é apenas uma questão menor para explicar por que as configurações do público Dialogue: 0,0:07:34.01,0:07:37.77,Default,,0000,0000,0000,,criptografia, nós não precisamos de uma definição mais complicado para capturar Dialogue: 0,0:07:37.77,0:07:42.52,Default,,0000,0000,0000,,segurança escutas. Agora que entendemos de segurança espionagem, vamos Dialogue: 0,0:07:42.52,0:07:47.34,Default,,0000,0000,0000,,olhada adversários mais poderosos que podem realmente montar ataques ativos. Assim, em Dialogue: 0,0:07:47.34,0:07:51.58,Default,,0000,0000,0000,,particular, vejamos o exemplo de e-mail. Então, aqui, temos o nosso amigo Bob Dialogue: 0,0:07:51.58,0:07:56.23,Default,,0000,0000,0000,,que quer enviar e-mail para sua amiga Caroline. E Caroline acontece a ter, um Dialogue: 0,0:07:56.23,0:08:00.70,Default,,0000,0000,0000,,conta no Gmail. E a maneira como isso funciona é, basicamente, o email é enviado para o Dialogue: 0,0:08:00.70,0:08:05.51,Default,,0000,0000,0000,,servidor do Gmail, criptografado. O servidor decifra o e-mail Gmail, olha para o destinado Dialogue: 0,0:08:05.51,0:08:09.30,Default,,0000,0000,0000,,destinatários. E então, se é, o destinatário é Caroline, que Dialogue: 0,0:08:09.30,0:08:13.65,Default,,0000,0000,0000,,encaminha o e-mail para Caroline. Se o destinatário é o atacante, que Dialogue: 0,0:08:13.65,0:08:18.57,Default,,0000,0000,0000,,encaminha e-mail até o atacante. Esta é semelhante à forma como realmente funciona o Gmail Dialogue: 0,0:08:18.57,0:08:23.44,Default,,0000,0000,0000,,porque o remetente enviar o e-mail criptografado em SSL para o servidor do Gmail. Dialogue: 0,0:08:23.44,0:08:28.09,Default,,0000,0000,0000,,O servidor do Gmail iria encerrar a SSL e, em seguida, encaminhar e-mail até o Dialogue: 0,0:08:28.09,0:08:33.08,Default,,0000,0000,0000,,recipientes apropriados. Agora, suponha que Bob criptografa o e-mail usando um sistema que Dialogue: 0,0:08:33.08,0:08:37.76,Default,,0000,0000,0000,,permite que o adversário para mexer com o texto cifrado sem ser detectado. Para Dialogue: 0,0:08:37.76,0:08:42.39,Default,,0000,0000,0000,,exemplo, imagine que este e-mail é criptografada usando o Modo Contador, ou algo parecido Dialogue: 0,0:08:42.39,0:08:47.07,Default,,0000,0000,0000,,que. Então, quando o atacante intercepta este e-mail, ele pode alterar o destinatário, Dialogue: 0,0:08:47.07,0:08:50.73,Default,,0000,0000,0000,,de modo que agora o destinatário diz attacker@gmail.com, e sabemos que, para Dialogue: 0,0:08:50.73,0:08:55.42,Default,,0000,0000,0000,,modo de contador, por exemplo, isso é muito fácil de fazer. O atacante sabe que o Dialogue: 0,0:08:55.42,0:09:00.28,Default,,0000,0000,0000,,e-mail destina-se a Caroline, ele está apenas interessado no corpo do email. Assim, ele pode Dialogue: 0,0:09:00.28,0:09:04.23,Default,,0000,0000,0000,,facilmente alterar o destinatário de e-mail para attacker@gmail.com e agora, quando o servidor Dialogue: 0,0:09:04.23,0:09:08.13,Default,,0000,0000,0000,,recebe o e-mail, ele vai decifrá-lo, ver que o destinatário é suposto ser Dialogue: 0,0:09:08.13,0:09:12.03,Default,,0000,0000,0000,,atacante, e encaminhar o corpo para o atacante. E agora, o atacante foi capaz de Dialogue: 0,0:09:12.03,0:09:16.02,Default,,0000,0000,0000,,ler o corpo do e-mail que foi destinado para Caroline. Então esta é uma Dialogue: 0,0:09:16.02,0:09:21.20,Default,,0000,0000,0000,,exemplo clássico de um ataque ativo, e você percebe que o atacante poderia fazer Dialogue: 0,0:09:21.20,0:09:26.17,Default,,0000,0000,0000,,aqui, é possível decodificar qualquer texto cifrado, onde o destinatário é o seguinte: Dialogue: 0,0:09:26.17,0:09:31.55,Default,,0000,0000,0000,,atacante. Assim, qualquer texto cifrado, onde o texto simples começa com as palavras "Para: atacante". Portanto, nossa meta é Dialogue: 0,0:09:31.55,0:09:36.66,Default,,0000,0000,0000,,para projetar sistemas de chave pública que são seguros, mesmo que o atacante pode manipular Dialogue: 0,0:09:36.66,0:09:42.100,Default,,0000,0000,0000,,com texto cifrado e, possivelmente, cyphertexts decifrar certos. E novamente, eu quero Dialogue: 0,0:09:42.100,0:09:47.61,Default,,0000,0000,0000,,ressaltar que aqui o objetivo do atacante era fazer com que o corpo da mensagem. O atacante Dialogue: 0,0:09:47.61,0:09:52.06,Default,,0000,0000,0000,,já sabia que o e-mail destina-se a Caroline. E tudo o que tinha a fazer era Dialogue: 0,0:09:52.06,0:09:56.86,Default,,0000,0000,0000,,apenas alterar o destinatário, se destina. Portanto, este ataque motiva a adulteração Dialogue: 0,0:09:56.86,0:10:01.62,Default,,0000,0000,0000,,definição de texto cifrado escolhido segurança. E na verdade, esta é a noção de padrão de Dialogue: 0,0:10:01.62,0:10:07.46,Default,,0000,0000,0000,,de segurança para criptografia de chave pública. Então deixe-me explicar como o ataque [aqui Proceedes] e como eu Dialogue: 0,0:10:07.46,0:10:11.90,Default,,0000,0000,0000,,disse que nosso objetivo é construir sistemas que sejam seguros ao abrigo do presente muito, muito conservadora Dialogue: 0,0:10:11.90,0:10:15.76,Default,,0000,0000,0000,,noção de criptografia. Portanto, temos um esquema de criptografia (G, E, D). E digamos Dialogue: 0,0:10:15.76,0:10:20.14,Default,,0000,0000,0000,,que é definido sobre um espaço e uma mensagem cifrada (M, C) e como de costume estamos Dialogue: 0,0:10:20.14,0:10:24.31,Default,,0000,0000,0000,,vai definir dois experimentos, experiência zero, e um experimento. Então, 'b' aqui Dialogue: 0,0:10:24.31,0:10:28.22,Default,,0000,0000,0000,,diz que se o adversário está a implementar a zero experimento ou experiência Dialogue: 0,0:10:28.22,0:10:32.66,Default,,0000,0000,0000,,um. O desafiante começa por gerar uma chave pública e uma chave secreta, e, em seguida, dá Dialogue: 0,0:10:32.66,0:10:37.25,Default,,0000,0000,0000,,chave pública para o adversário. Agora, o adversário pode dizer: "Bem, aqui são um bando Dialogue: 0,0:10:37.25,0:10:41.61,Default,,0000,0000,0000,,de mensagens cifradas, por favor, decifrá-los para mim. "Então, aqui o adversário apresenta Dialogue: 0,0:10:41.61,0:10:46.45,Default,,0000,0000,0000,,texto cifrado C1 e ele fica a decodificação de texto cifrado C1, ou seja, M1. E ele fica Dialogue: 0,0:10:46.45,0:10:51.41,Default,,0000,0000,0000,,fazer isso de novo e de novo, então ele envia texto cifrado C2, e ele fica a descriptografia, Dialogue: 0,0:10:51.41,0:10:56.20,Default,,0000,0000,0000,,que é M2, cifrado C3, e que ele recebe o M3 descodificação, e assim por diante e assim por diante. Dialogue: 0,0:10:56.20,0:11:00.19,Default,,0000,0000,0000,,Finalmente, o adversário diz: "Esta fase de quadratura é mais", e agora ele Dialogue: 0,0:11:00.19,0:11:04.48,Default,,0000,0000,0000,,apresenta basicamente duas mensagens de comprimento igual, M0 e M1 como normal, e ele Dialogue: 0,0:11:04.48,0:11:08.82,Default,,0000,0000,0000,,recebe em resposta ao desafio cifrado C, que é a criptografia de M Dialogue: 0,0:11:08.82,0:11:13.05,Default,,0000,0000,0000,,zero ou a criptografia de um M. Dependendo se estamos em zero ou experiência Dialogue: 0,0:11:13.05,0:11:17.00,Default,,0000,0000,0000,,experimento um. Agora, o adversário pode continuar a emitir estes texto cifrado Dialogue: 0,0:11:17.00,0:11:21.06,Default,,0000,0000,0000,,consultas. Assim, ele pode continuar a pedidos de emissão, de descriptografia. Então ele envia uma Dialogue: 0,0:11:21.06,0:11:25.45,Default,,0000,0000,0000,,texto cifrado, e ele recebe uma decodificação desse texto cifrado, mas é claro que, agora, não Dialogue: 0,0:11:25.45,0:11:29.99,Default,,0000,0000,0000,,tem que ser uma advertência. Se o atacante poderia enviar texto cifrado arbitrária de sua escolha, Dialogue: 0,0:11:29.99,0:11:34.27,Default,,0000,0000,0000,,é claro, ele poderia quebrar o desafio. O que ele faria se ele se submeteria a Dialogue: 0,0:11:34.27,0:11:38.51,Default,,0000,0000,0000,,desafio cifrado C como uma consulta de descriptografia. E então ele seria informado se Dialogue: 0,0:11:38.51,0:11:42.66,Default,,0000,0000,0000,,na fase de desafio foi-lhe dada a criptografia de M0 ou a criptografia de M1. Dialogue: 0,0:11:42.66,0:11:46.82,Default,,0000,0000,0000,,Como resultado, colocamos esta limitação aqui, que diz que ele pode de fato apresentar qualquer Dialogue: 0,0:11:46.82,0:11:51.03,Default,,0000,0000,0000,,texto cifrado de sua escolha senão. Para o texto cifrado desafio. Assim, o invasor Dialogue: 0,0:11:51.03,0:11:55.03,Default,,0000,0000,0000,,poderia pedir a decodificação de qualquer mensagem cifrada de sua escolha que não seja o Dialogue: 0,0:11:55.03,0:11:59.30,Default,,0000,0000,0000,,desafio cifrado. E mesmo que ele foi dado todos estes decryptions, ele ainda Dialogue: 0,0:11:59.30,0:12:03.20,Default,,0000,0000,0000,,não deve ser capaz de dizer se ele foi dado a criptografia de M0 ou o Dialogue: 0,0:12:03.20,0:12:09.21,Default,,0000,0000,0000,,criptografia de M1. Então você percebe esta é uma definição muito conservadora. Ele dá a Dialogue: 0,0:12:09.21,0:12:14.11,Default,,0000,0000,0000,,poder atacante mais do que aquilo que vimos no slide anterior. No slide anterior, Dialogue: 0,0:12:14.11,0:12:18.71,Default,,0000,0000,0000,,o invasor pode descriptografar mensagens apenas quando o texto simples começou com as palavras Dialogue: 0,0:12:18.71,0:12:23.61,Default,,0000,0000,0000,,"para: atacante". Aqui, nós estamos dizendo que o atacante pode decifrar qualquer mensagem cifrada de sua escolha, Dialogue: 0,0:12:23.61,0:12:29.72,Default,,0000,0000,0000,,enquanto é diferente do desafio cifrado C. Ok? E então, seu Dialogue: 0,0:12:29.72,0:12:34.09,Default,,0000,0000,0000,,objetivo é dizer se o texto cifrado desafio é a criptografia de M0 ou o Dialogue: 0,0:12:34.09,0:12:37.92,Default,,0000,0000,0000,,criptografia de M1. E como de costume, se ele não pode fazer isso, em outras palavras, a sua Dialogue: 0,0:12:37.92,0:12:42.35,Default,,0000,0000,0000,,comportamento em zero experiência é basicamente o mesmo que o seu comportamento no experimento Dialogue: 0,0:12:42.35,0:12:46.84,Default,,0000,0000,0000,,um, então ele não foi capaz de distinguir a criptografia de M0 da criptografia de Dialogue: 0,0:12:46.84,0:12:51.22,Default,,0000,0000,0000,,M1, embora tivesse todo esse poder Então dizemos que o sistema é escolhido Dialogue: 0,0:12:51.22,0:12:55.88,Default,,0000,0000,0000,,texto cifrado seguro, CCA seguro. E às vezes há uma sigla, a sigla Dialogue: 0,0:12:55.88,0:13:00.60,Default,,0000,0000,0000,,para isso é indistinguibilidade sob um ataque de texto cifrado escolhido, mas eu sou apenas Dialogue: 0,0:13:00.60,0:13:05.74,Default,,0000,0000,0000,,vai dizer CCA garantido. Então vamos ver como isso captura, o exemplo de e-mail que vimos Dialogue: 0,0:13:05.74,0:13:10.59,Default,,0000,0000,0000,,antes. Assim, suponhamos que o sistema de criptografia a ser utilizado é tal que apenas dada a Dialogue: 0,0:13:10.59,0:13:15.43,Default,,0000,0000,0000,,criptografia de uma mensagem que o atacante pode mudar o destinatário a partir de Dialogue: 0,0:13:15.43,0:13:20.13,Default,,0000,0000,0000,,Alice dizer, para Charlie. Então aqui está como gostaríamos de ganhar o jogo CCA. Bem no Dialogue: 0,0:13:20.13,0:13:25.03,Default,,0000,0000,0000,,primeiro passo ele deu a chave pública do curso. E então o que o atacante vai fazer Dialogue: 0,0:13:25.03,0:13:29.58,Default,,0000,0000,0000,,é que ele iria emitir duas mensagens de comprimento igual, ou seja, na primeira mensagem, os Dialogue: 0,0:13:29.58,0:13:33.94,Default,,0000,0000,0000,,corpo é zero. Na segunda mensagem o corpo é um. Mas ambas as mensagens são Dialogue: 0,0:13:33.94,0:13:39.89,Default,,0000,0000,0000,,destinado a Alice. E em resposta, ele seria dado o desafio cifrado C. Dialogue: 0,0:13:39.89,0:13:45.13,Default,,0000,0000,0000,,Ok, então agora aqui temos o nosso desafio cifrado C. Agora, o que o atacante é Dialogue: 0,0:13:45.13,0:13:49.96,Default,,0000,0000,0000,,vai fazer é que ele vai usar o seu, a sua capacidade aqui para modificar a que se destina Dialogue: 0,0:13:49.96,0:13:55.27,Default,,0000,0000,0000,,destinatário. E ele vai mandar de volta um texto cifrado C, onde C 'é a criptografia Dialogue: 0,0:13:55.27,0:14:01.76,Default,,0000,0000,0000,,da mensagem de Charlie com o corpo sendo o corpo b desafio. Então, se você lembrar é Dialogue: 0,0:14:01.76,0:14:07.82,Default,,0000,0000,0000,,zero ou um. Agora, porque o texto sem formatação é diferente, sabemos que o Dialogue: 0,0:14:07.82,0:14:12.49,Default,,0000,0000,0000,,texto cifrado também deve ser diferente. Assim, em particular, C nobre deve ser diferente do Dialogue: 0,0:14:12.49,0:14:17.21,Default,,0000,0000,0000,,o desafio cifrado C, yeah? Assim, o primeiro-C aqui deve ser diferente do C. E Dialogue: 0,0:14:17.21,0:14:21.76,Default,,0000,0000,0000,,, como resultado, o desafiante pobre tem agora para descriptografar por definição do jogo CCA. Dialogue: 0,0:14:21.76,0:14:26.14,Default,,0000,0000,0000,,O desafiante deve descriptografar qualquer texto cifrado que não é igual a um desafio Dialogue: 0,0:14:26.14,0:14:30.65,Default,,0000,0000,0000,,texto cifrado. Assim, o desafiante decifra dar o adversário M prime. Basicamente, ele Dialogue: 0,0:14:30.65,0:14:35.26,Default,,0000,0000,0000,,deu a B adversário, e agora o adversário pode produzir o B desafio e Dialogue: 0,0:14:35.26,0:14:40.29,Default,,0000,0000,0000,,ele ganha o jogo com vantagem de um. Então, vantagem que ele com este regime especial Dialogue: 0,0:14:40.29,0:14:45.14,Default,,0000,0000,0000,,é um deles. Então, simplesmente porque o atacante foi capaz de mudar o texto cifrado desafio Dialogue: 0,0:14:45.15,0:14:49.100,Default,,0000,0000,0000,,de um recipiente para outro que lhe permite, para ganhar o jogo com CCA Dialogue: 0,0:14:49.100,0:14:55.00,Default,,0000,0000,0000,,única vantagem. Então, como eu disse, escolhido texto cifrado segurança acaba realmente é Dialogue: 0,0:14:55.00,0:14:59.33,Default,,0000,0000,0000,,a noção correta de segurança para os sistemas públicos de criptografia de chave. E é muito, Dialogue: 0,0:14:59.33,0:15:03.65,Default,,0000,0000,0000,,conceito muito interessante, certo? Basicamente, de alguma forma mesmo que o atacante tem essa capacidade Dialogue: 0,0:15:03.65,0:15:07.84,Default,,0000,0000,0000,,a qualquer coisa que ele quer decifrar. Diferentemente do texto cifrado desafio, ainda que ele não pode Dialogue: 0,0:15:07.84,0:15:12.03,Default,,0000,0000,0000,,aprender o que o texto cifrado é desafio. E assim o objetivo para o restante deste módulo Dialogue: 0,0:15:12.03,0:15:16.28,Default,,0000,0000,0000,,e realmente o módulo seguinte, bem, é a construção de sistemas CCA seguras. É Dialogue: 0,0:15:16.28,0:15:20.09,Default,,0000,0000,0000,,realmente incrível que isso é possível e eu vou mostrar para você Dialogue: 0,0:15:20.09,0:15:24.31,Default,,0000,0000,0000,,exatamente como fazê-lo. E, na verdade esses sistemas CCA seguros que construímos são o Dialogue: 0,0:15:24.31,0:15:28.58,Default,,0000,0000,0000,,aquelas que são utilizadas no mundo real. E cada vez que um sistema tem tentado implantar Dialogue: 0,0:15:28.74,0:15:33.01,Default,,0000,0000,0000,,um mecanismo de criptografia de chave pública que não é seguro CCA alguém surgiu com uma Dialogue: 0,0:15:33.01,0:15:37.49,Default,,0000,0000,0000,,ataque e foi capaz de quebrá-lo. E vamos ver alguns desses ataques exemplo Dialogue: 0,0:15:37.49,0:15:39.28,Default,,0000,0000,0000,,efectivamente nos segmentos mais próximos.