掌桥专利:专业的专利平台
掌桥专利
首页

一种视频加密方法、系统、设备及存储介质

文献发布时间:2024-04-29 00:47:01


一种视频加密方法、系统、设备及存储介质

技术领域

本发明涉及视频的隐私保护领域,尤其涉及一种视频加密方法、系统、设备及存储介质。

背景技术

在过去的十年里,视频在许多应用中变得非常流行,比如监控和社交网络。在许多系统中,视频帧由终端设备重新捕获、编码并传输到服务器,然后由视频服务器解码、检查和重新编码成新的视频流,最后分发给最终用户或消费者用于各种应用程序。为了保证视频内容的安全性和隐私性,在视频共享过程中需要控制用户对视频流的访问,保护隐私内容。在视频流中捕获的对象通常包含敏感信息(如信用卡、一个人或显示敏感信息的计算机屏幕),因此应该防止好奇心或恶意观看和使用。传统的方法通常采用全有或无的策略来保护视频帧中的对象:整个视频被加密并与最终用户共享。在这种情况下,使用解密密钥的用户可以访问帧,或者用户什么都不能访问。另一种广泛使用的方法是在视频中屏蔽特定类型的对象(例如,人脸),而不管用户是谁。在实践中,不同的终端用户可能对同一视频中的不同对象有不同的访问优先级。

给定一组用户和一个视频流,以及每个用户可以查看(或不能查看)的对象的白名单(或黑名单),提供对视频的细粒度个性化访问,即每个用户只能查看他被允许查看的对象。当前的方法只能针对某一种特定的隐私需求输出特定的脱敏视频,对于n种隐私需求,这些方法需要生成n种版本的脱敏视频。面对多种隐私需求的场景,当前的方法在通信、存储、运行时间等方面都是低效的。

因此,如何使多处设备只加密视频流一次,而不同的用户通过使用自己的解密密钥从相同的加密视频流中获得定制的和细粒度的解密结果,进而达到以较小的成本实现不同的用户权限是需要解决是问题。

有鉴于此,特提出本发明。

发明内容

本发明的目的是提供一种视频加密方法、系统、设备及存储介质,能使视频流只加密一次,不同的用户通过使用自己的解密密钥从一次加密的视频流中获得定制的和细粒度的解密结果,达到以较小的成本实现分享的视频流满足不同的用户权限,进而解决现有技术中存在的上述技术问题。

本发明的目的是通过以下技术方案实现的:

一种视频加密方法,包括:

步骤1,视频元素抽取:通过深度学习检测模型获取待加密视频中的视频元素,所述视频元素为待加密视频中的物体和背景;

步骤2,视频元素的密钥生成:生成加密步骤1获取的视频元素所需要的多个密钥,全部密钥能处理视频元素之间可能存在的空间位置重叠关系;

步骤3,视频元素的图块划分及密钥分配:按步骤1获取的视频元素在待加密视频中的位置将待加密视频划分为多个图块,为每个图块分配对应的密钥;

步骤4,视频图块独立编码及加密:利用步骤3为每个图块分配的对应的密钥,对该图块使用选择性加密算法对各图块进行编码和加密得到加密视频;

步骤5,图块密钥管理及分发:使用基于属性的加密方法加密所述步骤3中所划分图块的密钥和该图块中所包含的视频元素位置信息得到加密密钥,将加密密钥和所述步骤4得到的加密视频向用户发布,以使用户在接收到加密密钥和加密视频后,基于自己的属性集合解密自身权限之内的密钥,并使用该密钥对加密视频进行解密得到对应的视频内容。

一种视频加密系统,用于实现本发明所述的视频加密方法,包括:

视频元素抽取模块,能通过深度学习检测模型获取待加密视频中的视频元素,所述视频元素为待加密视频中的物体和背景;

密钥生成模块,与所述视频元素抽取模块通信连接,能生成加密所述视频元素抽取模块获取的视频元素所需要的多个密钥,全部密钥能处理视频元素之间可能存在的空间位置重叠关系;

图块划分及密钥分配模块,与所述视频元素抽取模块通信连接,能将待加密视频按所述视频元素抽取模块获取的视频元素在待加密视频中的位置将待加密视频划分为多个图块,为每个图块分配对应的密钥;

视频图块独立编码及加密模块,与所述图块划分及密钥分配模块通信连接,能利用所述图块划分及密钥分配模块为每个图块分配的对应的密钥,使用选择性加密算法对各图块进行编码和加密得到加密视频;

