DTLS (Datagram Transport Layer Security), TLS'in güvenlik garantilerini UDP gibi bağlantısız, güvenilmez taşıma katmanlarına getiren protokoldür. TLS'in büyük kısmını yeniden kullanır ancak paket kaybı, sıra bozulması ve tekrarlanma gibi datagram gerçeklerine uyarlanmıştır.
TLS'ten farkları
- Açık sıra numarası ve epoch: Her kayıt kendi sıra numarasını taşır; kayıtlar bağımsız çözülebilir.
- Yeniden iletim: El sıkışma mesajları kaybolursa zamanlayıcıyla yeniden gönderilir; büyük mesajlar parçalanır.
- Cookie mekanizması: Sunucu, sahte kaynak adresli hizmet reddi saldırılarını azaltmak için ClientHello sonrası cookie ister (DTLS 1.2'de HelloVerifyRequest).
- Yeniden oynatma penceresi: Tekrarlanan paketler bir kayan pencereyle elenir.
- Veri tarafında, kaybolan paketler uygulamaya bildirilmeden düşer; güvenilirlik uygulamaya bırakılır.
Sürümler
DTLS 1.2 (RFC 6347), TLS 1.2'ye; DTLS 1.3 (RFC 9147) ise TLS 1.3'e karşılık gelir.
Kullanım alanları
- WebRTC medya ve veri kanalları (DTLS-SRTP)
- UDP tabanlı bazı VPN çözümleri
- CoAP gibi IoT protokollerinin güvenliği
- Oyun ve gerçek zamanlı iletişim uygulamaları
Test etme
openssl s_client -dtls1_2 -connect 203.0.113.10:5684
openssl s_server -dtls1_2 -accept 4433 -cert sertifika.pem -key anahtar.pem
Dikkat edilecekler
- Güvenlik duvarında ilgili UDP portunu açmayı unutmayın.
- MTU sınırı nedeniyle sertifika zincirini kısa tutmak el sıkışmayı hızlandırır.
- DTLS, TCP kullanan HTTPS'in yerine geçmez; web sitelerinde bunun yerine TLS ya da QUIC kullanılır.
Web sitenizin TLS tarafını doğrulamak için SSL denetleme aracını kullanabilir, protokol konularında bilgi bankamıza bakabilirsiniz.