Introdução aos certificados digitais.

Durante o tópico em que tratei de Criptografia Assimétrica, a secretária Alice queria falar com o deputado Bob, mas a policial Eva estava monitorando todas as comunicações. Bob enviou uma chave publica para Alice, Alice fez o mesmo com Bob e conversaram numa boa, sem Eva saber. Porém, há uma forma de Eva “ver” a conversa dos 2, e é para impedir isto que foi criado o certificado digital.

Como eu havia escrito no artigo de Criptografia Assimétrica, Bob criou um par de chaves e enviou a chave publica para Alice, e Alice também criou um par de chaves e  enviou para Bob. Mas, como Alice e Bob saberão se as chaves publicas que eles receberam são, realmente, legitimas?

Nada impede de Eva criar 2 pares de chaves, interceptar a chave que Bob envia para Alice, e substituir esta chave por uma chave própria, e fazer o mesmo com Alice.

O que acontece então:

Se Eva não fazer a troca, a comunicação ocorrerá assim:

BOB <——————————> ALICE.

Bob recebe a chave publica de Alice, e Alice recebe a chave publica de Bob.

Se Eva fazer estas trocas, a comunicação ocorrerá assim:

BOB <———–> EVA <————> ALICE.

Neste caso, Alice enviou a chave para Bob. Porém Eva “roubou” a chave enviada, e enviou, para Bob, uma chave falsa: Gerada pela Eva, fazendo-se passar por Alice. Ao enviar a chave para Bob, Bob recebe a chave de Eva, achando que é a chave de Alice.

Quando Bob envia a chave para Alice, Eva captura esta chave. Eva envia para Alice uma chave falsa, fazendo-se passar por Bob.

Quando Alice enviar uma mensagem para Bob, Alice usará a chave (falsa) de Bob para criptografar. Eva, ao interceptar esta comunicação, descriptografará usando a chave privada (que ela tem, pois ela quem gerou a chave falsa), analisará o conteudo e recriptografará usando a chave verdadeira de Bob.

Quando Bob enviar uma mensagem para Alice, Bob usará a chave (falsa) de Alice para criptografar. Eva, ao interceptar esta comunicação, descriptografará usando a chave privada (que ela tem, pois ela quem gerou a chave falsa), analisará o conteúdo e recriptografará usando a chave verdadeira de Alice.

Este tipo de ataque é chamado de Man-in-the-middle. Como Eva intercepta a comunicação, ela troca as chaves. E como não existe um mecanismo que garanta a autenticidade e integridade das chaves trocadas, este ataque funciona.

A solução é adicionar um terceiro agente, que tanto Alice quanto Bob confiem, que garanta a autenticidade das chaves trocadas. Este é o principio do certificado digital.

Falando de forma simplificada: Alice e Bob possuem a chave publica da entidade certificadora. Alice e Bob criam seus pares de chaves.

Alice e Bob enviam suas chaves publicas para a entidade certificadora, que assina digitalmente estas chaves utilizando a chave privada da entidade certificadora.

Em troca, Alice e Bob recebem o seu certificado digital, que simplesmente é a chave publica assinada digitalmente.

Resumidamente, o processo é este.

Se Alice e Bob usarem certificados digitais assinados por uma terceira parte, Alice enviará sua chave publicas assinada (certificado) para Bob. Se Eva alterar esta chave, Bob saberá que ocorreu alterações, e recusará a chave, impossibilitando a escuta que Eva quer fazer.

No próximo artigo usaremos o OpenSSL para criar uma entidade certificadora e fazer alguns certificados  digitais🙂

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: