高清视频文件的完整性校验方法

文档序号:8002124阅读:4724来源:国知局
专利名称:高清视频文件的完整性校验方法
技术领域
本发明涉及一种高清视频文件的完整性校验方法。
技术背景
随着数字高清视频技术的发展,数字拷贝逐渐取代传统拷贝,成为家庭观看电影的载体。由于现在的高清视频文件动辄几十G的体积,加大了传输过程中错误损耗的,对高清视频的完整性校验成为了需求。目前,传统的文件数据完整性校验一般采用SHA-I码的方式进行,此方法最大的瓶颈为检验高清视频文件完整性的速度,对于20GB大小的高清视频文件生成一次SHA-I需要大约400秒(双核2. 8GHz CPU、2GB MEM下测试)。如果当使用者将视频文件下载到本机后,还需要再生成一次SHA-I进行比对,那么耗时就将成倍数增长。对于已经走进生活的全高清时代,用传统的SHA-I对高清视频文件的完整性进行校验, 会降低用户的使用体验。发明内容
本发明针对以上问题的提出,而研制一种能够快速高效地校验高清视频文件完整性的校验方法。本发明采用的技术效果如下
一种高清视频文件的完整性校验方法,其特征在于包括如下步骤
第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;
第二步、将映射到内存的数据进行智能数据分组;
第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-I算法,得到各数据块的哈希散列数据即SHA-I码SHA-11、SHA-12、SHA-13、SHA-14、 SHA-15……SHA-1N,其中N为具体分成的线程数;
第四步、将各个数据块的指纹即SHA-I码累加,得到整个高清视频文件的SHA-I码指纹信息,整个高清视频文件的SHA-I码值为N个数据块SHA-I的值相加,S卩(SHA_11) + (S HA-12) + (SHA-13) + (SHA-14) + (SHA-15)……+ (SHA-IN),以上步骤获得了高清视频文件的目标SHA-I指纹,将目标SHA-I指纹和源SHA-I指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。
所述第一步中将高清视频文件映射到系统物理内存的虚拟地址空间中的方法包括以下步骤
(1)从高清视频文件智能数据分组开始点映射数据块;
(2)对该映射的数据块进行访问,取得SHA-I哈希散列数据;
(3)取消此分组在内存中的映射;
(4)从高清视频文件中下一个未映射的分组位置开始映射一个新的分组;
(5)重复步骤(2) ,直到所有的文件数据访问完毕。
本发明的有益效果是解决了传统方法校验高清视频文件时间开销大、执行效率低下等缺点,使得高效迅速地检查高清视频文件在网络传输过程中是否存在掉包及数据传输错误的问题和拷贝及存储过程中数据被篡改和被病毒感染等问题,确保文件的原始和完整性。