加密视频及密钥分发模块,分别与所述图块划分及密钥分配模块和视频图块独立编码及加密模块通信连接,能使用基于属性的加密方法加密所述步骤3中所划分图块的密钥和该图块中所包含的视频元素位置信息得到加密密钥,将加密密钥和所述视频图块独立编码及加密模块得到的加密视频向用户发布,以使用户在接收到加密密钥和加密视频后,基于自己的属性集合解密自身权限之内的密钥,并使用该密钥对加密视频进行解密得到对应的视频内容。

一种处理设备,包括:

至少一个存储器,用于存储一个或多个程序;

至少一个处理器,能执行所述存储器所存储的一个或多个程序,在一个或多个程序被处理器执行时,使得所述处理器能实现本发明所述的方法。

一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时能实现本发明所述的方法。

与现有技术相比,本发明所提供的视频加密方法、系统、设备及存储介质,其有益效果包括:

通过重叠密钥设计、图块置换和自适应图块划分等方式提高了面向多种隐私需求的加密效率,以及峰值信噪比、结构相似性、边缘相似比例和人工智能任务性能等安全性的指标上有更好的加密性能,能在实时视频共享机制下,使不同的用户用一个共同的加密视频获得不同的物体级的解密结果。发明人的实验结果表明,本发明的方法在具有多个物体和不同隐私需求的视频上表现好于现有方法,对于1920×1080分辨率的视频,在PC端的处理速度达到24.5帧/每秒,在移动设备Jetson NX的速度达到12.8帧/每秒。当存在n中不同的物体级隐私需求时,和现有方法相比,本发明的方案在PC上平均是现有方法的(0.58+0.31n)倍。在隐私保护有效性方面,通过实验结果表明,与当前流行的方法相比,本发明的方法在三个数据集的1920×1080的视频上将结构相似性度量指标降低了26.2%,并将边缘失真率度量平均提高了39.4%。总体而言,本发明的方法通过降低物体级访问控制的复杂性和增强视频选择性加密算法的隐私保护,在实时视频流中实现了优越的加密性能,很好的满足了不同的用户对同一个视频有不同隐私需求的场景。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的视频加密方法的流程图。

图2为本发明实施例提供的视频加密方法的具体流程图。

图3为本发明实施例提供的视频服务器进行视频加密系统的具体处理流程图。

图4为本发明实施例提供的视频加密方法对应的解密方法的具体流程图。

图5为本发明实施例提供的视频加密系统的构成框图。

具体实施方式

下面结合本发明的具体内容,对本发明实施例中的技术方案进行清楚、完整地描述;显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,这并不构成对本发明的限制。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

首先对本文中可能使用的术语进行如下说明:

术语“和/或”是表示两者任一或两者同时均可实现,例如,X和/或Y表示既包括“X”或“Y”的情况也包括“X和Y”的三种情况。

术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。

术语“由……组成”表示排除任何未明确列出的技术特征要素。若将该术语用于权利要求中,则该术语将使权利要求成为封闭式,使其不包含除明确列出的技术特征要素以外的技术特征要素,但与其相关的常规杂质除外。如果该术语只是出现在权利要求的某子句中,那么其仅限定在该子句中明确列出的要素,其他子句中所记载的要素并不被排除在整体权利要求之外。

除另有明确的规定或限定外,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如:可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本文中的具体含义。

当浓度、温度、压力、尺寸或者其它参数以数值范围形式表示时,该数值范围应被理解为具体公开了该数值范围内任何上限值、下限值、优选值的配对所形成的所有范围,而不论该范围是否被明确记载;例如,如果记载了数值范围“2~8”时,那么该数值范围应被解释为包括“2~7”、“2~6”、“5~7”、“3~4和6~7”、“3~5和7”、“2和5~7”等范围。除另有说明外,本文中记载的数值范围既包括其端值也包括在该数值范围内的所有整数和分数。

术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述和简化描述,而不是明示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本文的限制。

下面对本发明所提供的视频加密方法、系统、设备及存储介质进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。本发明实施例中所用试剂或仪器未注明生产厂商者,均为可以通过市售购买获得的常规产品。

如图1所示,本发明实施例提供一种视频加密方法,用于多个用户与视频服务器通信,一个可信第三方分别与视频服务器和各用户通信,视频服务器能将视频流推送给各用户,可信第三方用于生成密钥和确认用户权限的场景中,,包括如下步骤:

步骤1,视频元素抽取:通过深度学习检测模型获取待加密视频中的视频元素,所述视频元素为待加密视频中的物体和背景;

