0:00:02.940,0:00:08.500 A Internet: Criptografia e chaves públicas 0:00:08.990,0:00:10.999 Olá![br]O meu nome é Mia Gil-Epner, 0:00:10.999,0:00:15.999 estudo Informática na UC Berkeley e[br]trabalho para o Departamento de Defesa, 0:00:15.999,0:00:18.999 onde tento manter a informação segura. 0:00:18.740,0:00:21.999 A internet é um sistema aberto e público. 0:00:21.780,0:00:26.999 Todos nós enviamos e recebemos informações[br]através de fios e ligações partilhadas. 0:00:26.999,0:00:30.999 Mas apesar de ser um sistema aberto,[br]ainda trocamos muitos dados privados. 0:00:30.999,0:00:35.999 Coisas como números de cartões de crédito,[br]informações bancárias, senhas, e e-mails. 0:00:35.999,0:00:38.999 Então… como é que todas estas[br]coisas privadas são mantidas em segredo? 0:00:38.999,0:00:42.280 Dados de qualquer tipo podem ser mantidos[br]em segredo através de um processo chamado encriptação, 0:00:42.280,0:00:46.999 misturando ou alterando a mensagem[br]para esconder o texto original. 0:00:46.999,0:00:50.999 Agora, a decifragem é o processo de desencriptação[br]dessa mensagem para a tornar legível. 0:00:51.999,0:00:55.660 Esta é uma ideia simples, e as pessoas[br]têm vindo a fazê-lo há séculos. 0:00:55.660,0:00:59.999 Um dos primeiros métodos de encriptação[br]mais conhecidos foi a Cifra de César, 0:00:59.999,0:01:02.899 cujo nome é uma homenagem a Júlio César,[br]um general romano que encriptou 0:01:02.899,0:01:07.220 os seus comandos militares para garantir que[br]se uma mensagem fosse interceptada por inimigos, 0:01:07.220,0:01:09.999 eles não seriam capazes de a ler. 0:01:09.999,0:01:14.999 A Cifra de César é um algoritmo que substitui[br]cada letra da mensagem original por uma letra 0:01:14.999,0:01:17.999 um certo número de posições[br]atrás no alfabeto. 0:01:17.999,0:01:22.999 Se esse número só for conhecido pelo remetente[br]e pelo destinatário, então é chamado de "chave". 0:01:22.999,0:01:25.999 Isto permite ao leitor desbloquear a mensagem secreta.[br]. Por exemplo, se o seu original 0:01:27.999,0:01:29.999 Por exemplo, se a mensagem original[br]for "HELLO", 0:01:29.999,0:01:34.899 utilizando então o algoritmo da Cifra de César[br]com uma chave de 5, a mensagem encriptada 0:01:34.899,0:01:36.549 a mensagem encriptada seria esta… 0:01:39.499,0:01:44.999 Para decifrar a mensagem, o destinatário usaria[br]simplesmente a chave para inverter o processo. 0:01:45.999,0:01:48.999 No entanto, a Cifra de César tem um grande[br]defeito. 0:01:48.999,0:01:52.999 Qualquer pessoa pode decifrar ou[br]descobrir a mensagem encriptada, 0:01:52.999,0:01:54.999 ao tentar com todas as chaves possíveis, 0:01:54.469,0:01:56.789 e, no alfabeto latino,[br]existem apenas 26 letras 0:01:56.789,0:02:02.999 o que significa que seriam precisas só[br]26 tentativas para desencriptar a mensagem. 0:02:02.999,0:02:07.999 Experimentar 26 chaves não seria muito difícil.[br]Levaria, no máximo, uma hora ou duas. 0:02:08.999,0:02:09.999 Então, vamos tornar isto mais difícil. 0:02:09.999,0:02:15.999 Em vez de alterar cada letra no mesmo número,[br]vamos mudar cada letra num número diferente. 0:02:15.999,0:02:21.999 Neste exemplo, uma chave de dez dígitos mostra quantas[br]posições de cada letra sucessiva será alterada 0:02:21.999,0:02:24.999 para encriptar uma mensagem mais longa. 0:02:26.230,0:02:28.999 Adivinhar isto seria realmente difícil. 0:02:28.650,0:02:33.999 Utilizando a encriptação de 10 dígitos,[br]existiriam 10 mil milhões de chaves possíveis. 0:02:33.930,0:02:38.999 Obviamente, isto é muito mais do que qualquer humano[br]poderia resolver — levaria muitos séculos. 0:02:39.999,0:02:42.999 Mas, hoje, um computador mediano[br]demoraria apenas alguns segundos 0:02:42.999,0:02:45.411 a experimentar todas as[br]10 mil milhões de chaves possíveis. 0:02:46.030,0:02:50.999 Num mundo moderno em que os maus da fita estão[br]armados com computadores em vez de com lápis, 0:02:50.999,0:02:56.170 como podemos encriptar as mensagens de forma[br]tão segura que as torne demasiado difíceis de decifrar? 0:02:56.170,0:02:59.999 Demasiado difícil, neste caso, significa[br]que existem demasiadas possibilidades 0:02:59.999,0:03:01.999 a considerar num[br]período razoável de tempo. 0:03:02.610,0:03:08.999 Hoje, as comunicações são encriptadas[br]usando chaves de 256 bits. 0:03:08.999,0:03:10.999 Isso significa que o computador[br]de um mau da fita, 0:03:10.999,0:03:14.999 que intercepte a tua mensagem,[br]teria de tentar muitas destas opções possíveis... 0:03:14.999,0:03:17.999 até descobrir a chave[br]e decifrar a mensagem. 0:03:19.999,0:03:25.999 Mesmo que tivesses 100.000 super computadores[br]e cada um deles conseguisse testar 0:03:25.999,0:03:30.680 um milhão de biliões de chaves a cada segundo,[br]seriam necessários triliões de triliões de anos 0:03:30.680,0:03:37.999 para testar todas as opções, apenas para decifrar[br]uma única mensagem protegida com encriptação de 256 bit. 0:03:37.690,0:03:42.999 É claro que os chips de computador têm o[br]dobro da velocidade e metade do tamanho a cada ano. 0:03:42.999,0:03:48.876 Se o progresso continuar a este ritmo exponencial,[br]os problemas impossíveis de hoje serão resolvidos 0:03:48.876,0:03:53.450 em poucas centenas de anos no futuro,[br]e 256 bits não serão suficientes para dar segurança. 0:03:54.320,0:04:00.999 Na verdade, já tivemos de aumentar o tamanho padrão[br]da chave para acompanhar a velocidade dos computadores. 0:04:01.070,0:04:05.540 A boa notícia é que usar uma chave mais longa não[br]torna a encriptação de mensagens muito mais difícil, 0:04:05.540,0:04:10.999 mas aumenta exponencialmente o número de[br]palpites necessários para decifrar uma cifra. 0:04:11.150,0:04:15.999 Quando remetente e destinatário partilham a mesma[br]chave para codificar e descodificar uma mensagem, 0:04:15.999,0:04:18.999 chamamos a isso "encriptação simétrica". 0:04:18.999,0:04:25.169 Com a Encriptação Simétrica, como a da Cifra de César,[br]a chave secreta tem de ser previamente acordada 0:04:25.169,0:04:27.999 por duas pessoas em privado. 0:04:27.400,0:04:31.999 Isso é óptimo para as pessoas,[br]mas a Internet é aberta e pública, 0:04:31.999,0:04:36.999 pelo que é impossível dois computadores "encontrarem-se"[br]em privado para fixarem uma chave secreta. 0:04:37.999,0:04:40.999 Em vez disso, os computadores usam[br]chaves de encriptação assimétrica, 0:04:40.999,0:04:45.999 uma chave pública que pode ser trocada com[br]toda a gente, e uma privada, não partilhada. 0:04:46.999,0:04:50.900 A chave pública é utilizada para encriptar dados,[br]sendo que qualquer pessoa pode usá-la 0:04:50.900,0:04:52.999 para criar uma mensagem secreta. 0:04:52.999,0:04:58.999 Mas o segredo só pode ser decifrado por[br]um computador com acesso à chave privada. 0:04:59.999,0:05:02.999 Isto funciona com alguma matemática,[br]que não vamos explorar agora. 0:05:02.999,0:05:06.129 Pensa nisto: imagina que tens[br]uma caixa de correio pessoal, 0:05:06.129,0:05:09.999 onde qualquer um pode deixar correio,[br]mas precisa de uma chave para o fazer. 0:05:10.090,0:05:13.999 Podes fazer várias cópias da chave[br]de depósito, enviando uma ao teu amigo 0:05:13.999,0:05:16.999 ou até partilhá-la num local público. 0:05:16.509,0:05:22.999 O teu amigo, ou um estranho, pode usar a chave[br]para aceder à tua caixa de depósito e deixar uma mensagem 0:05:22.999,0:05:28.999 mas só tu podes abrir a caixa, com a tua chave privada,[br]tirar todas as mensagens secretas que recebeste. 0:05:29.999,0:05:34.999 E tu podes enviar uma mensagem secreta ao teu amigo,[br]usando a chave pública para a depositar na caixa dele. 0:05:34.999,0:05:40.999 Desta forma, as pessoas podem trocar mensagens[br]seguras, sem precisarem de acordar numa chave privada. 0:05:41.037,0:05:46.999 A criptografia de chaves públicas é a base[br]de todas as mensagens seguras na internet aberta, 0:05:46.999,0:05:51.999 incluindo os Protocolos de Segurança[br]conhecidos como SSL e TLS, 0:05:51.999,0:05:53.999 que nos protegem quando[br]estamos a navegar na web. 0:05:54.999,0:05:56.240 O teu computador usa-os, hoje em dia. 0:05:56.240,0:06:01.999 Sempre que vires um pequeno cadeado ou as[br]letras 'https' na barra de endereços do teu navegador, 0:06:01.999,0:06:05.999 isso significa que o teu computador[br]está a utilizar a encriptação de chave pública 0:06:05.999,0:06:08.999 para trocar dados de forma segura[br]com a página web que estás a visitar. 0:06:09.999,0:06:14.999 À medida que mais e mais pessoas entram na internet,[br]mais e mais dados privados serão transmitidos, 0:06:14.999,0:06:18.999 e a necessidade de manter esses dados[br]seguros será ainda mais importante. 0:06:19.080,0:06:23.999 E, à medida que os computadores se tornam mais rápidos[br]teremos que desenvolver novas formas de encriptação 0:06:23.999,0:06:25.699 demasiado difíceis de decifrar pelos computadores. 0:06:26.999,0:06:29.999 Isto é o que faço no meu trabalho,[br]e as coisas estão sempre a mudar.