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.