Pular para o conteúdo principal
padrão hexadecimal roxo

O HTTPS é o principal protocolo usado para enviar dados entre um navegador da web e um site é o protocolo de transferência de hipertexto (HTTP). O HTTPS usa TLS (segurança em camadas de transporte) para criptografar solicitações e respostas em HTTP, tornando-o uma versão segura (daí o “S”) do mesmo protocolo. É usado em vários aplicativos, como logins de contas, e-commerce e aplicativos de webmail, para citar alguns.

NOTAS: Os certificados TLS geralmente são chamados de certificados TLS/SSL.

Como funciona o HTTPS? (aspectos básicos)

O HTTPS é uma implementação da criptografia TLS sobre o protocolo HTTP. Portanto, quando um usuário acessa um site compatível com HTTPS, ele obtém os seguintes benefícios de segurança:

  • Autenticação: Ajuda a verificar a identidade do site. Por exemplo, se a barra do navegador exibir https://www.entrust.com, você pode ter certeza de que ela pertence à Entrust Corporation.
  • Criptografia: Oculta os dados em movimento de terceiros.
  • Integridade: Verifica se os dados não foram adulterados.
O que o HTTPS faz

Por que a autenticação em HTTPS é tão importante?

A autenticação de um site é importante porque permite ao visitante do site verificar a identidade e a propriedade de um site, ajudando-o a distinguir entre um site real e um site potencialmente falso ou fraudulento.

Um visitante do site pode acabar caindo em um site incorreto por meio de vários vetores de ataque, como envenenamento de DNS, malware ou sites de phishing.

A associação de uma identidade a um site geralmente é realizada por uma organização terceira, como uma autoridade de certificação (CA) que segue diretrizes rígidas do setor.

Como funciona a identidade em HTTPS?

Um navegador da Web que se conecta a um site usará um certificado TLS/SSL emitido por uma autoridade de certificação, como a Entrust, para autenticar em um site HTTPS.

Como solicitar um certificado TLS/SSL

Para adicionar identidade a um site, um certificado TLS/SSL deve ser solicitado pelo proprietário do site e emitido por uma autoridade de certificação publicamente confiável, como a Entrust. O certificado TLS/SSL é análogo a um passaporte digital para uma empresa, pois inclui detalhes verificados, como:

  • URL(s) do site
  • A organização que possui o site
  • As datas de emissão e expiração do certificado
  • O nome da autoridade de certificação que emitiu o certificado
  • A chave pública (usada para criptografar dados)

Para obter um certificado TLS/SSL, o proprietário de um site deve seguir as seguintes etapas:

  1. Gerar uma solicitação de assinatura de certificado (CSR), que inclui um par de chaves pública/privada
  2. Demonstrar à autoridade de certificação que ela controla os domínios a serem incluídos no certificado TLS/SSL
  3. Provar a identidade da organização e que o solicitante está autorizado a solicitar um certificado TLS/SSL em nome da organização

Após a conclusão do processo de verificação, o certificado TLS/SSL é emitido e pode ser instalado pelo proprietário do site nos sites apropriados. O certificado TLS/SSL é então exibido sempre que um visitante do site se conecta a um URL do site via https://

Como um site compartilha sua identidade com os visitantes

Quando um visitante do site acessa um site HTTPS, o navegador da Web recebe uma cópia do certificado TLS/SSL. Ao clicar no ícone de cadeado à esquerda da barra de URL e selecionar A conexão é segura e O certificado é válido, aparecerá um certificado de site semelhante à imagem abaixo.

Informações gerais do certificado

O visitante do site pode abrir a guia Detalhes para visualizar mais informações sobre a organização proprietária do site, semelhante à imagem abaixo.

Assunto de detalhes do certificado

Detalhes do certificado SSL para entrust.com

Se o certificado exibir os detalhes da empresa do proprietário do site (nome da empresa, localização), é um certificado de validação estendida (EV) ou de validação da organização (OV).

 

Como um navegador verifica um certificado TLS/SSL

Um navegador realizará uma sequência de checagens para verificar se o certificado TLS/SSL exibido pelo site é preciso e legítimo. O navegador fará o seguinte:

  1. Confirmar a assinatura digital da autoridade de certificação para verificar se o certificado foi emitido por uma autoridade de certificação no armazenamento raiz confiável do navegador
  2. Verificar se o domínio no certificado SSL corresponde ao domínio do site que o visitante está acessando
  3. Verificar se o certificado SSL é válido e não expirou ou foi revogado

Após concluir essas verificações, o navegador do visitante do site exibirá https:// e um ícone de cadeado na frente do URL do site.

A imagem abaixo mostra que o certificado do site foi emitido pela Entrust e que inclui uma assinatura digital da Entrust que o navegador do visitante do site pode usar para verificar se o certificado é válido e emitido pela Entrust.

Algoritmo de assinatura de detalhes do certificado

Assinatura digital em um certificado SSL emitido pela Entrust Certification Authority

Armazenamentos raiz

Para verificar o certificado TLS/SSL de um site, um navegador precisa de uma cópia da chave pública da autoridade de certificação, que é mantida no armazenamento raiz do navegador.

