Parte 1
Atualmente já estamos acostumados a ver o cadeado verde (no Chrome e Firefox – no Edge é apenas o contorno de um cadeado) ao lado da barra de navegação em quase todos os sites acessados, sinal de que está sendo usado o protocolo HTTPS, utilizado nos sites seguros.
Recentemente o Google deu o golpe de misericórdia nos sites que não usam a tecnologia segura baixando o ranking destes sites, o que gerou uma onda de migrações de HTTP para HTTPS em toda a internet.
Mas o que significa exatamente o termo HTTPS e o quão seguro é o site que tem o cadeado?
Atualmente já estamos acostumados a ver o cadeado verde (no Chrome e Firefox – no Edge é apenas o contorno de um cadeado) ao lado da barra de navegação em quase todos os sites acessados, sinal de que está sendo usado o protocolo HTTPS, utilizado nos sites seguros.
Recentemente o Google deu o golpe de misericórdia nos sites que não usam a tecnologia segura baixando o ranking destes sites, o que gerou uma onda de migrações de HTTP para HTTPS em toda a internet.
HTTPS significa utilizar o protocolo HTTP dos sites não seguros, porém dentro de uma conexão SSL/TLS, que é criptografada. Ou seja, antes do navegador começar a se comunicar com o site, o canal de comunicação é codificado para evitar que as mensagens trocadas entre o navegador e o site sejam “espionadas” por terceiros.
Além disso, antes de estabelecer a conexão, a identidade do site remoto é verificada através do uso de certificados digitais, para evitar que o navegador se comunique com um site falso fazendo se passar pelo site verdadeiro.
Explicarei, neste artigo, como estes objetivos são alcançados, como é a tecnologia PKI, ou “Infraestrutura de Chaves Públicas”, que está por trás de toda a segurança digital dos websites.
Assinaturas digitais
Tudo começa com a assinatura digital: ela é um “apêndice” adicionado a uma mensagem eletrônica para garantir que esta veio de um determinado remetente. Esta técnica se baseia na tecnologia de criptografia com chaves assimétricas, descrita no artigo “Segurança da Informação – Criptografia”, mas que pode ser resumida no parágrafo abaixo:
Tudo começa com a assinatura digital: ela é um “apêndice” adicionado a uma mensagem eletrônica para garantir que esta veio de um determinado remetente. Esta técnica se baseia na tecnologia de criptografia com chaves assimétricas, descrita no artigo “Segurança da Informação – Criptografia”, mas que pode ser resumida no parágrafo abaixo:
Se uma determinada fonte codificar uma mensagem com a sua chave privada, apenas a chave pública poderá decodificar tal mensagem, e vice versa (ou seja, se a mensagem for codificada com a chave pública, somente a chave privada poderá decodificá-la).
Ou seja, se esta mensagem puder ser corretamente decodificada utilizando a chave pública da fonte, então necessariamente ela terá sido enviada pela fonte, pois apenas ela teria acesso a chave privada para poder codificar a mensagem.
Ou seja, se esta mensagem puder ser corretamente decodificada utilizando a chave pública da fonte, então necessariamente ela terá sido enviada pela fonte, pois apenas ela teria acesso a chave privada para poder codificar a mensagem.
Mas afinal, o que contém este apêndice que é adicionado à mensagem?
Ele contém a própria mensagem sendo assinada e codificada pela chave privada do remetente. Antes da mensagem ser codificada, ela passa por uma transformação matemática chamada hash, que tem por objetivo diminuir seu tamanho para um número fixo de caracteres por questões de eficiência. O hash então é codificado no lugar da mensagem, o que dá uma assinatura de um tamanho razoável e fixo.
Ele contém a própria mensagem sendo assinada e codificada pela chave privada do remetente. Antes da mensagem ser codificada, ela passa por uma transformação matemática chamada hash, que tem por objetivo diminuir seu tamanho para um número fixo de caracteres por questões de eficiência. O hash então é codificado no lugar da mensagem, o que dá uma assinatura de um tamanho razoável e fixo.
Validando assinaturas digitais
O processo de validação da assinatura digital é bem simples. Primeiro, calcula-se o “hash” da mensagem assinada usando o mesmo algoritmo que foi usado pela entidade que assinou o documento. Em seguida, compara-se este hash com o assinatura enviada pelo remetente, após ter sido decodificada com a chave pública do mesmo. Se os 2 valores forem iguais é porque o documento foi de fato assinado pelo remetente.
O processo de validação da assinatura digital é bem simples. Primeiro, calcula-se o “hash” da mensagem assinada usando o mesmo algoritmo que foi usado pela entidade que assinou o documento. Em seguida, compara-se este hash com o assinatura enviada pelo remetente, após ter sido decodificada com a chave pública do mesmo. Se os 2 valores forem iguais é porque o documento foi de fato assinado pelo remetente.
Esta premissa é a base de toda a tecnologia de segurança utilizada atualmente, porém resta ainda um problema: como garantir que a chave pública utilizada para decodificar a mensagem realmente pertence ao remetente da mensagem?
Certificados digitais
Um certificado digital é um documento utilizado para garantir que uma chave pública pertence a uma determinada entidade (pessoa física ou jurídica). Ela também provê informações sobre tal entidade, como endereço do website e local físico da empresa.
Ao garantir a propriedade da chave pública, ele garante que qualquer comunicação bem sucedida utilizando tal chave certamente partiu da entidade que está no certificado (uma vez que apenas esta entidade deveria ter acesso à chave privada).
Um certificado digital é um documento utilizado para garantir que uma chave pública pertence a uma determinada entidade (pessoa física ou jurídica). Ela também provê informações sobre tal entidade, como endereço do website e local físico da empresa.
Ao garantir a propriedade da chave pública, ele garante que qualquer comunicação bem sucedida utilizando tal chave certamente partiu da entidade que está no certificado (uma vez que apenas esta entidade deveria ter acesso à chave privada).
Certificados digitais podem ser usados para vários fins, sendo estes o mais comum:
- Assinatura digital
- Autenticação
- Troca de chaves de criptografia
Independente do uso dado ao certificado, ele é sempre emitido da mesma forma, que segue os passos abaixo:
- O proprietário cria um par de chaves assimétricas, guarda uma delas (chamada de chave privada), e coloca a outra (chave pública) em um documento digital com seus dados (endereço, email, website). Em seguida este documento é assinado utilizando a chave privada do requerente. Este documento é chamado de “certificate request”.
- Este documento digital é então enviado a uma entidade certificadora junto com alguma prova de identidade. Esta prova pode ser simplesmente o acesso a um endereço de e-mail, ou envio de documentação comprobatória como carteira de identidade e contrato social.
- Uma vez comprovada a identidade do requerente, o pedido de certificado é assinado pela entidade certificadora, e se torna o certificado do requerente e é enviado de volta ao requerente.
- O requerente recebe o certificado emitido e o utiliza em conjunto com a chave privada para assinar documentos e iniciar servidores web com o protocolo HTTPS.
Como vimos acima, o certificado é emitido por uma entidade certificadora.
Mas como é verificada a assinatura da entidade certificadora? É o que veremos na próxima semana.
FONTE: WINCO SISTEMAS
Nenhum comentário:
Postar um comentário