技术摘要:
本发明公开了一种安全的跨平台视频流播放方法,步骤为:1、客户端和DASH服务器建立HTTPS连接,客户端发起MPD索引文件请求;2、DASH服务器将原始视频流打包成DASH视频分片和MPD索引文件,完成视频分片和MPD文件的URL标签属性的加密;3、服务器接收客户端发起MPD索引文件 全部
背景技术:
随着流媒体技术及HTML5技术的发展,HTTP自适应传输协议逐步替代了传统的实 时流式传输协议(RTP和RTSP),而其中得到广泛使用的自适应传输协议主要有Adobe公司的 HDS、微软公司的MSS和苹果公司的HLS协议,但它们都有其特有的数据分段格式,基于此, MPEG联合其他3GPP等组织发布了DASH(Dynamic Adaptive Streaming over HTTP)协议国 际标准。 借助于浏览器的跨平台性,依靠HTML5标准提供的MSE(Media Source Extension) 扩展技术,DASH协议可以很方便的完成跨平台自适应流媒体的播放,其最重要的两部分为 MPD(Media Presentation Description)索引文件和视频分片,其中MPD文件为XML格式,描 述了当前切片的帧率、分辨率、URL等详细信息。客户端通过向服务器实时请求MPD文件并完 成解析,根据当前网络状况选择MPD文件中合适的URL标签,然后使用该URL向服务端发起视 频分片请求,完成视频流的播放。目前越来越多公司在视频流播放技术选型上选择DASH技 术,例如YouTube、Google、Facebook、爱奇艺等。 但是,在常见的基于DASH传输视频流的系统中,鉴于HTTP协议的开放性,整个视频 分片请求和传输过程都是明文进行的;一些移动设备为了提升用户体验,也会在本地缓存 一些视频分片供离线阅览,但这些都未经过加密处理,只需简单的文件合并即可查看完整 视频,因此,文件传输存在很大的安全隐患。 本申请提出一种安全的跨平台视频流播放方法,对于防止MPD文件被窃取导致的 视频分片泄露,视频版权遭到破坏具有重要的实际应用价值。
技术实现要素:
本发明的目的在于提供一种安全的跨平台视频流播放方法,在DASH协议的基础上 完成视频的跨平台播放,通过对视频分片及MPD文件内容进行加密传输及存储,能有效提高 视频数据传输过程的安全性。 本发明所采用的技术方案是,一种安全的跨平台视频流播放方法,具体包括以下 步骤: 步骤1、客户端和服务端之间建立HTTPS连接请求,客户端发起MPD索引文件请求; 步骤2、服务端DASH服务器将原始视频流打包处理成若干DASH视频分片和MPD索引 文件,同时分别对每个DASH视频分片和MPD索引文件的URL标签进行加密处理,获得加密MPD 索引文件和每个DASH视频分片解密密钥值并存储,计算服务端CRC值; 步骤3、DASH服务器接受客户端发起的MPD索引文件请求,将加密MPD索引文件、每 个DASH视频分片解密密钥值和服务端CRC校验值按照固定格式通过RPC接口传递至客户端; 3 CN 111556340 A 说 明 书 2/4 页 步骤4、客户端接收到DASH服务器传递的加密MPD索引文件、每个DASH视频分片解 密密钥值和服务端CRC校验值,并计算客户端CRC校验值; 步骤5、客户端对服务端CRC校验值和客户端CRC校验值进行比较: 若服务端CRC校验值与客户端CRC校验值相同,客户端进行进一步解析,完成MPD索 引文件的URL标签的解密,同时解析并存储每个DASH视频分片解密密钥值; 若服务端CRC校验值和客户端CRC校验值不同,客户端丢弃步骤3中DASH服务器传 递的加密MPD索引文件、每个DASH视频分片解密密钥值和服务端CRC校验值,选择新的原始 视频流重复步骤1-步骤4直至服务端CRC校验值和客户端CRC校验值相同,客户端进行进一 步解析,完成MPD索引文件的URL标签的解密,同时解析并存储每个DASH视频分片解密密钥 值; 步骤6、客户端根据当前网络状况动态选择合适的MPD索引文件的URL标签,向DASH 服务器发起视频请求,待DASH服务器接受视频请求,客户端按照步骤5中存储的每个DASH视 频分片解密密钥值解密每个DASH视频分片,完成原始视频流的播放。 本发明的特点还在于, 步骤1的具体过程如下: 步骤1.1、启动服务端DASH服务器,使其处于监听状态,等待客户端连接请求; 步骤1.2、客户端登陆,并携带登陆成功后返回的token信息和时间戳向DASH服务 器程序发起MPD索引文件请求。 步骤2中原始视频流打包处理的过程具体为:DASH服务器启动视频处理线程,将原 始视频流打包处理成MPEG-DASH格式,生成若干DASH视频分片和MPD索引文件并存储在服务 器端。 步骤2中DASH视频分片采用AES-128加密方式加密存储,MPD索引文件的URL标签采 用异或加密算法进行加密存储; 步骤2中每个DASH视频分片解密密钥值按照客户端登陆成功后返回的token信息 和时间戳以及设备信息动态生成,保证每一个视频分片解密算法都不同,保障整体视频文 件的安全性。 步骤2中CRC校验值为写入MPD索引文件和DASH视频分片解密秘钥值两部分内容计 算所得。 步骤3中文件传递的固定格式为:2字节MPD文件内容长度 MPD文件内容 2字节服 务端CRC校验值长度 服务端CRC校验值 4字节DASH视频分片解密密钥值长度 DASH视频分 片解密密钥值。 在本发明的方法中,依赖于DASH协议的自适应性,每个分片可能会存在多个相对 应的URL,客户端根据当前网络状况动态选择合适的URL,向服务器发起视频分片请求,对返 回的视频分片进行按照进行解密,完成视频流播放。 本发明的有益效果是:本发明一种安全的跨平台视频流播放方法,结合DASH协议 本身的特点,在视频流跨平台传输播放的基础上,完成对视频分片文件的加密传输,由于每 一分片解密所需的秘钥值都不相同,进一步加大了视频破解的难度,提高了DASH系统中传 输的视频流数据的安全性,对视频文件版权保护起到了很好的促进作用。 4 CN 111556340 A 说 明 书 3/4 页 附图说明 图1本发明一种安全的跨平台视频流播放方法的流程图。