Você está na página 1de 8

HTTP AND HTTPS

O protocolo de transferência de hipertexto (HTTP – HyperText Transfer


Protocol) é o protocolo padrão para a Web. Através dele, os
navegadores requisitam as páginas da Web e as recebem. Dessa forma,
o HTTP define, entre outras formalidades, como são requisitadas as
páginas da Web, como são enviados os dados que o usuário insere em
formulários e como o servidor envia mensagens de erro para o
navegador do usuário. No entanto, como o HTTP é um protocolo
baseado em texto, ou seja, toda a informação transmitida está em texto,
os dados do usuário e do servidor podem ser interceptados ou alterados
no meio do caminho.
Perigo do HTTP


Nesse contexto, um usuário na rede pode interceptar os seus
dados e lê-los ou, pior, alterar a página que você recebe ou a
informação que envia para o servidor. De fato, problemas mais
graves e imediatos podem acontecer com transações
financeiras, como é o caso de uma transferência bancária. Se o
site do banco fosse com HTTP e um usuário mal-intencionado
desejasse alterar uma ordem de transferência para depositar o
dinheiro na conta dele, esse usuário poderia fazer
tranquilamente, pois não há nenhum mecanismo de segurança
no protocolo HTTP.
HTTPS


Com o uso do HTTPS, que é o HTTP seguro, adiciona-se
alguns princípios de segurança, como confidencialidade,
integridade e autenticação. Por confidencialidade, entende-se
que a mensagem só é lida pelo destinatário real da mensagem.
A integridade representa que a mensagem não foi alterada e o
princípio da autenticação prova que o servidor é realmente
quem diz ser. Nesse artigo, apresenta-se, portanto, os
mecanismos utilizados pelo HTTPS para atingir esses três
princípios básicos.
HTTP + SSL


A maioria das explicações resume o HTTPS como um HTTP
com o SSL (Secure Sockets Layer) ou, seu sucessor, o TLS
(Transport Layer Security). TLS ou SSL são camadas de
segurança que fornecem confidencialidade e integridade. No
entanto, a autenticação dos sites da Web é feita pelos
certificados e pela infraestrutura de chaves públicas da
Internet. No entanto, neste artigo, abordaremos as questões
mais conceituais. A base do TLS/SSL e dos certificados da
Internet é a criptografia.
SSL KEYS


Para a construção de um Website com HTTPS, o administrador
do site precisa criar um par de chaves, uma pública e uma
privada. Assim, quando um usuário solicita uma conexão com
esse site, o servidor envia a sua chave pública para o usuário.
De posse da chave pública, o usuário pode se comunicar com
o servidor, garantindo que todas as mensagens enviadas para
o servidor somente serão lidas pelo servidor, pois apenas o
servidor possui a chave privada. Basta, para isso, que o
navegador do usuário encripte todas as requisições e decripte
as respostas recebidas com a chave pública do servidor.
TSL/SSL


Para garantir a integridade, o TLS/SSL adiciona a cada
mensagem, seja ela requisição ou resposta, um código. Esse
código é denominado MAC (Message Authentication Code) e
busca permitir ao destinatário detectar se a mensagem foi
alterada. Seu funcionamento é simples. Calcula-se um resumo
(Hash) de cada mensagem e envia-se esse resumo junto com
a mensagem. Assim, quando o destinatário receber a
mensagem, deve calcular o mesmo resumo e verificar se o
resumo calculado é igual ao recebido. Se for igual, a
mensagem não foi alterada, mas se for diferente, o destinatário
deve descartar a mensagem e pedir uma nova.
Registro e certificacao
HTTPS

Assim, após criar o seu par de chaves, o administrador do Website deve registrar esse par
de chaves em uma autoridade certificadora da Internet. A autoridade certificadora funciona
como um cartório do mundo real e emite um certificado confirmando que aquela chave
pública é realmente do site. Esse processo, nos certificados mais fortes, envolve, inclusive,
o sócio do site indo pessoalmente até a sede da autoridade certificadora portando os
documentos legais da empresa. Dessa forma, quando um site possui um certificado, o
navegador o exibe com todas as informações da empresa que o emitiu.


O funcionamento é simples, quando o servidor envia a chave pública para o usuário, ele
também envia o certificado que atesta a validade da chave pública. Assim, o usuário
consulta a autoridade certificadora para verificar o certificado, que pode inclusive ter sido
revogado. Caso a autoridade certificadora ateste a validade do certificado, o navegador
confia na chave pública recebida e se comunica com o servidor tendo a certeza de que é o
servidor legítimo.
Viavel ou inviavel

Para o usuário, o site com HTTPS oferece a vantagem da segurança. No entanto,
podemos nos perguntar por que todos os sites não utilizam HTTPS. A resposta é
custo e desempenho. Primeiramente, a validação do certificado pela autoridade
certificadora é cobrada, custando, em algumas modalidades, mais de R$ 3.000,00
(três mil reais) por ano. Nem todos os serviços na Web desejam ou podem pagar
quantias como essas.


Além disso, utilizar HTTPS nos serviços web reduz drasticamente o desempenho da
comunicação. Por esses motivos, os sites evitam utilizar o HTTPS, reservando-o
apenas para as transações mais sensíveis, como as financeiras. No entanto, não
esqueça de observar o uso correto do HTTPS também em redes sociais, serviços de
e-mail, discos virtuais e outras aplicações que exijam senhas ou o envio de dados
pessoais. Essas informações também são sensíveis e requerem cuidado ao serem
enviadas na Internet.

Você também pode gostar