flv格式视频文件的加密传输方法和系统的制作方法_3

文档序号:8365929阅读:来源:国知局

[0081]所述的服务端包括:
[0082]密钥存储模块311,用于设定对视频文件的关键帧数据进行加密所需的多个视频内容密钥,以及每个视频内容密钥对应的密钥标识和时间段,不同视频内容密钥对应的时间段互相不重叠;设定加密标识字符串,该加密标识字符串表示对视频文件的关键帧数据进行了加密。
[0083]密钥获取模块312,用于对flv格式视频文件进行解析,获取所述flv格式视频文件中的关键帧数据,获取预先设定的所述关键帧数据对应的密钥标识和视频内容密钥;
[0084]关键帧数据加密模块313,用于用所述视频内容密钥对所述关键帧数据进行加密得到关键帧数据密文,用所述关键帧数据密文替换所述flv格式视频文件中的关键帧数据,得到更新后的关键帧数据;所述服务器将所述密钥标识插入到所述更新后的关键帧数据的前端位置,得到更新后的flv格式视频文件;
[0085]视频文件发送模块314,用于将所述更新后的flv格式视频文件发送给客户端。
[0086]进一步地,所述的密钥获取模块312,具体用于获取所述flv格式视频文件中的一个或者多个关键帧数据,以及每个关键帧数据对应的时间戳;
[0087]将所述关键帧数据对应的时间戳和各个视频内容密钥对应的时间段进行比较,当判断所述关键帧数据对应的时间戳属于某个时间段时,则将所述某个时间段对应的密钥标识和视频内容密钥作为所述关键帧数据对应的密钥标识和视频内容密钥;
[0088]当所述关键帧数据的数量为多个时,按照上述处理过程,依次获取每个关键帧数据对应的密钥标识和视频内容密钥。
[0089]进一步地,所述的关键帧数据加密模块313,具体用于将所述关键帧数据分为分组加密长度的最大整数倍数据和剩余部分数据,所述剩余部分数据为超出分组加密长度的最大整数倍长度的数据;
[0090]用所述关键帧数据对应的视频内容密钥对所述分组加密长度的最大整数倍数据进行加密,得到关键帧数据密文,对所述剩余部分数据不进行加密;
[0091]用所述关键帧数据密文替换掉所述关键帧数据中的分组加密长度的最大整数倍数据,将所述关键帧数据密文和所述剩余部分数据组成更新后的关键帧数据。
[0092]具体用于将所述加密标识字符串和密钥标识插入到所述更新后的关键帧数据的前端位置,修改所述更新后的关键帧数据的开始位置标示和结束位置标示的数值,将所述开始位置标示的数值设置到所述更新后的关键帧数据的开始位置标识上,将所述结束位置标示的数值设置到所述更新后的关键帧数据的结束位置标识上;
[0093]当所述flv格式视频文件中的关键帧数据的数量为多个时,所述服务端按照上述处理过程,依次对每个关键帧数据进行更新,得到更新后的flv格式视频文件。
[0094]所述的客户端包括:
[0095]关键帧数据获取模块321,用于对所述服务端发送的flv格式视频文件进行解析,根据解析出来的各个关键帧数据的开始位置标示和结束位置标示的数值,获取所述flv格式视频文件中的一个或者多个关键帧数据;
[0096]解密密钥获取模块322,用于当所述关键帧数据的前端位置设置有加密标识字符串和密钥标识时,所述客户端查看本地是否缓存有所述密钥标识对应的视频内容密钥,如果是,则获取所述密钥标识对应的视频内容密钥;否则,与所述服务端建立安全通信信道,通过安全通信信道向服务端请求所述密钥标识对应的视频内容密钥,接收所述服务端通过所述安全通信信道下发的所述密钥标识对应的视频内容密钥;
[0097]关键帧数据解密模块323,用于用所述密钥标识对应的视频内容密钥对所述关键帧数据进行解密得到关键帧数据明文,用所述关键帧数据明文替换所述flv格式视频文件中对应的关键帧数据;当解析出来的所述关键帧数据的数量为多个时,按照上述处理过程,依次对每个关键帧数据进行解密得到每个关键帧数据明文,并用每个关键帧数据明文替换所述flv格式视频文件中对应的关键帧数据。
[0098]用本发明实施例的系统进行flv格式视频文件的加密和解密等传输的具体过程与前述方法实施例类似,此处不再赘述。
[0099]综上所述,本发明实施例通过对视频关键帧数据有选择地使用视频内容密钥进行加密,实现了视频内容的最小单元保护。针对同一 flv格式视频文件中的不同的视频关键帧,可以使用多个不同的视频内容密钥分别进行保护,在实现视频内容保护的同时,并且适应网络视频服务业务的多种需要(预览视频和部分关键视频情节的非受限访问,其余视频内容的受限访问),也提升了视频内容非法解密的难度,很好地保障了在网络中传输的flv格式视频文件的安全性,适应了 flv格式视频文件在网路存储传输的需要。
[0100]本发明实施例通过对视频关键帧数据添加加密标识字符串和密钥ID,适应了分段视频内容在网路存储传输的需要,使得客户端能够通过加密标识字符串来判断该关键帧是否进行加密,能播放非加密保护受限的视频文件和加密保护受限的视频文件。
[0101]本发明实施例中的服务器端和客户端的视频内容密钥经密钥协商获得的安全通信密钥加密后下发,也保护了视频内容密钥的安全性。
[0102]本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
[0103]通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0104]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0105]以上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
【主权项】
1.一种flv格式视频文件的加密传输方法,其特征在于,包括: 服务端对flv格式视频文件进行解析,获取所述flv格式视频文件中的关键帧数据;所述服务器获取预先设定的所述关键帧数据对应的密钥标识和视频内容密钥,用所述视频内容密钥对所述关键帧数据进行加密得到关键帧数据密文,用所述关键帧数据密文替换所述flv格式视频文件中的关键帧数据,得到更新后的关键帧数据; 所述服务器将所述密钥标识插入到所述更新后的关键帧数据的前端位置,得到更新后的flv格式视频文件,将所述更新后的flv格式视频文件发送给客户端。
2.根据权利要求1所述的flv格式视频文件的加密传输方法,其特征在于,所述的服务端对flv格式视频文件进行解析之前还包括: 所述服务端设定对视频文件的关键帧数据进行加密所需的多个视频内容密钥,以及每个视频内容密钥对应的密钥标识和时间段,不同视频内容密钥对应的时间段互相不重叠;所述服务端设定加密标识字符串,该加密标识字符串表示对视频文件的关键帧数据进行了加密。
3.根据权利要求2所述的flv格式视频文件的加密传输方法,其特征在于,所述的服务器获取预先设定的所述关键帧数据对应的密钥标识和视频内容密钥,包括: 所述服务端获取所述flv格式视频文件中的一个或者多个关键帧数据,以及每个关键帧数据对应的时间戳; 所述服务端将所述关键帧数据对应的时间戳和各个视频内容密钥对应的时间段进行比较,当判断所述关键帧数据对应的时间戳属于某个时间段时,则将所述某个时间段对应的密钥标识和视频内容密钥作为所述关键帧数据对应
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1