发布于 2013-05-21 06:48:10
DTLS主要是在数据报(UDP、DCCP等)上构造TLS。
除了DTLS必须解决两个问题:丢包和重新排序之外,DTLS与TLS类似。DTLS实现
详情请参见RFC 6347。
发布于 2019-05-09 02:39:25
这样做的想法是,DTLS对TLS的作用与UDP对TCP的作用一样,越多越好。
有关规范的详细信息,以及相关讨论的链接,请参阅https://datatracker.ietf.org/doc/draft-ietf-tls-dtls13/,它可能会使RFC 6347过时。
DTLS和传输层安全(TLS)协议之间有一些关键区别,应用程序程序员需要意识到其他答案的遗漏/暗示是不存在的!
DTLS协议为数据报协议提供通信隐私。与本文所写的(档案)中现存的顶级答案相反,DTLS是而不是--在UDP (或一般的数据报协议)上实现(或“构造”) TLS,和,重播检测是TLS的一个必需特性,但在DTLS中是可选的。DTLS包括一个非常类似TLS的握手的实现,修改后可以在数据报协议上工作。该实现确实处理了分组重新排序和丢失的问题,但只处理用于DTLS握手(和密码选择)的数据包。换句话说,这些数据包传递的“航班”是可靠的。但是,包含有效负载(应用程序数据)的DTLS数据包可能不会比封装它们的DTLS数据包(通常是UDP)更可靠地传递它们的有效负载。
此外,虽然DTLS协议(v1.2)源自TLS协议(v1.2),并声称“提供同等的安全保证”,但它没有。2早在2013年就发现了DTLS实现和DTLS协议本身的主要安全缺陷,这些缺陷已经得到纠正,至少在GnuTLS和OpenSSL实现中是如此。此外,DTLS并不保证不可重放性。
最后,OP询问在使用TLS与DTLS时应用程序流有何不同。TLS的目的是提供一个可靠的数据流,并通过认证加密,端到端.DTLS用于传递经过身份验证和加密的端到端应用程序数据,但与所有应用程序数据交付保证时相比,延迟时间更低。这就是为什么DTLS被用于保护流应用程序,在这些应用程序中,损失比延迟更少,例如VoIP、实时视频提要和MMO游戏。
PS: DTLS 1.3已经完成/可能在您阅读这篇文章时已经作为RFC发布了。3.
PPS:哦,如果这是值得一读的,不要错过RFC 7457,“总结对传输层安全( TLS )和数据报TLS(DTLS)的已知攻击”。我很惊讶DTLS1.3(无论如何,最终草案)没有提到它(比如它的安全性考虑部分) (https://github.com/tlswg/dtls13-spec/issues/254),TLS1.3规范也没有!
发布于 2013-03-11 04:51:41
DTLS是UDP (数据报协议)上TLS的一种实现。根据wikipedia,TLS使用TCP,DTLS使用UDP,所以所有的经典差异都适用。UDP通信以数据包流的形式存在,没有排序、传递可靠性或流控制。使用数据报协议的应用程序需要确保它们能够在内部处理这些问题。
UDP
https://stackoverflow.com/questions/15331294
复制相似问题