一种在视联网中视频的安全传输方法、装置、设备及介质与流程

文档序号:23727394发布日期:2021-01-26 17:40阅读:88来源:国知局
一种在视联网中视频的安全传输方法、装置、设备及介质与流程

[0001]
本申请涉及计算机技术领域,特别是涉及一种在视联网中视频的安全传输方法装置、设备及介质。


背景技术:

[0002]
随着视频技术的发展和进步,视频文件已经在各个领域进行使用和应用,视频文件的安全性也越来越受到重视。
[0003]
现有技术中,为了提高视频在传输过程中的安全性,发送方与接收端在进行视频文件传输的过程中,发送方可以先对视频文件进行加密,然后向接收端发送加密后的视频文件以及加密密钥,接收端对接收到的加密后的视频文件进行解密,得到视频文件。
[0004]
然而,发明人发现,上述加密密钥采用单独发包的方式进行传输,由于加密密钥数据包与加密后的视频文件的格式不同,在视频传输过程中,很容易被非法人员发现并窃取,从而造成视频文件的泄漏。


技术实现要素:

[0005]
本申请提供了一种在视联网中视频的安全传输方法装置、设备及介质,以解决目前容易造成视频文件泄漏的问题。
[0006]
为了解决上述问题,本申请公开了一种在视联网中视频的安全传输方法,包括:获取安全参数集和安全参数集长度,其中,所述安全参数集至少包括:加密策略和/或加密算法类型,所述加密策略和加密算法类型用于视频数据的加密传输;对所述安全参数集和所述安全参数集长度按照设定规则进行处理,得到加密后的安全信息;对视频数据中的关键帧按照所述加密策略和所述加密算法类型进行加密,得到加密关键帧数据;将所述加密后的安全信息和所述加密关键帧数据封装成关键帧数据包;将所述关键帧数据包发送至接收端。
[0007]
可选地,所述对所述安全参数集和所述安全参数集长度按照设定规则进行处理,得到加密后的安全信息的步骤包括:将所述安全参数集长度作为所述安全参数集中的一部分,并进行加密,得到加密后的安全信息。
[0008]
可选地,所述对所述安全参数集和所述安全参数集长度按照设定规则进行处理,得到加密后的安全信息的步骤包括:对所述安全参数集进行加密,得到加密后的安全参数集;对所述安全参数集长度和所述加密后的安全参数集按顺序拼接,得到所述加密后的安全信息;或者对所述安全参数集和所述安全参数集长度分别进行加密;
对加密后的安全参数长度和加密后的安全参数集按顺序拼接,得到所述加密后的安全信息。
[0009]
可选地,所述将所述加密的安全信息和所述加密关键帧数据封装成所述关键帧数据包的步骤包括:将所述加密后的安全信息和加密关键帧数据顺序拼接,并作为所述关键帧数据包的数据载荷,封装至所述关键帧数据包中。
[0010]
可选地,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:密码分组链接模式;当所述加密算法类型为密码分组链接模式时,所述对视频数据中的关键帧按照所述加密策略和所述加密算法类型进行加密,得到加密关键帧数据的步骤包括:在所述视频数据中确定需要加密的至少一帧关键帧;对所述至少一帧关键帧中的每一帧关键帧,生成所述关键帧对应的初始化向量;对所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧;对所述两个以上的子关键帧的第一子关键帧与所述初始化向量进行异或运算,得到第一输出结果对第一输出结果进行加密得到第一加密帧;将所述第一加密帧与所述两个以上的子关键帧的第二子关键帧进行异或运算,得到第二输出结果;对所述第二输出结果进行加密得到第二加密帧;根据所述第一加密帧和第二加密帧生成加密关键帧数据。
[0011]
可选地,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:输出反馈模式;当所述加密算法类型为输出反馈模式时,所述对视频数据中的关键帧按照所述加密策略和所述加密算法类型进行加密,得到加密关键帧数据的步骤包括:在所述视频数据中确定需要加密的至少一帧关键帧;对所述至少一帧关键帧中的每一帧关键帧,生成所述关键帧对应的初始化向量;对所述初始化向量进行加密生成第一加密初始化向量;对所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧;对所述两个以上的子关键帧的第一子关键帧与所述第一加密初始化向量进行异或运算,得到第三加密帧;对所述第一加密初始化向量进行加密,生成第二加密初始化向量;将所述第二加密初始化向量与所述两个以上的子关键帧的第二子关键帧进行异或运算,得到第四加密帧;根据所述第三加密帧和所述第四加密帧生成加密关键帧数据。
[0012]
可选地,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:电码本模式;当所述加密算法类型为电码本模式时,所述对视频数据中的关键帧按照所述加密策略和所述加密算法类型进行加密,得到加密关键帧数据的步骤包括:在所述视频数据中确定需要加密的至少一帧关键帧;
对于所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧;对两个以上的子关键帧中的每一个子关键帧进行加密,得到加密关键帧数据。
[0013]
为了解决上述问题,本申请还公开了一种视频数据解密的方法,包括:接收端接收视频数据包,其中,视频数据包包括:关键帧数据包、非关键帧数据;当确定所述视频数据包中携带有加密的安全参数集时,对所述关键帧数据包进行解密,得到加密的安全信息和加密关键帧数据;对所述加密的安全信息进行解密,得到安全参数集,所述安全参数集至少包括:加密密钥、加密策略、加密算法类型中的任一种或多种参数;使用所述加密密钥、加密策略和加密算法类型对所述加密关键帧数据进行解密,获取视频数据中的关键帧;根据所述关键帧还原出原始视频。
[0014]
可选地,对所述加密的安全信息进行解密,得到安全参数集的步骤包括:对所述关键帧数据包的数据载荷中的前预设个数的字节进行解密,解密后获得所述加密的安全信息的长度;按照所述长度从所述数据载荷中提取加密的安全信息;对所述加密的安全信息进行解密,获得安全参数集。
[0015]
为了解决上述问题,本申请还公开了一种在视联网中视频的安全传输装置,包括:获取模块,用于获取安全参数集和安全参数集长度,其中,所述安全参数集至少包括:加密策略和/或加密算法类型,所述加密策略和加密算法类型用于视频数据的加密传输;安全信息模块,用于对所述安全参数集和所述安全参数长度按照设定规则进行处理,得到加密后的安全信息;关键帧模块,用于对视频数据中的关键帧按照所述加密策略和所述加密算法类型进行加密,得到加密关键帧数据;拼接模块,用于将所述加密后的安全信息和所述加密关键帧数据封装成关键帧数据包;发送模块,用于将所述关键帧数据包发送至接收端。
[0016]
为了解决上述问题,本申请还公开了一种视频数据解密的装置,包括:接收模块,用于收到视频数据包,其中,视频数据包包括:关键帧数据包、非关键帧数据;解压模块,用于当确定所述视频数据包中携带有加密的安全参数集时,则对所述关键帧视数据包进行解密,得到加密的安全信息和加密关键帧数据;第一解密模块,用于对所述加密的安全信息进行解密,得到安全参数集,所述安全参数集包括:加密密钥、加密策略、加密算法类型中的任一种或多种参数;第二解密模块,用于所述加密密钥、加密策略和加密算法类型对所述加密关键帧数据进行解密,获取视频数据中的关键帧;还原模块,用于根据所述关键帧还原出原始视频。
[0017]
为了解决上述问题,本申请还公开了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使
得所述装置执行上述在视联网中视频的安全传输方法或上述视频数据解密方法。
[0018]
为了解决上述问题,本申请还公开了一种计算机可读存储介质,其存储的计算机程序使得处理器执行上述在视联网中视频的安全传输方法或上述视频数据解密方法。
[0019]
与现有技术相比,本申请包括以下优点:本申请获取安全参数集和安全参数集长度,并对所述安全参数集和所述安全参数长度按照设定规则进行处理,得到加密后的安全信息,提高了安全参数集的安全性,同时还将加密后的安全信息隐藏在加密关键帧数据中进行发送,这样更不容易被非法人员发现,从而避免了视频文件的泄漏。
[0020]
当然,实施本申请的任一产品不一定需要同时达到以上所述的所有优点。
附图说明
[0021]
图1是本申请实施例一所述一种在视联网中视频的安全传输方法的流程图;图2是本申请实施例二所述一种视频数据解密的方法的流程图;图3是本申请实施例三所述一种在视联网中视频的安全传输装置的结构示意图;图4是本申请实施例四所述一种视频数据解密装置的结构示意图。
具体实施方式
[0022]
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
[0023]
实施例一参照图1,其示出了本申请实施例一所述一种在视联网中视频的安全传输方法的流程图,具体包括:该视频的安全传输方法可以应用于客户端-客户端之间的通信,也可以应用于服务器-服务器之间的通信,还可以应用于客户端-服务器之间的通信。
[0024]
步骤101:获取安全参数集和安全参数集长度。
[0025]
在具体实现中,可以从客户端获取安全参数集和安全参数集长度,也可以从服务器获取安全参数集和安全参数集长度。
[0026]
其中,安全参数集至少包括:加密策略、和/或加密算法类型、和/或加密密钥,所述加密策略和加密算法类型用于视频数据的加密传输。
[0027]
加密策略包括:对关键帧部分加密和对关键帧全部加密。
[0028]
在具体实施时,可以基于应用场景的不同,可以从关键帧选择出一部分关键帧进行部分加密,也可以对关键帧全部加密,对此本申请不做具体限制。
[0029]
加密算法类型包括:电码本模式ecb、密码分组链接模式cbc和输出反馈模式ofb。
[0030]
该安全参数集还可以包括:加密标志、版本号、视频加密密钥的长度、视频密钥加密密钥、视频密钥加密密钥版本号、新视频密钥加密密钥版本长度、新视频密钥加密密钥版本、认证标志、认证策略中的一个或多个。
[0031]
当解析安全参数集中的加密标志时,通过加密标志确定视频数据是否加密,加密一般用1表示,不加密一般用0表示。
[0032]
如果视频数据是加密数据,则需要配置加密策略及加密算法类型。
[0033]
认证标志,不认证一般用0表示,认证一般用1表示,认证策略可以为哈希运算消息认证码hmac-sm3、分组加密的消息认证码cmac-sm1以及分组加密的消息认证码cmac-sm4。
[0034]
步骤102:对所述安全参数集和所述安全参数长度按照设定规则进行处理,得到加密后的安全信息。
[0035]
作为其中一种实现方式,步骤102具体包括:将所述安全参数集长度作为所述安全参数集中的一部分,并进行加密,得到加密后的安全信息,也就是说,安全参数集中包括安全参数集长度,然后进行加密,得到加密后的安全信息,实际上是对整个安全参数集进行加密,将安全参数集长度作为安全参数集中的一部分,并进行加密,这样加密后的安全信息是变长的,这样提高了安全参数集的安全性。
[0036]
在实际应用中,可以从起始位置放置安全参数集长度,然后在安全参数集长度的后面放置安全参数集,然后进行加密,得到加密后的安全信息。
[0037]
在实际应用中,可以采用chacha算法、非对称加密算法、对称加密算法对所述安全参数集长度作为所述安全参数集中的一部分进行加密,优选的,使用chacha算法对安全参数集进行加密,得到加密后的安全信息,通过对将所述安全参数集长度作为所述安全参数集中的一部分,并进行加密,提高了安全参数集的安全性。
[0038]
作为其中另一种实现方式,步骤102具体包括:对所述安全参数集进行加密,得到加密后的安全参数集。
[0039]
对所述安全参数集长度和所述加密后的安全参数集按顺序拼接,得到加密后的安全信息,即在实际应用中还可以将安全参数集长度和安全参数集分开,并仅对安全参数集进行加密,安全参数集长度不加密,然后将安全参数集长度放置在加密后的安全参数集的前面,从而得到加密后的安全信息。
[0040]
在具体应用中,安全参数集长度也可以单独传输,例如:放置在关键帧数据包的包头进行传输,还可以放置在协议头部进行传输,对此本申请不做具体限制。
[0041]
作为其中另一种实现方式,步骤102具体包括:对所述安全参数集和所述安全参数集长度分别进行加密。
[0042]
对加密后的安全参数长度和加密后的安全参数集按顺序拼接,得到所述加密后的安全信息。
[0043]
在具体应用中,将安全参数集长度和安全参数集分开,并分别对安全参数集合安全参数集长度分别进行加密,然后对加密后的安全参数长度和加密后的安全参数集按顺序拼接,得到所述加密后的安全信息,这样加密后的安全信息是变长的,这样提高了安全参数集的安全性。
[0044]
步骤103:对视频数据中的关键帧按照所述加密策略和所述加密算法类型进行加密,得到加密关键帧数据。
[0045]
视频数据包括关键帧以及非关键帧,关键帧可以包括i帧(i frame)等,非关键帧可以包括p帧(pframe)以及b帧(b frame)等,i帧是最重要的帧,如果不法分子破解了i帧,但未破解p帧和/或b帧,则很容易就可以还原出部分原始视频数据,从而可能会导致视频数据泄露,因此对视频数据中的i帧加密可以防止不法分子对视频数据的破解的目的。
[0046]
其中,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:密码分组链接模式、密码分组链接模式cbc和输出反馈模式ofb。
[0047]
作为其中一种实现方式,当所述加密算法类型为密码分组链接模式时,步骤103包括如下子步骤:子步骤1031:在所述视频数据中确定需要加密的至少一帧关键帧。
[0048]
本实施例中,在视频数据中确定需要加密的至少一帧关键帧可以理解为对关键帧中的部分关键帧进行加密,也可以理解为对关键帧中的全部关键帧加密,无论是部分关键帧加密和全部关键帧加密,加密算法类型的操作过程是一样的。
[0049]
子步骤1032:对所述至少一帧关键帧中的每一帧关键帧,生成所述关键帧对应的初始化向量。
[0050]
至少一帧关键帧可以包括一帧关键帧、两帧关键帧或者全部关键帧,对至少一帧关键帧的每一帧关键帧生成关键帧对应的初始化向量,也就是说,有多少个关键帧就会相对应的有多少个初始化向量。
[0051]
在本实施例中,不同的关键帧对应的初始向量可以不同,并且至少一帧关键中的第一帧关键帧的初始化向量可以与其他关键帧的初始化向量无关,即不同的关键帧的初始化向量相互独立或互不影响。
[0052]
子步骤1033:对所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧。
[0053]
在本实施例中,对所述至少一帧关键帧中的每一帧关键帧按照关键帧的长度进行分组,获得两个以上的子关键帧。
[0054]
例如:关键帧有3个,那么可以对3个关键帧中每一帧关键帧按照关键帧的长度进行分组,获得两个以上的子关键帧。
[0055]
子步骤1034:对所述两个以上的子关键帧的第一子关键帧与所述初始化向量进行异或运算,得到第一输出结果。
[0056]
子步骤1035:对第一输出结果进行加密得到第一加密帧。
[0057]
在本实施例中,可以采用对称加密算法或者非对称加密算法对第一输出结果进行加密,得到第一加密帧,优选地,采用对称加密算法对第一输出结果进行加密,这是因为对称加密算法的加密速度快,可以提高加密效率。
[0058]
子步骤1036:将所述第一加密帧与所述两个以上的子关键帧的第二子关键帧进行异或运算,得到第二输出结果。
[0059]
子步骤1037:对所述第二输出结果进行加密得到第二加密帧。
[0060]
在本实施例中,可以采用对称加密算法或者非对称加密算法对第二输出结果进行加密,得到第二加密帧,优选地,采用对称加密算法对第二输出结果进行加密,这是因为对称加密算法的加密速度快,可以提高加密效率。
[0061]
子步骤1038:根据所述第一加密帧和第二加密帧生成加密关键帧数据。
[0062]
需要说明的是,本申请是以关键帧分为两个子关键帧为例说明,生成加密关键帧数据的过程,在实际应用中,还可以包括多个子关键帧,例如:3个子关键帧或者4个子关键帧,均可以参照两个子关键帧的方法生成加密关键帧数据,对此本申请不在赘述。
[0063]
作为其中另一种实现方式,当所述加密算法类型为输出反馈模式时,步骤103包括如下子步骤:子步骤1039:在所述视频数据中确定需要加密的至少一帧关键帧。
[0064]
子步骤1040:对所述至少一帧关键帧中的每一帧关键帧,生成所述关键帧对应的初始化向量。
[0065]
子步骤1041:对所述初始化向量进行加密生成第一加密初始化向量。
[0066]
在本实施例中,可以采用对称加密算法或者非对称加密算法对初始化向量进行加密,得到第一加密初始化向量,优选地,采用对称加密算法对初始化向量进行加密,这是因为对称加密算法的加密速度快,可以提高加密效率。
[0067]
子步骤1042:对所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧。
[0068]
子步骤1043:对所述两个以上的子关键帧的第一子关键帧与所述第一加密初始化向量进行异或运算,得到第三加密帧。
[0069]
子步骤1044:对所述第一加密初始化向量进行加密,生成第二加密初始化向量。
[0070]
在本实施例中,可以采用对称加密算法或者非对称加密算法对第一加密初始化向量进行加密,得到第二加密初始化向量,优选地,采用对称加密算法对第一初始化向量进行加密,这是因为对称加密算法的加密速度快,可以提高加密效率。
[0071]
子步骤1045:将所述第二加密初始化向量与所述两个以上的子关键帧的第二子关键帧进行异或运算,得到第四加密帧。
[0072]
子步骤1046:根据所述第三加密帧和所述第四加密帧生成加密关键帧数据。
[0073]
需要说明的是,本申请是以关键帧分为两个子关键帧为例说明,生成加密关键帧数据的过程,在实际应用中,还可以包括多个子关键帧,例如:3个子关键帧或者4个子关键帧,均可以参照两个子关键帧的方法生成加密关键帧数据,对此本申请不在赘述。
[0074]
作为其中另一种实现方式,当所述加密算法类型为电码本模式时,步骤103包括如下子步骤:子步骤1047:在所述视频数据中确定需要加密的至少一帧关键帧。
[0075]
子步骤1048:对于所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧。
[0076]
子步骤1049:对两个以上的子关键帧中的每一个子关键帧进行加密,得到加密关键帧数据。
[0077]
在本实施例中,可以采用对称加密算法或者非对称加密算法对每一个子关键帧进行加密,得到加密关键帧数据,优选地,采用对称加密算法对每一个子关键帧进行加密,这是因为对称加密算法的加密速度快,可以提高加密效率。
[0078]
步骤104:将所述加密后的安全信息和所述加密关键帧数据封装成关键帧数据包。
[0079]
当加密后的安全信息是将所述安全参数集长度作为所述安全参数集中的一部分,并进行加密得到时,步骤104包括:将所述加密后的安全信息和加密关键帧数据顺序拼接,并作为所述关键帧数据包的数据载荷,封装至关键帧数据包中,也就是说,加密后的安全信息作为数据载荷的一部分数据进行传输,从而使加密后的安全信息隐藏在视频数据的数据载荷中进行传输,提供了安全性。
[0080]
当加密后的信息是将所述安全参数集长度和安全参数集分开传输,并对安全参数集加密后,得到加密后的安全信息时,步骤104包括:
将所述安全参数长度、将所述加密后的安全参数集和所述加密关键帧数据顺序拼接,并作为关键帧数据包的数据载荷部分,封装至所述关键帧数据包中,在解密时,按照封装关键帧数据包的顺序进行解密,可以获得安全参数集长度、获得加密后的安全参数集,以及加密关键帧数据。
[0081]
需要说明的是,本申请是以关键帧分为两个子关键帧为例说明,生成加密关键帧数据的过程,在实际应用中,还可以包括多个子关键帧,例如:3个子关键帧或者4个子关键帧,均可以参照两个子关键帧的方法生成加密关键帧数据,对此本申请不在赘述。
[0082]
在本申请实施例中,将加密后的安全信息与加密关键帧数据封装成关键帧数据包进行传输,也就是说,本申请将加密后的安全信息隐藏在加密关键帧数据中进行传输,不法分子很容易将加密后的安全信息认为是数据传输,与现有技术相比,提高了加密后的安全信息的安全性。
[0083]
步骤105:将所述关键帧数据包发送至接收端。
[0084]
在实际应用中,非关键帧数据也会发送至接收端,非关键帧数据可以采用明文的方式进行发送,也可以采用对非关键数据加密后发送,对此本申请不做具体限制。
[0085]
本实施例,获取安全参数集和安全参数集长度,并对所述安全参数集和所述安全参数长度按照设定规则进行处理,得到加密后的安全信息,提高了安全参数集的安全性,同时还将加密后的安全信息隐藏在加密关键帧数据中进行发送,这样更不容易被非法人员发现,从而避免了视频文件的泄漏。
[0086]
实施例二参照图2,其示出了本申请实施例二所述一种视频数据解密方法的流程图,该视频数据解密方法应用于接收端,具体包括:步骤201:接收端接收视频数据包。
[0087]
接收端可以接收发送端发送的视频数据包,也可以接收服务器发送的视频数据包。
[0088]
其中,视频数据包包括:关键帧数据包、非关键帧数据。
[0089]
步骤202:当确定所述视频数据包中携带有加密的安全参数集时,则对所述关键帧数据包进行解密,得到加密的安全信息和加密关键帧数据。
[0090]
具体应用中,判断所述视频数据包是否携带有加密的安全参数集,若视频数据包中携带加密的安全参数集,则说明传输的是关键帧数据包,并对关键帧数据包进行解压,因为本申请中仅对关键帧视频数据进行加密,若视频数据包中未携带加密的安全参数集,则说明传输的是非关键帧数据,本申请对非关键帧数据不进行加密,即采用明文的方式进行传输。
[0091]
步骤203:对所述加密后的安全信息进行解密,得到安全参数集,所述安全参数集至少包括:加密密钥、加密策略、加密算法类型中的任一种或多种参数。
[0092]
作为其中一种实现方式,当加密后的安全信息是通过所述安全参数集长度作为所述安全参数集中的一部分,并进行加密得到时,步骤203包括如下子步骤:子步骤2031:对所述关键帧数据包的数据载荷中的前预设个数的字节进行解密,获得所述加密的安全信息的长度。
[0093]
在具体应用中,对关键帧数据包进行解密,从关键帧数据包的前两个字节中获取
加密后的安全信息,一般加密的安全信息的前两个字节都是用来表示安全参数集的长度,因此获取所述加密的安全信息的前两个字节,对前两个字节进行解密,就可以得到加密的安全参数集的长度。
[0094]
子步骤2032:按照所述长度从所述数据载荷中提取得加密的安全信息。
[0095]
按照长度从关键帧数据包的数据载荷部分截取相应的长度,从截取的内容中,可以获得加密后的安全信息,剩余部分为加密关键帧数据部分,然后对加密关键帧数据部分进行解密,就可以获得关键帧。
[0096]
子步骤2033:对所述加密的安全信息进行解密,获得安全参数集。
[0097]
在本实施例中,可以采用对称加密算法或者非对称加密算法对加密后的安全信息进行解密,得到安全参数集,优选地,采用对称加密算法对加密后的安全参数集进行解密,这是因为对称加密算法的解密速度快,可以提高解密效率。
[0098]
作为其中另一种实现方式,当加密后的信息是将所述安全参数集长度和安全参数集分开传输,并对安全参数集加密后,得到加密的安全信息时,步骤203包括如下子步骤:子步骤2034:获取加密的安全信息中的安全参数集长度。
[0099]
从关键帧数据包的数据载荷中的前两个字节,获得加密后的安全参数集长度。
[0100]
子步骤2035:获取加密的安全参数集的位置信息,按照所述长度从数据载荷中提取加密后的安全信息,获得加密后的安全参数集。
[0101]
本实施例中,由于已经获得加密后的安全信息中的安全参数集长度,然后需要获取加密后的安全参数集的位置信息,然后将位置信息作为起点,按照安全参数集长度截取关键帧数据包,获得加密后的安全参数集。
[0102]
子步骤2036:对所述加密后的安全参数集进行解密,获得安全参数集。
[0103]
步骤204:使用所述加密密钥、加密策略和加密算法类型对所述加密关键帧数据进行解密,获取视频数据中的关键帧。
[0104]
关键帧数据包中的数据载荷部分除去加密后的安全信息的部分,剩余的就是加密关键帧数据,然后使用加密密钥、加密策略和加密算法类型对所述加密关键帧数据进行解密,获取视频数据中的关键帧。
[0105]
通过对加密后的安全参数集进行解密,从安全参数集中已经获得了加密密钥、加密策略以及加密算法类型,因此可以使用安全参数集中的参数对加密关键帧数据进行解密,获得视频数据中的关键帧。
[0106]
其中,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:密码分组链接模式、密码分组链接模式cbc和输出反馈模式ofb。
[0107]
作为其中一种实现方式,当所述加密算法类型为密码分组链接模式时,使用密码分组链接模式对加密关键帧数据进行解密,获得视频数据中的关键帧,步骤204包括如下子步骤:子步骤2041:对加密关键帧数据进行解密,获得第一加密帧和第二加密帧。
[0108]
使用与对称加密算法相对应的解密算法对加密关键帧数据进行解密,获得第一加密帧和第二加密帧。
[0109]
子步骤2042:对第一加密帧进行解密,获得第一输出结果。
[0110]
子步骤2043:获取关键帧对应的初始化向量。
[0111]
在实际应用中,加密过程和解密过程中,使用的初始化向量都是相同的。
[0112]
子步骤2044:对第一输出结果与初始化向量进行异或运算,得到第一子关键帧。
[0113]
子步骤2045:对第二加密帧进行解密,获得第二输出结果。
[0114]
子步骤2046:将所述第二输出结果与第一加密帧进行异或运算,得到第二子关键帧。
[0115]
子步骤2047:根据第一子关键和第二子关键帧组成了关键帧,将所述关键帧确定为视频数据中确定需要解密的至少两帧关键中的一帧关键帧。
[0116]
需要说明的是,本申请是以关键帧分为两个子关键帧为例说明,解密加密关键帧数据的过程,在实际应用中,还可以包括多个子关键帧,例如:3个子关键帧或者4个子关键帧,均可以参照两个子关键帧的方法解密加密关键帧数据,对此本申请不在赘述。
[0117]
作为其中另一种实现方式,当所述加密算法类型为输出反馈模式时,使用输出反馈模式对加密关键帧数据进行解密,获得视频数据中的关键帧,步骤204包括如下子步骤:子步骤2048:对加密关键帧数据进行解密,获得第三加密帧和所述第四加密帧。
[0118]
子步骤2049:获取所述关键帧对应的初始化向量进行加密生成的第一加密初始化向量。
[0119]
子步骤2050:对第三加密帧与第一加密初始化向量进行异或运算,得到第一子关键帧。
[0120]
子步骤2051:获取关键帧对应的第二加密初始化向量。
[0121]
子步骤2052:对第四加密帧与第二加密初始化向量进行异或运行,得到第二子关键帧。
[0122]
子步骤2053:根据第一子关键和第二子关键帧组成了关键帧,将所述关键帧确定为视频数据中确定需要解密的至少一帧关键中的一帧关键帧。
[0123]
需要说明的是,本申请是以关键帧分为两个子关键帧为例说明,解密加密关键帧数据的过程,在实际应用中,还可以包括多个子关键帧,例如:3个子关键帧或者4个子关键帧,均可以参照两个子关键帧的方法解密加密关键帧数据,对此本申请不在赘述。
[0124]
作为其中另一种实现方式,当所述加密算法类型为电码本模式时,使用电码本模式对加密关键帧数据进行解密,获得视频数据中的关键帧,步骤204包括如下子步骤:子步骤2054:对加密关键帧数据进行解密,获得每一个子关键帧。
[0125]
子步骤2055:对每一个子关键帧进行组合,获得视频数据中确定需要加密的至少两帧关键帧中的每一帧关键帧。
[0126]
步骤205:根据所述关键帧还原出原始视频。
[0127]
基于上述实施例,本申请的视频安全传输方法可以应用于发送客户端与接收客户端的场景中,发送客户端生成安全参数集,该安全参数集包括安全参数集的长度,对所述安全参数集进行加密,得到加密后的安全信息;对视频数据中的关键帧按照所述加密策略、加密密钥和所述加密算法类型进行加密,得到加密关键帧数据;将所述加密后的安全信息和所述加密关键帧数据封装成关键帧数据包。将所述关键帧数据包发送至接收客户端。
[0128]
接收客户端收到发送方的视频数据包,其中,视频数据包包括:关键帧数据包、非关键帧数据;判断所述视频数据包是否携带有加密的安全参数集,若携带有加密的安全参数集,则对所述关键帧数据包进行解密,得到加密后的安全信息和所述加密关键帧数据;对
所述加密后的安全信息进行解密,得到安全参数集,所述安全参数集包括:加密密钥、加密策略以及加密算法类型;使用所述加密密钥、加密策略和加密算法类型对所述加密关键帧数据进行解密,获取视频数据中的关键帧;根据所述关键帧还原出原始视频。
[0129]
在上述场景中,加密后的安全信息隐藏在加密关键帧数据中,并不暴露在发送客户端与接收客户端之间的传输路径上,从而可以提高了视频文件的安全性。
[0130]
需要说明的是,对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必需的。
[0131]
基于上述方法实施例的说明,本申请还提供了相应的装置实施例,来实现上述方法实施例所述的内容。
[0132]
实施例三参照图3,其示出了本申请实施例三所述一种在视联网中视频的安全传输装置的结构图,具体包括:获取模块301,用于获取安全参数集和安全参数集长度,其中,所述安全参数集至少包括:加密策略和/或加密算法类型,所述加密策略和加密算法类型用于视频数据的加密传输。
[0133]
安全信息模块302,用于对对所述安全参数集和所述安全参数长度按照设定规则进行处理,得到加密后的安全信息。
[0134]
关键帧模块303,用于对视频数据中的关键帧按照所述加密策略和所述加密算法类型进行加密,得到加密关键帧数据。
[0135]
拼接模块304,用于将所述加密后的安全信息和所述加密关键帧数据封装成关键帧数据包。
[0136]
发送模块305,用于将所述关键帧数据包发送至接收端。
[0137]
可选的,安全信息模块,具体用于将所述安全参数集长度作为所述安全参数集中的一部分,并进行加密,得到加密后的安全信息。
[0138]
可选的,安全信息模块包括:加密子模块,用于对所述安全参数集进行加密,得到加密后的安全参数集;拼接子模块,用于对所述安全参数集长度和所述加密后的安全参数集按顺序拼接,得到加密后的安全信息。
[0139]
加密子模块,还用于对所述安全参数集和所述安全参数集长度分别进行加密;拼接子模块,还用于对加密后的安全参数长度和加密后的安全参数集按顺序拼接,得到所述加密后的安全信息。
[0140]
可选地,拼接模块,具体用于将所述加密后的安全信息和加密关键帧数据顺序拼接,并作为所述关键帧数据包的数据载荷,封装至所述关键帧数据包中。
[0141]
可选地,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:密码分组链接模式;当所述加密算法类型为密码分组链接模式时,所述关键帧模块包括:第一选择模块,用于在所述视频数据中确定需要加密的至少一帧关键帧。
[0142]
第一初始化向量模块,用于对所述至少一帧关键帧中的每一帧关键帧,生成所述关键帧对应的初始化向量。
[0143]
第一分组模块,用于对所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧。
[0144]
第一输出模块,用于对所述两个以上的子关键帧的第一子关键帧与所述初始化向量进行异或运算,得到第一输出结果。
[0145]
第一加密帧模块,用于对第一输出结果进行加密得到第一加密帧。
[0146]
第二输出模块,用于将所述第一加密帧与所述两个以上的子关键帧的第二子关键帧进行异或运算,得到第二输出结果。
[0147]
第二加密帧模块,用于对所述第二输出结果进行加密得到第二加密帧。
[0148]
第一生成模块,用于根据所述第一加密帧和第二加密帧生成加密关键帧数据。
[0149]
可选地,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:输出反馈模式。
[0150]
当所述加密算法类型为输出反馈模式时,所述关键帧模块包括:第二选择模块,用于在所述视频数据中确定需要加密的至少一帧关键帧。
[0151]
第二初始化向量模块,用于对所述至少一帧关键帧中的每一帧关键帧,生成所述关键帧对应的初始化向量。
[0152]
第一加密子模块,用于对所述初始化向量进行加密生成第一加密初始化向量。
[0153]
第二分组模块,用于对所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧。
[0154]
第三加密帧模块,用于对所述两个以上的子关键帧的第一子关键帧与所述第一加密初始化向量进行异或运算,得到第三加密帧。
[0155]
第二加密子模块,用于对所述第一加密初始化向量进行加密,生成第二加密初始化向量。
[0156]
第四加密帧模块,用于将所述第二加密初始化向量与所述两个以上的子关键帧的第二子关键帧进行异或运算,得到第四加密帧。
[0157]
第二生成模块,用于根据所述第三加密帧和所述第四加密帧生成加密关键帧数据。
[0158]
可选地,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:电码本模式;当所述加密算法类型为电码本模式时,所述关键帧模块包括:第三选择模块,用于在所述视频数据中确定需要加密的至少一帧关键帧;第三分组模块,用于对于所述至少一帧关键帧中的每一帧关键帧进行分组,获得两个以上的子关键帧;第三子加密模块,用于对两个以上的子关键帧中的每一个子关键帧进行加密,得到加密关键帧数据。
[0159]
本实施例,获取安全参数集和安全参数集长度,并对所述安全参数集和所述安全参数长度按照设定规则进行处理,得到加密后的安全信息,提高了安全参数集的安全性,同时还将加密后的安全信息隐藏在加密关键帧数据中进行发送,这样更不容易被非法人员发
现,从而避免了视频文件的泄漏。
[0160]
实施例四参照图4,其示出了本申请实施例四所述一种视频数据解密装置的结构图,具体包括:接收模块401,用于收到视频数据包,其中,视频数据包包括:关键帧数据包、非关键帧数据。
[0161]
解压模块402,用于当确定所述视频数据包中携带有加密的安全参数集时,则对所述关键帧数据包进行解密,得到加密的安全信息和加密关键帧数据。
[0162]
第一解密模块403,用于对所述加密的安全信息进行解密,得到安全参数集,所述安全参数集包括:加密密钥、加密策略、加密算法类型中的任一种或多种参数。
[0163]
第二解密模块404,用于所述加密密钥、加密策略和加密算法类型对所述加密关键帧数据进行解密,获取视频数据中的关键帧。
[0164]
还原模块405,用于根据所述关键帧还原出原始视频。
[0165]
可选的,第一解密模块包括:长度模块,用于对所述关键帧数据包的数据载荷中的前预设个数的字节进行解密,解密后获得加密的安全信息的长度;截图模块,用于按照所述长度从所述数据载荷中提取加密的安全信息;安全参数集模块,用于对所述加密的安全信息进行解密,获得安全参数集。
[0166]
其中,所述加密策略包括对所述关键帧部分加密或对所述关键帧全部加密;所述加密算法类型包括:密码分组链接模式、密码分组链接模式cbc和输出反馈模式ofb。
[0167]
可选的,当所述加密算法类型为密码分组链接模式时,第二解密模块具体用于对加密关键帧数据进行解密,获得第一加密帧和第二加密帧。使用与对称加密算法相对应的解密算法对加密关键帧数据进行解密,获得第一加密帧和第二加密帧。对第一加密帧进行解密,获得第一输出结果。获取关键帧对应的初始化向量。对第一输出结果与初始化向量进行异或运算,得到第一子关键帧。对第二加密帧进行解密,获得第二输出结果。将所述第二输出结果与第一加密帧进行异或运算,得到第二子关键帧。根据第一子关键和第二子关键帧组成了关键帧,将所述关键帧确定为视频数据中确定需要加密的至少两帧关键中的一帧关键帧。
[0168]
需要说明的是,本申请是以关键帧分为两个子关键帧为例说明,解密加密关键帧数据的过程,在实际应用中,还可以包括多个子关键帧,例如:3个子关键帧或者4个子关键帧,均可以参照两个子关键帧的方法解密加密关键帧数据,对此本申请不在赘述。
[0169]
可选的,当所述加密算法类型为输出反馈模式时,第二解密模块具体用于对加密关键帧数据进行解密,获得第三加密帧和所述第四加密帧。获取所述关键帧对应的初始化向量进行加密生成的第一加密初始化向量。对第三加密帧与第一加密初始化向量进行异或运算,得到第一子关键帧。获取关键帧对应的第二加密初始化向量。对第四加密帧与第二加密初始化向量进行异或运行,得到第二子关键帧。根据第一子关键和第二子关键帧组成了关键帧,将所述关键帧确定为视频数据中确定需要加密的至少两帧关键中的一帧关键帧。
[0170]
需要说明的是,本申请是以关键帧分为两个子关键帧为例说明,解密加密关键帧数据的过程,在实际应用中,还可以包括多个子关键帧,例如:3个子关键帧或者4个子关键帧,均可以参照两个子关键帧的方法解密加密关键帧数据,对此本申请不在赘述。
[0171]
可选的,当所述加密算法类型为电码本模式时,第二解密模块具体用于对加密关键帧数据进行解密,获得每一个子关键帧。对每一个子关键帧进行组合,获得视频数据中确定需要加密的至少两帧关键帧中的每一帧关键帧。
[0172]
对于上述装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见所示方法实施例的部分说明即可。
[0173]
本发明实施例还提供了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行所述的一种在视联网中视频的安全传输方法。
[0174]
本发明实施例还提供了一种计算机可读存储介质,其存储的计算机程序使得处理器执行所述的一种在视联网中视频的安全传输方法。
[0175]
可选地,计算机可读存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0176]
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0177]
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本申请的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
[0178]
以上对本申请所提供的一种在视联网中视频的安全传输方法、装置、设备及介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1