WEBVTT 00:00:00.000 --> 00:00:04.262 Agora que vimos alguns exemplos de cifras históricas, todas as quais são mal 00:00:04.262 --> 00:00:07.130 quebrado, vamos mudar de assunto e falar sobre cifras que são muito melhores 00:00:10.122 --> 00:00:13.115 projetado. Mas antes de fazermos isso, eu quero em primeiro lugar, definir com mais precisão o que é um 00:00:13.115 --> 00:00:17.432 cifra é. Então, primeiro de tudo, uma cifra é, na verdade, lembre-se uma cifra é composta de 00:00:17.432 --> 00:00:21.694 dois algoritmos. Há um algoritmo de encriptação e um algoritmo de descriptografia. Mas 00:00:21.694 --> 00:00:26.012 , na verdade, uma cifra é definida por um triplo. Assim, o conjunto de todas as chaves possíveis, 00:00:26.012 --> 00:00:31.292 que eu estou indo para denotar pelo script K, e às vezes eu vou chamar esta a tecla de espaço, 00:00:31.292 --> 00:00:35.968 é o conjunto de todas as chaves possíveis. Há neste conjunto de todas as mensagens possíveis e este 00:00:35.968 --> 00:00:40.365 conjunto de todos os textos cifrados possíveis. Ok, então este triplo em algum sentido define o 00:00:40.365 --> 00:00:44.756 ambiente durante o qual a cifra é definido. E, em seguida, a cifra em si é um 00:00:44.756 --> 00:00:49.236 par de algoritmos eficientes E e D. E é o algoritmo de criptografia; D é o 00:00:49.236 --> 00:00:57.762 algoritmo de descriptografia. Claro que, E leva chaves e mensagens. E cifra saídas 00:00:57.762 --> 00:01:06.770 textos. E o algoritmo de decodificação leva chaves e mensagens cifradas. Então envia mensagens. 00:01:06.770 --> 00:01:12.282 E os únicos requisitos é que estes algoritmos são consistentes. Eles satisfazem 00:01:12.282 --> 00:01:17.933 que é chamado de propriedade correção. Assim, para cada mensagem no espaço de mensagem. 00:01:17.933 --> 00:01:23.593 E cada chave. No espaço de chave, é melhor que seja o caso que se eu encriptar o 00:01:23.593 --> 00:01:29.185 mensagem com a chave K e então eu descriptografar usando o KI mesma chave era melhor voltar 00:01:29.185 --> 00:01:34.711 a mensagem original que eu comecei com. Portanto, esta equação aqui é que é chamado de 00:01:34.711 --> 00:01:39.974 equação consistência e cada cypher tem para satisfazê-lo, a fim de ser uma cifra 00:01:39.974 --> 00:01:44.970 caso contrário não é possível decifrar. Uma coisa que eu queria salientar é que eu 00:01:44.970 --> 00:01:49.782 colocar a palavra eficiente aqui entre aspas. E a razão de eu fazer isso é por causa eficiente 00:01:49.782 --> 00:01:54.041 significa coisas diferentes para pessoas diferentes. Se você está mais inclinado para 00:01:54.041 --> 00:01:58.811 teoria, meio eficiente é executado em tempo polinomial. Então, algoritmos E e D tem que ser executado em 00:01:58.811 --> 00:02:02.842 tempo polinomial no tamanho de seus insumos. Se você for mais prática 00:02:02.842 --> 00:02:07.045 inclinadas, eficaz executado dentro de um determinado período de tempo. Assim, por exemplo, 00:02:07.045 --> 00:02:11.474 E algoritmo pode ser obrigado a tomar menos de um minuto para criptografar um gigabyte de 00:02:11.474 --> 00:02:16.073 dados. Agora de qualquer forma, a palavra tipo eficiente de captura de ambas as noções e você pode 00:02:16.073 --> 00:02:20.158 interpretá-la em sua cabeça do jeito que você gostaria. Eu estou indo só para manter 00:02:20.158 --> 00:02:24.139 referindo a ele como citações eficientes e colocar nele, como eu disse se você é teoria 00:02:24.189 --> 00:02:27.964 inclinado pensar nisso como tempo polinomial, caso contrário, pensar nele como 00:02:27.964 --> 00:02:32.100 concretas limitações de tempo. Outro comentário que quero fazer é, na verdade algoritmo E. 00:02:32.100 --> 00:02:36.455 É muitas vezes um algoritmo aleatório. O que isto significa é que, como sua criptografia 00:02:36.455 --> 00:02:40.981 mensagens, e algoritmo vai gerar bits aleatórios para si, e que vai 00:02:40.981 --> 00:02:45.676 usar esses bits aleatórios realmente criptografar as mensagens que são dadas a ele. No 00:02:45.676 --> 00:02:50.258 outro lado, o algoritmo de decodificação é sempre uma determinística. Em outras palavras dadas 00:02:50.258 --> 00:02:54.558 chave ea saída de texto cypher é sempre a mesma. Não depende de qualquer 00:02:54.558 --> 00:02:58.970 aleatoriedade que é usada pelo algoritmo. Ok, então agora que entendemos o que é um 00:02:58.970 --> 00:03:03.552 cifra é melhor, eu quero tipo de mostrar-lhe o primeiro exemplo de uma cifra segura. 00:03:03.552 --> 00:03:08.364 Chama-se uma almofada de tempo uma Foi desenhado por volta Vernam no início do 00:03:08.364 --> 00:03:12.724 século XX. Antes que eu realmente explicar o que o Cyper é, vamos 00:03:12.724 --> 00:03:17.383 estado em que, na terminologia que acabamos de ver. Assim, o espaço de mensagem para o 00:03:17.383 --> 00:03:22.221 cypher Vernam para a almofada de um tempo é o mesmo que o espaço de texto cypher que é 00:03:22.221 --> 00:03:27.653 apenas o conjunto de todas as cadeias binárias terminou. Isso, isso só significa todas as seqüências de 00:03:27.653 --> 00:03:33.854 bits, um de zero caracteres. O espaço de chave é basicamente o mesmo que a mensagem 00:03:33.854 --> 00:03:40.134 espaço que é novamente simplesmente o embed de todas as strings binárias. Assim, uma chave no uma 00:03:40.134 --> 00:03:46.290 Time Pad é simplesmente uma seqüência aleatória grande, é uma seqüência aleatória de bits. Isso é tão 00:03:46.290 --> 00:03:51.508 desde que a mensagem a ser encriptada, contanto que a mensagem. Ok, agora que nós temos 00:03:51.508 --> 00:03:56.726 tipo especificado de que está a cifra é definida sobre nós realmente podemos especificar como 00:03:56.726 --> 00:04:02.010 cypher as obras e é realmente muito simples. Então, basicamente as cyphertexts. 00:04:02.010 --> 00:04:07.812 que é o resultado de cifrar uma mensagem com uma chave particular, é simplesmente 00:04:07.812 --> 00:04:13.766 XOR a dos dois. Basta K XOR M. [inaudível] ver um exemplo rápido de 00:04:13.766 --> 00:04:20.026 presente. Lembre-se que XOR, isso acrescido com um círculo. XOR significa além 00:04:20.026 --> 00:04:26.825 modulo dois. Então, se eu levar uma mensagem especial, por exemplo, 0110111. E tomar uma 00:04:26.825 --> 00:04:33.871 chave particular, dizer 1011001. Quando eu calcular a criptografia da mensagem 00:04:33.871 --> 00:04:38.838 usando o [inaudível], tudo o que eu faço é calcular o XOR dos dois 00:04:38.838 --> 00:04:43.942 cordas. Em outras palavras, eu faço módulo de adição ou dois pouco a pouco. Então, eu tenho um, 00:04:43.942 --> 00:04:48.645 um, zero, um, um, um, zero. Isso é um texto cifrado. E depois como faço para descriptografar? Eu 00:04:48.645 --> 00:04:52.893 acho que eles poderiam fazer tipo da mesma coisa. Então eles decifrar um texto cifrado usando 00:04:52.893 --> 00:04:57.248 uma chave particular. O que eu faço é XOR da chave eo texto cifrado de novo. E assim todo o 00:04:57.248 --> 00:05:01.819 temos que verificar é que ele satisfaz os requisitos de consistência. E eu vou 00:05:01.819 --> 00:05:06.443 fazer isso uma vez e depois lentamente a partir de agora eu estou indo supor que tudo isso é simples, para 00:05:06.443 --> 00:05:10.798 você. Então nós vamos fazer, nós vamos ter a certeza de que se eu decifrar uma cifra 00:05:10.798 --> 00:05:14.893 texto, que foi criptografado usando uma chave particular, é melhor eu ficar. Voltar ao 00:05:14.893 --> 00:05:20.481 mensagem M. Então o que acontece aqui? Bem, vamos ver. Então, se eu olhar para a criptografia 00:05:20.481 --> 00:05:25.996 de k e m, este é apenas k XOR m por definição. Qual é a decodificação de k XOR 00:05:25.996 --> 00:05:31.628 m usando k? Isso é apenas k XOR (k XOR m). E assim desde que eu disse que é XOR 00:05:31.628 --> 00:05:36.948 além modulo dois, além disso é associativa, por isso este é o mesmo que (k XOR k) 00:05:36.948 --> 00:05:43.007 XOR m, que é simplesmente como você sabe k XOR k é um zero, e zero nada XOR 00:05:43.007 --> 00:05:49.066 é simplesmente m. Ok, então isso realmente mostra que o one-time pad é de fato uma cifra, 00:05:49.066 --> 00:05:54.277 , mas não diz nada sobre a segurança do Cyper. E nós vamos falar 00:05:54.277 --> 00:05:58.319 sobre a segurança da cifra em apenas um minuto. Primeiro de tudo, deixe-me perguntar 00:05:58.319 --> 00:06:02.205 lhe uma pergunta, só para ter certeza que estamos todos em sincronia. Suponha que você é dado um 00:06:02.205 --> 00:06:06.092 m mensagem ea encriptação de que a mensagem usando a almofada de uma vez. Então tudo 00:06:06.092 --> 00:06:10.522 você recebe é a mensagem eo texto cifrado. A minha pergunta é, dado este 00:06:10.522 --> 00:06:15.467 par M e C, pode, na verdade descobrir a chave caminho um tempo de que foi usado no 00:06:15.467 --> 00:06:20.588 criação de C a partir de m? 00:06:20.588 --> 00:06:23.030 Então eu espero que todos vocês percebem que, na verdade, dada a mensagem em 00:06:23.030 --> 00:06:25.473 o texto cifrado é muito fácil para recuperar o que é a chave. Em particular, a chave é 00:06:25.473 --> 00:06:30.241 simplesmente M XOR C. Em seguida, veremos que, se não é imediatamente óbvio para você nós 00:06:30.241 --> 00:06:35.238 ver porque isso é, no caso, um pouco mais tarde, na conversa, na palestra. Ok tudo bem 00:06:35.238 --> 00:06:40.198 para o bloco 1 vez é um muito legal do ponto de vista de desempenho tudo o que você está fazendo 00:06:40.198 --> 00:06:44.656 é você exo anel-chave na mensagem então é um rápido, super super. Cypher para 00:06:44.656 --> 00:06:48.464 criptografar e descriptografar mensagens muito longas. Infelizmente é muito 00:06:48.464 --> 00:06:52.768 difíceis de usar na prática. A razão é difícil de usar é as teclas são 00:06:52.768 --> 00:06:56.907 essencialmente enquanto a mensagem. Assim, se Alice e Bob querem comunicar 00:06:56.907 --> 00:07:01.321 segurança, então você sabe que a Alice quer enviar uma mensagem final para Bob, antes que ela começa 00:07:01.321 --> 00:07:06.011 até mesmo enviando o primeiro bit da mensagem, ela tem de transmitir uma chave para Bob, que é tão 00:07:06.011 --> 00:07:10.536 enquanto que a mensagem. Bem, se ela tem uma maneira de transmitir uma chave segura para Bob que é 00:07:10.536 --> 00:07:15.061 enquanto a mensagem, ela pode também usar que mesmo mecanismo para transmitir também 00:07:15.061 --> 00:07:19.439 a própria mensagem. Assim, o facto de que a chave é tão longa como a mensagem é bastante 00:07:19.439 --> 00:07:23.490 problemático e faz com que a almofada de um tempo muito difícil usar na prática. 00:07:23.490 --> 00:07:28.040 Embora nós vamos ver que a idéia por trás do one-time pad é realmente muito útil 00:07:28.040 --> 00:07:32.590 e vamos ver que um pouco mais tarde. Mas por agora quero me concentrar um pouco mais sobre 00:07:32.590 --> 00:07:36.918 segurança. Assim, as perguntas são óbvias, você sabe, porque é a one-time pad é seguro? 00:07:36.918 --> 00:07:41.195 Por que é uma cifra boa? Então, para responder a essa pergunta, a primeira coisa que temos de 00:07:41.195 --> 00:07:45.191 resposta é: o que é uma cifra segura para começar? O que é um, o que faz cifra 00:07:45.191 --> 00:07:49.759 seguro? Ok, então o estudo, a segurança de cifras, temos que falar um pouco 00:07:49.759 --> 00:07:54.962 sobre teoria da informação. E de fato a primeira pessoa, para estudar a segurança de cifras 00:07:55.150 --> 00:08:00.076 rigorosamente. É muito famoso, você sabe, o pai da teoria da informação, Claude 00:08:00.076 --> 00:08:05.042 Shannon, e ele publicou um famoso artigo de volta em 1949, onde ele analisa a 00:08:05.042 --> 00:08:10.603 segurança do one-time pad. Assim, a idéia por trás de definição de Shannon de segurança é 00:08:10.603 --> 00:08:15.182 o seguinte. Basicamente, se tudo que você começa a ver-se o texto cifrado, então você deve 00:08:15.182 --> 00:08:19.379 saber absolutamente nada sobre o texto sem formatação. Em outras palavras, o texto cypher 00:08:19.379 --> 00:08:23.413 devem revelar nenhuma informação sobre o texto sem formatação. E você vê por que demorou 00:08:23.413 --> 00:08:28.047 alguém que inventou a teoria da informação para chegar a essa noção, porque você tem 00:08:28.047 --> 00:08:32.517 para formulize, formalmente explicar o que é que a informação sobre o texto simples, na verdade 00:08:32.517 --> 00:08:37.653 dizer. Ok é isso que Shannon fez e assim deixa eu te mostrar definição de Shannon, 00:08:37.653 --> 00:08:42.841 eu vou, eu vou escrevê-lo lentamente em primeiro lugar. Então, o que Shannon disse é que você sabe suponha que 00:08:42.841 --> 00:08:48.029 ter um ED cifra que é definido por KM triplo e C como antes. Então, KM e 00:08:48.029 --> 00:08:53.411 C definir a tecla de espaço, o espaço de mensagem eo espaço de texto cifrado. E quando dizemos 00:08:53.411 --> 00:08:58.404 que o texto cifrado pena, dizemos que a cifra tem segredo perfeito se o 00:08:58.404 --> 00:09:03.592 seguinte condição segura. Acontece a cada duas mensagens M zero e M1 em 00:09:03.592 --> 00:09:08.684 espaço a mensagem. Para cada duas mensagens a única exigência que eu vou colocar em 00:09:08.684 --> 00:09:13.831 estas mensagens é que eles têm o mesmo comprimento. É assim que nós somos apenas, vamos ver por que 00:09:13.831 --> 00:09:19.106 essa exigência é necessária em apenas um minuto. E para cada cyphertext, no 00:09:19.106 --> 00:09:25.221 espaço cyphertext. Ok? Assim, para cada par de mensagens método e para cada cifra 00:09:25.221 --> 00:09:31.118 texto, é melhor que seja o caso que, se eu perguntar, qual é a probabilidade de que, 00:09:31.357 --> 00:09:37.096 criptografar N zero com K, woops. Criptografia N zero com K dá C, ok? Assim 00:09:37.096 --> 00:09:43.551 quão provável é que, se pegar uma chave aleatória? Qual é a probabilidade de que quando criptografar N 00:09:43.551 --> 00:09:49.819 zero, obtemos C. Essa probabilidade deve ser o mesmo que quando criptografar N1. Ok, então 00:09:49.819 --> 00:09:54.920 a probabilidade de criptografar n um e ficando c é exactamente o mesmo que o 00:09:54.920 --> 00:09:59.955 probabilidade de criptografar n zero e ficando c. E como eu disse, onde o 00:09:59.955 --> 00:10:04.658 chave, a distribuição, é sobre a distribuição da chave. Então, a chave é 00:10:04.658 --> 00:10:10.157 uniforme no espaço de chave. Assim, k é uniforme em k. E eu estou muitas vezes vai escrever k seta 00:10:10.157 --> 00:10:15.390 com um r pouco acima dele para denotar o facto de que k é uma variável aleatória que é 00:10:15.390 --> 00:10:20.491 uniformemente amostrados no espaço k-chave. Ok, esta é a parte principal de Shannon 00:10:20.491 --> 00:10:25.892 definição. E vamos pensar um pouco sobre o que esta definição realmente diz. 00:10:25.892 --> 00:10:30.965 Então, o que significa que estas duas probabilidades são as mesmas? Bem, o que 00:10:30.965 --> 00:10:36.304 diz é que se eu sou um atacante e eu interceptar um determinado texto cifrado c, então 00:10:36.304 --> 00:10:41.577 na realidade, a probabilidade de que o texto é a cifra de criptografia de n zero é 00:10:41.577 --> 00:10:46.798 exatamente o mesmo que a probabilidade de que ele é o de n incryption um. Porque 00:10:46.798 --> 00:10:52.219 essas probabilidades são iguais. Então, se eu tenho, tudo o que tenho a C texto cifra que é 00:10:52.219 --> 00:10:57.639 tudo o que eu ter interceptado Eu não tenho idéia se o texto cifra veio da M de zero 00:10:57.639 --> 00:11:03.196 ou o texto cifra veio de um M porque mais uma vez a probabilidade de obter C é 00:11:03.196 --> 00:11:08.651 igualmente prováveis se M Zero está sendo criptografado ou uma M estão sendo criptografados. Assim 00:11:08.651 --> 00:11:13.286 aqui, temos a definição declarou novamente. E eu só quero escrever estas propriedades 00:11:13.286 --> 00:11:17.749 novamente mais precisamente. Então, vamos escrever isso de novo. Então, o que definição [inaudível] 00:11:17.749 --> 00:11:22.326 significa é que, se me é dado um texto cifrado em particular, eu não posso dizer de onde veio 00:11:22.326 --> 00:11:27.125 a partir de. Eu não posso dizer se é, se a mensagem que foi criptografada. Ou é zero ou N N 00:11:27.125 --> 00:11:32.090 um e, de fato, esta propriedade é verdadeira para todas as mensagens. Para todos estes N zero, para 00:11:32.090 --> 00:11:37.117 todos os N zero e N. Assim, não só não posso dizer if'c 'veio N zero ou um N, 00:11:37.117 --> 00:11:42.144 eu não posso dizer se ela veio de N duas ou três ou N N quatro ou cinco N porque todos 00:11:42.144 --> 00:11:47.109 eles têm a mesma probabilidade de produzir o text'c cypher '. Então, o que isso significa realmente 00:11:47.109 --> 00:11:52.074 é que se você está criptografia de mensagens com uma almofada de um tempo, então de fato a mais 00:11:52.074 --> 00:11:56.729 adversário poderoso, eu realmente não me importo como você é inteligente, o mais poderoso 00:11:56.729 --> 00:12:02.530 adversário. Pode aprender nada sobre o texto puro, não aprendeu nada sobre a planície 00:12:02.530 --> 00:12:09.624 texto. A partir do texto cifrado. Assim, para dizê-lo em mais uma maneira, basicamente o que este 00:12:09.624 --> 00:12:16.315 prova é que não há, não há nenhuma cifra ataque só de texto em uma cifra que 00:12:16.315 --> 00:12:23.263 tem segredo perfeito. Agora, ataques de cifras na verdade não são os únicos ataques possíveis. 00:12:23.263 --> 00:12:29.440 E, de fato, outros ataques pode ser possível, outros ataques podem ser possíveis. 00:12:32.160 --> 00:12:36.772 Ok. Agora que entendemos o sigilo total, os meios, a questão é, podemos 00:12:36.772 --> 00:12:41.327 cifras compilação que realmente têm sigilo perfeito? E acontece que nós não 00:12:41.327 --> 00:12:45.517 tem que olhar muito longe, o fato de um padrão de tempo tem segredo perfeito. Então, eu 00:12:45.517 --> 00:12:50.719 quer provar que isso é os primeiros resultados da China e eu quero provar esse fato para 00:12:50.719 --> 00:12:55.858 você, é uma prova muito simples, então vamos seguir em frente e olhar para ele e apenas fazê-lo. Então, nós 00:12:55.858 --> 00:13:01.061 necessidade de tipo de interpretar o que isso significa, o que é essa probabilidade de que EKM 00:13:01.061 --> 00:13:06.200 Z é igual a C. Portanto, não é realmente tão difícil de ver que, para cada mensagem e 00:13:06.200 --> 00:13:11.022 cada cyphertext a probabilidade de que a encriptação de N sob uma chave K do 00:13:11.022 --> 00:13:16.161 probabilidade de que, isso é igual a C, a probabilidade de que a nossa escolha aleatória de chave 00:13:16.161 --> 00:13:23.720 por definição. Tudo o que é, é basicamente o número de chaves. Kay, instruir Kay. 00:13:24.758 --> 00:13:31.533 tal forma que, também. Se eu criptografar. E com k eu fico c. Então, eu literalmente contar o número 00:13:31.533 --> 00:13:37.207 de chaves e divido pelo número total de chaves. Certo? Isso é o que significa que 00:13:37.207 --> 00:13:42.833 se eu escolher uma chave aleatória, que mapeia tecla M para c. Direito. Então, é basicamente o número 00:13:42.833 --> 00:13:47.707 de chave que mapa n para c dividido pelo número total de chaves. Esta é a sua 00:13:47.707 --> 00:13:53.406 probabilidade. Então, suponha que nós tivemos uma cifra de tal forma que para todas as mensagens e todos os 00:13:53.406 --> 00:13:58.967 textos cifrados, acontece que se eu olhar para este número, o número de k, k, e k, 00:13:58.967 --> 00:14:04.391 e que tais, k, m é igual a c. Em outras palavras, eu estou olhando para o número de chaves 00:14:04.391 --> 00:14:09.259 esse mapa para m c. Suponhamos que este número passa a ser uma constante. Então, dizer que 00:14:09.259 --> 00:14:14.079 passa a ser dois, três, ou dez ou quinze anos. Ele só hap, passa a ser um 00:14:14.079 --> 00:14:19.332 absoluta constância. Se for esse o caso, então por definição, para toda a n0 e n1 e 00:14:19.332 --> 00:14:24.747 para todos c, esta probabilidade tem de ser a mesma porque o denominador é o mesmo, 00:14:24.747 --> 00:14:30.097 o numerador é o mesmo, é tão constante e, portanto, a probabilidade é 00:14:30.097 --> 00:14:35.644 sempre o mesmo para todos os N e C. E assim se esta propriedade é verdadeira, então a cifra tem 00:14:35.644 --> 00:14:43.616 ter, a cifra tem segredo perfeito. Ok, então vamos ver o que podemos dizer sobre 00:14:43.616 --> 00:14:48.804 quantidade esta que a almofada de uma vez. Assim, o sec-, assim, a pergunta é, se eu 00:14:48.804 --> 00:14:54.770 tem uma mensagem em um texto cifrado, quantas teclas de um bloco de tempo estão lá [inaudível] 00:14:54.770 --> 00:15:00.381 mapa, esta mensagem acaba, portanto, o [inaudível] C? Assim, por outras palavras, quantas as teclas são 00:15:00.381 --> 00:15:06.101 lá, de tal modo que M XOR K é igual a C? Então eu espero que você tenha todos responderam um. E 00:15:06.101 --> 00:15:12.683 vamos ver porque isso é o caso. Para o bloco uma vez, se temos que, a criptografia 00:15:12.683 --> 00:15:18.303 de K de M sob K é igual a C. Mas, basicamente, bem, por definição, que 00:15:18.303 --> 00:15:24.885 implica que K XOR M é igual a C. Mas, que também diz simplesmente que K tem para igualar 00:15:24.885 --> 00:15:31.766 para M XOR C. Sim, eu apenas X mais de ambos os lados por M e eu recebo que K deve ser igual ao 00:15:31.766 --> 00:15:37.561 M XOR C. Ok? Então, o que é que diz que, para a almofada de uma vez, na verdade, o 00:15:37.561 --> 00:15:43.707 número de teclas, em K, mostra a EKM, é igual a C. Isto é simplesmente um, e este 00:15:43.707 --> 00:15:49.852 vale para todas as mensagens de texto cifrado. E assim, novamente, com o que dissemos antes, ele só 00:15:49.852 --> 00:15:54.987 diz que o bloco tem um tempo, o segredo perfeito. Sigilo total e que 00:15:54.987 --> 00:15:59.093 completa a prova deste [inaudível] muito, muito simples. Muito, muito simples 00:15:59.093 --> 00:16:03.644 lema. Agora o engraçado é que mesmo que este lema é tão simples de 00:16:03.644 --> 00:16:08.194 provar, de fato, comprova uma afirmação muito forte novamente. Esta basicamente diz para 00:16:08.194 --> 00:16:12.328 tempo o [inaudível] não há ataque de texto cifrado único. Assim, ao contrário do 00:16:12.328 --> 00:16:16.393 cifra de substituição, ou a cifra de Vigenère, ou as máquinas de rolo, todos aqueles 00:16:16.393 --> 00:16:20.778 poderia ser quebrada pelo texto cifrado somente ataque. Acabamos de provar que a one-time 00:16:20.778 --> 00:16:25.110 almofada, que é simplesmente impossível. Dada a cyphertext, você simplesmente não aprende nada sobre 00:16:25.110 --> 00:16:29.281 o texto original. No entanto, como podemos ver, isso simplesmente não é o fim da história. Eu 00:16:29.281 --> 00:16:33.131 média, são fizemos? Quer dizer, basicamente, estamos a fazer com o curso agora, porque nós 00:16:33.131 --> 00:16:37.359 tem um jeito. Para criptografar, de modo que um atacante não pode recuperar alguma coisa sobre o nosso 00:16:37.359 --> 00:16:41.206 método. Então, talvez estamos a fazer com o curso. Mas, na verdade, como veremos, há 00:16:41.206 --> 00:16:45.261 são outros ataques. E, na verdade, a almofada de tempo não é realmente um tal 00:16:45.261 --> 00:16:49.316 cifra segura. E, de fato, existem outros ataques que são possíveis, e vamos 00:16:49.316 --> 00:16:54.075 ver isso em breve. Ok? Enfatizo novamente o fato de que ele tem segredo perfeito faz 00:16:54.075 --> 00:16:58.785 não significa que o bloco de momento é a cifra segura para utilizar. Okay. Mas como dissemos 00:16:58.785 --> 00:17:03.733 o problema com a almofada de tempo é um que a chave secreta é muito longo. Se você tivesse 00:17:03.733 --> 00:17:08.071 uma forma de. Comunicando a chave secreta ao longo para o outro lado. Você pode muito bem 00:17:08.071 --> 00:17:12.253 uso que mesmo método exacto para também transmitir a mensagem para o outro lado, 00:17:12.253 --> 00:17:16.652 caso em que você não precisaria de uma cifra, para começar. Ok? Então, o problema novamente 00:17:16.652 --> 00:17:21.105 é o tapete uma vez tinha as chaves realmente longos e então a questão óbvia é que há 00:17:21.105 --> 00:17:25.450 cifras outros que tem sigilo total e, possivelmente, têm muito, muito mais curtos chaves? 00:17:25.450 --> 00:17:30.136 Bem, então a má notícia é o Shannon, depois de provar que o one-time pad tem 00:17:30.136 --> 00:17:34.945 sigilo total, mostrou-se um outro teorema que diz que na verdade se tem uma cifra 00:17:34.945 --> 00:17:39.878 sigilo total, o número de chaves em a cifra deve ser pelo menos o número de 00:17:39.878 --> 00:17:44.935 mensagens que a cifra pode manipular. Ok, então, em particular, o que isto significa é que se eu 00:17:44.935 --> 00:17:51.037 tem segredo perfeito. Então, necessariamente o número de chaves, ou melhor, a duração da minha 00:17:51.037 --> 00:17:56.309 chave, deve ser maior do que o comprimento da mensagem. Assim, de facto, uma vez que a uma 00:17:56.309 --> 00:18:00.834 pad tempo nos satisfaz com a igualdade, a almofada de uma vez é uma cifra, ideal que 00:18:00.834 --> 00:18:04.862 tem segredo perfeito, ok? Então, basicamente, o que isto mostra é que esta é uma 00:18:04.862 --> 00:18:09.056 noção interessante. A almofada de tempo uma é uma cifra interessante. Mas, na verdade, em 00:18:09.056 --> 00:18:13.360 realidade, é realmente muito difícil de usar. É difícil de usar, na prática, mais uma vez, 00:18:13.360 --> 00:18:17.790 devido a estas chaves longas. E assim, essa noção de sigilo perfeito, apesar de 00:18:17.790 --> 00:18:21.840 é bastante interessante, basicamente diz que ele realmente não nos diz o 00:18:21.840 --> 00:18:26.279 cifras práticas vão ser seguro. E nós vamos ver, mas, como dissemos, o 00:18:26.279 --> 00:18:30.994 idéia por trás do bloco uma vez é muito bom. E nós vamos ver, na próxima palestra, 00:18:30.994 --> 00:18:33.547 como fazer isso em um sistema prático.