提供源真实性的数据处理方法及系统的制作方法

文档序号:6424868阅读:183来源:国知局
专利名称:提供源真实性的数据处理方法及系统的制作方法
技术领域
本发明涉及网络通信领域,具体而言,涉及一种提供源真实性的数据处理方法及系统。
背景技术
在许多不稳定网络中,如无线网络等,数据包在传输过程中容易出现丢包现象,这会导致普通的数据打包方案由于数据包丢失而不能够有效完成源真实性验证功能。源真实性主要指数据接收端验证数据包来自于正确的数据发送端。同时,由于传统的签名打包方案,实现源真实性的功能数据与业务数据的比例较高,导致数据包功能数据载荷较高,数据通信的开销较大,降低了传输网络的信道利用率。许多实际应用要求数据接收端认证接收数据来源的正确性,如抵抗“中间人攻击” 的基本方式就是需要数据接收端认证数据来源的正确性。许多高安全性需求的应用,如电子商务、流媒体等,也要求实现接收数据的源真实性保护。现有技术提供的源真实性保护功能的常用方案是对整个业务数据计算数字签名, 并附加在业务数据后面,然后把业务数据和功能数据一起封装为多个数据包进行传输。上述方案没有考虑易丢包网络中,会由于数据包的丢失,将导致业务数据或功能数据接收不完全,从而导致业务数据的源真实性验证无法进行,极大影响正常的业务应用。为了解决易丢包网络中存在的上述问题,现有技术采用如下方案来解决,首先数据发送端对业务数据分解为多个数据段,对每一个数据段进行数字签名运算,并把这些段签名作为功能数据附加在每个对应的数据段后面,这样一个数据段及其段签名会被封装为一个网络传输数据包。数据接收端会对每一个接收到的数据包进行数字签名验证,从而实现整个业务数据的源真实性保护。但在上述方案存在的缺点也是明显的。首先,由于每一个数据包就有一个功能数据(数字签名),这样功能数据所占传输数据的比例太高,导致通信开销较大,信道利用率较低;其次,由于每个数据包就需要进行一次数字签名,导致服务器端和终端的运算量太大,尤其对于像流媒体类的数据,数据量大,实时性要求高,而终端处理设备(如机顶盒等) 性能较低,导致此方案完全不能满足业务性能需求。目前针对相关技术在实现业务数据源真实性保护的方案中占用的通信信道资源较大,且不能满足业务性能需求的问题,目前尚未提出有效的解决方案。

