Alternativa correta: C.
Etapas de um handshake SSL/TLS: (versão resumida)
1. hello do cliente + informa as cifras suportadas + informações criptográficas
2. hello do servidor + cifra escolhida + envio do certificado do servidor e, opcionalmente, o servidor requisita o certificado do cliente (neste caso o servidor envia uma lista de certificados suportados)
3. cliente verifica o certificado do servidor e verifica também os parâmetros criptográficos
4. troca de chaves: cliente envia a chave simétrica usando uma conexão assimétrica que foi aberta usando a chave pública do servidor
5. cliente envia seu certificado, caso tenha sido solicitado
6. servidor verifica o certificado do cliente, caso o tenha solicitado
7. cliente concluído
8. servidor concluído
9. fim do handshake, a partir daqui eles começam a troca de mensagens
Handshake ou aperto de mão é o processo pelo qual duas ou mais máquinas estão prontas para iniciar a comunicação. O handshake é utilizado em protocolos de comunicação, tais como: FTP, TCP, HTTP, SMB, SMTP, POP3 etc.
Quando um sistema inicia um aperto de mão, há três resultados possíveis:
- Sem resposta - Se o sistema que recebe o handshake não estiver disponível ou não suportar o protocolo usado pelo sistema inicial, ele poderá não responder à solicitação.
- Ligação recusada - O sistema que recebe o handshake está disponível e entende a solicitação, mas nega a conexão.
- Conexão aceita - O sistema que recebe o handshake está disponível, recebe a solicitação e aceita a conexão.
O terceiro resultado listado acima é o único em que o aperto de mão é concluído. Se um handshake for bem-sucedido, os dois sistemas podem começar a se comunicar e transferir (dados) pelo protocolo estabelecido. Exemplos de protocolos que usam handshaking incluem TCP, TLS e SSL.