构建数据指纹的方法、装置及电子设备制造方法及图纸

技术编号:3900920 阅读:160 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例公开了一种构建数据指纹的方法、装置及电子设备,所述方法包括:根据第一哈希算法对目标数据进行哈希运算,获取所述目标数据的第一摘要值;截取所述目标数据中的数据片段,根据第二哈希算法对所述数据片段进行哈希运算,获取所述数据片段的第二摘要值;根据所述第一摘要值和所述第二摘要值,生成所述目标数据的数据指纹。通过本发明专利技术实施例,可以降低构建数据指纹的运算量。

【技术实现步骤摘要】

本专利技术涉及信息
,特别涉及一种构建数据指纹的方法、装置及电子设备
技术介绍
数据指纹(fingerprint)是根据目标数据所生成的独一无二的定长数字片段, 所以数据指纹技术应当具有确认原始目标数据内容独一无二的特性,即唯一的目标数据 具有唯一的数据指纹,目标数据一旦发生改变,其数据指纹必然发生改变。数据指纹在实 际使用中应该能完全代表目标数据进行相同性比较等操作。例如内容寻址CAS(Content Addressable Storage)存储系统的内容寻址方式会根据存储数据的数据指纹生成其唯 一的“内容地址”以存取数据;在单实例(Single-Instance)存储系统中,系统根据存 储数据的数据指纹判断此数据是否已经存在于存储系统内;而在数据去重技术(Data De-duplication)中,系统根据存储数据的数据指纹判断该存储数据是否是系统中已经存 在的重复数据。由此可以看出,在上述应用中数据指纹完全代表了存储数据本身在系统中 进行比较操作。如果数据指纹不能唯一的代表存储数据,即当两个“内容不同”的存储数据 具有相同数据指纹时,那么在存储系统中会引发灾难性后果。所以如何根据目标数据构建 唯一的、可靠的数据指纹的方法显得非常关键。而专利技术人在实现本专利技术的过程中发现,现有技术中存在的问题在于目前根据目 标数据构建唯一的、可靠的数据指纹的方法大多比较复杂,构建时需要进行大量的运算,系 统的工作负担太大。
技术实现思路
本专利技术实施例的目的在于提供一种构建数据指纹的方法、装置及电子设备,使得 通过本专利技术实施例提供的方法、装置及电子设备,可以降低构建数据指纹的运算量,提高数 据指纹的可靠性。本专利技术实施例提供一种构建数据指纹的方法,所述方法包括根据第一哈希算法对目标数据进行哈希运算,获取所述目标数据的第一摘要值;截取所述目标数据中的数据片段,根据第二哈希算法对所述数据片段进行哈希运 算,获取所述数据片段的第二摘要值;根据所述第一摘要值和所述第二摘要值,生成所述目标数据的数据指纹。本专利技术实施例还提供一种构建数据指纹的装置,所述装置包括第一获取单元,用于根据第一哈希算法对目标数据进行哈希运算,获取所述目标 数据的第一摘要值;数据截取单元,用于截取所述目标数据中的数据片段;第二获取单元,根据第二哈希算法对所述数据片段进行哈希运算,获取所述数据 片段的第二摘要值;数据指纹生成单元,根据所述第一摘要值和所述第二摘要值,生成所述目标数据的数据指纹。本专利技术实施例还提供一种电子设备,其包括上述构建数据指纹的装置。本专利技术实施例的有益效果包括通过对目标数据及所述目标数据中的数据片段 进行哈希运算,即可获得有独立特征的数据参数,即摘要值,再根据所述摘要值生成数据指 纹,这种方案比较简单,运算量小,获得的数据指纹具有一定的唯一性和可靠性。 附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他 的附图。图1为本专利技术实施例一的构建数据指纹的方法的示意流程图;图2为本专利技术实施例二的构建数据指纹的方法的示意流程图;图3为本专利技术实施例三的第一种构建数据指纹的方法的示意流程图;图4为本专利技术实施例三的第二种构建数据指纹的方法的示意流程图;图5为本专利技术实施例三的第三种构建数据指纹的方法的示意流程图;图6为本专利技术实施例四的一种构建数据指纹的装置的结构框图;图7为本专利技术实施例四的另一种构建数据指纹的装置的结构框图;图8为本专利技术实施例五的电子设备的结构框图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本发 明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施 例,都属于本专利技术保护的范围。本专利技术实施例为一种构建目标数据的数据指纹的技术,这种技术通过对目标数据 以及该数据的片段进行哈希运算获得摘要值,再根据所述摘要值生成该目标数据的数据指纹。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的 限定。实施例一如图1所示,图1为本实施例的构建目标数据的数据指纹的方法的示意流程图,该 流程包括如下步骤101、根据第一哈希算法对目标数据进行哈希运算,获取所述目标数据的第一摘要 值;102、截取所述目标数据中的数据片段;103、根据第二哈希算法对所述数据片段进行哈希运算,获取所述数据片段的第二 摘要值;104、根据所述第一摘要值和所述第二摘要值,生成所述目标数据的数据指纹。本专利技术实施例中的第一哈希算法和第二哈希算法可以为相同的哈希算法,也可以 为不同的哈希算法。但不管是用相同的哈希算法还是用不同的哈希算法,所获得的第一摘 要值和第二摘要值都是不同的。生成的数据指纹包括了第一摘要值和第二摘要值,比如所 述数据指纹可以是将第一摘要值和第二摘要值首尾相接组合而成的,其中第一摘要值和第 二摘要值可以任意组合前后次序。这样获得的数据指纹不再单纯的依靠于某种哈希算法, 从而保证了所述数据指纹的“碰撞约束”强度能够不低于在本实施例的方法中所使用的最 脆弱哈希算法正常使用下的设计强度,具有较好的可靠性。需要说明的是,本专利技术实施例方法可以根据实际需要对各个步骤顺序进行调整。 比如可先依序执行步骤102、103,再执行步骤101,最后执行步骤104,这样仍然可以获得上 述本实施例方法中的相同的数据指纹,本专利技术实施例并不以此作为限制。 本专利技术实施例与现有技术相比的优点在于,通过对目标数据及所述目标数据中的 数据片段进行哈希运算,即可获得有独立特征的数据参数,即摘要值,再根据所述摘要值生 成数据指纹,通过这种方法获得的数据指纹不仅简单实用,运算量小,减小了系统的工作负 担,而且唯一性、可靠性都非常高。实施例二如图2所示,图2为本实施例的构建目标数据的数据指纹的方法的示意流程图,该 流程包括如下步骤201、根据第一哈希算法对目标数据进行哈希运算,获取所述目标数据的第一摘要 值;202、截取所述目标数据中的数据片段;203、判断所述数据片段的长度是否至少为128字节;若所述数据片段的长度至少 为128字节,则执行步骤204 ;若所述数据片段的长度小于128字节,则执行步骤202。204、根据第二哈希算法对所述数据片段进行哈希运算,获取所述数据片段的第二 摘要值;205、根据所述第一摘要值和所述第二摘要值,生成所述目标数据的数据指纹。本专利技术实施例中,在截取了所述目标数据片段后,还要判断所述截取的数据片段 长度是否至少为128个字节,若所述数据片段的长度至少为128字节,则执行步骤204 ;若 所述数据片段的长度小于128字节,则执行步骤202。这么做的目的主要是为了保证生成的 数据指纹有足够的强度,因为数据指纹的强度与第一摘要值和第二摘要值的长度有关,而 所述的第一摘要值和第二摘要值的长度又分别与第一哈希算法强度和第二哈希算法强度 有关,而第一哈希算法是对目标数据进行的运算,由于目标数据长度是固定的,所以第一哈 希算法强度主要由第一本文档来自技高网...

【技术保护点】
一种构建数据指纹的方法,其特征在于,所述方法包括,根据第一哈希算法对目标数据进行哈希运算,获取所述目标数据的第一摘要值;截取所述目标数据中的数据片段,根据第二哈希算法对所述数据片段进行哈希运算,获取所述数据片段的第二摘要值;根据所述第一摘要值和所述第二摘要值,生成所述目标数据的数据指纹。

【技术特征摘要】

【专利技术属性】
技术研发人员:王雨晨刘利锋杨琴琴
申请(专利权)人:成都市华为赛门铁克科技有限公司
类型:发明
国别省市:90[中国|成都]

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

1