Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Chave pública e transmissão dela

Duas perguntas: 1. Um chave pública é única para qualquer cliente ou é gerado um par de chaves assimétricas à cada pedido de nova conecão? 2. Assumindo que no início das comunicações a chave pública seja transmitida abertamente, já que ainda não existe uma chave para criptografia. O que impede que esta primeira chave seja capturada e assim toda a comunicação posterior possa ser decodificada, incluindo a chave simétrica transmitida?

3 respostas
solução!

Opa a chave pública é única sim, todos navegadores que acessarem a aplicação vai ter acesso a ela, justamente para criptografar a comunicação.

O navegador só usa a chave pública, se alguém capturar ela não tem problema. Pq o que ela encriptou só pode ser descritptografado por quem tem a privada. A chave simétrica negociada é enviada para o servidor também criptografada, o que impede que alguém roube ela e fique descriptografando tudo.

Só para completar, esse link aqui(http://robertheaton.com/2014/03/27/how-does-https-actually-work/) é bastante completo, acho que vale a pena a leitura.

Olá Alberto, o link realmente é bom. Não sei se minha dúvida ficou clara por isso vou reformulá-la e apontar onde no seu post estava a resposta.

A dúvida que me surgiu foi na etapa onde a comunicação entre cliente e servidor é criptografada pela chave assimétrica, nesta etapa todo pacote que é criptografado pela chave pública só pode ser descriptografado pelo servidor, único detentor da chave privada, mas todo pacote enviado pelo servidor pode ser descriptografado pela chave pública, e foi neste ponto que tive a dúvida. Nesta etapa alguém que monitore a comunicação, mesmo que não pudesse decodificar os pacote originados no cliente, poderia fazê-lo nos originados no servido. O detalhe que tinha me escapado é que a chave é gerada e enviada pelo cliente. Você mecionou isso de passagem no segundo parágrafo e eu vinha imaginando justamente o contrário.

Bom, obrigado pela ajuda!