5

为什么 TLS 是 SIP 选择的链路加密?

从一篇论文来看,似乎 TLS 无法处理 UDP,而 SIP 不需要任何人单独使用 TCP!那么TLS如何保证互操作性!

如果改为使用 IPSec,会出现什么问题?

4

6 回答 6

5

从一篇论文看来,TLS 似乎无法处理 UDP,而 SIP 并不要求任何人单独使用 TCP!那么TLS如何保证互操作性!

曾经是真的。DTLS为基于数据报的协议(如 UDP)提供 TLS

于 2011-11-21T20:03:02.017 回答
4

从一篇论文看来,TLS 似乎无法处理 UDP,而 SIP 并不要求任何人单独使用 TCP!

TLS 在 TCP 级别上工作,因此 TLS 需要使用 SIP over TCP。

SIP 是在 HTTP 的影响下创建的。TLS 针对 HTTP(也针对 SIP)进行了优化。

IPSec 的一个主要缺点是增加了原始数据包的额外大小。与 IPSec 相比,TLS 需要的开销更少。

TLS和IPsec之间的一些比较

如果改为使用 IPSec,会出现什么问题?

根据 RFC 2119,RECOMMENDED 与 SHOULD 具有相同的强度。

“3. 应该这个词,或形容词“推荐”,意味着在特定情况下可能存在忽略特定项目的正当理由,但在选择不同的课程之前必须理解并仔细权衡全部含义。

讨论

于 2011-11-18T16:36:08.397 回答
1

您还有其他 UDP 方法,例如标头加密。

23.4.3 RFC 3261 中的隧道加密

于 2011-12-06T18:32:03.907 回答
1

您可以使用基于 IPSec 的 SIP。3GPP IMS SIP 甚至更喜欢这样。但是 IPsec 有一些严重的缺点。要配置 IPSec,您必须在您的机器上拥有管理员权限。

  • IPSec 有几十个用户必须配置的配置选项,除非 SIP 提供商同意一个配置文件。
  • 在通用操作系统上配置 IPsec 是 SIP 客户端供应商倾向于避免的巨大混乱。
  • 通过 NAT 路由器获取 IPSec 很棘手。

与此相比,TLS 的部署要简单得多。

于 2012-02-22T11:44:03.503 回答
0

在最好的情况下,基线 UDP 性能大约是 TLS(代理链模式)的 3 倍;在最坏的情况下,UDP 的性能是 TLS(具有 TLS 和相互身份验证的本地代理)的 17 倍。性能结果主要取决于是否执行 TLS 连接建立以及执行频率,因为 TLS 会话协商会产生昂贵的 RSA 公钥操作

http://www.cs.columbia.edu/~hgs/papers/Shen1008_TLS.pdf

于 2015-10-05T10:35:43.513 回答
0

目前,SIP 的 TLS 仅保护部分呼叫流程(邀请和注册)。用于 SIP over TCP 的 TLS 对注册有意义,因为 UAC 将传输凭据。其他 SIP 命令和媒体(音频/视频)仍将通过未加密的 UDP 发送。这是基于 SIP 的 TLS 最常见的用法,被大多数流行的基于 SIP 的 VoIP 电话(即 Skype、WhatsApp)所采用。

或者,可以通过 TCP 将 TLS 用于 SIP,并设置“内联”RTCP 流,其中所有 TLS、SIP 和媒体(音频/视频/DTMF)都通过相同的加密 TCP 流发送;但是,我不确定流行的基于 SIP 的 VoIP 电话(即 Skype、WhatsApp)是否可以支持这一点,尽管可以部署这种技术。相反,所有 RTSP 客户端(Windows Media、Apple QuickTime)都可以在单个流上支持内联 RTCP(指出这一点,因为 RTSP 和 SIP 几乎相同,减去了动词)。

于 2017-03-24T18:12:11.437 回答