图1高清视频文件完整性快速校验流程图2高清视频文件完整性快速校验SHA-I并行处理示意图。
具体实施方式
如图1和2所示一种高清视频文件的完整性校验方法,包括如下步骤
第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;
第二步、将映射到内存的数据进行智能数据分组;
第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-I算法,得到各数据块的哈希散列数据即SHA-I码SHA-11、SHA-12、SHA-13、SHA-14、 SHA-15……SHA-1N,其中N为具体分成的线程数;
第四步、将各个数据块的指纹即SHA-I码(即哈希散列数据)累加,得到整个高清视频文件的SHA-I码(即哈希散列数据)指纹信息,整个高清视频文件的SHA-I码值为 N 个数据块 SHA-I 的值相加,即(SHA-11) + (SHA-12) + (SHA-13) + (SHA-14) + (SHA-15)......+ (SHA-IN),以上步骤获得了高清视频文件的目标SHA-I指纹,将目标SHA-I指纹和源SHA-I 指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。
其中内存映射(Memory Map)把存储器上高清视频文件映射到系统物理内存的虚拟地址空间中,实现高清视频文件数据的快速存取;智能数据分组(Smart Grouping) 将映射到内存的数据进行智能分组,映射为多个数据块;指纹提取(Fingerprint Collect)对已分组的数据块分别执行SHA-I算法,分别得到各个数据块的哈希散列数据即数据指纹;指纹合成(Fingerprint Compose)将各个数据块的哈希散列数据累加,得到整个高清视频文件的SHA-I码指纹信息。
所述第一步中将高清视频文件映射到系统物理内存的虚拟地址空间中的方法包括以下步骤
(1)从高清视频文件智能数据分组开始点映射数据块;
(2)对该映射的数据块进行访问,取得SHA-I哈希散列数据;
(3)取消此分组在内存中的映射;
(4)从高清视频文件中下一个未映射的分组位置开始映射一个新的分组;
(5)重复步骤O) ,直到所有的文件数据访问完毕。
具体实例如下
其中虚拟地址空间的区域是在0x80000000 OxBFFFFFFF内;智能数据分组所得到的数据块大小为U8MB。下面以5个线程并行对数据块执行SHA-I算法为例,结合实施例进一步描述本发明的技术方案
第一步从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间区域为0x80000000 OxBFFFFFFF,其步骤为先映射文件分组开始点的数据块,然后对该映射的数据块进行访问,再取消此映像并映射下一个未映射的分组,如此反复映射知道访问全部的文件数据。
第二步将映射到内存的数据进行智能分组,数据块大小一般为U8MB。
第三步分5个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-I算法,得到各数据块的哈希散列数据即SHA-I码(哈希散列数据)SHA-11、SHA-12、 SHA-13、SHA-14和SHA-15。与一次性对整个高清视频文件做SHA-I运算相比较,极大地加快了处理速度。
第四步SHA-1指纹合成,将各个数据块的指纹即SHA-I码(哈希散列数据)累加, 得到整个高清视频文件的SHA-I码指纹信息,整个高清视频文件的SHA-I码值为5个数据块 SHA-I 的值相加,即(SHA-11) + (SHA-12) + (SHA-13) + (SHA-14) + (SHA-15)
以上步骤获得了高清视频文件的目标SHA-I指纹,将目标SHA-I (哈希散列数据) 指纹和源SHA-I (哈希散列数据)指纹比较,如果二者相同则文件完整性状态正常,反之则文件不完整。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
权利要求
1.一种高清视频文件的完整性校验方法,其特征在于包括如下步骤第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;第二步、将映射到内存的数据进行智能数据分组;第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行 SHA-I算法,得到各数据块的哈希散列数据即SHA-I码SHA-11、SHA-12、SHA-13、SHA-14、 SHA-15……SHA-1N,其中N为具体分成的线程数;第四步、将各个数据块的指纹即SHA-I码累加,得到整个高清视频文件的目标SHA-I指纹信息,整个高清视频文件的SHA-I码值为N个数据块SHA-I的值相加,即(SHA_11) + (SHA-12) + (SHA-13) + (SHA-14) + (SHA-15)......+ (SHA-IN),然后将目标 SHA-I 指纹和源 SHA-I 指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。
2.根据权利要求1所述的一种高清视频文件的完整性校验方法,其特征在于所述第一步中将高清视频文件映射到系统物理内存的虚拟地址空间中的方法包括以下步骤(1)从高清视频文件智能数据分组开始点映射数据块;(2)对该映射的数据块进行访问,取得SHA-I;(3)取消此分组在内存中的映射;(4)从高清视频文件中下一个未映射的分组位置开始映射一个新的分组;(5)重复步骤O) G),直到所有的文件数据访问完毕。
全文摘要
本发明公开了一种高清视频文件的完整性校验方法,其特征在于包括如下步骤第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;第二步、将映射到内存的数据进行智能数据分组;第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-1算法;第四步、将各个数据块的指纹即SHA-1码累加,得到整个高清视频文件的目标SHA-1指纹,将目标SHA-1指纹和源SHA-1指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。该方法能够有效的确保文件的原始和完整性,适于在视频文件的校验中广泛推广。
文档编号H04N21/442GK102497597SQ20111040016
公开日2012年6月13日 申请日期2011年12月5日 优先权日2011年12月5日
发明者张彬, 芦靖, 葛亮 申请人:中国华录集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1