Aller au contenu principal

Annexe A. Aperçu de DTLS

Annexe A. Aperçu de DTLS

Cette section fournit un bref aperçu de Datagram TLS (DTLS) pour ceux qui ne le connaissent pas. DTLS est un protocole de sécurité de canal basé sur le protocole bien connu Transport Layer Security (TLS) [RFC5246]. Alors que TLS dépend d'un canal de transport fiable (généralement TCP), DTLS a été adapté pour prendre en charge les transports non fiables tels qu'UDP. Sinon, DTLS est presque identique à TLS et prend généralement en charge les mêmes mécanismes cryptographiques.

Chaque association DTLS commence par un échange de poignée de main au cours duquel les pairs s'authentifient mutuellement et négocient les algorithmes, les modes et d'autres paramètres et établissent un matériel de clés partagé. Afin de prendre en charge le transport non fiable, chaque côté maintient des temporisateurs de retransmission pour fournir une livraison fiable de ces messages. Une fois la poignée de main terminée, les données chiffrées peuvent être envoyées.

Client                                               Serveur

ClientHello -------->
ServerHello
Certificate*
ServerKeyExchange*
CertificateRequest*
<-------- ServerHelloDone
Certificate*
ClientKeyExchange
CertificateVerify*
[ChangeCipherSpec]
Finished -------->
[ChangeCipherSpec]
<-------- Finished
Application Data <-------> Application Data

'*' indique les messages qui ne sont pas toujours envoyés.

Les données d'application sont protégées en étant envoyées sous forme d'une série d'"enregistrements" DTLS. Ces enregistrements sont indépendants et peuvent être traités correctement même en cas de perte ou de réorganisation. Dans DTLS-SRTP, ce protocole d'enregistrement est remplacé par SRTP [RFC3711].