著录项信息
专利名称 | 视频数据完整性保护和验证方法、设备和系统 |
申请号 | CN201110236997.7 | 申请日期 | 2011-08-11 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2013-02-13 | 公开/公告号 | CN102932650A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04N19/89 | IPC分类号 | H;0;4;N;1;9;/;8;9;;;H;0;4;N;1;7;/;0;0查看分类表>
|
申请人 | 索尼公司 | 申请人地址 | 日本东京都
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 索尼公司 | 当前权利人 | 索尼公司 |
发明人 | 李基 |
代理机构 | 北京集佳知识产权代理有限公司 | 代理人 | 朱胜;郎晓虹 |
摘要
本公开提供了数据完整性的保护和验证方法、设备和系统。一种数据完整性的保护设备包括:数据分割装置,用于分别按照视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对所述视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块;以及完整性信息生成装置,用于计算所述至少两组数据块中的每组数据块的完整性信息,得到所述至少两个方向上的完整性信息,作为所述视频数据的完整性信息。
视频数据完整性保护和验证方法、设备和系统\n技术领域\n[0001] 本公开涉及视频数据的完整性保护,具体地,涉及视频数据完整性的保护和验证方法、设备以及系统。\n背景技术\n[0002] 视频数据容易被篡改,也容易在传输或保存过程中出现误差或丢失。在很多应用中,用户都需要检查视频数据的完整性,以确认数据未被篡改或者未出现误差或丢失。例如,随着涉及电子签名的法律法规的颁布,视频数据可以和其它媒体一样作为法庭的证据。\n因此,确保视频数据的完整性日益成为重要的需求。另外,在一些应用中,不仅要求用户能够检查视频数据的完整性,还要求定位数据中被篡改的位置。例如,在视频数据的传输过程中,可能会发生少量比特丢失或错误而导致整个数据失去完整性的情况。\n[0003] 数字水印技术是一种可用于定位篡改的技术。相关文献可参考Jessica Fridrich的文章“Security of Fragile Authentication Watermarks with Localization”(Society of Photo-Optical Instrumentation Engineers SPIE Conference Series,卷\n4675,第691-700页,2002年4月)(简称为“相关文献1”)。在这种技术中,将位置信息包含在验证信息中,因此,能够在验证数据完整性的同时实现篡改定位。这种技术需要将完整性信息分散并嵌入在原始图像或视频中,在一定程度上改变了原始数据。另外,这种技术是一种概率性方法,即采用数字水印技术存在一定的误报率和漏报率。\n[0004] 鲁棒哈希算法是另外一种可用于定位篡改的技术。相关文献可参考Sujoy Roy和Qibin Sun等人的文章“Robust Hash for Detection and Localizing Image Tampering”(IEEE International Conference On Image Processing,2007年,ICIP 2007)(简称为“相关文献2”)。与数字水印技术相比,鲁棒哈希算法不需要将完整性信息嵌入到原始数据中,因而适用于更多应用。另一方面,这种算法需要考虑鲁棒性的要求,即,对于某些视频处理不影响完整性的验证,因此,仍然是一种概率性方法。\n发明内容\n[0005] 在下文中给出关于本公开的一些方面的简要概述,以便提供对于本公开的基本理解。应当理解,这个概述并不是对本公开的穷举性概述。该概述也并非意图确定本公开的关键或重要部分,也不是意图限定本公开的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。\n[0006] 根据本公开的一个方面,提供了一种视频数据完整性的保护设备,该视频数据完整性保护设备可包括:数据分割装置,用于分别按照视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对所述视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块;以及完整性信息生成装置,用于计算所述至少两组数据块中的每组数据块的完整性信息,得到所述至少两个方向上的完整性信息,作为所述视频数据的完整性信息。\n[0007] 根据本公开的上述方面,还提供了一种视频数据完整性的保护方法,该视频数据完整性的保护方法可包括:分别按照视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对所述视频数据进行分割,得到分别沿所述至少两个方向的至少两组数据块;\n以及计算所述至少两组数据块中的每组数据块的完整性信息,得到所述至少两个方向上的完整性信息,作为所述视频数据的完整性信息。\n[0008] 根据本公开的上述方面,还提供了一种视频数据完整性的验证设备,该视频数据完整性的验证设备可包括:数据分割装置,用于按待验证的视频数据的宽、高和时间三个方向中的至少两个方向中的一个方向对所述视频数据进行分割,得到沿该方向的一组数据块;完整性信息生成装置,用于计算该组数据块的完整性信息,作为该方向上的、待验证的完整性信息;以及完整性验证装置,用于从与所述待验证的视频数据对应的原始视频数据在所述至少两个方向的原始完整性信息中选择相应方向上的原始完整性信息,并根据所述完整性信息生成装置计算得到的待验证的完整性信息以及该相应方向上的原始完整性信息来判断所述待验证的视频数据是否完整。\n[0009] 根据本公开的上述方面,还提供了一种视频数据完整性的验证方法,该视频数据完整性的验证方法可包括:按待验证的视频数据的宽、高和时间三个方向中的至少两个方向中的一个方向对所述视频数据进行分割,得到沿该方向的一组数据块;计算该组数据块的完整性信息,作为该方向上的、待验证的完整性信息;以及从与所述待验证的视频数据对应的原始视频数据在所述至少两个方向的原始完整性信息中选择相应方向上的原始完整性信息,并根据所述待验证的完整性信息以及该相应方向上的原始完整性信息来判断所述待验证的视频数据是否完整。\n[0010] 根据本公开的上述方面,还提供了一种视频数据完整性的保护系统,该系统可以包括上述视频数据完整性的保护设备和上述视频数据完整性的验证设备。\n[0011] 在本公开的上述方面中,数据保护方计算待保护的视频数据在至少两个方向上的完整性信息,作为待保护的视频数据的原始完整性信息。相应地,数据验证方则通过将待验证的视频数据在所述至少两个方向中的一个方向上的待验证的完整性信息与相应方向上的原始完整性信息进行比较来判断待验证的视频数据的完整性。由于采用了至少两个方向上的完整性信息,因此,根据上述方面的保护方法或设备或者验证方法或设备采用的数据保护或验证方法是确定性的方法,可以准确定位待验证的视频数据中的篡改位置,与现有的概率性方法相比具有更高的可信度。另外,根据用户对于定位错误(如篡改)的精度的要求不同,可以采用计算复杂度和定位精度折衷的数据完整性保护和验证方法。例如,在生成完整性信息时可以只计算视频数据在宽、高两个方向上的完整性信息。这样可以降低计算复杂度,而在后续数据验证时,仍可以准确定位每帧视频中发生修改的位置。此外,在进行视频数据的完整性验证时可以仅选择所述至少两个方向中的一个并仅比较在该选择方向上的待验证的完整性信息以及该选择方向上的原始完整性信息,而不必选择所述至少两个方向中的所有方向上的完整性信息,这样可以减少计算量,提高数据完整性验证的效率。此外,根据本发明的上述方面的方法或设备还可以与现有的逐帧保护的方法相兼容。\n[0012] 根据本公开的另一方面,提供了一种视频数据完整性的保护设备,该视频数据完整性的保护设备可用于实现视频数据中的隐私保护并且可以包括:数据分割装置,用于分别按照原始视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对所述视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块;完整性信息生成装置,用于计算所述至少两组数据块中的每组数据块的完整性信息,得到所述至少两个方向上的完整性信息,作为所述原始视频数据的原始完整性信息;加密装置,用于对原始视频数据中的待保护区域的数据进行加密,并用经加密的待保护区域的数据来替换原始视频数据中的待保护区域,形成经加密的视频数据;以及验证信息生成装置,用于根据所述原始完整性信息以及有关所述待保护区域在所述原始视频数据中的位置的信息来生成验证信息。\n[0013] 根据本公开的上述方面,还提供了一种视频数据完整性的保护方法,该视频数据完整性的保护方法可用于实现视频数据中的隐私保护,并且可包括:分别按照原始视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对所述视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块;计算所述至少两组数据块中的每组数据块的完整性信息,得到所述至少两个方向上的完整性信息,作为所述原始视频数据的原始完整性信息;对原始视频数据中的待保护区域的数据进行加密,并用经加密的待保护区域的数据来替换原始视频数据中的待保护区域,形成经加密的视频数据;以及根据所述原始完整性信息以及有关所述待保护区域在所述原始视频数据中的位置的信息来生成验证信息。\n[0014] 根据本公开的上述方面,还提供了一种视频数据完整性的验证设备,该视频数据完整性的验证设备可用于实现视频数据的隐私保护,并且可以包括:数据分割装置,用于按照待验证的视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对所述待验证的视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块,其中,所述待验证的视频数据中包括加密区域,该加密区域中的数据经加密保护;完整性信息生成装置,用于计算所述至少两组数据块中的每组数据块的完整性信息,得到所述至少两个方向上的完整性信息,作为待验证的完整性信息;定位装置,用于根据所述待验证的完整性信息以及所述待验证的视频数据的原始完整性信息来定位所述待验证的视频数据中与原始视频数据不一致的区域的位置;以及完整性验证装置,用于通过将所述定位装置定位到的位置与所述待验证的视频数据中的加密区域的位置相比较来判断所述待验证的视频数据是否完整。\n[0015] 根据本公开的上述方面,还提供了一种视频数据完整性的验证方法,该视频数据完整性的验证方法可用于实现视频数据中的隐私保护,并且可包括:按照待验证的视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对所述待验证的视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块,其中,所述待验证的视频数据中包括加密区域,该加密区域中的数据经加密保护;计算所述至少两组数据块中的每组数据块的完整性信息,得到所述至少两个方向上的完整性信息,作为待验证的完整性信息;根据所述待验证的完整性信息以及所述待验证的视频数据的原始完整性信息来定位所述待验证的视频数据中与原始视频数据不一致的区域的位置;以及通过将定位到的位置与所述待验证的视频数据中的加密区域的位置相比较来判断所述待验证的视频数据是否完整。\n[0016] 根据本公开的上述方面,还提供了另一种视频数据完整性的验证设备,该视频数据完整性的验证设备也可以用于实现视频数据中的隐私保护,并且可以包括:获取装置,用于获取待验证的视频数据的密钥,其中,所述待验证的视频数据中包括加密区域,该加密区域中的数据经加密保护,并且所述获取装置还用于获取有关所述待验证的视频数据中的加密区域的位置的信息;解密装置,用于利用所述密钥对所述加密区域的数据进行解密,并用经解密的数据替换所述待验证的视频数据中的加密区域的数据,得到解密视频数据;数据分割装置,用于按照解密视频数据的宽、高和时间三个方向中的至少两个方向中的一个方向对所述解密视频数据进行分割,得到沿该方向的一组数据块;完整性信息生成装置,用于计算该组数据块的完整性信息,作为所述解密视频数据在该方向上的完整性信息;以及完整性验证装置,用于在原始视频数据在所述至少两个方向上的原始完整性信息中选择相应方向上的完整性信息,并根据所获取的完整性信息与计算得到的所述解密视频数据在该方向上的完整性信息判断所述待验证的视频数据是否完整。\n[0017] 根据本公开的上述方面,还提供了另一种视频数据完整性的验证方法,该视频数据完整性的验证方法也可用于实现视频数据中的隐私保护,并可包括:获取待验证的视频数据的密钥,其中,所述待验证的视频数据中包括加密区域,该加密区域中的数据经加密保护;获取有关所述待验证的视频数据中的加密区域的位置的信息;利用所述密钥对所述加密区域的数据进行解密,并用经解密的数据替换所述待验证的视频数据中的加密区域的数据,得到解密视频数据;按照解密视频数据的宽、高和时间三个方向中的至少两个方向中的一个方向对所述解密视频数据进行分割,得到沿该方向的一组数据块;并计算该组数据块的完整性信息,作为所述解密视频数据在该方向上的完整性信息;在原始视频数据在所述至少两个方向上的原始完整性信息中选择相应方向上的完整性信息,并根据所获取的完整性信息与计算得到的所述解密视频数据在该方向上的完整性信息判断所述待验证的视频数据是否完整。\n[0018] 根据本公开的上述方面,还提供了一种视频数据完整性的保护系统,可用于实现视频数据中的隐私保护,该系统包括上述视频数据完整性的保护设备和上述视频数据完整性的验证设备。\n[0019] 根据本公开的上述方面,可以实现视频数据中的隐私保护。数据保护方可以根据不同的应用需求从宽、高和时间这三个方向中选择两个或三个来计算所选方向上的完整性信息。在用户对数据验证和隐私遮盖区域定位的精度要求较高的情况下,可以选择所有三个方向。反之,则可以根据需要选择其中的两个方向。这样可以降低计算复杂度,在后续数据验证时,仍可以准确定位每帧视频中发生修改或加密的位置。根据上述方面的保护方法或设备或者验证方法或设备采用的数据保护或验证方法是确定性的方法,可以准确定位待验证的视频数据中的篡改位置,与现有的概率性方法相比具有更高的可信度。\n[0020] 另外,本公开的实施例还提供了用于实现上述方法的计算机程序。\n[0021] 此外,本公开的实施例还提供了至少计算机可读介质形式的计算机程序产品,其上记录有用于实现上述方法的计算机程序代码。\n附图说明\n[0022] 参照下面结合附图对本公开实施例的说明,会更加容易地理解本公开的以上和其它目的、特点和优点。附图中的部件只是为了示出本公开的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。\n[0023] 图1是示出根据本公开的一个实施例的用于视频数据完整性的保护方法的示意性流程图;\n[0024] 图2是示出用于在宽、高或时间方向对视频数据进行分割的方法的示意图;\n[0025] 图3是示出根据本公开的该实施例的用于视频数据完整性的验证方法的示意性流程图;\n[0026] 图4是示出用于定位视频数据中的错误的方法的示意性流程图;\n[0027] 图5是示出根据本公开的另一实施例的用于视频数据完整性的保护方法的示意性流程图;\n[0028] 图6是示出根据本公开的该实施例的用于视频数据完整性的验证方法的示意性流程图;\n[0029] 图7是示出根据本公开的一个实施例的用于视频数据完整性的保护设备的示意性结构的框图;\n[0030] 图8是示出根据本公开的该实施例的用于视频数据完整性的验证设备的示意性结构的框图;\n[0031] 图9是示出根据本公开的另一实施例的用于视频数据完整性的保护设备的示意性结构的框图;\n[0032] 图10是示出根据本公开的该实施例的用于视频数据完整性的验证设备的示意性结构的框图;\n[0033] 图11是示出根据本公开的一个实施例的可实现视频数据中的隐私保护的、视频数据完整性的保护方法的示意性流程图;\n[0034] 图12是示出根据本公开的一个具体实施例的可实现视频数据中的隐私保护的、视频数据完整性的验证方法的示意性流程图;\n[0035] 图13是示出根据本公开的另一具体实施例的可实现视频数据中的隐私保护的、视频数据完整性的验证方法的示意性流程图;\n[0036] 图14是示出根据本公开的一个实施例的可实现视频数据中的隐私保护的、视频数据完整性的保护设备的示意性结构的框图;\n[0037] 图15是示出根据本公开的一个具体实施例的可实现视频数据中的隐私保护的、视频数据完整性的验证设备的示意性结构的框图;\n[0038] 图16是示出根据本公开的另一具体实施例的可实现视频数据中的隐私保护的、视频数据完整性的验证设备的示意性结构的框图;\n[0039] 图17是示出可实现隐私保护的、视频数据完整性的保护系统的一个具体应用示例的示意图;以及\n[0040] 图18示出用于实现本公开的计算机的结构的示例性框图。\n具体实施方式\n[0041] 下面参照附图来说明本公开的实施例。在本公开的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。应当注意,为了清楚的目的,附图和说明中省略了与本公开无关的、本领域普通技术人员已知的部件和处理的表示和描述。\n[0042] 本公开的实施例提供了对视频数据的完整性进行保护和验证的方法、设备和系统。\n[0043] 图1是示出了根据本公开的一个实施例的数据保护方对视频数据的完整性进行保护的方法的示意性流程图。在图1示出的实施例中,沿着视频数据的至少两个方向进行数据分割,得到至少两组数据块;并将分别根据这两组数据块中的每一组数据块计算得到的所述至少两个方向上的完整性信息作为视频数据的完整性信息。\n[0044] 如图1所示,该方法可以包括步骤102和104。\n[0045] 具体地,在步骤102中,分别按照宽、高和时间三个方向中的至少两个方向中的每一个对待保护的视频数据进行分割,得到至少两组数据块。换言之,每组数据块对应所述至少两个方向中的一个,并包括沿着该方向对待保护的视频数据进行分割得到的多个数据块。\n[0046] 图2示出了沿视频数据的宽、高或时间方向对视频数据进行分割的示例,其中,图2(A)示出了沿视频数据的高方向进行分割的示例,图2(B)示出了沿视频数据的宽方向进行分割的示例,图2(C)示出了沿视频数据的时间方向(即帧方向)进行分割的示例。\n[0047] 如图2(A)所示,假设待保护的视频数据包括N帧图像F1,...,Fn,...,FN(1≤n≤N,N>1),沿着视频数据的高的方向可以将第n帧数据Fn(1≤n≤N)分割称为I块Hn1,...,Hni,...,HnI(1≤i≤I)(图中仅示出了第i块Hni),则N帧数据中的每帧数据的第i块H1i,...,i i i\nHn,...,HN(图2(A)中示为黑色的图像块)构成沿高方向分割得到的第i个数据块Bh,即:\n[0048] Bhi={H1i,...,Hni,...,HNi},\n[0049] 所得到的I个数据块构成沿数据的高方向的一组数据块Grouph:\n[0050] Grouph={Bh1,...,Bhi,...,BhI}\n[0051] 如图2(B)所示,仍假设待保护的视频数据包括N帧图像F1,...,Fn,...,FN(1≤n≤N,N>1),沿着视频数据的宽的方向可以将第n帧数据Fn(1≤n≤N)分割称为J块Wn1,...,Wnj,...,WnJ(1≤j≤J)(图中仅示出了第j块Wnj),则N帧数据中的每帧数据的第j块Wn1,...,Wnj,...,WnJ(图2(B)中示为黑色的图像块)构成沿高方向分割得到的第j个数据块Bwj,即:\n[0052] Bwj={Wn1,...,Wnj,...,WnJ},\n[0053] 所得到的J个数据块构成沿数据的宽方向的一组数据块Groupw:\n[0054] Groupw={Bw1,...,Bwj,...,BwJ}\n[0055] 如图2(C)所示,仍假设待保护的视频数据包括N帧图像F1,...,Fn,...,FN(1≤n≤N,N>1)。假设沿着视频数据的时间方向,将每m(m≥1)个图像帧作为一个数据块,则可以数据可被分成K个数据块Bf1,...,Bfk,...,BfK(K=N/m),其中每个数据块包括m帧图像,例如第k个数据块Bfk为:\n[0056] Bfk={Fkm+1,...,F2km},1≤k≤K,K=N/m\n[0057] 所得到的K个数据块构成沿数据的时间方向的一组数据块Groupf:\n[0058] Groupf={Bf1,...,Bfk,...,BfK}\n[0059] 根据用户的不同需求,可以选择上述三个方向中的两个或三个来计算所选方向上的完整性信息。作为一个示例,如果用户对于数据验证和错误(如篡改)定位的精度要求不高,则可以在宽、高和时间这三个方向中选择两个方向,并分别沿每个所选方向对视频数据进行分割,从而得到沿这两个方向的两组数据块,每组数据块对应一个方向。作为另一示例,如果用户对于数据验证和错误定位的精度要求较高,则可以沿宽、高和时间方向中的每一个对视频数据进行分割,从而得到三组数据块,每组数据块对应一个方向。\n[0060] 然后,在步骤104中,计算每组数据块的完整性信息。根据每组数据块得到的完整性信息作为视频数据在相应方向上的完整性信息。通过计算所述至少两组数据块的完整性信息,得到视频数据在所述至少两个方向上的完整性信息,作为视频数据的完整性信息。\n[0061] 可以采用任何适当的方法来计算每组数据块的完整性信息,例如可以采用数字哈希、数字签名或数字时间戳或其它算法,这里不一一列举。\n[0062] 步骤104中计算得到的完整性信息可以作为原始完整性信息存储在存储单元(图中未示出)中,以用于后续的数据验证。或者,所述原始完整性信息可以被发送到数据的验证方,用于后续的数据验证。\n[0063] 图3示出了根据该实施例的数据验证方对视频数据的完整性进行验证的方法的示意性流程图。图3所示的验证方法与图1所示的保护方法对应。\n[0064] 如图3所示,所述验证方法可以包括步骤322、324和326。\n[0065] 在步骤322中,按待验证的视频数据的宽、高和时间三个方向中的至少两个方向中的一个方向(为了描述方便,下文称为第一分割方向)对待验证的视频数据进行分割,得到沿该第一分割方向的一组数据块。\n[0066] 这里所述的至少两个方向与参考图1和图2说明的保护方法中所述的至少两个方向一致。例如,如果在对原始视频数据进行保护时分别沿宽、高这两个方向对数据进行分割并将视频数据在宽、高方向上的完整性信息作为整个原始视频数据的完整性信息,那么,在进行验证时,也要沿宽或高方向对待验证的数据进行分割。\n[0067] 可以采用上文参考图2描述的分割方法对数据进行分割,这里不再重复。\n[0068] 然后,在步骤324中,计算沿第一分割方向的该组数据块的完整性信息,作为待验证的视频数据在该第一分割方向上的、待验证的完整性信息。\n[0069] 所采用的计算完整性信息的方法应与参考图1和图2描述的保护方法中的计算方法一致。例如,可以采用数字哈希、数字签名或者数字时间戳等任何适当的方法,这里不一一列举。\n[0070] 然后,在步骤326中,根据步骤324中计算得到的待验证的完整性信息以及该第一分割方向上的原始完整性信息,来判断待验证的视频数据是否完整。如果第一分割方向上的待验证的完整性信息与该第一分割方向上的原始完整性信息一致,则可以确定待验证的视频数据是完整的;否则,则可以确定待验证的视频数据与原始视频数据不一致,是不完整的。\n[0071] 如上所述,原始完整性信息可以保存在存储单元(未示出)中或者可以被发送到数据验证方。因此,数据验证方可以从所得到的原始视频数据的原始完整性信息中选择相应方向(如第一分割方向)上的完整性信息,这里不作详述。\n[0072] 图4示出了根据一具体实施例的视频数据完整性的验证方法。当判断出待验证的视频数据不完整(步骤326)时,如果验证方还需要定位发生错误的位置(即待验证的视频数据中与原始视频数据不一致的位置),则可以采用图4所示的方法来定位。在该具体实施例中,可以采用图4所示的步骤328、330和332来进一步定位发生错误的位置。\n[0073] 如图4所示,当确定待验证的视频数据不完整时,可以在步骤328中按上述至少两个方向中的至少一个另一方向(称为第二分割方向)对待验证的视频数据进行分割,得到沿第二分割方向的一组数据块。\n[0074] 然后,在步骤330中,计算沿所述第二分割方向的该组数据块的完整性信息,作为该第二分割方向上的、待验证的完整性信息。可以采用与步骤324中相同的方法来计算完整性信息,这里不再重复。\n[0075] 最后,根据所述至少两个方向(如第一分割方向和第二分割方向)上的待验证的完整性信息以及所述至少两个方向上的原始完整性信息,来定位待验证的视频数据中发生错误的位置。具体地,可以比较所述至少两个方向(如第一分割方向和第二分割方向)上的待验证的完整性信息以及所述至少两个方向上的原始完整性信息,以确定二者不一致的部分,与所述不一致的部分对应的视频数据块即待验证的视频数据中发生错误的数据块。\n[0076] 作为一个示例,在采用两个方向(如上述第一分割方向和第二分割方向)上的完整性信息来定位错误的情况下,用户可以定位所发生的错误在这两个方向上的位置。例如,如果仅采用第一分割方向和第二分割方向上的完整性信息且第一分割方向和第二分割方向分别对应视频数据的宽和高方向,则可以定位错误在宽、高方向上的位置,但不能定位该错误发生在哪一图像帧。该示例适用于用户需要定位错误、同时对定位精度的要求不高的情况。\n[0077] 作为另一示例,可以计算待验证的视频数据在所有三个方向(宽、高和时间)上的待验证的完整性信息,将这三个方向上的待验证的完整性信息分别与这三个方向上的原始完整性信息相比较,从而精确定位错误发生的位置,即定位错误发生在哪一图像帧(即该错误在时间方向上的位置)及其在该图像帧中的位置(即该错误在宽和高方向上的位置)。该示例适用于用户对错误定位的精度要求比较高的情况。\n[0078] 以上文所描述的沿图2所示的三个方向对视频数据分割所得到的三组数据块Grouph={Bh1,...,Bhi,...,BhI}、Groupw={Bw1,...,Bwj,...,BwJ}和Groupf={Bf1,...,Bfk,...,BfK}为例,假设这三个方向上的原始完整性信息分别表示为:\n[0079] OIh={OIBh1,...,OIBhi,...,OIBhI}\n[0080] OIw={OIBw1,...,OIBwj,...,OIBwJ}\n[0081] OIf={OIBf1,...,OIBfk,...,OIBfK}\n[0082] 这三个方向上的待验证的完整性信息分别表示为:\n[0083] VIh={VIBh1,...,VIBhi,...,VIBhI}\n[0084] VIw={VIBw1,...,VIBwj,...,VIBwJ}\n[0085] VIf={VIBf1,...,VIBfk,...,VIBfK}\n[0086] 其中,OIBhi表示原始视频数据中的数据块Bhi的完整性信息,OIBwj表示原始视频数据中的数据块Bwj的完整性信息,而OIBfk表示原始视频数据中的数据块Bfk的完整性信息;\nOIh、OIw、OIf分别表示原始视频数据在高、宽和时间(帧)方向上的完整性信息。VIBhi表示待i j\n验证的视频数据中按高方向分割得到的数据块VBh的完整性信息,VIBw表示待验证的视频数据中按宽方向分割得到的数据块VBwj的完整性信息,而VIBfk表示待验证的视频数据中按时间方向分割得到的数据块VBfk的完整性信息;VIh、VIw、VIf分别表示待验证的视频数据在高、宽和时间(帧)方向上的完整性信息。通过比较上述待验证的完整性信息以及原始完整i i j j k k\n性信息,如果发现OIBh≠VIBh、OIBw≠VIBw且OIBf ≠VIBf ,则可以确定待验证的视频数据中在高、宽和时间方向上的位置为(i,j,k)的区域发生了错误。\n[0087] 在以上实施例和/或示例中,在数据保护方,计算待保护的视频数据在至少两个方向上的完整性信息,作为待保护的视频数据的原始完整性信息。相应地,在数据验证方,则通过将待验证的视频数据在所述至少两个方向中的一个方向上的待验证的完整性信息与相应方向上的原始完整性信息进行比较来判断待验证的视频数据的完整性。在待验证的视频数据不完整的情况下,还可以根据一个或更多个其它方向上的待验证的完整性信息以及相应方向上的原始完整性信息来准确定位发生错误的位置。\n[0088] 由于采用了至少两个方向上的完整性信息,因此,根据上述实施例的保护或验证方法是确定性的方法,可以准确定位待验证的视频数据中的篡改位置,与现有的概率性方法相比具有更高的可信度。\n[0089] 另外,根据用户对于定位错误(如篡改)的精度的要求不同,可以采用计算复杂度和定位精度折衷的数据完整性保护和验证方法。例如,在视频监视应用中,有时需要对视频监控范围内的某个固定区域进行隐私遮盖,也就是说,视频数据中的每帧图像的同一区域都需要进行修改或者加密。在这种情况下,在生成完整性信息时可以只计算视频数据在宽、高两个方向上的完整性信息。这样可以降低计算复杂度,而在后续数据验证时,仍可以准确定位每帧视频中发生修改的位置。\n[0090] 此外,在进行视频数据的完整性验证时可以仅选择所述至少两个方向中的一个(第一分割方向)并仅比较在该第一分割方向上的待验证的完整性信息以及该方向上的原始完整性信息,而不必选择所述至少两个方向中的所有方向(即仅在确定待验证的视频数据不完整且需要定位发生错误的位置时才使用其它方向(第二分割方向和/或第三分割方向)上的完整性信息),这样可以减少计算量,提高数据完整性验证的效率。\n[0091] 此外,上述实施例/示例可以与现有的逐帧保护的方法相兼容。例如,当用户需要逐帧保护时,可以在视频数据的每个图像帧内进行宽和高方向上的分割,并分别计算该帧在宽和高方向上的完整性信息。相应地,在进行完整性验证时,可以对每帧单独进行验证,即在每帧内对宽和高方向上的完整性进行验证,以定位发生错误的位置。这样,可以容易地进行逐帧验证,并易于与现有的逐帧保护方法兼容。\n[0092] 图5示出了根据另一实施例的用于在数据保护方对待保护的视频数据进行保护的方法。该实施例与上文参考图1-4所描述的实施例/示例相似,不同之处在于,在该实施例中,在对待保护的视频数据进行分割之前,可以首先对这些数据进行预处理。\n[0093] 如图5所示,可以在步骤512中,根据待保护的视频数据的编码格式,对待保护的视频数据进行格式解析、部分解码或完全解码等预处理。作为一个示例,可以对视频数据进行完全“解码”以获得未压缩的视频数据。作为另一示例,仅解析压缩格式的视频数据的编码格式,获取其有关数据分块(如宏块组)的信息。在该示例中,不需要进行完全“解码”操作,只需用解析得到视频数据的编码格式或者反向熵编码(视频压缩的最后一个步骤)。如果视频数据未被压缩,则可以不进行预处理操作。然后,在后续步骤中对经过预处理的视频文件进行分割(如步骤502。该步骤与步骤102相似,这里不再重复)、至少两个方向上的完整性信息的计算(如步骤504。该与步骤104相似,这里不再重复)等处理。\n[0094] 图6示出了根据该实施例的、数据验证方对待验证的视频数据进行验证的方法。与图5所示的保护方法对应,图6的验证方法可以包括对视频数据进行预处理的步骤。\n[0095] 如图6所示,在步骤642中,根据待验证的视频数据的编码格式,对待验证的视频数据进行格式解析、部分解码或完全解码等预处理。然后在后续步骤中对经过预处理的视频数据进行分割(如步骤622。该步骤与步骤322相似,这里不再重复)、完整性信息的计算(如步骤624。该步骤与步骤324相似,这里不再重复)以及完整性判断(如步骤626。该步骤与步骤326相似,这里不再重复)等处理。\n[0096] 以待保护(或者待验证)的视频数据为一个包括4秒的视频段的MJPEG(Motion Joint Photographic Experts Group,运动联合图像专家组)格式的视频文件为例,其中,帧速率为30帧每秒,即该视频文件包括120帧图像。每帧图像使用JPEG(Joint \nPhotographic Experts Group,联合图像专家组)编码方法进行独立编码,每帧图像的宽度和高度分别为1280和960像素,且每帧图像包括16×16个宏块。通之对该视频文件进行预处理(格式解析、部分解码或完全解码等),可以提取每一图像帧的宏块信息。\n[0097] 作为一个示例,在后续步骤中对经过预处理的视频文件进行分割时,可以用每个宏块的宽或高为单位对视频文件在宽或高方向上进行分割。例如,假设采用所有三个方向对视频文件进行分割(步骤502),那么按照图2(A)所示的方法沿高方向对该视频文件进行分割,可以得到60个数据块(960/16=60),即Grouph={Bh1,...,Bhi,...,Bh60}(1≤i≤60);\n按照图2(B)所示的方法沿宽方向对该视频文件进行分割,可以得到80个数据块(1280/16=\n80),即Groupw={Bw1,...,Bwj,...,Bw80}(1≤j≤80);按照图2(C)所示的方法沿时间方向对该视频文件进行分割且每个数据块包括1帧图像,可以得到120个数据块,即Groupf={Bf1,...,Bfk,...,Bf120}(1≤k≤120)。假设采用哈希算法来计算每组数据块的完整性信息(步骤504),如下式所示:\n[0098] Ihi=Hash(Bhi),\n[0099] Iwj=Hash(Bwj),\n[0100] Ifk=Hash(Bfk)\n[0101] 这样计算得到的各个哈希值可以作为视频文件的完整性信息。作为一个具体示例,可以采用SHA256算法(哈希长度为32字节)来计算各个数据块的哈希值。仍以上述视频文件为例,由于三个方向共260个数据块(80+60+120=260),因此,可以得到共计7680字节(32×260=7680)个哈希值。这些哈希值即可构成视频文件的完整性信息。\n[0102] 在上述实施例/示例中,对视频数据进行分割的方法与该视频数据的压缩方法的分块方法相适应(即以宏块的宽和高分别作为在宽和高方向上进行分割的单位),从而与视频数据的编解码算法相匹配,这种方法具有易于在软硬件上实现的优点。\n[0103] 在另一示例中,可选地,图5所示的保护方法还可以包括对待保护的视频数据进行分段的步骤(图中所示虚线框514)。如果待保护的视频数据过大,可以在步骤514中将待保护的视频数据分成多个数据段。然后,在步骤502中,分别按照宽、高和时间三个方向中的至少两个方向的每一个对每个数据段进行分割,得到与每个数据段对应的、分别沿所述至少两个方向的至少两个数据块集合。然后,在步骤504中,分别计算与每个数据段对应的、分别沿所述至少两个方向的两个数据块集合的完整性信息,作为每个数据段的完整性信息。作为一个示例,可以将这多个数据段的完整性信息直接作为待保护的视频数据的完整性信息。作为另一示例,还可以在所述至少两个方向中的每一个方向上,将所述多个数据段的沿该方向的数据块集合用哈希链或哈希树链接起来,得到待保护的视频数据在所述至少两个方向上的完整性信息,作为待保护的视频数据的完整性信息。\n[0104] 相应地,图6所示的验证方法还可以包括对待验证的视频数据进行分段的步骤(图中所示虚线框644),即将待验证的视频数据分成多个数据段。然后,在步骤622中,分别按照所述至少两个方向的一个方向(称为第一分割方向)对每个数据段进行分割,得到与每个数据段对应的、沿第一分割方向的数据块集合。然后,在步骤624中,计算与每个数据段对应的、沿第一分割方向的数据块集合的完整性信息,作为每个数据段在该第一分割方向上的完整性信息。作为一个示例,可以将这多个数据段的该第一分割方向上的完整性信息直接作为待保护的视频数据在该第一分割方向上的完整性信息。作为另一示例,还可以将所述多个数据段的沿该第一分割方向的数据块集合用哈希链或哈希树链接起来,得到待保护的视频数据在该第一分割方向上的完整性信息。然后,在步骤626中,利用待验证的视频数据在第一分割方向上的完整性信息以及所得到的在该第一分割方向上的原始完整性信息来判断待验证的视频数据是否完整。\n[0105] 下面描述根据本公开的实施例的视频数据完整性的保护和验证设备。\n[0106] 图7示出了根据一实施例的视频数据完整性保护设备;图8示出了根据该实施例的相应的视频数据完整性验证设备。\n[0107] 图7所示的视频数据完整性保护设备700可以采用参考图1-2描述的方法来进行视频数据的完整性保护。如图7所示,视频数据完整性保护设备700可以包括数据分割装置701和完整性信息生成装置703。\n[0108] 数据分割装置701分别按照宽、高和时间三个方向中的至少两个方向中的每一个对待保护的视频数据进行分割,得到至少两组数据块。换言之,每组数据块对应一个分割方向,包括沿着该方向对待保护的视频数据进行分割得到的多个数据块。具体地,数据分割装置701可以按照图2所示的方法在某个方向(如宽、高或时间方向)上对视频数据进行分割,这里不再重复。\n[0109] 与上文的方法实施例/示例相似,根据用户的不同需求,数据分割装置701可以选择上述三个方向中的两个或三个来进行数据分割。作为一个示例,如果用户对于数据验证和错误(如篡改)定位的精度要求不高,则可以在宽、高和时间这三个方向中选择两个方向,并分别沿每个所选方向对视频数据进行分割,从而得到沿这两个方向的两组数据块,每组数据块对应一个方向。作为另一示例,如果用户对于数据验证和错误定位的精度要求较高,则可以沿宽、高和时间方向中的每一个对视频数据进行分割,从而得到三组数据块,每组数据块对应一个方向。\n[0110] 数据分割装置将分割得到的至少两组数据块输出到完整性信息生成装置703。完整性信息生成装置703计算每组数据块的完整性信息,从而得到至少两个方向上的完整性信息,作为视频数据的完整性信息。完整性信息生成装置703可以采用任何适当的方法来计算每组数据块的完整性信息,例如可以采用数字哈希、数字签名或数字时间戳或其它算法,这里不一一列举。\n[0111] 完整性信息生成装置703计算得到的完整性信息可以作为原始完整性信息存储在存储单元(图中未示出)中,以用于后续的数据验证。或者,所述原始完整性信息可以被发送到数据的验证方,用于后续的数据验证。\n[0112] 图8所示的视频数据完整性验证设备810可以采用参考图3或图4描述的方法来进行视频数据的完整性验证。\n[0113] 如图8所示,视频数据完整性验证设备810可以包括数据分割装置811、完整性信息生成装置813和完整性验证装置815。\n[0114] 数据分割装置811按待验证的视频数据的宽、高和时间三个方向中的至少两个方向中的一个方向(为了描述方便,下文称为第一分割方向)对待验证的视频数据进行分割,得到沿该第一分割方向的一组数据块,并将该组数据块输出到完整性信息生成装置813。这里所述的至少两个方向与保护设备700的数据分割装置701所采用的“至少两个方向”一致。\n数据分割装置811可以采用上文参考图2描述的分割方法对数据进行分割,这里不再重复。\n[0115] 然后,完整性信息生成装置813计算沿第一分割方向的该组数据块的完整性信息,作为待验证的视频数据在该第一分割方向上的、待验证的完整性信息,并将该待验证的完整性信息输出到完整性验证装置815。完整性信息生成装置813所采用的计算完整性信息的方法应与保护设备700的完整性信息生成装置703所采用的计算方法一致。例如,可以采用数字哈希、数字签名或者数字时间戳等任何适当的方法,这里不一一列举。\n[0116] 然后,完整性验证装置815根据完整性信息生成装置813计算得到的待验证的视频数据在第一分割方向上的待验证的完整性信息以及该第一分割方向上的原始完整性信息,来判断待验证的视频数据是否完整。如果第一分割方向上的待验证的完整性信息与该第一分割方向上的原始完整性信息一致,则完整性验证装置815可以确定待验证的视频数据是完整的;否则,完整性验证装置815可以确定待验证的视频数据与原始视频数据不一致,是不完整的。\n[0117] 如上所述,原始完整性信息可以保存在存储单元(未示出)中或者可以被发送到数据验证方。因此,完整性验证装置815可以从所得到的原始视频数据的原始完整性信息中选择相应方向(如第一分割方向)上的完整性信息,这里不作详述。\n[0118] 作为一具体实施例,当完整性验证装置815判断出待验证的视频数据不完整时,如果验证方还需要定位发生错误的位置(即待验证的视频数据中与原始视频数据不一致的位置),则可以指示数据分割装置811在一个或更多个其它方向(宽、高和时间这三个方向中除了第一分割方向之外的其它方向)上对待验证的视频数据进行进一步分割并指示完整性信息生成装置813计算待验证的视频数据在其它方向上的待验证的完整性信息。具体地,数据分割装置811可以按上述至少两个方向中的至少一个另一方向(称为第二分割方向)对待验证的视频数据进行分割,得到沿第二分割方向的一组数据块,并将该组数据块输出到完整性信息生成装置813。完整性信息生成装置813计算沿第二分割方向的该组数据块的完整性信息,作为待验证的视频数据在该第二分割方向上的、待验证的完整性信息。完整性信息生成装置813可以采用与步骤324中相同的方法来计算完整性信息,这里不再重复。完整性验证装置815根据所述至少两个方向(如第一分割方向和第二分割方向)上的待验证的完整性信息以及所述至少两个方向上的原始完整性信息,来定位待验证的视频数据中发生错误的位置。\n[0119] 作为一个示例,在采用两个方向(如上述第一分割方向和第二分割方向)上的完整性信息来定位错误的情况下,用户可以定位所发生的错误在这两个方向上的位置。例如,如果仅采用第一分割方向和第二分割方向上的完整性信息且第一分割方向和第二分割方向分别对应视频数据的宽和高方向,则可以定位错误在宽、高方向上的位置,但不能定位该错误发生在哪一图像帧。该示例适用于用户需要定位错误、同时对定位精度的要求不高的情况。\n[0120] 作为另一示例,可以计算待验证的视频数据在所有三个方向(宽、高和时间)上的待验证的完整性信息,将这三个方向上的待验证的完整性信息分别与这三个方向上的原始完整性信息相比较,从而精确定位错误发生的位置,即定位错误发生在哪一图像帧(即该错误在时间方向上的位置)及其在该图像帧中的位置(即该错误在宽和高方向上的位置)。该示例适用于用户对错误定位的精度要求比较高的情况。\n[0121] 上文参考图7描述的保护设备700和参考图8描述的验证设备810构成了一个视频数据完整性的保护系统。\n[0122] 在以上视频数据完整性保护和验证设备中,在数据保护方(视频数据完整性保护设备),计算待保护的视频数据在至少两个方向上的完整性信息,作为待保护的视频数据的原始完整性信息。相应地,在数据验证方(视频数据完整性验证设备),则通过将待验证的视频数据在所述至少两个方向中的一个方向上的待验证的完整性信息与相应方向上的原始完整性信息进行比较来判断待验证的视频数据的完整性。在待验证的视频数据不完整的情况下,还可以根据一个或更多个其它方向上的待验证的完整性信息以及相应方向上的原始完整性信息来准确定位发生错误的位置。\n[0123] 由于采用了至少两个方向上的完整性信息,因此,根据上述实施例的保护或验证设备采用的方法是确定性的方法,可以准确定位待验证的视频数据中的篡改位置,与现有的采用概率性方法的保护和验证设备相比具有更高的可信度。\n[0124] 另外,根据用户对于定位错误(如篡改)的精度的要求不同,上述保护和验证设备还可以采用计算复杂度和定位精度适当的数据完整性保护和验证方法。\n[0125] 此外,在进行视频数据的完整性验证时上述验证设备可以仅选择所述至少两个方向中的一个(第一分割方向)并仅比较在该第一分割方向上的待验证的完整性信息以及该方向上的原始完整性信息,而不必选择所述至少两个方向中的所有方向(即仅在确定待验证的视频数据不完整且需要定位发生错误的位置时才使用其它方向(第二分割方向和/或第三分割方向)上的完整性信息),这样可以减少计算量,提高数据完整性验证的效率。\n[0126] 此外,上述实施例/示例中的保护和验证设备可以与现有的采用逐帧保护方法的设备相兼容,当用户只需要逐帧保护时,可以容易地进行逐帧验证。\n[0127] 图9示出了根据另一实施例的视频数据完整性保护设备;图10示出了根据该实施例的相应的视频数据完整性验证设备。\n[0128] 图9所示的视频数据完整性保护设备900可以采用参考图5描述的方法来进行视频数据的完整性保护。如图9所示,视频数据完整性保护设备900包括数据分割装置901和完整性信息生成装置903,并且还可以包括解码装置905。\n[0129] 解码装置905可以根据待保护的视频数据的编码格式,对待保护的视频数据进行格式解析、部分解码或完全解码等预处理,并将经过预处理的视频数据输出到数据分割装置901。数据分割装置901和完整性信息生成装置903分别可以采用与数据分割装置801和完整性信息生成装置803相似的功能分别进行对经过预处理的视频数据的分割、至少两个方向上的完整性信息的计算等处理,这里不再重复。\n[0130] 相应地,图10所示的视频数据完整性保护设备1010可以采用参考图6描述的方法来进行视频数据的完整性验证。如图10所示,除了数据分割装置1011、完整性信息生成装置\n1013和完整性验证装置1015之外,视频数据完整性保护设备900还包括解码装置1017。\n[0131] 解码装置1017根据待验证的视频数据的编码格式,对待验证的视频数据进行格式解析、部分解码或完全解码等预处理,然后将经过预处理的视频数据输出到数据分割装置\n1011。数据分割装置1011、完整性信息生成装置1013和完整性验证装置1015分别采用与数据分割装置811、完整性信息生成装置813和完整性验证装置815相似的功能,进行对经过预处理的视频数据的分割、完整性信息的计算以及完整性判断等处理,这里不再重复。\n[0132] 在图9和图10所示的设备中,通过对视频数据进行预处理(格式解析、部分解码或完全解码等),可以提取每一图像帧的宏块信息。这样,在对经过预处理的视频数据进行分割时,可以用每个宏块的宽或高为单位对视频文件在宽或高方向上进行分割,从而与视频数据的编解码算法相匹配,这种方法具有易于在软硬件上实现的优点。\n[0133] 作为另一示例,可选地,图9所示的数据分割装置901还可以将待保护的视频数据分成多个数据段。然后,数据分割装置901分别按照宽、高和时间三个方向中的至少两个方向的每一个对每个数据段进行分割,得到与每个数据段对应的、分别沿所述至少两个方向的至少两个数据块集合。然后,完整性信息生成装置903分别计算与每个数据段对应的、分别沿所述至少两个方向的两个数据块集合的完整性信息,作为每个数据段的完整性信息。\n作为一个示例,完整性信息生成装置903可以将这多个数据段的完整性信息直接作为待保护的视频数据的完整性信息。作为另一示例,完整性信息生成装置903还可以在所述至少两个方向中的每一个方向上,将所述多个数据段的沿该方向的数据块集合用哈希链或哈希树链接起来,得到待保护的视频数据在所述至少两个方向上的完整性信息,作为待保护的视频数据的完整性信息。\n[0134] 相应地,图10所示的数据分割装置1011还可以将待验证的视频数据分成多个数据段,然后分别按照所述至少两个方向的一个方向(称为第一分割方向)对每个数据段进行分割,得到与每个数据段对应的、沿第一分割方向的数据块集合。完整性信息生成装置1013计算与每个数据段对应的、沿第一分割方向的数据块集合的完整性信息,作为每个数据段在该第一分割方向上的完整性信息。作为一个示例,完整性信息生成装置1013可以将这多个数据段的该第一分割方向上的完整性信息直接作为待保护的视频数据在该第一分割方向上的完整性信息。作为另一示例,完整性信息生成装置1013还可以将所述多个数据段的沿该第一分割方向的数据块集合用哈希链或哈希树链接起来,得到待保护的视频数据在该第一分割方向上的完整性信息。然后,完整性验证装置1015利用待验证的视频数据在第一分割方向上的完整性信息以及所得到的在该第一分割方向上的原始完整性信息来判断待验证的视频数据是否完整。\n[0135] 上文参考图9描述的保护设备900和参考图10描述的验证设备1010构成了一个视频数据完整性的保护系统。\n[0136] 图11示出了根据本公开的另一实施例的用于实现隐私保护的视频数据的完整性保护的方法,图12和图13分别示出了相应的用于实现隐私保护的视频数据的完整性验证的方法。\n[0137] 在图11所示的完整性保护方法中,首先按照上文中参考图1-2或图5描述的方法来生成待保护的原始视频数据的完整性信息,作为原始完整性信息。为了叙述简洁,这里不再重复生成原始完整性信息的具体流程(图11中也未示出)。\n[0138] 另外,根据不同的应用需求,在生成原始完整性信息时,可以从宽、高和时间这三个方向中选择两个或三个来计算所选方向上的完整性信息。作为一个示例,如果用户对于数据验证和隐私遮盖区域定位的精度要求较高,则可以沿宽、高和时间方向中的每一个对视频数据进行分割,得到三组数据块,并计算视频数据在所有三个方向上的完整性信息。作为另一示例,如果用户对于数据验证和隐私遮盖区域定位的精度要求不高,则可以根据需要在宽、高和时间这三个方向中选择两个方向,并分别沿每个所选方向对视频数据进行分割,以得到沿这两个方向的两组数据块,并计算视频数据在这两个方向上的完整性信息。例如,在视频监视应用中,有时需要对视频监控范围内的某个固定区域进行隐私遮盖,也就是说,视频数据中的每帧图像的同一区域都需要进行加密或修改。在这种情况下,可以只计算视频数据在宽、高两个方向上的完整性信息。这样可以降低计算复杂度,而在后续数据验证时,仍可以准确定位每帧视频中发生修改或加密的位置。\n[0139] 如图11所示,在生成原始完整性信息之后,在步骤1106中,对原始视频数据中的待保护区域的数据进行加密。然后,用经加密的数据来替换原始视频数据中的待保护区域的原始数据,形成经加密的视频数据。这里所述的待保护区域也称为加密区域,例如可以是原始视频数据中需要进行隐私遮盖的区域。可以采用任何适当的加密算法对待保护区域进行加密,例如可以采用AES(Advanced Encryption Standard,高级加密标准(美国))算法、SM1加密算法(中国商用国家密码管理公布的加密算法标准)或其它加密算法,这里不作详述。\n[0140] 然后,在步骤1108中,根据原始完整性信息以及有关待保护区域在原始视频数据中的位置的信息来生成验证信息。可以采用任何适当的方法来生成验证信息,例如,可以采用数字签名或数字时间戳或者其它方法,这里不作详述。\n[0141] 所得到的原始完整性信息以及验证信息可以存储在存储单元(图中未示出)中,以用于后续的数据验证。或者,所述原始完整性信息以及验证信息可以被发送到数据的验证方,用于后续的数据验证。这里不作详述。\n[0142] 如果数据验证方(或用户)没有解密密钥,则可以采用图12所示的验证方法进行数据完整性验证。如果数据验证方(或用户)有解密密钥,则可以采用图13所示的验证方法进行数据完整性验证。下面描述图12和图13所示的数据完整性验证方法。\n[0143] 在图12所示的验证方法中,首先按照上文中参考图1-2或图5描述的方法来生成待验证的视频数据(如上所述,该待验证的视频数据中包括加密区域,加密区域中的数据经加密保护)的完整性信息,作为待验证的完整性信息。为了叙述简洁,这里不再重复生成待验证的完整性信息的具体流程(图12中也未示出)。\n[0144] 然后,在步骤1210中,根据待验证的完整性信息和原始视频数据的原始完整性信息来定位待验证的视频数据中与原始视频数据不一致的区域的位置。具体地,可以比较待验证的完整性信息和原始完整性信息,以确定二者不一致的部分,而不一致的部分所对应的视频数据的区域即待验证的视频数据中与原始视频数据不一致的区域。可以采用上文实施例/示例中描述的方法(如参考图4所描述的方法)来定位待验证的视频数据中与原始视频数据不一致的区域的位置,这里不再重复。\n[0145] 然后,在步骤1212中,将步骤1210中所定位的位置与加密区域(即上文的待保护区域)的位置相比较,以判断待验证的视频数据是否完整。具体地,如果步骤1210中所定位的位置与加密区域的位置一致,则可以确定待验证的视频数据是完整的;否则,可以确定待验证的视频数据是不完整的。\n[0146] 待验证的视频数据中的加密区域对应于上文所述的原始视频数据中的待保护区域。有关加密区域的位置的信息可以与原始完整性信息和验证信息一起存储在存储装置(图中未示出)中。在进行数据完整性验证时,可以从该存储装置中读取有关加密区域的位置的信息。或者,可以从存储有原始完整性信息和验证信息的存储装置中读取原始完整性信息和验证信息,并根据该验证信息来得到有关加密区域的位置的信息。这里不作详述。\n[0147] 在图13所示的方法中,首先在步骤1320中获取待验证的视频数据的密钥,并获取有关所述待验证的视频数据中的加密区域的位置的信息。如上所述,有关加密区域的位置的信息可以与原始完整性信息和验证信息一起存储在存储装置(图中未示出)中;或者,可以从存储有原始完整性信息和验证信息的存储装置中读取原始完整性信息和验证信息,并根据该验证信息来得到有关加密区域的位置的信息。\n[0148] 然后,在步骤1322中,利用密钥对待验证的视频数据中的加密区域的数据进行解密,并用经解密的数据替换待验证的视频数据中的加密区域的加密数据,得到解密视频数据。\n[0149] 在得到解密视频数据之后,即可按照上文参考图3或图6所描述的方法来验证解密视频数据是否完整,这里不再重复。如果解密视频数据是完整的,则可以确定待验证的视频数据是完整的;否则,可以确定待验证的视频数据不完整。\n[0150] 在一个具体示例中,假设原始视频数据为H.264格式的视频数据。在这种格式的视频数据中,图像帧分类为I帧、P帧和B帧,其中,I帧是参考帧,每帧独立编码;而P帧和B帧包括帧间编码,即参考前后的其它帧进行编码。可以采用例如步骤512或642所示的方法对视频数据进行预处理,例如,可以仅提取I帧的宏块信息。生成原始完整性信息的方法与上文实施例/示例相同,这里不再重复。在如图11所示生成加密视频数据时,如果需隐私保护的区域(待保护区域)不在I帧而在P帧,则将该区域的位置前向扩展到该P帧之前的I帧;如果隐私保护的区域(待保护区域)在B帧,则将该区域的位置双向(前向和后向)扩展到该B帧之前的I帧和该B帧之后的I帧。然后,可以对扩展的区域进行加密,并用加密数据替换扩展的区域中的原数据,从而形成加密的视频数据,这里不再重复。\n[0151] 图14示出了根据本公开一实施例的用于实现隐私保护的视频数据完整性的保护设备,图15和图16分别示出了相应的用于实现隐私保护的视频数据完整性的验证设备。\n[0152] 图14的保护设备可以采用图11所示的方法来进行视频数据的完整性保护,并实现视频数据的隐私保护。\n[0153] 如图14所示,保护设备1400可以包括数据分割装置1401、完整性信息生成装置\n1403、加密装置1407以及验证信息生成装置1409。\n[0154] 数据分割装置1401和完整性信息生成装置1403可以按照上文中参考图1-2或图5描述的方法来生成待保护的原始视频数据的完整性信息,作为原始完整性信息。具体地,数据分割装置1401分别按照原始视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对原始视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块。每组数据块对应所述至少两个方向中的一个。数据分割装置1401将分割得到的至少两组数据块输出到完整性信息生成装置1403。完整性信息生成装置1403计算每组数据块的完整性信息。根据每组数据块得到的完整性信息作为原始视频数据在相应方向上的完整性信息。这样即可得到原始视频数据在所述至少两个方向上的完整性信息,作为原始视频数据的原始完整性信息。数据分割装置1401的功能与上文描述的数据分割装置701或901相似,完整性信息生成装置1403的功能与上文描述的完整性信息生成装置703或903相似,这里不再重复。\n[0155] 与上文的方法实施例/示例相似,根据不同的应用需求,在生成原始完整性信息时,保护设备1400可以从宽、高和时间这三个方向中选择两个或三个来计算所选方向上的完整性信息。作为一个示例,如果用户对于数据验证和隐私遮盖区域定位的精度要求较高,则数据分割装置1401可以沿宽、高和时间方向中的每一个对视频数据进行分割,得到三组数据块,而完整性信息生成装置1403计算视频数据在所有三个方向上的完整性信息。作为另一示例,如果用户对于数据验证和隐私遮盖区域定位的精度要求不高,则数据分割装置\n1401可以根据需要在宽、高和时间这三个方向中选择两个方向,并分别沿每个所选方向对视频数据进行分割,以得到沿这两个方向的两组数据块;完整性信息生成装置1403计算视频数据在这两个方向上的完整性信息。\n[0156] 加密装置1407用于对原始视频数据中的待保护区域的数据进行加密,并用经加密的数据来替换原始视频数据中的待保护区域的原始数据,从而形成加密视频数据。这里所述的待保护区域也称为加密区域,例如可以是原始视频数据中需要进行隐私遮盖的区域。\n加密装置1407可以采用任何适当的加密算法对待保护区域进行加密,例如可以采用AES(Advanced Encryption Standard,高级加密标准(美国))算法、SM1加密算法(中国商用国家密码管理公布的加密算法标准)或其它加密算法,这里不作详述。加密装置1407输出加密视频数据,并将有关加密区域(待保护区域)在视频数据中的位置的信息输出到验证信息生成装置1409。\n[0157] 验证信息生成装置1409用于根据完整性信息生成装置生成的原始完整性信息以及从加密装置1407获得的有关待保护区域在原始视频数据中的位置的信息来生成验证信息。验证信息生成装置1409可以采用任何适当的方法来生成验证信息,例如,可以采用数字签名或数字时间戳或者其它方法,这里不作详述。\n[0158] 所得到的原始完整性信息以及验证信息可以存储在存储单元(图中未示出)中,以用于后续的数据验证。或者,所述原始完整性信息以及验证信息可以被发送到数据的验证方,用于后续的数据验证。这里不作详述。\n[0159] 下面参考图15和图16来描述用于实现隐私保护的视频数据完整性的验证设备。\n[0160] 图15所示的验证设备1510可以在没有解密密钥的情况下进行数据完整性验证。图\n16所示的验证设备1610可以在有解密密钥的情况下进行数据完整性验证。\n[0161] 如图15所示,验证设备1510可以包括数据分割装置1511、完整性信息生成装置\n1513、定位装置1517以及完整性验证装置1519。\n[0162] 验证设备1510首先按照上文中参考图1-2或图5描述的方法来生成待验证的视频数据的完整性信息(该待验证的视频数据中包括加密区域,加密区域中的数据经加密保护),作为待验证的完整性信息。具体地,数据分割装置1511按照待验证的视频数据的宽、高和时间三个方向中的至少两个方向中的每一个对待验证的视频数据进行分割,得到分别沿所述至少两个方向形成的至少两组数据块。每组数据块对应所述至少两个方向中的一个。\n数据分割装置1511将所述至少两组数据块输出到完整性信息生成装置1513。完整性信息生成装置1513计算每组数据块的完整性信息。根据每组数据块得到的完整性信息作为待验证的视频数据在相应方向上的完整性信息。这样即可得到待验证的视频数据在所述至少两个方向上的完整性信息,作为待验证的完整性信息。数据分割装置1511的功能与上文描述的数据分割装置701或901或811或1011相似,完整性信息生成装置1513的功能与上文描述的完整性信息生成装置703或903或813或1013相似,这里不再重复。\n[0163] 完整性信息生成装置1513将待验证的完整性信息输出到定位装置1517。定位装置\n1517根据待验证的完整性信息和原始视频数据的原始完整性信息来定位待验证的视频数据中与原始视频数据不一致的区域的位置。具体地,定位装置1517可以比较待验证的完整性信息和原始完整性信息,以确定二者不一致的部分,而不一致的部分所对应的视频数据的区域即待验证的视频数据中与原始视频数据不一致的区域。定位装置1517可以采用上文实施例/示例中描述的方法(如参考图4所描述的方法)来定位待验证的视频数据中与原始视频数据不一致的区域的位置,这里不再重复。\n[0164] 定位装置1517将有关所定位的待验证的视频数据中与原始视频数据不一致的区域的位置的信息输出到完整性验证装置1519。完整性验证装置1519将所定位的位置与加密区域(即上文的待保护区域)的位置相比较,以判断待验证的视频数据是否完整。具体地,如果所定位的位置与加密区域的位置一致,则完整性验证装置1519可以确定待验证的视频数据是完整的;否则,完整性验证装置1519可以确定待验证的视频数据不完整。\n[0165] 待验证的视频数据中的加密区域对应于上文所述的原始视频数据中的待保护区域。有关加密区域的位置的信息可以与原始完整性信息和验证信息一起存储在存储装置(图中未示出)中。在进行数据完整性验证时,定位装置1517可以从该存储装置中读取有关加密区域的位置的信息。或者,定位装置1517可以从存储有原始完整性信息和验证信息的存储装置中读取原始完整性信息和验证信息,并根据该验证信息来得到有关加密区域的位置的信息。这里不作详述。\n[0166] 如图16所示,验证设备1610可以包括获取装置1623、解密装置1621以及验证装置\n1625。而验证装置1625包括数据分割装置1611、完整性信息生成装置1613和完整性验证装置1619。\n[0167] 获取装置1623获取待验证的视频数据的密钥,并获取有关待验证的视频数据中的加密区域的位置的信息。如上所述,有关加密区域的位置的信息可以与原始完整性信息和验证信息一起存储在存储装置(图中未示出)中。获取装置1623可以从该存储装置中读取有关加密区域的位置的信息。或者,获取装置1623可以从存储有原始完整性信息和验证信息的存储装置中读取原始完整性信息和验证信息,并根据该验证信息来得到有关加密区域的位置的信息。\n[0168] 解密装置1621利用密钥对待验证的视频数据中的加密区域的数据进行解密,并用经解密的数据替换待验证的视频数据中的加密区域的加密数据,得到解密视频数据。\n[0169] 解密装置1621将解密视频数据输出到验证装置1625。验证装置1625与图8所示的验证设备810相似,可按照上文参考图3或图6所描述的方法来验证解密视频数据是否完整。\n具体地,数据分割装置1611的功能与数据分割装置811的功能相似。数据分割装置1611按照解密视频数据的宽、高和时间三个方向中的至少两个方向中的一个方向(简称为第一分割方向)对解密视频数据进行分割,得到沿该第一分割方向的一组数据块,并将该组数据块输出到完整性信息生成装置1613。完整性信息生成装置1613的功能与完整性信息生成装置\n813的功能相似。完整性信息生成装置1613计算该组数据块的完整性信息,作为解密视频数据在该第一分割方向上的完整性信息,并将该完整性信息输出到完整性验证装置1619。完整性验证装置1619的功能与完整性验证装置815的功能相似。完整性验证装置1619在原始视频数据在所述至少两个方向上的原始完整性信息中获取第一分割方向上的原始完整性信息,并根据所获取的第一分割方向上的原始完整性信息与计算得到的解密视频数据在第一分割方向上的完整性信息来判断待验证的视频数据是否完整。如果解密视频数据在第一分割方向上的完整性信息与该第一分割方向上的原始完整性信息一致,则完整性验证装置\n1619可以确定解密视频数据是完整的,从而可以确定待验证的视频数据是完整的;否则,完整性验证装置1819可以确定解密视频数据是不完整的,从而可以确定待验证的视频数据不完整。上述各个模块的功能可以参考上文的实施例,这里不作详细重复。\n[0170] 上文参考图12描述的视频数据完整性的保护设备以及上文参考图15或16描述视频数据完整性的验证设备1510或1610构成能够实现隐私保护的视频数据完整性的保护系统。\n[0171] 根据本公开的实施例的方法、设备或系统既适用于数据传输系统中的数据保护,也适用于数据存储系统中的数据保护,例如,可以应用于视频监控、知识产权保护、数据传输等多种应用场景,可以为这些应用提供灵活而鲁棒的完整性保护。\n[0172] 图17示意性示出了本公开的保护和验证设备或方法在银行自动取款机视频监控中的应用。\n[0173] 在图17所示的应用中,银行自动取款机的视频监控系统包括摄像装置1730(如监控摄像头)、实现隐私保护的数据完整性保护设备1700和实现隐私保护的数据完整性验证设备1710。其中,保护设备1700可以实施于监控摄像头中,作为该摄像头的组成部分,而验证设备1710可以实施于服务器中,作为服务器的组成部分。视频数据存储服务器还可以作为存储装置,该存储装置存储原始完整性信息、验证信息、加密视频数据和/或有关加密区域的位置的信息等信息。\n[0174] 保护设备1700的结构和功能可以与上文所描述的保护设备1400相似,这里不作详细描述。验证设备1710的结构和功能可以与上文所描述的验证设备1510或1610相同,这里也不作详细描述。\n[0175] 摄像装置1730可安装于自动取款机旁,并通过例如通信线路将原始视频数据传输到服务器。由于保护用户密码的需要,ATM监控主机要求视频画面中不能看到密码键盘和用户的密码信息,也就是说,视频图像中的自动取款机的键盘密码输入区域为隐私遮盖区域(即上文的待保护区域或加密区域)。如上文实施例中所述,可以对隐私遮盖区域的数据进行加密。视频监控系统可以对加密密钥进行特别管理,以防泄漏,这里不作详述。\n[0176] 摄像装置1730开始工作时即启动合并于其中的保护设备1700。保护设备1700对摄像装置1730获得的原始视频数据进行完整性保护,生成原始视频数据的原始完整性信息,并对视频图像中的隐私遮盖区域进行加密,并用加密数据替换该区域中的原始数据,形成加密视频数据。保护设备1700还根据隐私遮盖区域的位置信息以及原始完整性信息生成验证信息(也可以称为隐私保护后的完整性信息)。加密视频数据和完整性信息等可以通过通信线路而被传输到服务器中存储。服务器中接收到视频数据后,其中的验证设备1710可以对视频数据的完整性进行验证,以确保收到的视频数据未在传输过程中被篡改。在以后的使用过程中,如果普通用户(如所示用户1)需要查看视频数据(即加密视频数据),则可以利用验证设备1710再次进行完整性验证(如验证设备1510的结构和功能),以确保视频数据在存储过程中未被篡改。如果特殊用户(如所示用户2)例如需要该视频数据作为法庭证据,则可以利用特别保管的密钥对加密视频数据的隐私遮盖区域进行解密,以得到恢复的原始视频数据,并利用原始完整性信息来验证其完整性(如验证设备1610的结构和功能)。\n[0177] 作为具体示例,图17所示的系统在进行完整性验证时,可以根据用户的需求来定位隐私遮盖区域的位置。例如,可以进行宽、高和时间这三个方向上的完整性验证,从而定位加密视频数据中隐私遮盖区域的精确位置,即在哪一或哪些帧以及在该帧中的位置。或者,可以进行这三个方向中的一个或两个方向上的完整性验证,例如,对于自动取款机的视频数据,所有图像帧中的密码键盘区域都是需要隐私遮盖的区域,在需要定位加密区域的情况下,可以仅在宽和高两个方向上进行完整性验证。可以采用上文实施例/示例中描述的方法来定位加密区域(可视为与原始视频相比发生了变化或修改的区域),这里不再重复。\n[0178] 另外,在本公开的一些实施例和/或示例中,用于存储完整性信息的存储装置可以是可信第三方。而在另一些实施例和/或示例中,用于存储完整性信息的存储装置可以为非易失性存储器既可,这样既可以保证完整性信息的存储的安全,也可以减轻对可信第三方的依赖。\n[0179] 应理解,上述实施例和示例是示例性的,而不是穷举性的,本公开不应被视为局限于任何具体的实施例或示例。另外,在上述实施例和示例中,采用了“第一”、“第二”等表述。\n本领域的普通技术人员应理解,上述表述只是为了对这些表述作文字上的区分,而并非表示其顺序或任何其他限定。\n[0180] 作为一个示例,上述方法的各个步骤以及上述设备的各个组成模块和/或单元可以实施为软件、固件、硬件或其组合。作为一个示例,在通过软件或固件实现的情况下,可以从存储介质或网络向具有专用硬件结构的计算机(例如图18所示的通用计算机1800)安装构成用于实施上述方法的软件的程序,该计算机在安装有各种程序时,能够执行各种功能等。\n[0181] 在图18中,中央处理单元(CPU)1801根据只读存储器(ROM)1802中存储的程序或从存储部分1808加载到随机存取存储器(RAM)1803的程序执行各种处理。在RAM 1803中,也根据需要存储当CPU 1801执行各种处理等等时所需的数据。CPU 1801、ROM 1802和RAM 1803经由总线1804彼此连接。输入/输出接口1805也连接到总线1804。\n[0182] 下述部件连接到输入/输出接口1805:输入部分1806(包括键盘、鼠标等等)、输出部分1807(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分1808(包括硬盘等)、通信部分1809(包括网络接口卡比如LAN卡、调制解调器等)。通信部分1809经由网络比如因特网执行通信处理。根据需要,驱动器1810也可连接到输入/输出接口1805。可拆卸介质1811比如磁盘、光盘、磁光盘、半导体存储器等等根据需要被安装在驱动器1810上,使得从中读出的计算机程序根据需要被安装到存储部分1808中。\n[0183] 在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质1811安装构成软件的程序。\n[0184] 本领域的技术人员应当理解,这种存储介质不局限于图18所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质1811。可拆卸介质1811的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 1802、存储部分1808中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。\n[0185] 本公开还提出一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本公开实施例的方法。\n[0186] 相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本公开的公开中。所述存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。\n[0187] 在上面对本公开具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以用相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。\n[0188] 应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。\n[0189] 此外,本公开的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本公开的技术范围构成限制。\n[0190] 尽管上面已经通过对本公开的具体实施例的描述对本公开进行了披露,但是,应该理解,上述的所有实施例和示例均是示例性的,而非限制性的。本领域的技术人员可在所附权利要求的精神和范围内设计对本公开的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本公开的保护范围内。
法律信息
- 2018-01-19
- 2014-07-16
实质审查的生效
IPC(主分类): H04N 7/64
专利申请号: 201110236997.7
申请日: 2011.08.11
- 2013-02-13
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2011-06-01
|
2009-11-26
| | |
2
| |
2009-06-10
|
2007-11-28
| | |
3
| |
2010-03-10
|
2008-09-05
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |