O que muda nos requisitos de segurança com o HTTP 2.0? | CRYPTOID
Como no artigo passado falei um pouco sobre o CASC
Nesses últimos meses um assunto que andou ganhando destaque nos canais especializados em tecnologia foi a adoção do HTTP 2.0 por alguns browsers e servidores de
Junto com essas notícias vieram algumas perguntas interessantes, como por exemplo, de onde surgiu essa nova versão do protocolo HTTP e quais são seus benefícios.
Primeiramente vamos falar um pouco sobre a história do protocolo HTTP e suas limitações para os dias atuais.
A versão do protocolo HTTP atualmente utilizada é a 1.1, que teve suas especificações finalizadas em 1999 e antes da desta, ainda existiram as versões 0.9 e 1.0.
Após aproximadamente 15 anos de uso da versão atual e com o crescimento e sofisticação das aplicações que o utilizam, o protocolo começou a apresentar sinais de obsolescência, exigindo certos malabarismos dos desenvolvedores que o utilizam.
Um dos grandes gargalos da versão 1.1 é a necessidade de estabelecer uma conexão TCP a cada requisição que é enviada ao servidor de aplicação. Esse ponto representa um ônus muito grande devido ao HTTP ser um protocolo orientado a conexão e exigir um handshake completo a cada conexão estabelecida.
Para contornar essa limitação e elevar o desempenho das aplicações web, os desenvolvedores utilizam há algum tempo algumas estratégias, como por exemplo, efetuar diversas conexões em paralelo e, com isso, reduzir o tempo necessário para entregar todos os elementos existentes nas aplicações web.
Ainda assim, existe um limite permitido de conexões paralelas de mesma origem, o que reduz a eficiência da estratégia, além da sobrecarga que as requisições paralelas trazem aos servidores de aplicações, pois eles precisam estabelecer e controlar cada uma delas.
Portanto, para continuar a elevar a qualidade e o desempenho das aplicações que fazem uso da internet e do protocolo HTTP, uma versão mais moderna e aderente ao uso atual da internet precisava ser especificada, nascendo assim o HTTP 2.0.
O HTTP 2.0 foi baseado no SPDY, um protocolo desenvolvido pelo time de engenharia do Google, que entrega vários benefícios importantes para os desenvolvedores e usuários dos serviços web.
O benefício mais notório é a mudança de um protocolo texto para um protocolo binário, mudança que permitirá uma redução sensível nos dados trafegados, além de entregar métodos de parsing muito mais eficientes.
A multiplexação nas conexões é outro benefício importante, pois agora será possível enviar diversas requisições em uma mesma conexão, algo que realmente irá revolucionar as aplicações e elevar consideravelmente o seu desempenho.
Finalmente, entre outras características, a compactação do cabeçalho é uma que também elevará o desempenho do protocolo, pois poderá reduzir significativamente a quantidade de dados trafegados entre os clientes e os servidores.
Mas o que muda nos requisitos de segurança com o HTTP 2.0?
Bom, existem discussões que ainda estão acontecendo acerca da segurança que o protocolo deverá proporcionar e inclusive uma delas é sobre a exigência do uso do https em qualquer conexão que utilize a versão 2.0.
Nessa fase da especificação o que é certo é que o protocolo HTTP 2.0 não aceitará mais o uso do SSL e somente conexões que utilizarem o TLS 1.2 serão estabelecidas.
Outra técnica que está ganhando força agora no HTTP 2.0 é a criptografia oportunista (Opportunistic Encryption), onde no momento de estabelecer uma conexão, cliente e servidor verificam a possibilidade de utilizar a criptografia na troca dos dados. Alguns browsers, como o Firefox versão 37, já estão compatíveis com o HTTP 2.0 e com essa nova funcionalidade
O mercado aposta fortemente nesse novo protocolo e acreditamos que, tanto o desempenho, quanto a segurança dos usuários sofrerão um incremento muito importante.
Estamos atentos aos movimentos e benefícios que a adoção desse novo protocolo poderá proporcionar e compartilharemos as nova descoberta aqui.