步骤2,视频元素的密钥生成:生成用于加密步骤1获取的视频元素所需要的多个密钥,全部密钥能处理视频元素之间可能存在的空间位置重叠关系;

步骤3,视频元素的图块划分及密钥分配:按步骤1获取的视频元素在待加密视频中的位置将待加密视频划分为多个图块,为每个图块分配对应的密钥;

步骤4,视频图块独立编码及加密:利用步骤3为每个图块分配的对应的密钥,对该图块使用选择性加密算法对各图块进行编码和加密得到加密视频;

步骤5,图块密钥管理及分发:使用基于属性的加密方法加密所述步骤3中所划分图块的密钥和该图块中所包含的视频元素位置信息得到加密密钥,将加密密钥和所述步骤4得到的加密视频向用户发布,以使用户在接收到加密密钥和加密视频后,基于自己的属性集合解密自身权限之内的密钥,并使用该密钥对加密视频进行解密得到对应的视频内容。

参见图2、图3,优选的,上述方法的步骤1中,按以下方式通过深度学习检测模型获取待加密视频中的视频元素,包括:

待加密视频有N个连续的视频帧{V

采用yolov5、yolov6、faster-rcnn、Detectron2中的任一种深度学习检测模型获取待加密视频的每一帧Vk中的物体类别和位置,获取的任意一个物体o的边界框为

优选的,上述方法的步骤2中,按以下方式生成用于加密所述步骤1获取的视频元素所需要的多个密钥,各密钥均能处理视频元素之间可能存在的空间位置重叠关系,包括:

根据每一帧Vk中视频元素的数量ck,分别生成第一矩阵

将第一矩阵M

将第一矩阵M

先对第四矩阵M中行的顺序进行随机扰乱,然后对第四矩阵M中列的顺序进行随机扰乱,扰乱后的第四矩阵M仍然保持上述的性质且大小保持不变,共ck行,将第四矩阵M的每一行看作一个0,1字符串,即第四矩阵

参见图2与图3,优选的,上述方法的步骤3中,按以下方式将待加密视频按步骤1获取的视频元素在待加密视频中的位置划分为多个图块,为每个图块分配对应的密钥,包括:

按照以下公式将一组连续关键帧(GOP,Group of picture)的第一帧中的一个物体o的边界框

该帧中ck个视频元素产生最多2ck个上下边界和2ck个左右边界,共O(4ck)个边界;根据O(4ck)个边界,将该组连续关键帧第一帧后的每一帧VK划分为

若图块Tj是除背景之外的视频元素ei松弛的边界框的一部分,则图块Tj覆盖视频元素ei,对于每图块Tj,定义图块Tj的覆盖集合为TCj,如果覆盖集合TCj覆盖一种视频元素ei,则TCj={i},使用该视频元素对应的密钥Ki作为图块Tj的密钥,如果覆盖集合TCj覆盖h>1的视频元素为

对于该组连续关键帧中的后续帧,采用前一帧划分的各图块,对于后续帧中的物体o,若物体o的边界框

参见图2与图3,优选的,上述方法的步骤4中,按以下方式根据每个图块所分配的对应的密钥,使用选择性加密算法对各图块进行编码和加密,包括:

从待加密视频的每一帧V

对于每个图块集合,使用Fisher-Yates算法对该图块集合内的图块位置进行扰乱,并记录扰乱后的图块T

进一步的,上述方法的步骤4中,按以下方式利用各图块对应的密钥用现有高效率视频编码框架和现有选择性加密算法对扰乱图块位置后的图块集合的各图块独立进行编码和加密得到加密视频,包括:

记录第一帧V

利用每个图块T

对于该组连续关键帧中的后一帧的图块划分与第一帧相同;

每个图块在编码过程中会产生数个编码单元,若前一帧的图块覆盖的视频元素集合和当前帧不同,将该图块内所有预测模式为帧间预测的编码单元修改为帧内预测。

参见图2与图3,优选的,上述方法的步骤5中,按以下方式使用基于属性的加密方法加密所述步骤3中所划分图块的密钥和该图块中所包含的视频元素位置信息得到加密密钥,将加密密钥和所述步骤4得到的加密视频向用户发布,包括:

对于视频中第一帧V

对于视频中第一帧V

对于一组连续关键帧中的第一帧的向用户发布加密密钥为

后续帧中,若视频元素没有发生变化,则其密钥不变;若新增加某个视频元素或者某个视频元素消失,按照所述步骤2、步骤3、步骤4和步骤5的使用基于属性的加密方法加密所述步骤3中所划分图块的密钥和该图块中所包含的视频元素位置信息重新生成加密密钥,重新向用户发布新的加密密钥

对于视频的每一帧Vk,将加密视频和该帧中每个图块所包含的元素信息{TCj},j∈[1,…,tk]和图块的加密后的位置{E(Locj)},j∈[1,…,tk]向用户发送。

参见图4,优选的,上述方法的步骤5中,用户在接收到加密密钥和加密视频后,按以下方式基于自己的属性集合解密自身权限之内的密钥,并使用该密钥对加密视频进行解密得到对应的视频内容,包括:

用户根据自己的权限,使用对应的基于属性的解密方法解密收到的密文

对于视频的每一帧VK,根据图块TJ的覆盖集合TCj,j∈[1,…,tk],判断自己能否获得覆盖集合TCj中所包含的视频元素密钥的重叠部分;若可以,求出重叠部分,将重叠部分作为伪随机生成器AES-CTR的密钥获取伪随机数序列,将第一个伪随机数r

参见图5,本发明实施例还提供一种视频加密系统,用于实现上述的视频加密方法,包括:

视频元素抽取模块,能通过深度学习检测模型获取待加密视频中的视频元素,所述视频元素为待加密视频中的物体和背景;

密钥生成模块,与所述视频元素抽取模块通信连接,能生成用于加密所述视频元素抽取模块获取的视频元素所需要的多个密钥,全部密钥能处理视频元素之间可能存在的空间位置重叠关系;

图块划分及密钥分配模块,与所述视频元素抽取模块通信连接,能将待加密视频按所述视频元素抽取模块获取的视频元素在待加密视频中的位置将待加密视频划分为多个图块,为每个图块分配对应的密钥;

视频图块独立编码及加密模块,与所述图块划分及密钥分配模块通信连接,能利用所述图块划分及密钥分配模块为每个图块分配的对应的密钥,使用选择性加密算法对各图块进行编码和加密得到加密视频;

加密视频及密钥分发模块,分别与所述图块划分及密钥分配模块和视频图块独立编码及加密模块通信连接,能使用基于属性的加密方法加密所述步骤3中所划分图块的密钥和该图块中所包含的视频元素位置信息得到加密密钥,将加密密钥和所述视频图块独立编码及加密模块得到的加密视频向用户发布,以使用户在接收到加密密钥和加密视频后,基于自己的属性集合解密自身权限之内的密钥,并使用该密钥对加密视频进行解密得到对应的视频内容。

本发明实施例进一步提供一种处理设备,包括:

至少一个存储器,用于存储一个或多个程序;

至少一个处理器,能执行所述存储器所存储的一个或多个程序,在一个或多个程序被处理器执行时,使得所述处理器能实现上述的方法。

本发明实施例又提供一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时能实现上述的方法。

综上可见,本发明实施例的方法及系统,通过重叠密钥设计、图块置换和自适应图块划分等方式提高了面向多种隐私需求的加密效率,以及峰值信噪比、结构相似性、边缘相似比例和人工智能任务性能等安全性的指标上有更好的加密性能,能在实时视频共享机制下,使不同的用户用一个共同的加密视频获得不同的物体级的解密结果。发明人的实验结果表明,本发明的方法在具有多个物体和不同隐私需求的视频上表现好于现有方法,对于1920×1080分辨率的视频,在PC端的处理速度达到24.5帧/每秒,在移动设备Jetson NX的速度达到12.8帧/每秒。当存在n中不同的物体级隐私需求时,和现有方法相比,本发明的方案在PC上平均是现有方法的(0.58+0.31n)倍。在隐私保护有效性方面,通过实验结果表明,与当前流行的方法相比,本发明的方法在三个数据集的1920×1080的视频上将结构相似性度量指标降低了26.2%,并将边缘失真率度量平均提高了39.4%。总体而言,本发明的方法通过降低物体级访问控制的复杂性和增强视频选择性加密算法的隐私保护,在实时视频流中实现了优越的加密性能,很好的满足了不同的用户对同一个视频有不同隐私需求的场景。

为了更加清晰地展现出本发明所提供的技术方案及所产生的技术效果,下面以具体实施例对本发明实施例所提供的视频加密方法、系统、设备及存储介质进行详细描述。

实施例1

本发明实施例提供一种视频加密方法,其主要针对如下的场景,视频服务器(可以是边缘服务器或云服务器)通信连接多个用户,对于一个需要分享给用户的视频,视频服务器能够进行视频元素提取、HEVC(高效率视频编码)框架和加密,以实现对视频帧中对象元素的访问控制,然后将加密后的视频流推送给用户。

假设视频服务器已经收集了每个用户的隐私需求和访问策略,用户向视频服务器请求加密视频流,并根据自己的访问权限进行功能性解密。

通过一个可信第三方生成密钥和确认用户权限。

上述场景中,假设视频服务器和可信第三方是完全诚实的,用户是半诚实的,用户有可能作为攻击者试图获取权限之外的视频内容。假设用户之间不会串通试图恢复完整的视频内容。

参见图1至图3,该方法分为视频服务器加密视频并分别发布加密密钥和加密视频,用户接受加密视频并解密权限之内的视频内容几个步骤,包括:

步骤1,输入帧的信息抽取,利用现有深度学习检测模型获取待加密视频中的物体,将物体和背景统称为视频中的视频元素;

步骤2,视频元素的密钥生成,生成用于加密这些视频元素所需要的多个密钥,全部密钥能处理视频元素之间可能存在的空间位置重叠关系;

步骤3,视频元素的图块划分及密钥分配,根据视频元素在待加密视频中的位置将待加密视频划分为多个图块,为每个图块分配密钥;

步骤4,视频图块的独立编码,根据每个图块所分配的密钥,对该图块使用选择性加密算法进行编码和加密得到加密视频;

步骤5,图块密钥管理及分发,使用基于属性的加密方法加密所划分图块的密钥和视频元素信息,将加密密钥和加密视频向用户发布,使得用户可以接收,用户接收到加密密钥后基于自己的属性集合解密自身权限之内的密钥,并使用该密钥解密对应的加密视频得到视频内容。

具体的,视频服务器端实现上述视频加密方法的步骤如下:

步骤1,输入帧的信息抽取:待加密视频有N个连续的视频帧{V

步骤2,视频元素的密钥生成:对于每一帧VK中的每个元素,首先生成三个矩阵,即第一矩阵

步骤3,视频元素的图块划分及密钥分配:对于一个GOP中的第一帧,其中的一个物体o的边界框

步骤4,视频图块的独立编码:对于视频的每一帧Vk,按照上面的步骤被划分为了tk个图块;统计相同宽和高的图块,并将宽高相同的图块形成一个集合,使用Fisher-Yates算法,对一个集合中的图块的位置进行扰乱,并记录扰乱的图块Tj原始的位置Locj,将扰乱之后的视频使用现有的HEVC(高效率视频编码)框架和现有的选择性加密算法对于图块独立的编码和加密;具体过程如下,对于第一帧V

步骤5,使用基于属性的加密方法管理图块的密钥并分发给用户:对于视频中第1帧V

参见图4,对应于上述视频服务器方的视频加密方法,用户方解密方法如下:用户根据自己的权限,使用对应的基于属性的解密方法解密收到的加密密钥

实施例2

如图5所示,本实施例还提供一种视频加密系统,用于上述实施例1的视频加密方法,包括:

视频元素抽取模块,能通过深度学习检测模型获取待加密视频中的视频元素,所述视频元素为待加密视频中的物体和背景;

密钥生成模块,与所述视频元素抽取模块通信连接,能生成用于加密所述步骤1获取的视频元素所需要的多个密钥,各密钥均能处理视频元素之间可能存在的空间位置重叠关系;

图块划分及密钥分配模块,与所述视频元素抽取模块通信连接,能将待加密视频按所述视频元素抽取模块获取的视频元素在待加密视频中的位置划分为多个图块,为每一块区域分配对应的密钥;

视频图块独立编码及加密模块,与所述图块划分及密钥分配模块通信连接,能根据所述图块划分及密钥分配模块为每一块区域分配的对应的密钥,使用选择性加密算法对各图块进行编码和加密;

加密视频及密钥分发模块,分别与所述图块划分及密钥分配模块和视频图块独立编码及加密模块通信连接,能使用基于属性的加密方法管理所述图块划分及密钥分配模块所划分区域的密钥和元素位置信息,将所述视频图块独立编码及加密模块得到的密文和加密的视频向用户发布,以使用户在接收到密文和加密的视频后,基于自己的属性集合解密自身权限之内的密钥,并使用该密钥对加密的视频进行解密得到对应的视频内容。

本领域普通技术人员可以理解:实现上述实施例方法中的全部或部分流程是可以通过程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。本文背景技术部分公开的信息仅仅旨在加深对本发明的总体背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。

相关技术
技术分类

06120116594332