发明内容
本发明的主要目的在于提供一种提供源真实性的数据处理方法及系统,以解决上述相关技术在实现业务数据源真实性保护的方案中占用的通信信道资源较大,且不能满足业务性能需求的问题。为了实现上述目的,根据本发明的一个方面,提供了一种提供源真实性的数据处理方法,该提供源真实性的数据处理方法包括将业务数据进行分段以获取多个数据段;对各个数据段进行功能数据处理以获取每个数据段对应的第一段哈希值;根据第一段哈希值来获取整个业务数据的第一源值;通过容错编码算法分别对第一段哈希值和第一源值进行编码处理,以获取多个容错编码数据;在将多个容错编码数据分别与每个数据段结合之后,将数据段打包成业务数据包发送。进一步地,将多个容错编码数据分别与每个数据段结合包括将多个容错编码数据分别添加在每个数据段的后面;或者通过数字水印算法将多个容错编码数据分别嵌入每个数据段中。进一步地,根据第一段哈希值来获取整个业务数据的第一源值包括将各个数据段对应的第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值; 使用加密算法对块哈希值进行加密,以获取第一源值,加密算法包括对称密钥算法和非对称密钥算法。进一步地,在将数据段打包成业务数据包发送之后,方法还包括数据验证终端接收一个或多个业务数据包;在容错编码数据分别添加在每个数据段的后面的情况下,直接提取业务数据包中的容错编码数据;根据容错编码数据来验证业务数据的源真实性。进一步地,在将每个数据段打包成业务数据包发送之后,方法还包括验证终端接收一个或多个业务数据包;在容错编码数据通过数字水印算法分别嵌入每个数据段中的情况下,通过数字水印检测技术提取业务数据包中的容错编码数据;根据容错编码数据来验证业务数据的源真实性。进一步地,根据容错编码数据来验证业务数据的源真实性包括对多个容错编码数据进行容错解码,以获得对应的第一源值和第一段哈希值;对解码得到的所有第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值;通过加密算法对块哈希值进行加密得到第二源值;当第一源值与第二源值相同时,验证终端确定接收到的业务数据来自正确的数据封装终端。进一步地,在根据容错编码数据来验证业务数据的源真实性之后,方法还包括根据第一段哈希值来确定业务数据的完整性,该步骤包括对接收到的业务数据包中的数据段进行哈希计算,以获得对应的第二段哈希值;当第一段哈希值与第二段哈希值相同时,验证终端确定接收到的业务数据完整。进一步地,对多个容错编码数据进行容错解码,以获得对应的第一源值和第一段哈希值包括读取预定数目的业务数据包;对预定数目的业务数据包中的多个容错编码数据进行容错解码。为了实现上述目的,根据本发明的另一方面,提供了一种提供源真实性的数据处理系统,该提供源真实性的数据处理系统包括数据封装终端,包括拆分单元,用于将业务数据进行分段以获取多个数据段;功能数据处理单元,用于对各个数据段进行功能数据处理以获取每个数据段对应的第一段哈希值,并根据第一段哈希值来获取整个业务数据的第一源值;编码处理单元,用于通过容错编码算法分别对第一段哈希值和第一源值进行编码处理,以获取多个容错编码数据;发送单元,用于在将容错编码数据分别与每个数据段结合之后,将数据段打包成业务数据包发送。进一步地,功能数据处理单元包括哈希运算模块,用于对各个数据段进行哈希运算以获取每个数据段对应的第一段哈希值;第一计算模块,用于将各个数据段对应的第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值;加密模块,用于使用加密算法对块哈希值进行加密,以获取第一源值,加密算法包括对称密钥算法和非对称密钥算法。进一步地,系统还包括附加模块,用于将多个容错编码数据分别添加在每个数据段的后面;或者通过数字水印算法将多个容错编码数据分别嵌入每个数据段中。进一步地,系统还包括数据验证终端,包括接收单元,用于接收一个或多个业务数据包;提取单元,用于在容错编码数据分别添加在每个数据段的后面的情况下,直接提取业务数据包中的容错编码数据,或者,在容错编码数据通过数字水印算法分别嵌入每个数据段中的情况下,通过数字水印检测技术提取业务数据包中的容错编码数据;验证单元, 用于根据容错编码数据来验证业务数据的源真实性和完整性。进一步地,验证单元包括解码模块,用于对多个段源值容错码和多个段哈希容错码进行容错解码,以获得对应的第一源值和第一段哈希值;第二计算模块,用于对解码得到的所有第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值,并通过加密算法对块哈希值进行加密得到第二源值;第一比较验证模块,用于当第一源值与第二源值相同时,验证终端确定接收到的业务数据来自正确的发送终端。进一步地,验证单元还包括第三计算模块,用于对接收到的业务数据包中的数据段进行哈希计算,以获得对应的第二段哈希值;第二比较验证模块,用于当第一段哈希值与第二段哈希值相同时,验证终端确定接收到的业务数据完整。通过本发明,采用将业务数据进行分段以获取多个数据段;对各个数据段进行功能数据处理以获取每个数据段对应的第一段哈希值;根据第一段哈希值来获取整个业务数据的第一源值;通过容错编码算法分别对第一段哈希值和第一源值进行编码处理,以获取多个容错编码数据;在将多个容错编码数据分别与每个数据段结合之后,将数据段打包成业务数据包发送,通过降低了数据包功能数据的载荷,解决了相关技术的实现业务数据源真实性保护的方案中占用的通信信道资源较大,且不能满足业务性能需求的问题,进而实现降低了数据通信的信道开销,提高了传输网络的信道利用率,同时达到了满足业务性能需求的效果。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据本发明实施例的提供源真实性的数据处理系统的结构示意图;图2是根据图1所示实施例的提供源真实性的数据处理系统的详细结构示意图;图3是根据本发明实施例中数据段封装的工作示意图;图4是根据本发明实施例的提供源真实性的数据处理方法的流程图。
具体实施例方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。图1是根据本发明实施例的提供源真实性的数据处理系统的结构示意图;图2是根据图1所示实施例的提供源真实性的数据处理系统的详细结构示意图。如图1和2所示,该系统包括数据封装终端1,包括拆分单元11,用于将业务数据进行分段以获取多个数据段;功能数据处理单元13,用于对各个数据段进行功能数据处理以获取每个数据段对应的第一段哈希值并根据第一段哈希值来获取整个业务数据的第一源值;编码处理单元15,用于通过容错编码算法分别对第一段哈希值和第一源值进行编码处理,以获取多个容错编码数据;发送单元17,用于在将多个容错编码数据分别与每个数据段结合之后,将多个数据段打包成业务数据包发送。本发明上述实施例在数据封装终端1,即数据发送端中通过拆分单元11对整个业务数据进行分段,并通过功能数据处理单元13和编码处理单元15获得每个数据段的功能数据,最后通过发送单元17将以每个数据段及其功能数据作为一个业务数据包在传输网络中进行传输。上述功能中通过编码处理单元15对功能数据处理单元13处理后的各个数据段使用容错编码算法进行编码计算得到多个容错编码数据,该容错编码数据是段源值容错码和段哈希容错码,由于容错编码算法的特点是仅使用一定数据的容错编码数据就可以恢复整个业务数据,因此本申请该实施例中发送的这种业务数据包可以适用在许多不稳定网络中,如无线网络等,即便业务数据包在传输过程中出现丢包现象,仍旧能够有效完成源真实性验证功能。而且本申请中将得到的多个容错编码数据,即多个段源值容错码和段哈希容错码分别与每个数据段结合打包的方案,可以极大降低功能数据载荷,保证了容错率大于网络丢包率,从而解决了相关技术的实现业务数据源真实性保护的方案中占用的通信信道资源较大,且不能满足业务性能需求的问题,进而实现降低了数据通信的信道开销,提高了传输网络的信道利用率,同时达到了满足业务性能需求的效果。本发明图1中的传输网络是所有业务数据包传输系统,在这个网络中,可能会由于网络堵塞、传输信道质量等原因,导致在其上传输的数据包丢失或损坏。上述实施例中,该系统的多个段源值容错码和和段哈希容错码分别与每个数据段结合打包可以包括将所述多个容错编码数据分别添加在每个所述数据段的后面;或者通过数字水印算法将所述多个容错编码数据分别嵌入每个所述数据段中。本申请上述实施例中的数据打包方案,不仅能够实现在易丢包网络中传输数据的源真实性保护,而且能够实现较小的数据开销,提高信道利用率,且得到的容错编码数据就是数据包传输过程中的数据载荷。优选地,本申请上述实施例中的功能数据处理单元13可以包括哈希运算模块, 用于对各个数据段进行哈希运算以获取每个数据段对应的第一段哈希值;第一计算模块, 用于将各个数据段对应的第一段哈希值进行求和运算,并对求和运算结果进行哈希运算, 以获取块哈希值;加密模块,用于使用加密算法对块哈希值进行加密,以获取第一源值,加密算法包括对称密钥算法和非对称密钥算法。具体的,可以通过图3所示的数据段封装的工作示意图来详细描述本申请上述实施例。结合图3所示,本申请上述数据封装终端1实现对业务数据进行分段,把每数据段作为一个网络传输数据包单位。把所有数据段分别作哈希运算得到第一段哈希值,然后再把这些第一段哈希值求和后再做一次哈希运算,形成整个业务数据的哈希值,称为块哈希。把块哈希使用密码算法进行加密,例如使用非对称密码算法的私钥加密,形成数字签名。可以称此数字签名为“源值”。然后把这个源值和所有段哈希进行容错性编码,形成与数据包同样数目的容错码,然后把这些容错码使用数字水印技术分别嵌入到每个数据包中进行发送。此方案在包丢失的情况下实现源真实性保护功能的关键在于使用了容错编码算法。容错编码算法的特点在于将一个业务数据编码为η份容错编码数据,使用其中K (k < η) 份容错编码数据就可以恢复整个业务数据,k值可视网络丢包率情况而定。本申请上述实施例中的系统还可以包括数据验证终端2,包括接收单元21,用于接收一个或多个业务数据包;提取单元23,用于在容错编码数据分别添加在每个数据段的后面的情况下,直接提取业务数据包中的容错编码数据,或者,在容错编码数据通过数字水印算法分别嵌入每个数据段中的情况下,通过数字水印检测技术提取业务数据包中的容错编码数据;验证单元25,用于根据容错编码数据来验证业务数据的源真实性和完整性。 该实施例中的数据验证终端可以是数据接收端,该数据验证终端对接收到业务数据包进行解码验证的处理,完成对业务数据的源真实性验证以及完整性。优选地,上述数据验证终端2中的验证单元25可以包括解码模块,用于对多个容错编码数据进行容错解码,以获得对应的第一源值和第一段哈希值;第二计算模块,用于对解码得到的所有第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值,并通过加密算法对块哈希值进行加密得到第二源值;第一比较验证模块,用于当第一源值与第二源值相同时,验证终端确定接收到的业务数据来自正确的发送终端。上述实施例完成了数据来源的正确性的验证过程。优选地,上述数据验证终端2中的验证单元25还可以包括第三计算模块,用于对接收到的业务数据包中的数据段进行哈希计算,以获得对应的第二段哈希值;第二比较验证模块,用于当第一段哈希值与第二段哈希值相同时,验证终端确定接收到的业务数据完整。上述实施例完成了数据来源的完整性的验证过程。上述图1和图2所示的系统完成了业务数据中每个数据段的功能数据的生成过程和检测过程,应用到的应用容错编码算法,保证了数据接收端即使收到部分数据,数据接收端也可完成源真实性保护。另外,在数据封终端1将在将多个容错编码数据分别与每个数据段结合的过程中可以采用将多个段源值容错码和多个段哈希容错码分别添加在每个数据段的后面;或者, 也可以采用通过数字水印算法将多个段源值容错码和多个段哈希容错码分别嵌入每个数据段中。前一种方式为一种简洁的结合方式,研发过程中效率较高,后一种方式使用数字水印算法将功能数据嵌入到业务数据中,进一步降低了功能数据的载荷,从而减少通信数据开销,提高了传输网络的利用率。图4是根据本发明实施例的提供源真实性的数据处理方法的流程图,如图4所示该方法包括如下步骤步骤S102,通过图2中的数据封装终端1中的拆分单元11来将业务数据进行分段以获取多个数据段。步骤S104,通过图2中的数据封装终端1中的功能数据处理单元13对各个数据段进行功能数据处理以获取每个数据段对应的第一段哈希值。步骤S106,图2中的数据封装终端1中的功能数据处理单元13根据第一段哈希值来获取整个业务数据的第一源值。
步骤S108,图2中的数据封装终端1中的编码处理单元15通过容错编码算法分别对第一段哈希值和第一源值进行编码处理,以获取多个容错编码数据。步骤S110,图2中的数据封装终端1中的发送单元17在将多个容错编码数据分别与每个数据段结合之后,将数据段打包成业务数据包发送。本发明上述实施例在数据封装终端1,即数据发送端中通过拆分单元11对整个业务数据进行分段,把每数据段作为一个网络传输数据包单位,并通过功能数据处理单元13 和编码处理单元15获得每个数据段的功能数据,最后通过发送单元17将以每个数据段及其功能数据作为一个业务数据包在传输网络中进行传输。上述功能中通过编码处理单元15对功能数据处理单元13处理后的各个数据段使用容错编码算法进行编码计算得到多个容错编码数据,该容错编码数据可以是段源值容错码和段哈希容错码,由于容错编码算法的特点是仅使用一定数据的容错编码数据就可以恢复整个业务数据,因此本申请该实施例中发送的这种业务数据包可以适用在许多不稳定网络中,如无线网络等,即便业务数据包在传输过程中出现丢包现象,仍旧能够有效完成源真实性验证功能。而且本申请中将得到的多个容错编码数据,即多个段源值容错码和和段哈希容错码分别与每个数据段结合打包的方案,可以极大降低功能数据载荷,保证了容错率大于网络丢包率,从而解决了相关技术的实现业务数据源真实性保护的方案中占用的通信信道资源较大,且不能满足业务性能需求的问题,进而实现降低了数据通信的信道开销,提高了传输网络的信道利用率,同时达到了满足业务性能需求的效果。具体的,本申请上述实施例中的步骤S102可以实现对业务数据进行适当分段,且每数据段长度不超过封包允许的数据长度,可以假设将数据段分段后的份数为η并在步骤 S104中实现对步骤S102中获得的各数据段进行哈希运算,其值称为“段哈希”优选地,本申请上述实施例中步骤S106根据第一段哈希值来获取整个业务数据的第一源值的步骤包括将各个数据段对应的第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值;使用加密算法对块哈希值进行加密,以获取第一源值,加密算法包括对称密钥算法和非对称密钥算法。具体的,上述实施例实现了 对划分好的η份第一段哈希值进行求和运算,并对此进行哈希运算,其值称为“块哈希”,并使用密码算法对“块哈希”进行加密,形成“源值”,所使用的密码算法可以是非对称密钥算法,也可以是对称密码算法,其中,在非对称密钥算法情况下,此“源值”即为数字签名。优选地,步骤SllO将多个容错编码数据分别与每个数据段结合的方式可以包括如下两种一种是将多个容错编码数据分别添加在每个数据段的后面;另一种是通过数字水印算法将多个容错编码数据分别嵌入每个数据段中。本申请上述实施例中,在步骤SllO将数据段打包成业务数据包发送之后,方法还可以包括数据验证终端2接收一个或多个业务数据包;在容错编码数据分别添加在每个数据段的后面的情况下,直接提取业务数据包中的容错编码数据,以实现根据容错编码数据来验证业务数据的源真实性和完整性。另外的,如果容错编码数据是通过数字水印算法分别嵌入每个数据段中的情况下,则将通过数字水印检测技术提取业务数据包中的容错编码数据。上述步骤具体实现了,使用容错编码算法对“源值”和段哈希进行编码,分别形成η个容错编码数据,即η个“段源值容错码”和η个“段哈希容错码”,然后将上述的η个“段源值容错码”和η个“段哈希容错码”分别附加在到η个数据段后面,如果需要进一步降低载荷,可以使用数字水印算法把上述的η个“段源值容错码”和η个“段哈希容错码”分别嵌入到η个数据段中,此处的数字水印可以为不可见数字水印,并且仅对水印对业务功能不造成影响,而且此数字水印可以选择为鲁棒性数字水印,即使通过编码转换也不能改变水印, 提供强认证功能。在数据封装终端1完成上述业务数据的封装过程之后,可以把业务数据包通过传输网络发送到数据验证终端2进行验证。本发明上述各个实施例中,步骤SllO完成将数据段打包成业务数据包发送至数据验证终端2之后,数据验证终端2根据容错编码数据来验证业务数据的源真实性,可以包括如下步骤对多个容错编码数据进行容错解码,以获得对应的第一源值和第一段哈希值; 对解码得到的所有第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值;通过加密算法对块哈希值进行加密得到第二源值;当第一源值与第二源值相同时,验证终端确定接收到的业务数据来自正确的数据封装终端。优选地,在根据容错编码数据来验证业务数据的源真实性之后,数据验证终端2 验证接收到的业务数据的完整性,可以通过容错解码后得到的第一段哈希值来确定业务数据的完整性,具体的实施步骤可以包括对接收到的业务数据包中的数据段进行哈希计算, 以获得对应的第二段哈希值;当第一段哈希值与第二段哈希值相同时,验证终端确定接收到的业务数据完整。上述实施例中对接收到的业务数据进行真实性和完整性的判断可以同时进行,即在对多个容错编码数据进行容错解码,以获得对应的第一源值和第一段哈希值之后,可以通过上述算法对接收到的业务数据包同时进行真实性的验证和完整性的验证。上述实施例中数据验证终端的处理流程具体如下由于数据验证终端接收到的业务数据包可能已经丢失了一部分,因此,首先从收到的业务数据包的功能数据中提取容错编码值,即提取出“段源值容错码”和“段哈希容错码”,根据容错编码的特性,只需收到k个数据包,就可以恢复出“源值”和所有的“段哈希”。 若使用数字水印嵌入算法,就需要相应的数字水印检测技术从收到的数据包中提取出“段源值容错码”和“段哈希容错码”。此处的k值,可以根据网络丢包率进行相应的设定,n-k/ η表示系统容错率,例如K = 90,η = 100,表示系统的容错率为10 %,一般情况下,在网络丢包率小于10%的情况下,本方案可完成传输数据的源真实性保护。然后,对所有第一段哈希值进行求和运算,并对此进行哈希运算,计算出一个“块哈希”。最后,使用密码算法验证“源值”和“块哈希”的正确性,即通过采用与数据封装终端1相同的加密算法对“块哈希”进行加密,检验此时得到的源值与从数据封装终端1接收到的源值是否相同,从而验证此数据来源的正确性。在该实施例中,如果将数据封装终端 1得到的源值设定为第一源值,则将在数据验证终端2重新计算得到的源值设定为第二源值,第一源值与第二源值的检验结果可以是相同也可以是不同。进一步,也可以对接收到的数据包中的数据段做哈希,与恢复出来的段哈希值进行对比,如果一致,则表明接收到的数据包的数据完整性正确。上述步骤实现了对于每个接收到的业务数据包,与对应的段哈希值进行验证,以确定每个接收到的业务数据包的完整性。本申请上述实施例中,步骤S108对多个容错编码数据进行容错解码,以获得对应的第一源值和第一段哈希值可以包括读取预定数目的业务数据包;对预定数目的业务数据包中的多个容错编码数据进行容错解码。综上所示,结合图2和图4,本申请图3中所示的数据打包方案,可以极大降低功能数据载荷,现采用具体赋值的方式来分析如下假设业务数据被分为η = 100个数据段进行处理,并假设传输网络的丢包率为 5 %,为保障本方案实现源真实性验证,在利用容错编码时,把参数k设为90,即n-k/n = 10 %,保障容错率大于网络丢包率。按照传统方案,需要在每个数据包尾附加数字签名来实现源真实性验证,此处以最常用RSA签名算法为例,其签名长度为1024bits,即传统方案的功能数据载荷为 1024bits ;本文方案中,需要在每个数据包附加容错编码后的哈希值和源值。容错哈希值的长度,可以根据信息量变化大体估计,假设原哈希值为SHAl哈希值,长度为160bits, 则编码后的哈希值大约为160*100/90,约为200bits ;源值编码后大约为10M/90,约为 120bits,即本方案功能数据载荷约为320bits。若采用不可见数字水印技术,在保障不妨碍业务功能基础上把功能数据嵌入到业务数据中,可以实现功能数据载荷为0,显而易见的, 本申请的技术方案很大程度上提高了网络信道的利用率,满足了业务性能的需求,而且本方案中使用到的各种关键技术都是切实可行的,方案将会应用到IPCAS/DRM系统中。需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。从以上的描述中,可以看出,本发明实现了如下技术效果即使在易丢包网络中也能实现数据源真实性保护;完成源真实性保护的功能数据开销较小;终端运算量较少,对终端性能要求低。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种提供源真实性的数据处理方法,其特征在于,包括 将业务数据进行分段以获取多个数据段;对各个所述数据段进行功能数据处理以获取每个所述数据段对应的第一段哈希值; 根据所述第一段哈希值来获取整个所述业务数据的第一源值; 通过容错编码算法分别对所述第一段哈希值和所述第一源值进行编码处理,以获取多个容错编码数据;在将所述多个容错编码数据分别与每个所述数据段结合之后,将所述数据段打包成业务数据包发送。
2.根据权利要求1所述的方法,其特征在于,将所述多个容错编码数据分别与每个所述数据段结合包括将所述多个容错编码数据分别添加在每个所述数据段的后面;或者通过数字水印算法将所述多个容错编码数据分别嵌入每个所述数据段中。
3.根据权利要求2所述的方法,其特征在于,根据所述第一段哈希值来获取整个所述业务数据的第一源值包括将各个所述数据段对应的所述第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值;使用加密算法对所述块哈希值进行加密,以获取所述第一源值,所述加密算法包括 对称密钥算法和非对称密钥算法。
4.根据权利要求2所述的方法,其特征在于,在将所述数据段打包成业务数据包发送之后,所述方法还包括数据验证终端接收一个或多个所述业务数据包;在所述容错编码数据分别添加在每个所述数据段的后面的情况下,直接提取所述业务数据包中的所述容错编码数据;根据所述容错编码数据来验证所述业务数据的源真实性。
5.根据权利要求2所述的方法,其特征在于,在将每个所述数据段打包成业务数据包发送之后,所述方法还包括验证终端接收一个或多个所述业务数据包;在所述容错编码数据通过数字水印算法分别嵌入每个所述数据段中的情况下,通过数字水印检测技术提取所述业务数据包中的所述容错编码数据; 根据所述容错编码数据来验证所述业务数据的源真实性。
6.根据权利要求4或5所述的方法,其特征在于,根据所述容错编码数据来验证所述业务数据的源真实性包括对多个所述容错编码数据进行容错解码,以获得对应的所述第一源值和所述第一段哈希值;对解码得到的所有所述第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取所述块哈希值;通过所述加密算法对所述块哈希值进行加密得到第二源值;当所述第一源值与所述第二源值相同时,所述验证终端确定接收到的所述业务数据来自正确的数据封装终端。
7.根据权利要求6所述的方法,其特征在于,在根据所述容错编码数据来验证所述业务数据的源真实性之后,所述方法还包括根据所述第一段哈希值来确定所述业务数据的完整性,该步骤包括 对接收到的所述业务数据包中的数据段进行哈希计算,以获得对应的第二段哈希值; 当所述第一段哈希值与所述第二段哈希值相同时,所述验证终端确定接收到的所述业务数据完整。
8.根据权利要求6所述的方法,其特征在于,对多个所述容错编码数据进行容错解码, 以获得对应的所述第一源值和所述第一段哈希值包括读取预定数目的业务数据包;对所述预定数目的业务数据包中的多个所述容错编码数据进行容错解码。
9.一种提供源真实性的数据处理系统,其特征在于,包括 数据封装终端,包括拆分单元,用于将业务数据进行分段以获取多个数据段;功能数据处理单元,用于对各个所述数据段进行功能数据处理以获取每个所述数据段对应的第一段哈希值,并根据所述第一段哈希值来获取整个所述业务数据的第一源值;编码处理单元,用于通过容错编码算法分别对所述第一段哈希值和所述第一源值进行编码处理,以获取多个容错编码数据;发送单元,用于在将所述容错编码数据分别与每个所述数据段结合之后,将所述数据段打包成业务数据包发送。
10.根据权利要求9所述的系统,其特征在于,所述功能数据处理单元包括哈希运算模块,用于对各个所述数据段进行哈希运算以获取每个所述数据段对应的第一段哈希值;第一计算模块,用于将各个所述数据段对应的所述第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取块哈希值;加密模块,用于使用加密算法对所述块哈希值进行加密,以获取所述第一源值,所述加密算法包括对称密钥算法和非对称密钥算法。
11.根据权利要求9所述的系统,其特征在于,所述系统还包括附加模块,用于将所述多个容错编码数据分别添加在每个所述数据段的后面;或者通过数字水印算法将所述多个容错编码数据分别嵌入每个所述数据段中。
12.根据权利要求9所述的系统,其特征在于,所述系统还包括 数据验证终端,包括接收单元,用于接收一个或多个所述业务数据包;提取单元,用于在所述容错编码数据分别添加在每个所述数据段的后面的情况下,直接提取所述业务数据包中的所述容错编码数据,或者,在所述容错编码数据通过数字水印算法分别嵌入每个所述数据段中的情况下,通过数字水印检测技术提取所述业务数据包中的所述容错编码数据;验证单元,用于根据所述容错编码数据来验证所述业务数据的源真实性和完整性。
13.根据权利要求12所述的系统,其特征在于,所述验证单元包括解码模块,用于对多个所述段源值容错码和多个所述段哈希容错码进行容错解码,以获得对应的所述第一源值和所述第一段哈希值;第二计算模块,用于对解码得到的所有所述第一段哈希值进行求和运算,并对求和运算结果进行哈希运算,以获取所述块哈希值,并通过所述加密算法对所述块哈希值进行加密得到第二源值;第一比较验证模块,用于当所述第一源值与所述第二源值相同时,所述验证终端确定接收到的所述业务数据来自正确的发送终端。
14.根据权利要求13所述的系统,其特征在于,所述验证单元还包括 第三计算模块,用于对接收到的所述业务数据包中的数据段进行哈希计算,以获得对应的第二段哈希值;第二比较验证模块,用于当所述第一段哈希值与所述第二段哈希值相同时,所述验证终端确定接收到的所述业务数据完整。
全文摘要
本发明公开了一种提供源真实性的数据处理方法及系统。其中,该方法包括将业务数据进行分段以获取多个数据段;对各个数据段进行功能数据处理以获取每个数据段对应的第一段哈希值;根据第一段哈希值来获取整个业务数据的第一源值;通过容错编码算法分别对第一段哈希值和第一源值进行编码处理,以获取多个容错编码数据;在将多个容错编码数据分别与每个数据段结合之后,将数据段打包成业务数据包发送。本发明通过降低了数据包功能数据的载荷,能够提高传输网络的信道利用率,同时满足了业务性能需求。
文档编号G06T1/00GK102325025SQ20111013777
公开日2012年1月18日 申请日期2011年5月25日 优先权日2011年5月25日
发明者王蜀洪, 黄尹, 齐志峰 申请人:北京数码视讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1