Datagram Transport Layer Security

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Not to be confused with TDLS.

In information technology, the Datagram Transport Layer Security (DTLS) communications protocol provides communications security for datagram protocols. DTLS allows datagram-based applications to communicate in a way that is designed[1][2] to prevent eavesdropping, tampering, or message forgery. The DTLS protocol is based on the stream-oriented Transport Layer Security (TLS) protocol and is intended to provide similar security guarantees. The DTLS protocol datagram preserves the semantics of the underlying transport — the application does not suffer from the delays associated with stream protocols, but has to deal with packet reordering, loss of datagram and data larger than the size of a datagram network packet.


The following documents define DTLS:

DTLS 1.0 is based on TLS 1.1, and DTLS 1.2 is based on TLS 1.2.

TLS basis of DTLS
Version DTLS 1.0 DTLS 1.2
Based on TLS 1.1 TLS 1.2



Library support for DTLS
Implementation DTLS 1.0[1] DTLS 1.2[2]
Botan Yes Yes
cryptlib No No
GnuTLS Yes Yes
Java Secure Socket Extension No No
LibreSSL Yes No
libsystools[4] Yes No
MatrixSSL Yes Yes
mbed TLS (previously PolarSSL) Yes[5] Yes[5]
Network Security Services Yes[6] Yes[7]
OpenSSL Yes Yes[8]
PyDTLS[9][10] Yes No
SChannel XP/2003, Vista/2008 No No
SChannel 7/2008R2, 8/2012, 8.1/2012R2, 10 Yes[11] No[11]
Secure Transport OS X 10.2-10.7 / iOS 1-4 No No
Secure Transport OS X 10.8-10.10 / iOS 5-8 Yes[a] No
SharkSSL No No
tinydtls [12] No Yes
wolfSSL (previously CyaSSL) Yes Yes
Implementation DTLS 1.0 DTLS 1.2
  1. ^ DTLS 1.0 are available on iOS 5.0 and later, and OS X 10.8 and later.[13]



In February 2013 two researchers from Royal Holloway, University of London discovered an attack[19] which allowed them to recover plaintext from a DTLS connection using the OpenSSL implementation of DTLS when Cipher Block Chaining mode encryption was used.

See also[edit]


External links[edit]

This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.