FORUM DARKERS

Comunicações => Redes | Equipamentos => Topic started by: HadeS on 14 de June , 2006, 10:19:34 PM

Title: Handshake com SSL
Post by: HadeS on 14 de June , 2006, 10:19:34 PM
Vou explicar aqui como a conexão atravéz do protocolo SSL acontece (Handshake).

Primeiro o cliente e o servidor entram em um acordo, definem a versão do protocolo, selecionam o algoritmo de criptografia, trocam as chaves públicas, para depois o Handshake acontecer.

Vou descrever aqui o Shandshake básico e perfeito de uma conexão SSL. Vamos por passos:

1- O cliente envia uma solicitação de conexão (Client Hello Message)
2- O servidor responde com uma aceitação (Server Hello Message)
3- Servidor envia seu Certificado (Certificate)
4- Servidor envia sua chave (Server Key Exchange Message)
5- Sercidor solicita o Certificado (Certificate) do Cliente
6- ClienteObservação¹: envia seu certificado (Certificate) ou um alerta avisando que não possue Certificado (No Certificate Alert)
7- Cliente envia sua chave (Client Key Exchange Message)
8- Cliente manda Change Cipher Spec Message
9- Cliente envia uma mensagem dizendo que terminou o processo (Finished Message)
10- Servidor manda Change Cipher Spec Message
11- Servidor envia uma mensagem dizendo que terminou o processo (Finished Message)
12- O Handshake está completo. A conexão foi estabalecida.

Observação¹: As mensagens Client Hello e Server Hello (Respectivamente, passos 1 e 2), possuem os seguintes atributos: Versão de Protocolo, Identificação de Sessão, Cipher Suite, Método de Compressão, e cada uma possue um campo com um número de indentificação aleatório, para garantir a autenticidade dos pacotes.

Observação²: Todas as mensagens do handshake são trocadas usando MAC (Message Authentication Code) para dar segurança desde o início do processo. A ordem das mensagens obedece a uma seqüência absoluta, e as mensagens de negociação são criadas nesta camada e manuseadas pela Record Layer.


HadeS
Title: Re: Handshake com SSL
Post by: Cloudy on 11 de December , 2007, 09:32:50 PM
UP!

...by Cloudy