WEBVTT 00:00:02.940 --> 00:00:08.500 Chaves Públicas e Criptografia na Internet 00:00:08.990 --> 00:00:14.150 Oi, meu nome é Mia Gil-Epner, estou cursando Ciência da Computação na UC Berkeley e trabalho 00:00:14.150 --> 00:00:19.460 para o Departamento de Defesa, onde tento manter a segurança das informações. A Internet é 00:00:19.460 --> 00:00:25.510 um sistema público e aberto. Todos nós enviamos e recebemos informações em redes e conexões compartilhadas 00:00:25.510 --> 00:00:30.039 Mas apesar de ser um sistema aberto, ainda trocamos muitos dados privados. 00:00:30.039 --> 00:00:35.890 Coisas como números de cartões de crédito, dados bancários, senhas e e-mails. Então, como 00:00:35.890 --> 00:00:40.690 todos esses dados privados se mantêm em sigilo? Dados de qualquer espécie são mantidos em sigilo por 00:00:40.690 --> 00:00:45.299 um processo conhecido como criptografia, o embaralhamento ou alteração de mensagens para ocultar o 00:00:45.309 --> 00:00:51.900 texto original. A descriptografia é o processo de desembaralhar a mensagem para torná-la legível. 00:00:51.900 --> 00:00:56.970 É uma ideia simples e as pessoas têm feito isto há séculos. Um dos primeiros métodos bastante 00:00:56.970 --> 00:01:02.379 conhecidos de criptografia foram as Cifras de César, batizadas em homenagem a Júlio César, um general 00:01:02.379 --> 00:01:07.220 romano que criptografava seus comandos militares para se certificar de que, se a mensagem fosse interceptada 00:01:07.220 --> 00:01:12.540 pelo inimigo, eles não conseguiriam lê-la. As Cifras de César são um Algoritmo que substitui 00:01:12.540 --> 00:01:16.759 cada letra da mensagem original por uma letra algumas posições mais à 00:01:16.759 --> 00:01:21.259 frente no alfabeto. Se somente o remetente e o destinatário souberem os números certos, eles serão 00:01:21.259 --> 00:01:28.640 a chave. Ela permite que o leitor desbloqueie a mensagem secreta. Por exemplo, se a mensagem original 00:01:28.640 --> 00:01:35.869 for 'OLÁ’, utilizando o algoritmo das Cifras de César com uma chave de 5, a mensagem criptografada 00:01:35.869 --> 00:01:43.259 seria assim... Para descriptografar a mensagem, o destinatário simplesmente usa a chave para inverter 00:01:43.259 --> 00:01:50.179 o processo. Mas há um grande problema com as Cifras de César: qualquer pessoa pode descobri-las 00:01:50.179 --> 00:01:55.569 facilmente ou revelar a mensagem criptografada, experimentando valores possíveis, que no alfabeto que usamos 00:01:55.569 --> 00:02:00.389 seriam apenas 26 letras, o que significa que você precisaria tentar no máximo 26 chaves para descriptografar 00:02:00.389 --> 00:02:06.810 a mensagem. Porém, experimentar 26 chaves possíveis não é muito difícil. Seriam necessárias no máximo 00:02:06.810 --> 00:02:13.050 uma ou duas horas. Então vamos dificultar esse padrão. Em vez de substituir cada letra com um intervalo 00:02:13.050 --> 00:02:18.920 constante, vamos trocar cada letra com intervalos diferentes. Neste exemplo, uma chave de dez dígitos mostra em 00:02:18.920 --> 00:02:26.560 quantas posições cada letra sucessiva será alterada para criptografar uma mensagem mais longa. Revelar esta 00:02:26.560 --> 00:02:34.160 chave seria realmente difícil. Utilizando a criptografia digital podem haver bilhões de soluções possíveis para 00:02:34.160 --> 00:02:39.860 as chaves. Obviamente, é mais do que quaisquer ser humano poderia solucionar. Levaria vários séculos. 00:02:39.860 --> 00:02:46.030 Mas um computador mediano atual levaria apenas alguns segundos para experimentar todas as possibilidades. 00:02:46.030 --> 00:02:51.240 Portanto, no mundo moderno, onde os hackers estão munidos de computadores em vez de lápis, como 00:02:51.240 --> 00:02:57.890 é possível criptografar mensagens com tanta segurança que seja difícil demais desvendá-las? Muito difícil significa 00:02:57.890 --> 00:03:02.760 que existem possibilidades demais para se computar em um período razoável. As comunicações seguras 00:03:02.760 --> 00:03:03.760 da era atual são criptografadas utilizando chaves de 256 bits. Isto significa que o computador de um 00:03:03.760 --> 00:03:10.200 hacker que interceptar sua mensagem precisaria tentar muitas opções possíveis... até descobrir a 00:03:10.200 --> 00:03:16.290 chave e revelar a mensagem. Mesmo se você tiver 100.000 supercomputadores e cada um deles 00:03:16.290 --> 00:03:24.040 for capaz de experimentar muitos bilhões de chaves por segundo, ainda assim levariam trilhões 00:03:24.040 --> 00:03:30.680 de anos para cobrir todas as opções, apenas para revelar uma única mensagem protegida com criptografia 00:03:30.680 --> 00:03:37.690 de 256 bits. É claro os chips de computador duplicam sua velocidade e reduzem seu tamanho a cada ano. 00:03:37.690 --> 00:03:43.320 Se esse ritmo de avanço exponencial continuar, os problemas que são impossíveis hoje serão solucionáveis 00:03:43.320 --> 00:03:48.400 em algumas centenas de anos e osbroca não serão mais suficientes para serem seguros. Na verdade 00:03:48.400 --> 00:03:54.680 já tivemos de ampliar a capacidade das chaves padrão para acompanhar o ritmo e a velocidade dos computadores. 00:03:54.680 --> 00:04:01.070 A boa notícia é que o uso de chaves mais longas não dificulta muito a criptografia das mensagens, mas 00:04:01.070 --> 00:04:05.540 aumenta exponencialmente o número de tentativas necessárias para revelar uma cifra. Quando o remetente 00:04:05.540 --> 00:04:11.660 e o destinatário compartilham a mesma chave para embaralhar e desembaralhar a mensagem, isto 00:04:11.660 --> 00:04:16.779 se chama Criptografia Simétrica. Com a Criptografia Simétrica, como as Cifras de César, a chave precisa corresponder 00:04:16.779 --> 00:04:24.199 antecipadamente entre duas pessoas, de forma privativa. Isto é ótimo para pessoas, mas a internet é aberta 00:04:24.199 --> 00:04:29.710 e pública, portanto, é impossível dois computadores se “encontrarem" privativamente para acordarem 00:04:29.710 --> 00:04:35.840 uma chave. Os computadores utilizam a chaves de Criptografia Assimétrica, chaves públicas que podem 00:04:35.840 --> 00:04:41.599 ser utilizadas por qualquer pessoa, e uma chave privada, A Chave Pública é utilizada para criptografar dados 00:04:41.599 --> 00:04:49.020 e qualquer pessoa pode utilizá-la para criar uma mensagem secreta, mas o segredo só pode ser 00:04:49.020 --> 00:04:55.800 descriptografado por um computador com acesso à chave privada. Como isto funciona envolve uma matemática 00:04:55.800 --> 00:05:01.270 que não compreendemos agora. Pense da seguinte maneira: imagine que você tem uma caixa postal pessoal, 00:05:01.270 --> 00:05:06.129 em que qualquer pessoa pode depositar cartas, mas é preciso ter uma chave para abri-la. Você pode fazer várias 00:05:06.129 --> 00:05:11.430 cópias da chave da caixa e enviar para os seus amigos ou até liberá-la para o público em geral. Seus 00:05:11.430 --> 00:05:16.509 amigos ou um estranho podem utilizar a chave pública para acessar sua caixa postal e deixar uma 00:05:16.509 --> 00:05:21.400 mensagem. Mas somente você pode abrir a caixa para retirada com a sua chave privada, e acessar todas as 00:05:21.400 --> 00:05:27.400 mensagens secretas que recebeu. E você pode enviar uma mensagem segura de volta a um amigo 00:05:27.400 --> 00:05:31.539 utilizando a chave pública da caixa postal deles. Desta forma, as pessoas podem trocar mensagens seguras 00:05:31.539 --> 00:05:37.620 sem ter de chegar a um acordo quanto a uma chave privativa. A criptografia com chaves públicas é a base 00:05:37.620 --> 00:05:43.699 de todas as mensagens seguras na internet aberta. Incluindo os Protocolos de Segurança conhecidos como 00:05:43.699 --> 00:05:49.340 SSL e TLS, que protegem-os quando estamos navegando na internet. Seu computador os utiliza hoje, 00:05:49.340 --> 00:05:55.900 sempre que você vir um cadeado ou as letra ‘https’ na barra de endereços do seu navegador. Isto quer dizer 00:05:55.900 --> 00:06:01.400 que o seu computador está utilizando uma chave de criptografia pública para a troca de dados segura 00:06:01.400 --> 00:06:07.409 com o site que você está vistiando. Como cada vez mais pessoas acessam a internet, cada vez mais dados 00:06:07.409 --> 00:06:13.400 privados são transmitidos, e a necessidade de segurança desses dados será ainda mais importante. 00:06:13.400 --> 00:06:19.080 E à medida que os computadores se tornem mais rápidos teremos de desenvolver novos métodos de dificultar 00:06:19.080 --> 00:06:24.059 a criptografia para que os computadores não a violem. É isto que eu faço. Meu trabalho muda sempre.