一种用于嵌入式系统的大规模数据验证方法技术方案

技术编号:2912445 阅读:189 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种用于嵌入式系统的大规模数据验证方法,包括步骤1,在PC机上将需要验证的原始数据用密钥算法处理器分段处理,获得各段数据相应的目标密钥校验码;步骤2,将步骤1中获得各段数据的目标密钥校验码存放到相应的目标密钥校验码文件中;步骤3,将步骤2所得到的目标密钥校验码文件从PC机上通过传输装置传输到嵌入式系统内;步骤4,在嵌入式系统中,对各相同段的数据通过密钥算法生成校验码,与目标密钥校验码进行比较,并进行结果处理。本发明专利技术大大节省了数据的存储空间,从而降低使用存储器的成本,提高了数据校验的工作效率并确保校验结果的正确性。

【技术实现步骤摘要】

本专利技术涉及一种数据验证方法,特别是涉及一种用于嵌入式系统的大规模数据验证方法
技术介绍
大规模的数据是在当前信息技术的迅猛发展及高容量存储器日新月异的情况下产生的,但是,大规模数据的产生也引起了另一个问题的出现,就是如何快速地知道所产生的数据是否正确。由于大规模数据通常都是几百兆,甚至更高的容量,所以给数据的验证工作带来了很大的困难,尤其是在存储资源非常珍贵以而处理器速度较低的嵌入式系统中,此问题显得尤为突出。基于嵌入式系统本身的特殊性,以致该系统在处理速度、存储空间方面都远远比不上PC机,而大规模数据在嵌入式系统中的广泛应用,更突显了在嵌入式系统中,传统方式的数据验证方法对大规模数据验证方式的不足之处在于:(1)由于在嵌入式多媒体开发过程中经常会遇到对大规模数据量进行验证工作,但是往往会碰到开发板上的存储空间不够的情况,比如解码后的数据,在这种情况下如果要验证解码后数据的正确性是非常麻烦和费时的;(2)解码前的数据量一般和解码后的数据量相差甚远,比如一个1兆容量的被压缩了的码流数据在解码后得到的解压数据是几十兆甚至几百兆,所以解码后的数据量是非常大的,如果这些数据用存储器来存储的话,那么必然会增加成本。嵌入式系统的运算速度远远低于PC机,因此往往会把非常耗时的工作让PC机来完成,而用嵌入式系统进行关键性且简单的工作,这样才能提高数据验证工作的效率。目前在嵌入式系统中数据验证的方法及其不足之处大致如下:方法一:在通常情况下要比较两个文件的数据是否完全相等时,通常会一次性(在文件比较小,或者内存足够大的情况下)把需要比较的数据读入到相应的内存缓冲区中,或者通过循环语句分批一段一段地把文件数据读入到对应的内存缓冲区中,然后逐字节或者逐位进行比较,通过这种方法可以看出,根据原始数据块的数据量不断的变大,同时也间接地要求准备一块完全大小的数据块,只有这样才能进行数据的比较,而此时内存空间的消耗将是成倍增长的。数据量少的情况下兴许不会对嵌入式系统造成大的影响,但是当每次需要比较的数据量达到几十兆或者更多的时候,应用这种传统方法的嵌入式系统(包括硬件及软件)的工-->作效率就会比较低。方法二:由于数据太大的原因,通常会把数据从嵌入式系统上传到外部设备(如PC机)上,再进行验证。一般情况下,从嵌入式终端设备上传数据到PC机或者其他装置都是通过串口或者USB(通用串行总线)来进行,而嵌入式系统通过USB口向上传输数据会受到文件系统、可保持闪存、嵌入式系统的处理能力等各方面的限制,所以导致其传输性能大大降低,经过测试证明,目前嵌入式系统通USB2.0向上最大传输速度是5MB/s以内,如比较1,000,000份H263(一种视频标准编码)CIF(高*宽=352*288)格式解码后的YUV数据,其数据量是1,000,000*(352*288*2)=202752000000Bytes,如果传输完这么多的数据将要花费的时间大概是640分钟,达10个小时左右。所以,这种效率是十分低的。该方法虽然从一定程度上缓解了存储空间不足的问题,但是其传输能力远远不能满足大规模数据的需要。
技术实现思路
本专利技术的目的在于提供一种简单高效、成本较低且校验正确的用于嵌入式系统的大规模数据验证方法。本专利技术的目的通过以下的技术方案来实现:一种用于嵌入式系统的大规模数据验证方法,其处理过程包括以下步骤:步骤1,在PC机上将需要验证的原始数据按要求分段处理,然后通过密钥算法处理器获得各索引段数据相应的目标密钥校验码;步骤2,将步骤1中获得各索引段数据的目标密钥校验码存放到相应的目标密钥校验码文件中;步骤3,将步骤2所得到的目标密钥校验码文件从PC机上通过传输装置(USB或者串口)传输到嵌入式系统中,并以文件的形式保存。步骤4,在嵌入式系统中,对各相同段的数据通过密钥算法生成校验码,与目标密钥校验码进行比较,并进行结果处理。所述的步骤(1)中的具体处理过程:先读取一段数据,用密钥算法处理器计算得出当前这段数据的目标密钥校验码,然后再把目标密钥校验码存放到相应的密钥校验码文件内;重复上述处理过程,直到要进行校验的原始数据全部处理完毕。由此得到相应的目标密钥校验码及其中放入上述目标密钥校验码的相应密钥校验码文件。所述的步骤(3)是将密钥校验码文件一次性从PC机上通过传输装置(usb)传-->输到嵌入式系统中并装载到系统内存中,形成目标密钥校验码一维表。所述的步骤4的具体处理过程:在嵌入式系统的原始数据中读一段与PC机上数据段索引位置一致的数据;嵌入式系统对该相同段的数据通过密钥算法生成校验码,通过顺序读取或者索引读取的方式,读取第一条目标密钥校验码,与当前嵌入式系统生成的密钥校验码进行比较;如果比较结果匹配,继续处理下一段需要比较的数据,再生成相应校验码,与下一条目标密钥校验码进行比较;如果比较结果不匹配,退出数据校验程序进行下一轮数据校验或者退出校验工作。与现有技术相比,采用本专利技术所述的方法有以下优点:1、大大节省了数据的存储空间,从而降低使用存储器的成本;2、加快了数据比较的速度,提高了数据校验的工作效率;3、相对于传统且繁琐的数据校验方法,大大降低了在操作过程中的工作复杂程度;4、由于成熟密钥算法的高散列性,可以确保校验结果的正确性并保证验证结果的唯一性。附图说明图1为本专利技术的总体流程示意图;图2为本专利技术PC端预处理的流程示意图;图3为本专利技术嵌入式系统端验证处理的流程示意图。具体实施方式如图1、图2及图3所示,本专利技术一种用于嵌入式系统的大规模数据验证方法,具体包括如下步骤:(1)在PC机上,按顺序分段读取需要验证的原始数据文件,把读取的数据送入密钥算法处理器(如:MD5,SHA1等HASH算法);使用密钥算法处理器计算得出当前一段数据的目标密钥校验码,然后再把目标校验码存放到相应的密钥校验码文件内,并重复该处理过程,直到要进行校验的原始数据全部处理完毕,由此得到相应的密钥校验码及其中放入上述密钥校验码的相应密钥校验码文件。(2)将所得到的目标密钥校验码文件一次性从PC机上通过传输装置(USB通用串行总线或者串口)传输到嵌入式系统以文件形式保存起来。-->以上步骤是为以后的数据校验做准备。采用在PC端进行预处理是为了更大地减少嵌入式系统的工作量和存储空间,由于数据的校验工作是在嵌入式系统里面完成,所以必须把一大部分耗时的工作先在PC机上完成;另外,因为PC机在处理上述工作的时候并不会影响目标系统的正常工作,所以采用对大量数据的PC端预处理和嵌入式系统的数据校验相结合的方法能够大大提高工作效率。由于生成的目标密钥校验码文件不是很大,比如100,000份数据,那么来自PC机的目标密钥校验码所占的存储空间是100,000*16Bytes=1,600,000Bytes=1.5MB,所以在一般的嵌入式系统中,可以一次性把密钥校验码文件装载到内存里,由此,形成一个虚拟的密钥一维表,以便于以后进行比较的时候读取。(3)在比较之前,先把先前下载到嵌入式系统中的校码码文件一次性加载到系统内存中;并形成一个一维表。(4)接着在嵌入式系统中读取一段与PC机上数据段索引位置一致的原始数据,然后在嵌入式系统中对该段数据通过密钥算法(如:MD5,SHA1等HASH算法本文档来自技高网
...

【技术保护点】
一种用于嵌入式系统的大规模数据验证方法,其特征在于包括以下步骤: 步骤1,在PC机上将需要验证的原始数据按要求分段处理,然后用密钥算法处理器得到各索引段数据相应的目标密钥校验码; 步骤2,将步骤1中获得各段数据的目标密钥校验码存放到相应的目标密钥校验码文件中; 步骤3,将步骤2所得到的目标密钥校验码文件从PC机上通过传输装置传输到嵌入式系统内; 步骤4,在嵌入式系统中,对各相同段的数据通过密钥算法生成密钥校验码,与目标密钥校验码进行比较,并进行结果处理。

【技术特征摘要】
1、一种用于嵌入式系统的大规模数据验证方法,其特征在于包括以下步骤:步骤1,在PC机上将需要验证的原始数据按要求分段处理,然后用密钥算法处理器得到各索引段数据相应的目标密钥校验码;步骤2,将步骤1中获得各段数据的目标密钥校验码存放到相应的目标密钥校验码文件中;步骤3,将步骤2所得到的目标密钥校验码文件从PC机上通过传输装置传输到嵌入式系统内;步骤4,在嵌入式系统中,对各相同段的数据通过密钥算法生成密钥校验码,与目标密钥校验码进行比较,并进行结果处理。2、根据权利要求1所述的大规模数据验证方法,其特征在于:所述的步骤(1)中的具体处理过程:先读取一段数据,用密钥算法处理器计算得出当前这段数据的目标密钥校验码,然后再把目标密钥校验码存放到相应的密钥校验码文件内;重复上述处理过程,直到要...

【专利技术属性】
技术研发人员:冯云庆彭登科张浩苏丹胡胜发
申请(专利权)人:安凯广州微电子技术有限公司
类型:发明
国别省市:81[中国|广州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1