数据传输一致性校验方法、装置、计算机设备及存储介质
技术领域
本申请涉及数据传输技术领域,尤其涉及一种数据传输一致性校验方法、装置、计算机设备及存储介质。
背景技术
目前,在网络数据传输场景中,一般都需要校验发送方和接收方的数据是否一致,避免因为传输错误或人为修改导致的数据不一致,引起更大问题.
相关技术中,发送方在发送数据的同时,对发送的数据进行MD5(消息摘要算法)签名,接收方在接收到数据后,用相同的方法对数据进行MD5签名,如果签名一致,则表明传输数据一致,否则传输数据不一致,然而这种方式并不能防止发送方否认发送的数据,同时也不能防止接收方篡改数据,因为发送方和接收方都可以篡改数据同时记录篡改后数据的MD5签名,双方无法证明自己的数据是没有篡改的。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请提出一种数据传输一致性校验方法、装置及存储介质,用于解决现有技术中不能防止发送方否认发送的数据,同时也不能防止接收方篡改数据的技术问题。
为达上述目的,本申请第一方面实施例提出了一种数据传输一致性校验方法,包括:
通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对所述待发送数据摘要进行加密生成待发送数据签名;
将所述待发送数据和所述待发送数据签名发送给接收方,以使所述接收方通过第一公钥对所述待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若所述第一接收数据摘要和所述第二接收数据摘要相同,则确定数据的传输一致;
接收消息签名,通过第二公钥对所述消息签名进行解密,并判断所述接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
本申请实施例的数据传输一致性校验方法,通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对待发送数据摘要进行加密生成待发送数据签名,将待发送数据和待发送数据签名发送给接收方,以使接收方通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,接收消息签名,通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为达上述目的,本申请第二方面实施例提出了一种数据传输一致性校验方法,包括:
获取待发送数据和待发送数据签名;
通过第一公钥对所述待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要;
若所述第一接收数据摘要和所述第二接收数据摘要相同,则确定数据的传输一致;
通过第二私钥对接收信息编号进行加密生成消息签名;
将所述消息签名发送给发送方,以使所述发送方通过第二公钥对所述消息签名进行解密,并判断所述接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
本申请实施例的数据传输一致性校验方法,通过获取待发送数据和待发送数据签名,通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要;若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,通过第二私钥对接收信息编号进行加密生成消息签名,将消息签名发送给发送方,以使发送方通过第二公钥对所述消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为达上述目的,本申请第三方面实施例提出了一种数据传输一致性校验装置,包括:
编码加密模块,用于通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对所述待发送数据摘要进行加密生成待发送数据签名;
发送模块,用于将所述待发送数据和所述待发送数据签名发送给接收方,以使所述接收方通过第一公钥对所述待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若所述第一接收数据摘要和所述第二接收数据摘要相同,则确定数据的传输一致。
接收判断模块,用于接收消息签名,通过第二公钥对所述消息签名进行解密,并判断所述接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
本申请实施例的数据传输一致性校验装置,通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对待发送数据摘要进行加密生成待发送数据签名,将待发送数据和待发送数据签名发送给接收方,以使接收方通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,接收消息签名,通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为达上述目的,本申请第四方面实施例提出了一种数据传输一致性校验装置,包括:
获取模块,用于获取待发送数据和待发送数据签名;
解密编码模块,用于通过第一公钥对所述待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要;
确定模块,用于若所述第一接收数据摘要和所述第二接收数据摘要相同,则确定数据的传输一致;
加密模块,用于通过第二私钥对接收信息编号进行加密生成消息签名;
第一发送模块,用于将所述消息签名发送给发送方,以使所述发送方通过第二公钥对所述消息签名进行解密,并判断所述接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
本申请实施例的数据传输一致性校验装置,通过获取待发送数据和待发送数据签名,通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要;若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,通过第二私钥对接收信息编号进行加密生成消息签名,将消息签名发送给发送方,以使发送方通过第二公钥对所述消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为达上述目的,本申请第五方面实施例提出了一种计算机设备,包括:处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如第一和第二方面实施例所述的数据传输一致性校验方法。
为达上述目的,本申请第六方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一和第二方面实施例所述的数据传输一致性校验方法。
为达上述目的,本申请第七方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现如第一和第二方面实施例所述的数据传输一致性校验方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例一所提供的数据传输一致性校验方法的流程示意图;
图2为本申请实施例二所提供的数据传输一致性校验方法的流程示意图;
图3为本申请实施例三所提供的数据传输一致性校验方法的流程示意图;
图4为本申请实施例一所提供的数据传输一致性校验装置的结构示意图;
图5为本申请实施例二所提供的数据传输一致性校验装置的结构示意图;
图6为本申请实施例所提供的计算机设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的数据传输一致性校验方法、装置、计算机设备及存储介质。
图1为本申请实施例一所提供的数据传输一致性校验方法的流程示意图。
首先在接收方侧描述数据传输一致性校验方法,如图1所示,该数据传输一致性校验方法可以包括以下步骤:
步骤101,通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对待发送数据摘要进行加密生成待发送数据签名。
在实际应用中,数据之间传输可以是终端与服务器之间进行数据传输、服务器与服务器之间进行数据传输,可以根据实际应用需要进行选择,因此,本申请中的发送方和接收方可以是终端、服务器等设备。
具体地,不同的应用场景,待发送数据不同,比如终端A需要将文档发送给终端B,待发送数据则为文档数据,再比如终端A需要将视频文件发送给服务器C,待发送数据则为视频数据。
具体地,通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,接着用第一私钥对待发送数据摘要进行加密生成待发送数据签名。其中,第一私钥有其对应的第一公钥,在发送方生成第一私钥和第一公钥的密钥对后将第一公钥发送给接收方,可以理解的是,接收方可以是一个或者多个。
步骤102,将待发送数据和待发送数据签名发送给接收方,以使接收方通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致。
具体地,在生成待发送数据签名后,将将待发送数据和待发送数据签名发送给接收方。可以理解的是,在接收方接收到待发送数据和待发送数据签名后,可以同样通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,并运用第一公钥对待发送数据签名进行解密得到第一接收数据摘要,通过第一接收数据摘要和第二接收数据摘要是否相同,则确定数据的传输是否一致,也就是说第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致。
需要说明的是,至于发送方和接收方数据传输具体传输方式不做限定,HTTP/HTTPS/FTP/SFTP,RPC、WebService等方式都适用。
步骤103,接收消息签名,通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
可以理解的是,在通过第二私钥对接收信息编号进行加密生成消息签名之前生成第二私钥和第二公钥,将第二公钥发送给发送方。
具体地,接收方通过第二私钥对接收信息编号进行加密生成消息签名发送给发送方,发送方通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定所述接收方接收到数据,在接收信息编号与发送消息编号一致时确定数据传输成功,若接收信息编号与发送消息编号不一致,即数据传输不成功,发送方可以重新发送数据。
本申请实施例的数据传输一致性校验方法,通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对待发送数据摘要进行加密生成待发送数据签名,将待发送数据和待发送数据签名发送给接收方,以使接收方通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,接收消息签名,通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为了更加全面描述本申请的数据传输一致性校验方法,下面以接收方侧进行描述。
图2为本申请实施例二所提供的数据传输一致性校验方法的流程示意图如图2所示,该数据传输一致性校验方法可以包括以下步骤:
步骤201,获取待发送数据和待发送数据签名。
步骤202,通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要。
步骤203,若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致。
还可以理解的是,在第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致之后,可以向发送方发送回执信息。
步骤204,通过第二私钥对接收信息编号进行加密生成消息签名。
步骤205,将消息签名发送给发送方,以使发送方通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
可以理解的是,在通过第二私钥对接收信息编号进行加密生成消息签名之前生成第二私钥和第二公钥,将第二公钥发送给发送方。
具体地,接收方通过第二私钥对接收信息编号进行加密生成消息签名发送给发送方,发送方通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定所述接收方接收到数据,在接收信息编号与发送消息编号一致时确定数据传输成功,若接收信息编号与发送消息编号不一致,即数据传输不成功,发送方可以重新发送数据。
由此,因为接收方将消息签名用第二私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息签名。
具体地,接收方在获取待发送数据和待发送数据签名后,可以通过之前发送方发送的第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并同样通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及在第一接收数据摘要和第二接收数据摘要相同时确定数据的传输一致。
需要说明的是,若第一接收数据摘要和第二接收数据摘要不相同,则确定数据的传输不一致,并向发送方发送数据传输失败信息。
本申请实施例的数据传输一致性校验方法,通过获取待发送数据和待发送数据签名,通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要;若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,通过第二私钥对接收信息编号进行加密生成消息签名,将消息签名发送给发送方,以使发送方通过第二公钥对所述消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为了本领域人员更加清楚上述过程,下面结合图3进行详细说明,如图3所示:
首先,发送方生成公/私钥秘钥对,其中公钥称为A,私钥称为A1,发送方将公钥A交给接收方,接收方生成公/私钥秘钥对,其中公钥称为B,私钥称为B1,接收方将公钥B交个发送方。
然后,发送方对要发送的数据消息体进行MD5摘要,得到数据摘要,然后对数据摘要进行私钥(发送方的私钥A1)加密,得到加密后的签名发送方将数据和私钥加密后的签名发送给接收方。
接着接收方接收数据和签名,记录日志,接收方用发送方的公钥A对加密的签名解密得到数据摘要A,接收方对接收的数据进行MD5摘要,得到数据摘要B,接收方对比数据摘要A和B相同,则确定所述接收方接收到数据。
以及,如果接收方对比数据摘要A和B一致,则对收到消息的编号进行私钥(接收方的私钥B1)加密,得到消息签名,接收方将消息签名发送给发送方;如果接收方对比数据摘要A和B不一致,则给发送方发送该消息编号接收失败的信息,要求发送方重新发送该消息。
进一步地,发送方接收接收方的消息回执,记录接收方的消息回执,并核验消息是否发送成功,如回执显示发送失败,则继续重发该消息;发送方接收接收方的消息回执,如果是接收失败回执,则继续重发该消息;如果发送方收到加密的回执消息,用接收方的公钥B对回执消息解密,如果解密后得到消息编号,则表示接收方接收成功。如果得不到消息编号,则继续重发该消息。
本申请中,在发送方用私钥加密签名,接收方收到后不可篡改数据和签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能篡改数据和签名,接收方收到的数据和签名只要一致,就必然是发送方发送的。
另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为了实现上述实施例,本申请还提出一种数据传输一致性校验装置。
图4为本申请实施例一所提供的数据传输一致性校验装置的结构示意图。
如图4所示,该数据传输一致性校验装置40包括:编码加密模块410、和发送模块420、接收判断模块430。其中,
编码加密模块410,用于通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对待发送数据摘要进行加密生成待发送数据签名。
发送模块420,用于将待发送数据和待发送数据签名发送给接收方,以使接收方通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致。
接收判断模块430,用于接收消息签名,通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
需要说明的是,前述对数据传输一致性校验方法实施例的解释说明也适用于该实施例的数据传输一致性校验装置,其实现原理类似,此处不再赘述。
本申请实施例的数据传输一致性校验装置,通过消息摘要算法将待发送数据进行编码生成待发送数据摘要,并用第一私钥对待发送数据摘要进行加密生成待发送数据签名,将待发送数据和待发送数据签名发送给接收方,以使接收方通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要,以及若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,接收消息签名,通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为了实现上述实施例,本申请还提出一种数据传输一致性校验装置。
图5为本申请实施例二所提供的数据传输一致性校验装置的结构示意图。
如图5所示,该数据传输一致性校验装置50包括:获取模块510、解密编码模块520、确定模块530、加密模块540和第一发送模块550。其中,
获取模块510,用于获取待发送数据和待发送数据签名。
解密编码模块520,用于通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要。
确定模块530,用于若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致。
加密模块540,用于通过第二私钥对接收信息编号进行加密生成消息签名。
第一发送模块550,用于将消息签名发送给发送方,以使发送方通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定所述接收方接收到数据。
需要说明的是,前述对数据传输一致性校验方法实施例的解释说明也适用于该实施例的数据传输一致性校验装置,其实现原理类似,此处不再赘述。
本申请实施例的数据传输一致性校验装置,通过获取待发送数据和待发送数据签名,通过第一公钥对待发送数据签名进行解密得到第一接收数据摘要,并通过消息摘要算法对接收到的待发送数据进行编码生成第二接收数据摘要;若第一接收数据摘要和第二接收数据摘要相同,则确定数据的传输一致,通过第二私钥对接收信息编号进行加密生成消息签名,将消息签名发送给发送方,以使发送方通过第二公钥对消息签名进行解密,并判断接收信息编号与发送消息编号相同,则确定接收方接收到数据。由此,在发送方用第一私钥加密生成待发送数据签名,接收方收到后不可篡改待发送数据和待发送数据签名,同时发送方也不可否认已发送的数据,因为接收方没有发送方的私钥,不可能待发送数据和待发送数据签名,接收方收到的数据和签名只要一致,就必然是发送方发送的,提高了数据传输一致性校验的准确性和效率,另外,因为接收方将回执信息用自己的私钥加密后发给发送方,发送方收到后,也就确认接收方已经收到该信息,接收方不能否认已收到信息,因为发送方同样也不能伪造接收方的消息回执。
为了实现上述实施例,本申请还提出一种计算机设备,包括:处理器和存储器。其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如前述实施例所述的数据传输一致性校验方法。
图6为本申请实施例所提供的计算机设备的结构示意图,示出了适于用来实现本申请实施方式的示例性计算机设备90的框图。图6显示的计算机设备90仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机设备90以通用计算机设备的形式表现。计算机设备90的组件可以包括但不限于:一个或者多个处理器或者处理单元906,***存储器910,连接不同***组件(包括***存储器910和处理单元906)的总线908。
总线908表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及***组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备90典型地包括多种计算机***可读介质。这些介质可以是任何能够被计算机设备90访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
***存储器910可以包括易失性存储器形式的计算机***可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)911和/或高速缓存存储器912。计算机设备90可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机***存储介质。仅作为举例,存储***913可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc ReadOnly Memory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线908相连。***存储器910可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。
具有一组(至少一个)程序模块9140的程序/实用工具914,可以存储在例如***存储器910中,这样的程序模块9140包括但不限于操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块9140通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备90也可以与一个或多个外部设备10(例如键盘、指向设备、显示器100等)通信,还可与一个或者多个使得用户能与该终端设备90交互的设备通信,和/或与使得该计算机设备90能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口902进行。并且,计算机设备90还可以通过网络适配器900与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图6所示,网络适配器900通过总线908与计算机设备90的其它模块通信。应当明白,尽管图6中未示出,可以结合计算机设备90使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
处理单元906通过运行存储在***存储器910中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的数据传输一致性校验方法。
为了实现上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如前述实施例所述的数据传输一致性校验方法。
为了实现上述实施例,本申请还提出一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现如前述实施例所述的数据传输一致性校验方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。