0:00:00.000,0:00:03.583 na semana passada, aprendemos a teoria dos números que é necessário para a criptografia de chave pública. 0:00:03.583,0:00:07.166 Esta semana vamos colocar esse conhecimento para trabalhar, e vamos construir uma 0:00:07.166,0:00:10.889 seguras número de sistemas públicos de criptografia de chave. Mas, primeiro, precisamos definir o que 0:00:10.889,0:00:14.565 é a criptografia de chave pública, eo que isso significa para a criptografia de chave pública para ser 0:00:14.565,0:00:18.241 é seguro? Então deixe-me lembrá-lo que, em um esquema de criptografia de chave pública, há uma 0:00:18.241,0:00:21.778 algoritmo de criptografia que normalmente é representado por E, e há uma decodificação 0:00:21.778,0:00:25.361 algoritmo que denotamos por D. No entanto, aqui, o algoritmo de criptografia tem um 0:00:25.361,0:00:29.477 chave pública, enquanto o algoritmo de descodificação leva uma chave secreta. Este par é chamado um 0:00:29.477,0:00:34.356 par de chaves. E a chave pública é usada para criptografar mensagens, enquanto a chave secreta 0:00:34.356,0:00:39.002 é utilizado para decifrar mensagens. Assim, neste caso uma mensagem m é criptografar usando 0:00:39.002,0:00:43.880 a chave pública eo que sai do que é o c texto cifrado. E da mesma forma o 0:00:43.880,0:00:48.643 cifrado é alimentada no algoritmo de descodificação e usando a chave secreta, o que 0:00:48.643,0:00:53.577 sai do algoritmo de descodificação é o m mensagem original. Agora chave pública 0:00:53.577,0:00:57.989 criptografia tem muitas aplicações. Na semana passada vimos o clássico de uma aplicação que 0:00:57.989,0:01:02.455 é a configuração da sessão, ou seja, de troca de chaves e agora estamos apenas olhando para troca de chaves 0:01:02.455,0:01:06.867 que é seguro contra a espionagem só. E se você se lembrar da forma como o protocolo 0:01:06.867,0:01:11.227 obras, basicamente de Alice, o que ela faria se ela gerar um segredo de chave pública 0:01:11.227,0:01:15.546 par. Ela iria enviar a chave pública para Bob. Bob irá gerar uma aleatória X, o qual 0:01:15.546,0:01:20.136 vai servir como seu segredo compartilhado, e então ele envia X criptografadas para Alice, 0:01:20.136,0:01:24.904 criptografada com sua chave pública. Alice pode descriptografar, recuperar X e agora ambos 0:01:24.904,0:01:29.554 tem esse X segredo compartilhado que eles podem usar para comunicar de forma segura com um 0:01:29.554,0:01:34.143 outro. O atacante, é claro, tudo o que ele consegue ver é apenas a chave pública, o 0:01:34.143,0:01:38.972 criptografia de X sob a chave pública, a partir do qual ele não deveria ser capaz de obter qualquer 0:01:38.972,0:01:43.800 informações sobre X. E nós vamos definir que, mais precisamente para entender 0:01:43.800,0:01:48.507 o que significa não ser capaz de aprender qualquer coisa sobre X. criptografia de chave pública 0:01:48.507,0:01:52.522 realmente tem muitas outras aplicações. Por exemplo, é muito útil na 0:01:52.522,0:01:57.235 não aplicações interativas. Então, acho que de um sistema de e-mail por exemplo. Então, aqui, Bob 0:01:57.235,0:02:01.716 quer enviar e-mail para Alice, e como Bob envia o e-mail, o e-mail passa de 0:02:01.716,0:02:06.603 retransmissão de email para retransmitir emails até que finalmente chega Alice, altura em que Alice deve 0:02:06.603,0:02:10.502 descriptografar. A forma como o sistema de e-mail está configurado, é projetado para o tipo de 0:02:10.502,0:02:15.045 não-interativas locais onde Bob envia o e-mail. E, em seguida, Alice é suposto 0:02:15.045,0:02:19.195 recebê-lo. E Alice não deve ser para comunicar com Bob para descodificar 0:02:19.195,0:02:23.502 e-mail o. Portanto, neste caso, por causa da interatividade não, não há oportunidade 0:02:23.502,0:02:27.705 para a criação de um segredo compartilhado entre Alice e Bob. Portanto, neste caso, qual seria 0:02:27.705,0:02:32.169 acontecer é, basicamente, Bob teria, seria enviar o e-mail criptografado, usando de Alice, pública 0:02:32.169,0:02:36.571 chave. Então ele envia o e-mail. Qualquer pessoa no mundo pode enviar o e-mail criptografado para 0:02:36.571,0:02:41.103 Alice, criptografados usando sua chave pública. Quando Alice recebe este e-mail, ela utiliza 0:02:41.103,0:02:45.748 chave o seu segredo para descriptografar o texto cifrado e recuperar a mensagem de texto simples. 0:02:45.748,0:02:50.507 Claro que a única ressalva em um sistema como este é que, de facto, Bob precisa de alguma forma 0:02:50.507,0:02:54.804 obter a chave pública de Alice Então, por agora estamos apenas indo supor que Bob já tem 0:02:54.804,0:02:58.297 chave pública de Alice, mas mais tarde, na verdade, quando falamos sobre digitais 0:02:58.297,0:03:02.457 assinaturas nós vamos ver como, este pode realmente ser feito de forma muito eficiente utilizando o que há de 0:03:02.457,0:03:06.823 chamado de gerenciamento de chave pública e como eu disse nós vamos realmente voltar para que em uma tarde 0:03:06.823,0:03:10.931 tempo. Mas a principal coisa que eu quero que você lembre-se, é que a criptografia de chave pública é 0:03:10.931,0:03:14.578 usado para a instalação da sessão. Isso é muito comum na web, onde a chave pública 0:03:14.578,0:03:18.840 criptografia é usada para criar uma chave segura entre um navegador da web e e servidor web. 0:03:18.840,0:03:22.898 E a criptografia de chave pública também é muito útil para aplicações não-interativas, 0:03:22.898,0:03:26.390 onde qualquer pessoa no mundo, não interativa, precisa enviar uma mensagem 0:03:26.390,0:03:30.653 para Alice, que pode criptografar a mensagem utilizando a chave pública de Alice, e Alice pode descriptografar 0:03:30.653,0:03:36.105 e recuperar o texto puro. Então deixe-me lembrá-lo em detalhe um pouco mais que um 0:03:36.105,0:03:40.347 sistema de criptografia de chave pública é. Bem, ela é composta de três algoritmos G, E, e 0:03:40.347,0:03:44.431 D. G é chamado o algoritmo de geração de chave. Basicamente o que ele vai fazer é que vai 0:03:44.431,0:03:48.672 gerar esse par de chaves, a chave pública ea chave secreta. Como escrevi aqui, G leva 0:03:48.672,0:03:53.018 sem argumentos, mas na vida real, G, na verdade não ter um argumento chamado a segurança 0:03:53.018,0:03:57.260 parâmetro que especifica o tamanho das teclas que são gerados por esta chave 0:03:57.260,0:04:01.731 algoritmo de geração. Então há esses algoritmos de criptografia, como de costume que tomar uma 0:04:01.731,0:04:06.051 chave pública e uma mensagem e produzir uma mensagem cifrada em um algoritmo de descodificação que 0:04:06.051,0:04:10.530 pega a chave correspondente secreta e um texto cifrado e produz uma correspondente 0:04:10.530,0:04:14.955 mensagem. E como de costume para a consistência nós dizemos que se criptografar uma mensagem sob uma 0:04:14.955,0:04:19.380 dada chave pública e, então, decifrar com uma correspondente chave secreta que deve começar a 0:04:19.380,0:04:23.852 volta mensagem original. Agora o que isso significa para uma criptografia de chave pública a ser 0:04:23.852,0:04:27.913 seguro? Vou começar por definir, a segurança contra a espionagem. 0:04:27.913,0:04:32.002 E então vamos definir a segurança contra ataques ativos. Assim, a maneira para 0:04:32.002,0:04:36.237 definir a segurança contra a espionagem é muito semelhante com o caso simétrico nós temos 0:04:36.237,0:04:40.626 já esta semana passada, então nós vamos passar por isso rapidamente, assim como uma revisão. 0:04:40.626,0:04:44.808 Basicamente jogo o ataque é definido como segue. Definimos estes dois experimentos, 0:04:44.808,0:04:49.249 nula experiência e experimentação. No experimento em ambos o desafiante está indo 0:04:49.249,0:04:52.965 gerar um público e um par de chave secreta. Ele vai dar ao público 0:04:52.965,0:04:57.342 chave para o adversário. O adversário mundo vai querer saída de duas mensagens M0 e M1 de 0:04:57.342,0:05:01.663 comprimento igual e então o que ele recebe de volta é a criptografia de m0 ou o 0:05:01.663,0:05:06.039 criptografia de m1. No experimento que ele recebe de zero a criptografia de m0. No experimento 0:05:06.039,0:05:10.748 que ele recebe a criptografia de m1. E, em seguida, o adversário é suposto dizer que um 0:05:10.748,0:05:15.240 ele conseguiu. Ele começa a criptografia de m0 ou ele conseguiu a criptografia de m1? Assim 0:05:15.240,0:05:19.676 neste jogo, o atacante só fica um texto cifrado. Isto corresponde a uma 0:05:19.676,0:05:24.226 ataque escutas onde ele simplesmente escutado sobre esse texto cifrado C. E agora 0:05:24.226,0:05:28.719 seu objetivo é saber se o texto cifrado C é a criptografia de M0 ou M1. Não 0:05:28.719,0:05:34.221 adulteração no texto cifrado C é permitido ainda. E como sempre dizemos que o 0:05:34.221,0:05:38.206 esquema de criptografia de chave pública semanticamente seguro se o atacante não pode 0:05:38.206,0:05:42.085 distinguir de zero experiência de um experimento. Em outras palavras, ele não pode 0:05:42.085,0:05:47.757 dizer se ele chegou a criptografia de M0, ou a criptografia de M1. Antes de seguir em frente 0:05:47.757,0:05:52.311 aos ataques ativos, quero mencionar uma relação rápida entre a definição que 0:05:52.311,0:05:56.105 acabamos de ver, E a definição de, de segurança espionagem para simétrico 0:05:56.105,0:06:00.438 cifras. Se você se lembrar, quando falamos de segurança espionagem para simétrico 0:06:00.438,0:06:04.771 cifras, foi possível distinguir entre o caso em que a chave é usada uma vez, e no caso 0:06:04.771,0:06:08.998 onde a chave é usada várias vezes. E, de fato, vimos que, há uma clara 0:06:08.998,0:06:13.357 separação. Por exemplo, a almofada de uma única vez. É seguro se a chave é usada para criptografar uma 0:06:13.357,0:06:17.382 única mensagem, mas é completamente inseguro se a chave é utilizada para encriptar múltipla 0:06:17.382,0:06:21.358 mensagens. E, de fato, tivemos duas definições diferentes se você se lembra, tivemos uma 0:06:21.358,0:06:25.383 definição de um tempo de segurança, e depois tivemos uma definição separada, o que era 0:06:25.383,0:06:29.700 mais forte, quando a chave foi usada várias vezes. A definição que eu mostrei no 0:06:29.700,0:06:34.043 slide anterior é muito similar à definição de um tempo para segurança 0:06:34.043,0:06:38.499 cifras simétricas. E, de fato, verifica-se que para a criptografia de chave pública, se um 0:06:38.499,0:06:43.124 sistema é seguro em uma chave única vez, em certo sentido, também é seguro por um tempo, muitos 0:06:43.124,0:06:47.929 chave. Em outras palavras, não temos explicitamente dar ao invasor a capacidade 0:06:47.929,0:06:53.171 para, criptografias de mensagens de solicitação de sua escolha. Porque ele poderia apenas criar as 0:06:53.171,0:06:57.870 criptografias sozinho. Ele recebe a chave pública e, portanto, ele pode, por 0:06:57.870,0:07:04.672 se criptografar qualquer mensagem que ele gosta. Como resultado qualquer par de chave pública secreta em alguns 0:07:04.672,0:07:09.289 sentido inerentemente é usada para criptografar mensagens múltiplas porque o atacante 0:07:09.289,0:07:13.905 poderia ter apenas criptografados muitas, muitas mensagens de sua escolha usando o dado 0:07:13.905,0:07:18.891 chave pública que nós apenas lhe deu na primeira etapa. E assim, como resultado, na verdade, 0:07:18.891,0:07:23.692 definição de um segurança o tempo é suficiente para implicar a segurança do tempo e muitos 0:07:23.692,0:07:28.801 é por isso que nos referimos ao conceito como indistinguibilidade sob uma planície escolhida 0:07:28.801,0:07:34.012 texto anexar. Portanto, esta é apenas uma questão menor para explicar por que as configurações do público 0:07:34.012,0:07:37.770 criptografia, nós não precisamos de uma definição mais complicado para capturar 0:07:37.770,0:07:42.515 segurança escutas. Agora que entendemos de segurança espionagem, vamos 0:07:42.515,0:07:47.343 olhada adversários mais poderosos que podem realmente montar ataques ativos. Assim, em 0:07:47.343,0:07:51.585 particular, vejamos o exemplo de e-mail. Então, aqui, temos o nosso amigo Bob 0:07:51.585,0:07:56.228 que quer enviar e-mail para sua amiga Caroline. E Caroline acontece a ter, um 0:07:56.228,0:08:00.699 conta no Gmail. E a maneira como isso funciona é, basicamente, o email é enviado para o 0:08:00.699,0:08:05.514 servidor do Gmail, criptografado. O servidor decifra o e-mail Gmail, olha para o destinado 0:08:05.514,0:08:09.297 destinatários. E então, se é, o destinatário é Caroline, que 0:08:09.297,0:08:13.653 encaminha o e-mail para Caroline. Se o destinatário é o atacante, que 0:08:13.653,0:08:18.573 encaminha e-mail até o atacante. Esta é semelhante à forma como realmente funciona o Gmail 0:08:18.573,0:08:23.441 porque o remetente enviar o e-mail criptografado em SSL para o servidor do Gmail. 0:08:23.441,0:08:28.087 O servidor do Gmail iria encerrar a SSL e, em seguida, encaminhar e-mail até o 0:08:28.087,0:08:33.081 recipientes apropriados. Agora, suponha que Bob criptografa o e-mail usando um sistema que 0:08:33.081,0:08:37.764 permite que o adversário para mexer com o texto cifrado sem ser detectado. Para 0:08:37.764,0:08:42.387 exemplo, imagine que este e-mail é criptografada usando o Modo Contador, ou algo parecido 0:08:42.387,0:08:47.070 que. Então, quando o atacante intercepta este e-mail, ele pode alterar o destinatário, 0:08:47.070,0:08:50.732 de modo que agora o destinatário diz attacker@gmail.com, e sabemos que, para 0:08:50.732,0:08:55.415 modo de contador, por exemplo, isso é muito fácil de fazer. O atacante sabe que o 0:08:55.415,0:09:00.278 e-mail destina-se a Caroline, ele está apenas interessado no corpo do email. Assim, ele pode 0:09:00.278,0:09:04.226 facilmente alterar o destinatário de e-mail para attacker@gmail.com e agora, quando o servidor 0:09:04.226,0:09:08.129 recebe o e-mail, ele vai decifrá-lo, ver que o destinatário é suposto ser 0:09:08.129,0:09:12.033 atacante, e encaminhar o corpo para o atacante. E agora, o atacante foi capaz de 0:09:12.033,0:09:16.022 ler o corpo do e-mail que foi destinado para Caroline. Então esta é uma 0:09:16.022,0:09:21.198 exemplo clássico de um ataque ativo, e você percebe que o atacante poderia fazer 0:09:21.198,0:09:26.174 aqui, é possível decodificar qualquer texto cifrado, onde o destinatário é o seguinte: 0:09:26.174,0:09:31.548 atacante. Assim, qualquer texto cifrado, onde o texto simples começa com as palavras "Para: atacante". Portanto, nossa meta é 0:09:31.548,0:09:36.657 para projetar sistemas de chave pública que são seguros, mesmo que o atacante pode manipular 0:09:36.657,0:09:42.999 com texto cifrado e, possivelmente, cyphertexts decifrar certos. E novamente, eu quero 0:09:42.999,0:09:47.612 ressaltar que aqui o objetivo do atacante era fazer com que o corpo da mensagem. O atacante 0:09:47.612,0:09:52.055 já sabia que o e-mail destina-se a Caroline. E tudo o que tinha a fazer era 0:09:52.055,0:09:56.863 apenas alterar o destinatário, se destina. Portanto, este ataque motiva a adulteração 0:09:56.863,0:10:01.620 definição de texto cifrado escolhido segurança. E na verdade, esta é a noção de padrão de 0:10:01.620,0:10:07.462 de segurança para criptografia de chave pública. Então deixe-me explicar como o ataque [aqui Proceedes] e como eu 0:10:07.462,0:10:11.899 disse que nosso objetivo é construir sistemas que sejam seguros ao abrigo do presente muito, muito conservadora 0:10:11.899,0:10:15.756 noção de criptografia. Portanto, temos um esquema de criptografia (G, E, D). E digamos 0:10:15.756,0:10:20.140 que é definido sobre um espaço e uma mensagem cifrada (M, C) e como de costume estamos 0:10:20.140,0:10:24.313 vai definir dois experimentos, experiência zero, e um experimento. Então, 'b' aqui 0:10:24.313,0:10:28.222 diz que se o adversário está a implementar a zero experimento ou experiência 0:10:28.222,0:10:32.659 um. O desafiante começa por gerar uma chave pública e uma chave secreta, e, em seguida, dá 0:10:32.659,0:10:37.254 chave pública para o adversário. Agora, o adversário pode dizer: "Bem, aqui são um bando 0:10:37.254,0:10:41.611 de mensagens cifradas, por favor, decifrá-los para mim. "Então, aqui o adversário apresenta 0:10:41.611,0:10:46.452 texto cifrado C1 e ele fica a decodificação de texto cifrado C1, ou seja, M1. E ele fica 0:10:46.452,0:10:51.414 fazer isso de novo e de novo, então ele envia texto cifrado C2, e ele fica a descriptografia, 0:10:51.414,0:10:56.195 que é M2, cifrado C3, e que ele recebe o M3 descodificação, e assim por diante e assim por diante. 0:10:56.195,0:11:00.188 Finalmente, o adversário diz: "Esta fase de quadratura é mais", e agora ele 0:11:00.188,0:11:04.485 apresenta basicamente duas mensagens de comprimento igual, M0 e M1 como normal, e ele 0:11:04.485,0:11:08.820 recebe em resposta ao desafio cifrado C, que é a criptografia de M 0:11:08.820,0:11:13.052 zero ou a criptografia de um M. Dependendo se estamos em zero ou experiência 0:11:13.052,0:11:17.003 experimento um. Agora, o adversário pode continuar a emitir estes texto cifrado 0:11:17.003,0:11:21.063 consultas. Assim, ele pode continuar a pedidos de emissão, de descriptografia. Então ele envia uma 0:11:21.063,0:11:25.447 texto cifrado, e ele recebe uma decodificação desse texto cifrado, mas é claro que, agora, não 0:11:25.447,0:11:29.994 tem que ser uma advertência. Se o atacante poderia enviar texto cifrado arbitrária de sua escolha, 0:11:29.994,0:11:34.270 é claro, ele poderia quebrar o desafio. O que ele faria se ele se submeteria a 0:11:34.270,0:11:38.506 desafio cifrado C como uma consulta de descriptografia. E então ele seria informado se 0:11:38.506,0:11:42.665 na fase de desafio foi-lhe dada a criptografia de M0 ou a criptografia de M1. 0:11:42.665,0:11:46.825 Como resultado, colocamos esta limitação aqui, que diz que ele pode de fato apresentar qualquer 0:11:46.825,0:11:51.031 texto cifrado de sua escolha senão. Para o texto cifrado desafio. Assim, o invasor 0:11:51.031,0:11:55.034 poderia pedir a decodificação de qualquer mensagem cifrada de sua escolha que não seja o 0:11:55.034,0:11:59.297 desafio cifrado. E mesmo que ele foi dado todos estes decryptions, ele ainda 0:11:59.297,0:12:03.196 não deve ser capaz de dizer se ele foi dado a criptografia de M0 ou o 0:12:03.196,0:12:09.212 criptografia de M1. Então você percebe esta é uma definição muito conservadora. Ele dá a 0:12:09.212,0:12:14.113 poder atacante mais do que aquilo que vimos no slide anterior. No slide anterior, 0:12:14.113,0:12:18.710 o invasor pode descriptografar mensagens apenas quando o texto simples começou com as palavras 0:12:18.710,0:12:23.611 "para: atacante". Aqui, nós estamos dizendo que o atacante pode decifrar qualquer mensagem cifrada de sua escolha, 0:12:23.611,0:12:29.717 enquanto é diferente do desafio cifrado C. Ok? E então, seu 0:12:29.717,0:12:34.094 objetivo é dizer se o texto cifrado desafio é a criptografia de M0 ou o 0:12:34.094,0:12:37.918 criptografia de M1. E como de costume, se ele não pode fazer isso, em outras palavras, a sua 0:12:37.918,0:12:42.351 comportamento em zero experiência é basicamente o mesmo que o seu comportamento no experimento 0:12:42.351,0:12:46.839 um, então ele não foi capaz de distinguir a criptografia de M0 da criptografia de 0:12:46.839,0:12:51.219 M1, embora tivesse todo esse poder Então dizemos que o sistema é escolhido 0:12:51.219,0:12:55.877 texto cifrado seguro, CCA seguro. E às vezes há uma sigla, a sigla 0:12:55.877,0:13:00.596 para isso é indistinguibilidade sob um ataque de texto cifrado escolhido, mas eu sou apenas 0:13:00.596,0:13:05.745 vai dizer CCA garantido. Então vamos ver como isso captura, o exemplo de e-mail que vimos 0:13:05.745,0:13:10.587 antes. Assim, suponhamos que o sistema de criptografia a ser utilizado é tal que apenas dada a 0:13:10.587,0:13:15.429 criptografia de uma mensagem que o atacante pode mudar o destinatário a partir de 0:13:15.429,0:13:20.129 Alice dizer, para Charlie. Então aqui está como gostaríamos de ganhar o jogo CCA. Bem no 0:13:20.129,0:13:25.033 primeiro passo ele deu a chave pública do curso. E então o que o atacante vai fazer 0:13:25.033,0:13:29.578 é que ele iria emitir duas mensagens de comprimento igual, ou seja, na primeira mensagem, os 0:13:29.578,0:13:33.943 corpo é zero. Na segunda mensagem o corpo é um. Mas ambas as mensagens são 0:13:33.943,0:13:39.890 destinado a Alice. E em resposta, ele seria dado o desafio cifrado C. 0:13:39.890,0:13:45.130 Ok, então agora aqui temos o nosso desafio cifrado C. Agora, o que o atacante é 0:13:45.130,0:13:49.961 vai fazer é que ele vai usar o seu, a sua capacidade aqui para modificar a que se destina 0:13:49.961,0:13:55.269 destinatário. E ele vai mandar de volta um texto cifrado C, onde C 'é a criptografia 0:13:55.269,0:14:01.760 da mensagem de Charlie com o corpo sendo o corpo b desafio. Então, se você lembrar é 0:14:01.760,0:14:07.822 zero ou um. Agora, porque o texto sem formatação é diferente, sabemos que o 0:14:07.822,0:14:12.486 texto cifrado também deve ser diferente. Assim, em particular, C nobre deve ser diferente do 0:14:12.486,0:14:17.206 o desafio cifrado C, yeah? Assim, o primeiro-C aqui deve ser diferente do C. E 0:14:17.206,0:14:21.758 , como resultado, o desafiante pobre tem agora para descriptografar por definição do jogo CCA. 0:14:21.758,0:14:26.141 O desafiante deve descriptografar qualquer texto cifrado que não é igual a um desafio 0:14:26.141,0:14:30.648 texto cifrado. Assim, o desafiante decifra dar o adversário M prime. Basicamente, ele 0:14:30.648,0:14:35.256 deu a B adversário, e agora o adversário pode produzir o B desafio e 0:14:35.256,0:14:40.293 ele ganha o jogo com vantagem de um. Então, vantagem que ele com este regime especial 0:14:40.293,0:14:45.143 é um deles. Então, simplesmente porque o atacante foi capaz de mudar o texto cifrado desafio 0:14:45.146,0:14:49.999 de um recipiente para outro que lhe permite, para ganhar o jogo com CCA 0:14:49.999,0:14:55.003 única vantagem. Então, como eu disse, escolhido texto cifrado segurança acaba realmente é 0:14:55.003,0:14:59.327 a noção correta de segurança para os sistemas públicos de criptografia de chave. E é muito, 0:14:59.327,0:15:03.651 conceito muito interessante, certo? Basicamente, de alguma forma mesmo que o atacante tem essa capacidade 0:15:03.651,0:15:07.839 a qualquer coisa que ele quer decifrar. Diferentemente do texto cifrado desafio, ainda que ele não pode 0:15:07.839,0:15:12.028 aprender o que o texto cifrado é desafio. E assim o objetivo para o restante deste módulo 0:15:12.028,0:15:16.275 e realmente o módulo seguinte, bem, é a construção de sistemas CCA seguras. É 0:15:16.275,0:15:20.093 realmente incrível que isso é possível e eu vou mostrar para você 0:15:20.093,0:15:24.310 exatamente como fazê-lo. E, na verdade esses sistemas CCA seguros que construímos são o 0:15:24.310,0:15:28.579 aquelas que são utilizadas no mundo real. E cada vez que um sistema tem tentado implantar 0:15:28.737,0:15:33.007 um mecanismo de criptografia de chave pública que não é seguro CCA alguém surgiu com uma 0:15:33.007,0:15:37.487 ataque e foi capaz de quebrá-lo. E vamos ver alguns desses ataques exemplo 0:15:37.487,0:15:39.280 efectivamente nos segmentos mais próximos.