Um armazenamento raiz contém os certificados digitais e as chaves públicas associadas de cada autoridade de certificação em que ele confia.

Caminho de certificação

Caminho de certificação para o certificado SSL da Entrust.com

  1. O certificado superior é o certificado raiz. É pré-carregado no armazenamento raiz do navegador.
  2. O certificado do meio é o certificado intermediário. É assinado digitalmente pela CA do certificado raiz e, portanto, o navegador também confiará nele. O navegador verifica a assinatura usando a chave pública da Entrust a partir do certificado raiz pré-carregado.
  3. O certificado inferior é o certificado da entidade final e é o certificado TLS/SSL da Entrust enviado pelo servidor da web quando o navegador se conecta ao site. O navegador pode verificar o certificado da entidade final usando a assinatura digital do certificado intermediário.

Como funciona a criptografia em HTTPS?

Em qualquer site HTTPS onde um visitante do site insere informações (detalhes do cartão de crédito, detalhes de login, preenchimento de um formulário etc.) antes que os dados sejam enviados do navegador para o servidor, o navegador criptografará os dados usando a chave pública do certificado TLS/SSL do site.

O processo de criptografia é uma forma de embaralhar os dados em trânsito para que possam ser lidos apenas por pessoas autorizadas. A criptografia, portanto, traduz texto simples legível por humanos em texto codificado ininteligível.

A criptografia mostra uma aparência de dados aleatórios, mas os dados criptografados seguem um padrão lógico e previsível. Contudo, é necessário que o site que recebe os dados tenha a chave privada certa para descriptografar os dados.

processo de criptografia e descriptografia

Visão geral de alto nível do processo de criptografia e descriptografia

O que é uma chave na criptografia?

Uma chave criptográfica é uma sequência de caracteres usada em um algoritmo de criptografia para alterar os dados de texto simples para que pareçam aleatórios. A chave criptográfica é usada para criptografar e descriptografar os dados.

Quais são os diferentes tipos de criptografia?

Existem dois tipos principais de criptografia:

Criptografia simétrica

A criptografia simétrica inclui apenas uma chave, que é usada e compartilhada entre todas as partes comunicantes para criptografar e descriptografar a comunicação. Embora a criptografia simétrica seja mais rápida que a criptografia assimétrica, ela não é uma forma escalável de criptografia devido às complexidades associadas à distribuição segura da chave.

Criptografia simétrica

Criptografia assimétrica

A criptografia assimétrica (também conhecida como criptografia de chave pública) inclui duas chaves separadas. Uma chave (a chave pública) é acessível a qualquer pessoa e é usada para criptografia. Uma segunda chave (a chave privada) é mantida em segurança pelo destinatário e é usada para descriptografia. A criptografia assimétrica é mais lenta que a criptografia simétrica, mas a distribuição das chaves entre vários usuários é mais fácil.

Criptografia assimétrica

O que é um algoritmo de criptografia?

Um algoritmo de criptografia é o método que converte texto simples em texto codificado. O texto simples é convertido em texto codificado quando um algoritmo de criptografia altera os dados de maneira previsível usando uma chave privada. Isso permite que o texto codificado seja convertido novamente em texto simples usando uma chave de descriptografia.

Os algoritmos de criptografia simétrica populares são:

  • AES
  • 3-DES
  • SNOW

Os algoritmos de criptografia assimétrica populares são:

  • RSA
  • Criptografia de curva elíptica (ECC)

O que é o handshake TLS/SSL?

Uma conexão TLS é iniciada seguindo uma sequência geralmente chamada de handshake TLS/SSL. Esse processo é iniciado quando um visitante do site abre um site que usa um certificado TLS/SSL. O processo começa entre o dispositivo do usuário e o site ao qual ele está se conectando.

Handshake TLS/SSL

Passos de 1 a 2: Negociação de pacotes de saudação e codificação

O navegador do visitante do site e o servidor da web se saúdam e entram em acordo sobre quais pacotes de codificação (algoritmos de criptografia) devem ser usados.

Passos de 3 a 4: Troca de certificados e chaves

O servidor da web envia uma cópia do certificado TLS/SSL e do certificado intermediário, juntamente com a chave pública, ao navegador do visitante do site. O navegador do visitante do site verificará a validade do certificado TLS/SSL com base em sua assinatura digital e no certificado raiz no armazenamento raiz de certificados do navegador.

Passo 5: Saudação do servidor realizada

Se todas as verificações do navegador forem aprovadas, um canal de comunicações seguras unidirecional do navegador para o servidor da web será estabelecido.

Passos de 6 a 10: Troca de chave de cliente e alteração de especificação da criptografia

O navegador e o servidor da web mudam de criptografia assimétrica para criptografia simétrica configurando uma nova chave de criptografia compartilhada, usando o canal de comunicação unidirecional seguro porque é mais rápido e eficiente. A forma como essa chave de sessão compartilhada é criada depende do conjunto de codificações que foi acordado após a negociação do conjunto de codificações do passo 2.

Depois que a chave de sessão é gerada, o processo de handshake TLS é concluído e o navegador e o servidor da Web usam a chave de sessão para criptografar e descriptografar todos os dados trocados.