0Pricing
Cryptology Academy · Aula

Handshake do TLS 1.3 passo a passo

Acompanhe ClientHello, ServerHello, a derivação de chaves e Finished.

Handshake do TLS 1.3 passo a passo é uma aula grátis de Cryptology Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cryptology Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cryptology Academy inclui 4 aulas no total.

Por que TLS?

TLS (segurança da camada de transporte) protege os dados em trânsito pela internet. Toda conexão HTTPS usa TLS. O TLS 1.3, padronizado na RFC 8446 (2018), eliminou algoritmos legados e reduziu o número de viagens de ida e volta da negociação de 2 para 1.

ClientHello

O cliente envia: a versão do TLS (1.3), um valor aleatório de 32 bytes, uma lista de conjuntos de cifras compatíveis (por exemplo, TLS_AES_256_GCM_SHA384) e extensões de compartilhamento de chaves contendo chaves públicas ECDH para os grupos compatíveis (X25519, P-256).

ServerHello

O servidor seleciona um conjunto de cifras e um grupo de compartilhamento de chaves, gera seu próprio par de chaves ECDH efêmero e responde com sua chave pública. Nesse momento, ambos os lados podem calcular o segredo compartilhado por meio de ECDH.

Derivação de chaves por meio de HKDF

O TLS 1.3 usa HKDF (função de derivação de chaves baseada em HMAC) em um esquema: segredo inicial → segredo de negociação → segredo mestre. Cada etapa deriva chaves separadas para o tráfego de negociação do cliente e do servidor e para os dados da aplicação.

Conclusão do servidor

O servidor envia seu certificado, CertificateVerify (uma assinatura sobre o histórico da negociação usando sua chave privada) e a mensagem de conclusão (um HMAC sobre o histórico). Tudo é cifrado com a chave de tráfego da negociação.

Conclusão do cliente

O cliente verifica a cadeia de certificados, confere a assinatura de CertificateVerify, verifica o MAC de conclusão e então envia sua própria mensagem de conclusão. A negociação agora está completa em uma viagem de ida e volta (1-RTT).

Retomada 0-RTT

O TLS 1.3 permite a retomada 0-RTT (zero viagens de ida e volta) usando uma chave pré-compartilhada (PSK) de uma sessão anterior. O cliente pode enviar dados da aplicação imediatamente, mas os dados 0-RTT não têm proteção contra repetições e devem ser idempotentes.

Conjuntos de cifras do TLS 1.3

O TLS 1.3 exige apenas cifras AEAD: AES-128-GCM-SHA256, AES-256-GCM-SHA384, ChaCha20-Poly1305-SHA256. Todas usam ECDHE ou DHE para a troca de chaves. Os conjuntos fracos (RC4, 3DES, CBC) foram removidos.

Camada de registros

Após a negociação, todos os dados são encapsulados em registros TLS: cabeçalho de 5 bytes (tipo de conteúdo, versão, comprimento) + conteúdo útil cifrado com AEAD. O número de sequência é implícito e usado como parte do valor único do AEAD para impedir repetições.

Sigilo de encaminhamento

Como o TLS 1.3 sempre usa uma troca de chaves efêmera (ECDHE), o comprometimento da chave privada de longo prazo do servidor não descriptografa sessões passadas. Cada sessão tem um par de chaves efêmero exclusivo, destruído após a negociação.

Visualização no Wireshark

No Wireshark: ClientHello mostra random + key_share; ServerHello mostra o grupo selecionado; os registros seguintes aparecem como "Application Data" (cifrados). Exporte SSLKEYLOGFILE para descriptografá-los usando as chaves da sessão.

Verificação rápida

Quantas viagens de ida e volta uma negociação completa do TLS 1.3 exige?

Recapitulação

O TLS 1.3 combina ECDHE, HKDF, cifras AEAD e autenticação baseada em certificados em uma negociação de 1-RTT com sigilo de encaminhamento obrigatório. Em seguida: a camada de registros do TLS e os conjuntos de cifras em profundidade.

Perguntas Frequentes

A aula “Handshake do TLS 1.3 passo a passo” é grátis?

Sim — o texto completo de “Handshake do TLS 1.3 passo a passo” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cryptology Academy, atualize para CoddyKit PRO. O curso de Cryptology Academy inclui 4 aulas no total.

O que vou aprender em “Handshake do TLS 1.3 passo a passo”?

Acompanhe ClientHello, ServerHello, a derivação de chaves e Finished. Você pratica Cryptology Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Cryptology Academy?

Nenhuma experiência prévia é necessária. Cryptology Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Handshake do TLS 1.3 passo a passo”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Cryptology Academy?

Sim. Cada aula de Cryptology Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Handshake do TLS 1.3 passo a passo
  2. Camada de registros do TLS e conjuntos de cifras
  3. Validação de certificados no TLS
  4. Ataques ao TLS: BEAST, POODLE e downgrade
← Voltar para Cryptology Academy