CN102497597B - 高清视频文件的完整性校验方法 - Google Patents
高清视频文件的完整性校验方法 Download PDFInfo
- Publication number
- CN102497597B CN102497597B CN 201110400165 CN201110400165A CN102497597B CN 102497597 B CN102497597 B CN 102497597B CN 201110400165 CN201110400165 CN 201110400165 CN 201110400165 A CN201110400165 A CN 201110400165A CN 102497597 B CN102497597 B CN 102497597B
- Authority
- CN
- China
- Prior art keywords
- sha
- video file
- data
- file
- data block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种高清视频文件的完整性校验方法,其特征在于包括如下步骤:第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;第二步、将映射到内存的数据进行智能数据分组;第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-1算法;第四步、将各个数据块的指纹即SHA-1码累加,得到整个高清视频文件的目标SHA-1指纹,将目标SHA-1指纹和源SHA-1指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。该方法能够有效的确保文件的原始和完整性,适于在视频文件的校验中广泛推广。
Description
技术领域
本发明涉及一种高清视频文件的完整性校验方法。
背景技术
随着数字高清视频技术的发展,数字拷贝逐渐取代传统拷贝,成为家庭观看电影的载体。由于现在的高清视频文件动辄几十G的体积,加大了传输过程中错误损耗的,对高清视频的完整性校验成为了需求。目前,传统的文件数据完整性校验一般采用SHA-1码的方式进行,此方法最大的瓶颈为检验高清视频文件完整性的速度,对于20GB大小的高清视频文件生成一次SHA-1需要大约400秒(双核2.8GHz CPU、2GB MEM下测试)。如果当使用者将视频文件下载到本机后,还需要再生成一次SHA-1进行比对,那么耗时就将成倍数增长。对于已经走进生活的全高清时代,用传统的SHA-1对高清视频文件的完整性进行校验,会降低用户的使用体验。
发明内容
本发明针对以上问题的提出,而研制一种能够快速高效地校验高清视频文件完整性的校验方法。本发明采用的技术效果如下:
一种高清视频文件的完整性校验方法,其特征在于包括如下步骤:
第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;
第二步、将映射到内存的数据进行智能数据分组;
第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-1算法,得到各数据块的哈希散列数据即SHA-1码SHA-11、SHA-12、SHA-13、SHA-14、SHA-15……SHA-1N,其中N为具体分成的线程数;
第四步、将各个数据块的指纹即SHA-1码累加,得到整个高清视频文件的SHA-1码指纹信息,整个高清视频文件的SHA-1码值为N个数据块SHA-1的值相加,即(SHA-11)+(SHA-12)+(SHA-13)+(SHA-14)+(SHA-15)……+(SHA-1N),以上步骤获得了高清视频文件的目标SHA-1指纹,将目标SHA-1指纹和源SHA-1指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。
所述第一步中将高清视频文件映射到系统物理内存的虚拟地址空间中的方法包括以下步骤:
(1)从高清视频文件智能数据分组开始点映射数据块;
(2)对该映射的数据块进行访问,取得SHA-1哈希散列数据;
(3)取消此分组在内存中的映射;
(4)从高清视频文件中下一个未映射的分组位置开始映射一个新的分组;
(5)重复步骤(2)~(4),直到所有的文件数据访问完毕。
本发明的有益效果是:解决了传统方法校验高清视频文件时间开销大、执行效率低下等缺点,使得高效迅速地检查高清视频文件在网络传输过程中是否存在掉包及数据传输错误的问题和拷贝及存储过程中数据被篡改和被病毒感染等问题,确保文件的原始和完整性。
附图说明
图1高清视频文件完整性快速校验流程图;
图2高清视频文件完整性快速校验SHA-1并行处理示意图。
具体实施方式
如图1和2所示一种高清视频文件的完整性校验方法,包括如下步骤:
第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;
第二步、将映射到内存的数据进行智能数据分组;
第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-1算法,得到各数据块的哈希散列数据即SHA-1码SHA-11、SHA-12、SHA-13、SHA-14、SHA-15……SHA-1N,其中N为具体分成的线程数;
第四步、将各个数据块的指纹即SHA-1码(即哈希散列数据)累加,得到整个高清视频文件的SHA-1码(即哈希散列数据)指纹信息,整个高清视频文件的SHA-1码值为N个数据块SHA-1的值相加,即(SHA-11)+(SHA-12)+(SHA-13)+(SHA-14)+(SHA-15)……+(SHA-1N),以上步骤获得了高清视频文件的目标SHA-1指纹,将目标SHA-1指纹和源SHA-1指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。
其中:内存映射(Memory Map):把存储器上高清视频文件映射到系统物理内存的虚拟地址空间中,实现高清视频文件数据的快速存取;智能数据分组(Smart Grouping):将映射到内存的数据进行智能分组,映射为多个数据块;指纹提取(Fingerprint Collect):对已分组的数据块分别执行SHA-1算法,分别得到各个数据块的哈希散列数据即数据指纹;指纹合成(FingerprintCompose):将各个数据块的哈希散列数据累加,得到整个高清视频文件的SHA-1码指纹信息。
所述第一步中将高清视频文件映射到系统物理内存的虚拟地址空间中的方法包括以下步骤:
(1)从高清视频文件智能数据分组开始点映射数据块;
(2)对该映射的数据块进行访问,取得SHA-1哈希散列数据;
(3)取消此分组在内存中的映射;
(4)从高清视频文件中下一个未映射的分组位置开始映射一个新的分组;
(5)重复步骤(2)~(4),直到所有的文件数据访问完毕。
具体实例如下:
其中虚拟地址空间的区域是在0x80000000~0xBFFFFFFF内;智能数据分组所得到的数据块大小为128MB。下面以5个线程并行对数据块执行SHA-1算法为例,结合实施例进一步描述本发明的技术方案:
第一步:从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间区域为0x80000000~0xBFFFFFFF,其步骤为:先映射文件分组开始点的数据块,然后对该映射的数据块进行访问,再取消此映像并映射下一个未映射的分组,如此反复映射知道访问全部的文件数据。
第二步:将映射到内存的数据进行智能分组,数据块大小一般为128MB。
第三步:分5个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-1算法,得到各数据块的哈希散列数据即SHA-1码(哈希散列数据)SHA-11、SHA-12、SHA-13、SHA-14和SHA-15。与一次性对整个高清视频文件做SHA-1运算相比较,极大地加快了处理速度。
第四步:SHA-1指纹合成,将各个数据块的指纹即SHA-1码(哈希散列数据)累加,得到整个高清视频文件的SHA-1码指纹信息,整个高清视频文件的SHA-1码值为5个数据块SHA-1的值相加,即(SHA-11)+(SHA-12)+(SHA-13)+(SHA-14)+(SHA-15)。
以上步骤获得了高清视频文件的目标SHA-1指纹,将目标SHA-1(哈希散列数据)指纹和源SHA-1(哈希散列数据)指纹比较,如果二者相同则文件完整性状态正常,反之则文件不完整。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (2)
1.一种高清视频文件的完整性校验方法,其特征在于包括如下步骤:
第一步、从外部存储器上读取目标高清视频文件,并将高清视频文件映射到系统物理内存的虚拟地址空间中;
第二步、将映射到内存的数据进行智能数据分组得到N个数据块;
第三步、分N个线程并行处理分组后的数据块,具体处理为分别并行对数据块执行SHA-1算法,得到各数据块的哈希散列数据即SHA-1码SHA-11、SHA-12、SHA-13、SHA-14、SHA-15……SHA-1N,其中N为具体分成的线程数;
第四步、将各个数据块的SHA-1码累加,即(SHA-11)+(SHA-12)+(SHA-13)+(SHA-14)+(SHA-15)……+(SHA-1N),得到整个高清视频文件的目标SHA-1指纹信息,然后将目标SHA-1指纹和源SHA-1指纹比较,如果二者相同则文件完整性状态正常反之则文件不完整。
2.根据权利要求1所述的一种高清视频文件的完整性校验方法,其特征在于所述第一步中将高清视频文件映射到系统物理内存的虚拟地址空间中的方法包括以下步骤:
(1)对所述高清视频文件进行智能数据分组,从第一个数据分组开始位置映射数据分组;
(2)对该映射的数据块进行访问,取得SHA-1;
(3)取消此分组在内存中的映射;
(4)从高清视频文件中下一个未映射的分组位置开始映射一个新的分组;
(5)重复步骤(2)~(4),直到所有的文件数据访问完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110400165 CN102497597B (zh) | 2011-12-05 | 2011-12-05 | 高清视频文件的完整性校验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110400165 CN102497597B (zh) | 2011-12-05 | 2011-12-05 | 高清视频文件的完整性校验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102497597A CN102497597A (zh) | 2012-06-13 |
CN102497597B true CN102497597B (zh) | 2013-11-06 |
Family
ID=46189378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110400165 Active CN102497597B (zh) | 2011-12-05 | 2011-12-05 | 高清视频文件的完整性校验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102497597B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106068B (zh) * | 2013-02-28 | 2015-03-18 | 江苏中科物联网科技创业投资有限公司 | 物联网大数据快速校验方法 |
CN103747255A (zh) * | 2014-01-27 | 2014-04-23 | 深圳大学 | 一种基于空域感知哈希的视频篡改检测方法和装置 |
CN103747271B (zh) * | 2014-01-27 | 2017-02-01 | 深圳大学 | 一种基于混合感知哈希的视频篡改检测方法和装置 |
CN105681712A (zh) * | 2014-11-20 | 2016-06-15 | 广东中星电子有限公司 | 视频数据处理方法和装置 |
CN106570423A (zh) * | 2016-10-28 | 2017-04-19 | 上海斐讯数据通信技术有限公司 | 一种数据防篡改方法及系统 |
CN109981291A (zh) * | 2019-03-27 | 2019-07-05 | 国家电网有限公司 | 一种混合分组签名方法 |
CN112667144A (zh) * | 2019-10-16 | 2021-04-16 | 北京白山耘科技有限公司 | 数据块构建及比较方法、装置、介质及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758282A (zh) * | 2004-10-10 | 2006-04-12 | 北京华旗数码影像技术研究院有限责任公司 | 一种脆弱型水印技术应用于数字图像保真的方法 |
CN1885341A (zh) * | 2006-07-07 | 2006-12-27 | 中山大学 | 一种用于图像认证的可逆水印方法 |
CN101098478A (zh) * | 2006-06-29 | 2008-01-02 | 三星电子株式会社 | 提供具有完整性视频流的装置和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2896938A1 (fr) * | 2006-01-27 | 2007-08-03 | Nextamp Sa | Procede de tatouage de donnees numeriques |
-
2011
- 2011-12-05 CN CN 201110400165 patent/CN102497597B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758282A (zh) * | 2004-10-10 | 2006-04-12 | 北京华旗数码影像技术研究院有限责任公司 | 一种脆弱型水印技术应用于数字图像保真的方法 |
CN101098478A (zh) * | 2006-06-29 | 2008-01-02 | 三星电子株式会社 | 提供具有完整性视频流的装置和方法 |
CN1885341A (zh) * | 2006-07-07 | 2006-12-27 | 中山大学 | 一种用于图像认证的可逆水印方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102497597A (zh) | 2012-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102497597B (zh) | 高清视频文件的完整性校验方法 | |
CN105975433B (zh) | 一种报文处理方法及装置 | |
CN102012846A (zh) | 大视频文件完整性校验方法 | |
CN102629258A (zh) | 重复数据删除方法和装置 | |
CN104517057B (zh) | 基于可信计算的软件混合度量方法 | |
CN109284185A (zh) | 用于区块链交易加速的装置、方法和系统 | |
CN101777017B (zh) | 一种连续数据保护系统的快速恢复方法 | |
CN105051695B (zh) | 不可变可共享零复制数据和流传输 | |
US10565183B1 (en) | Efficient deduplication signature utilization | |
CN108351830A (zh) | 用于存储器损坏检测的硬件装置和方法 | |
US11249665B2 (en) | Object synthesis | |
CN103282877A (zh) | 用于将程序自动分解成多个并行线程的硬件和软件系统的系统、设备和方法 | |
CN106874320A (zh) | 分布式流式数据处理的方法和装置 | |
CN1936833A (zh) | 选择可实质同时处理的多重线程的系统与方法 | |
TW201033807A (en) | Data processing system, controller, and method thereof for searching specific memory area | |
CN108268586A (zh) | 跨多数据表的数据处理方法、装置、介质和计算设备 | |
CN103207889A (zh) | 一种基于Hadoop的海量人脸图像的检索方法 | |
JP2014041452A (ja) | 重複除去装置、重複除去方法及び重複除去プログラム | |
CN103294799B (zh) | 一种数据并行批量导入只读查询系统的方法及系统 | |
CN109934712A (zh) | 应用于分布式系统的对账方法、对账装置和电子设备 | |
CN109325011A (zh) | 基于区块链的数据存储、处理、分享方法及系统 | |
CN105159925B (zh) | 一种数据库集群数据分配方法及系统 | |
CN103731364B (zh) | 基于x86平台实现万兆大流量快速收包的方法 | |
CN109033365A (zh) | 一种数据处理方法及相关设备 | |
CN110221914B (zh) | 文件处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |