5G新通话的安全卫士——DTLS协议

news/2025/1/10 0:34:49/文章来源:https://www.cnblogs.com/o-O-oO/p/18662889

5G 新通话作为运营商的一种全新通话概念的探索,虽名为通话,实则远不止于此,更是一种实时的沉浸式互动体验。针对 5G 新通话,3GPP 在 R16 阶段完成了 5G 网络 IMS Data Channel 实时交互通道的相关技术标准,并于 2020 年 3 月将其写入并发布了 TS26.114 V16.5.0 版本,实现了 5G VoNR 业务能力的增强。IMS Data Channel(简称 DC 通道)以 VoLTE/VoNR 高清音视频通话为基础,与 WebRTC 技术相结合,进一步拓展提供了数据通道,使得语音和视频通话能够与扩展的数据通道同步,进而在高清视频通话中达成屏幕共享、叠加 AR ,甚至是实现听觉、视觉、触觉、动觉等同步的全沉浸式体验。IMS Data Channel 基于 UDP 提供具有高实时性的单流或多流数据交互通道,能够灵活支持多种数据通道,充分兼顾各种应用对于底层通道的多样化需求。

5G 新通话能够丰富人们的日常交流方式,让生活变得更加多姿多彩,然而随之而来的数据安全问题也愈发重要。目前,5G 新通话中 DC 通道的数据是借助 UDP 进行封装和传输的,为保障数据的安全性,引入了 DTLS 协议为数据传输保驾护航。

DTLS(Datagram Transport Layer Security)即数据包传输层安全性协议。当前众多数据包传输的应用程序(如实时视频会议、internet电话和在线游戏等)都是时延敏感的,大都采用了不可靠的UDP数据报文传输方式。大家都知道,基于 TCP 的应用能够运用已有的 TLS 协议来确保安全,然而 TLS 无法保障在 UDP 上传输的数据的安全性。正因如此,Datagram TLS 应时而生,它在现存的 TLS 协议架构基础上进行了扩展,使其能够支持 UDP 协议,成为了 TLS 的一个支持 UDP 数据包传输的版本,其中 DTLS 1.0 是基于 TLS 1.1 版本,DTLS 1.2 则是基于 TLS 1.2 版本。

DTLS 协议与 TLS 协议有所不同,DTLS 协议在传输层对数据进行加密和认证,而 TLS 协议是在传输层之上对数据进行加密和认证。所以,DTLS 协议不但能够提供与 TLS 协议相同的安全保护,同时还能够保留 UDP 协议的优点,更适合应用于对时延敏感的程序。

DTLS协议与TLS协议类似,通常包含以下三个阶段:

  1. 握手阶段:客户端和服务器之间进行握手,协商加密算法和密钥等。
    
  2. 数据传输阶段:客户端和服务器之间进行数据传输,DTLS协议对数据进行加密和认证。
    
  3. 断开连接阶段:客户端和服务器之间断开连接,并清除相关的状态信息。
    

DC通道协商完成之后(通过SIP交互进行DC通道的协商),需要先进行DTLS建链,之后在此基础上进行数据传输,DTLS建链位置参见下面示例:

1、终端发起协商bootsrap DC流程时的DTLS建链位置

2、终端-终端之间的application DC建立流程时的DTLS建链位置


与TCP三次握手类似,DTLS也是通过握手的方式建立链接,握手交互流程示例见下(遵循RFC 6347定义的DTLS 1.2协议):

流程描述:

  1. 客户端发送ClientHello报文,发起握手和密钥协商,报文主要包含:随机数(后续用于生成共享密钥)、密码算法族、压缩算法族。
    
  2. 按照RFC 6347交换Cookie:服务端生成Cookie,打包在HelloVerifyRequest报文中发送给客户端。
    
  3. 客户端收到Cookie后,将Cookie打包在ClientHello报文中并再次发送给服务端。
    
  4. 服务端校验Cookie,确认有效后向客户端发送ServerHello报文,报文主要包含:随机数、选择的加密方式、选择的压缩方式。
    
  5. 服务端用Certificate报文向客户端发送服务端证书(证书可以采用自签名证书,证书格式基于X.509标准,需要遵循RFC 5280,客户端根据SDP中的fingerprint信息来校验服务器证书)。
    
  6. 服务端用ServerKeyExchange报文向客户端发送服务端的密钥协商信息。
    
  7. 服务端用CertificateRequest报文向客户端请求客户端证书。
    
  8. 服务端向客户端发送ServerHelloDone报文,指示服务端的Hello和相关报文交互结束。
    
  9. 客户端用Certificate报文向服务端发送客户端证书(证书可以采用自签名证书,证书格式基于X.509标准,需要遵循RFC 5280,服务端采用SDP中fingerprint信息来校验客户端证书)。
    
  10. 客户端采用信令消息SDP中的fingerprint信息来校验服务端证书,校验通过后用ServerKeyExchange报文向服务端发送主密钥。
    
  11. 当服务端发送的ServerKeyExchang报文验证无误时,客户端向服务端发送CertificateVerify报文响应。
    
  12. 客户端向服务端发送ChangeCipherSpec报文,表明后续将要使用当前加密参数。
    
  13. 客户端向服务端发送加密的Finished报文,用于验证双方协商的对称加密算法、客户端密钥。
    
  14. 服务端向客户端发送ChangeCipherSpec报文,表明将要使用当前加密参数。
    
  15. 服务端向客户端发送加密的Finished报文,用于验证双方协商的对称加密算法、客户端密钥,至此握手完成。
    

