HTTP versus HTTPS, segundo a Google

Adam Langley, Engenheiro de Software na Google, numa linguagem um bocadinho hermética para leigos, que será descodificada mais abaixo:

O S em HTTPS representa seguro e a segurança é proporcionada por Secure Sockets Layer/Transport Layer Security (SSL/TLS). O SSL/TLS é um protocolo standard de rede que é incluído em todos os navegadores e servidores web para proporcionar confidencialidade e integridade ao tráfego HTTPS.

Se existe uma coisa que queremos comunicar ao mundo, é que o SSL/TLS já não é computacionalmente caro. Há 10 anos poderá ter sido, mas já não é o caso. Você também tem capacidade para activar HTTPS para os seus utilizadores.

Em Janeiro deste ano (2010), o Gmail passou a usar HTTPS para tudo, por omissão. Anteriormente tinha sido introduzido como uma opção, mas agora todos os nossos utilizadores usam HTTPS para proteger o seu correio electrónico, [na comunicação] entre os seus browsers e a Google, durante todo o tempo. Para fazermos isto, não tivemos que juntar máquinas adicionais nem hardware especial. Nas nossas máquinas frontend de produção, o SSL/TLS é responsável por menos de 1% da carga nos processadores, menos de 10KBytes de memória por ligação, e menos de 2% de carga adicional na rede. Muitas pessoas acreditam que o SSL consome muito tempo de processamento e esperamos que estes números (apresentados ao público pela primeira vez) serão uma ajuda para desmistificar isso.

Se parar de ler agora, só tem que recordar uma coisa: o SSL/TLS já não é computacionalmente caro.

in Overclocking SSL.

Para quem não percebeu uma pevide : ) do que foi dito pelo Adam Langley, a explicação é a seguinte, em três ou quatro pontos muito breves:

  • Quando introduzimos www.qualquercoisa.com no navegador da Internet, estamos implícitamente a utilizar o protocolo de comunicações HTTP (ou, numa tradução literal, o Protocolo para Transferência de Hipertexto), que é a linguagem utilizada na comunicação entre o nosso computador e o servidor de páginas, algures na Internet;
  • Quando utilizamos HTTP, a informação que é transmitida entre o serviço e o nosso computador (e vice-versa), não estão cifrados e, teoricamente, os dados podem ser observados enquanto estão em trânsito na Internet. Observados? Sim, por alguém que esteja posicionado num local onde passe essa informação (por exemplo, e apenas de uma perspectiva teórica, se estiver colocado num prestador de serviços de Internet);
  • Quando é utilizado o protocolo HTTPS (por exemplo, na comunicação com os sítios de Bancos online, endereçando-os por https://www.banco.com), a informação é protegida com cifra e não pode ser lida directamente por ninguém, mesmo que veja os dados a passarem à frente do nariz : )
  • Finalmente, o ponto principal que o Adam Langley quis vincar, foi que o HTTPS, o tal protocolo que garante protecção dos dados na Internet, ao contrário do pensamento corrente, já não é caro e está ao alcance de todos os servidores na Internet.

Depois desta conversa toda, o meu comentário para encerrar a noite é o seguinte: se a Google consegue pôr o Gmail a funcionar com protecção por cifra – vou repetir este bocado, porque é mesmo importante: GMAIL, aquele site com milhões de ligações simultâneas, 24 horas por dia, 365 dias por ano – se conseguem pôr aquilo a responder com SSL, com custos que são marginais, e se sabemos que o protocolo reforça a autenticação dos serviços e a protecção da informação em movimento, se sabemos tudo isto, porque razão não adoptamos o HTTPS como standard para toda a Internet?

Reparem, se o standard passar a ser a autenticação e a cifra, poderemos assinalar a sua ausência de uma forma mais vincada, mais vermelha, de uma forma que não podemos fazer actualmente, não sem dessensibilizarmos completamente os utilizadores. Se invertermos o registo, se acrescentarmos confiança às ligações, para além de reforçarmos a segurança de uma forma generalizada, ainda vamos ter a ajuda dos utilizadores na detecção de eventuais situações de fraude.

A monitorização do tráfego ficará incapacitada pela cifra? Sim, ao nível da análise directa do tráfego na rede. No entanto, a partir do momento em que os dados são decifrados, podem ser analisados – não se perde a capacidade de análise local.

Fica por aqui a informação e a minha opinião. Food for thought.