以上便是DTLS协议及主要流程介绍,其中握手流程中同一方向的数据可以放在一起发送,如步骤4~8中的握手数据可以一起发送给客户端,握手完成之后就进入应用数据传输阶段,在客户端和服务器之间进行数据传输时,DTLS协议一致维护链接并会对数据进行加密和认证,直至会话结束再断开链接。

原创 中兴文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/866855.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS设计模式

OOCSSOO(“Object Oriented”):面向对象。OOCSS:Object Oriented css(面向对象css)的缩写,是一种用最简单的方式编写的CSS代码,从而使代码 重用性,可维护性和可扩展性更好的书写方法。OOCSS 解决的问题 很多开发者在编写 CSS 时,经常会遇到以下问题:样式重复: 同样的…

【待发】5G新通话的安全卫士——DTLS协议

5G 新通话作为运营商的一种全新通话概念的探索,虽名为通话,实则远不止于此,更是一种实时的沉浸式互动体验。针对 5G 新通话,3GPP 在 R16 阶段完成了 5G 网络 IMS Data Channel 实时交互通道的相关技术标准,并于 2020 年 3 月将其写入并发布了 TS26.114 V16.5.0 版本,实现…

pwn ciscn_2019_n_1 1

可以看到用gets让用户输入v1,还比较了v2的值,但此之前已经设置了v2的值为0.0 法一 可以用传统的方法栈溢出,覆盖返回地址为system的地址法二 v2也存在栈上,也可以通过gets栈溢出修改v2原本的数据 movss xmm0, [rbp+var_4] #将v2的值放到xmm0里面 ucomiss xmm0, cs:dword…

语境学习(in-context-learning)

(高级机器学习的作业,反正写了干脆搬过来)4.1 引言 请考虑这样一句话“该公司预计其营业利润会有所改善。” 可以发现,这句话的情感是积极向上的。我们期待如果把这句话输入给大语言模型,它能够返回“积极(Positive)”这样的词汇。 然而,如果我们直接把这句话输入给大模…

hello-algo

复杂度分析 迭代与递归函数返回前上下文存储在栈帧空间,故递归比迭代耗费更多内存空间 递归调用函数有额外开销,故递归时间效率也更低迭代while循环更灵活,for循环更简洁尾递归和正常递归尾递归会被编译器优化,空间效率相当于迭代!!!原因是尾递归无需保存上下文,正常递…

DataWorks数据分层

在阿里巴巴的数据体系中,我们建议将数据仓库分为三层,自下而上为:数据引入层(ODS,Operation Data Store)、数据公共层(CDM,Common Data Model)和数据应用层(ADS,Application Data Service)。数据仓库的分层和各层级用途如下图所示。数据引入层ODS(Operation Data …

实用且功能丰富的IT工具箱-IT-tools

介绍 IT-Tools是为开发人员度身打造的一套便捷在线工具。 它提供全面功能,使开发者能以更高效方式完成任务。 优秀的用户体验确保用户愉悦使用工具,并获得卓越成果。 经由IT-Tools,开发人员能轻松应对各类技术挑战,享受工作中的便利与灵活。 官网正式稳定版在线版正式稳定版…

《CPython Internals》阅读笔记:p61-p75

《CPython Internals》学习第 4 天,p61-p75 总结,总计 15 页。 一、技术总结 1.编译器类型 (1)self-hosted compiler Self-hosted compilers are compilers written in the language they compile, such as the Go compiler. This is done by a process known as bootstrap…

ETHERCAT转CCLINK网关对接ethercat通讯协议的高效解析指南

在某汽车零部件制造工厂的自动化生产线升级项目中,部分关键设备采用了支持 ETHERCAT 总线的 PLC 进行控制,而工厂原有的一些设备则遵循 CCLINK 协议标准。由于这两种协议之间无法直接通信,导致生产线的数据交互受阻,难以实现整体的协同运作与高效管理,迫切需要一种可靠的解…

妙用编辑器:列编辑在编写Markdown表格时的使用技巧

1 妙用编辑器:列编辑在编写Markdown表格时的使用技巧经常写Markdown笔记的朋友应该清楚,Markdown的表格比较麻烦,定义表格每列时需要使用|线进行绘制表格边界。比如有下面一段文字名称, 大小, 类型, 修改, 属性 …

Python用K-Means均值聚类、LRFMC模型对航空公司客户数据价值可视化分析指标应用

全文链接:https://tecdat.cn/?p=38708 原文出处:拓端数据部落公众号 分析师:Yuling Fang 信息时代的来临使得企业营销焦点从产品中心转向客户中心,客户关系管理成为企业的核心问题。客户关系管理的关键是客户分群,通过客户分群,区分无价值客户和高价值客户,同时更好的了…

【专题】2024年直播、短视频:抖音、小红书、快手行业报告汇总PDF合集分享(附原数据表)

原文链接: https://tecdat.cn/?p=38697 在当今数字化飞速发展的时代,直播、短视频行业已然成为了大众生活与商业运作中不容忽视的重要力量,正不断重塑着信息传播与消费的格局。 2024 年,这一领域更是呈现出多元且复杂的发展态势。从内容创作者生态来看,抖音、小红书、快手…