一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据校验系统和方法与流程

2022-03-02 03:52:18 来源:中国专利 TAG:
1.本发明涉及数据处理技术,区块链
技术领域
:,尤其涉及一种数据校验系统和方法。
背景技术
::2.目前,银行设备之间可以基于消息队列(messagequeue,mq)传输交易信息。例如,发送交易信息的银行的设备可以将交易信息封装为swift报文的格式,然后通过mq传输实现交易信息的传输。3.然而,基于消息队列传输交易信息的方式中,接收到交易信息的银行的设备,根据交易信息的内容执行相关操作,而无法确认交易信息在传输的过程中,是否被篡改或者发生传输错误,从而导致交易安全性低下。技术实现要素:4.本发明提供了一种数据校验系统和方法,用于解决交易安全性低下的问题。5.为达到上述目的,本发明采用如下技术方案:6.第一方面,本发明提供了一种数据校验系统。该数据校验系统包括:第一子系统和第二子系统。其中,第一子系统,用于获取交易信息,基于区块链技术和智能合约获取交易信息的第一校验信息,并向第二子系统发送交易信息和第一校验信息。第二子系统,用于基于区块链技术和智能合约,获取来自第一子系统的交易信息的第二校验信息,并在确定第一校验信息和第二校验信息一致时,执行交易信息对应的操作。7.基于第一方面提供的数据校验系统,第一子系统可以基于区块链技术和智能合约计算交易信息的第一校验信息,第二子系统可以基于区块链技术以及与第一子系统相同的智能合约计算接收到的交易信息的第二校验信息,并在第一校验信息和第二校验信息一致时,执行交易信息对应的操作,如此,可以将数据存储至区块链上,并在数据的收发双方均采用智能合约获取交易信息的校验信息,可以减小数据被篡改的风险,进而提高交易的安全性。8.一种可能的设计方案中,第一子系统包括第一区块链子系统和第一结算子系统。其中,第一结算子系统用于获取交易信息,并向第一区块链子系统发送交易信息。第一区块链子系统,用于基于区块链技术和智能合约获取交易信息的第一校验信息。第一结算子系统还用于接收第一校验信息,并向第二子系统发送交易信息和第一校验信息。9.一种可能的设计方案中,第二子系统包括第二区块链子系统和第二结算子系统。其中,第二结算子系统,用于接收来自第一子系统的第一校验信息和交易信息,并向第二区块链子系统发送第一校验信息和交易信息。第二区块链子系统,用于基于区块链技术和智能合约获取交易信息的第二校验信息,并在确定第一校验信息和第二校验信息一致时,指示第二结算子系统执行与交易信息对应的操作。10.一种可能的设计方案中,第一校验信息与交易信息可以承载于环球同业银行金融电讯协会swift报文中。11.可选地,第一校验信息可以承载于swift报文的附言字段中。如此,将交易信息承载于swift报文的附言字段中,交易信息的实现方式更加灵活。12.第二方面,提供一种数据校验方法。该数据校验方法可以应用于数据校验系统,数据校验系统包括第一子系统和第二子系统。第二方面提供的数据校验方法包括:第一子系统获取交易信息,基于区块链技术和智能合约获取交易信息的第一校验信息,并向第二子系统发送交易信息和第一校验信息。第二子系统基于区块链技术和智能合约,获取来自第一子系统的交易信息的第二校验信息,并在确定第二子系统确定第一校验信息与第二校验信息一致时,执行交易信息对应的操作。13.一种可能的设计方案中,第一子系统包括第一区块链子系统和第一结算子系统。第一子系统获取交易信息,并基于区块链技术和智能合约获取交易信息的第一校验信息,包括:第一结算子系统获取交易信息,并向第一区块链子系统发送交易信息。第一区块链子系统基于区块链技术和智能合约,获取交易信息的第一校验信息。第一区块链子系统向第一结算子系统发送第一校验信息。14.可选地,第一子系统向第二子系统发送交易信息和第一校验信息,包括:第一结算子系统向第二子系统发送交易信息和第一校验信息。15.一种可能的设计方案中,第二子系统包括第二区块链子系统和第二结算子系统。第二子系统基于区块链技术和智能合约,获取来自第一子系统的交易信息的第二校验信息,包括:第二结算子系统,接收来自第一子系统的第一校验信息和交易信息,并向第二区块链子系统发送第一校验信息和交易信息。第二区块链子系统,根据交易信息获取第二校验信息。16.可选地,第二子系统确定第二子系统确定第一校验信息和第二校验信息一致,则执行交易信息对应的操作,包括:第二区块链子系统确定第一校验信息与第二校验信息一致,向第二结算子系统发送操作指示信息。其中,操作指示信息用于指示第二结算子系统执行交易信息对应的操作。17.一种可能的设计方案中,第一校验信息与交易信息可以承载于环球同业银行金融电讯协会swift报文中。18.可选地,所述第一校验信息可以承载于所述swift报文的附言字段中。19.本技术中第二方及其各种实现方式的具体描述,可以参考第一方面及其各种实现方式中的详细描述;并且,第二方面及其各种实现方式的有益效果,可以参考第一方面及其各种实现方式中的有益效果分析,此处不再赘述。20.第三方面,提供一种计算机可读存储介质,计算机可读存储介质包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行第二方面的任一项中第一子系统的功能或者第二子系统的功能。21.本技术的这些方面或其他方面在以下的描述中会更加简明易懂。附图说明22.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。23.图1为本技术实施例提供的数据校验系统的结构示意图;24.图2为本技术实施例提供的数据校验方法的流程示意图一;25.图3为本技术实施例提供的数据校验方法的流程示意图二。具体实施方式26.为便于理解,以下首先介绍本技术实施例相关的技术术语。27.环球同业银行金融电信协会(societyforworldwideinterbankfinancialtelecomm,swift),是一个国际银行间非盈利性的国际合作组织,swift组织可以处理国际间银行转账和结算业务。每个申请加入swift的银行都需要事先按照swift组织的统一规则,制定出本银行的swift地址代码,并在经swift组织批准正式生效后,统一使用通过swift网络传输swift标准格式的报文进行转账或结算等业务。28.智能合约(smartcontract),是指一份能自动执行本需要手动才能完成任务的协议。29.摘要算法,是指可以将任意长度的数据转换为一个长度固定的数据串的算法,摘要算法可以应用于智能合约中。摘要算法具有以下特点:无论输入的数据有多长,计算出来的数据的摘要的长度是固定的。同一摘要算法,对多个相同数据的计算结果相同,对多个互不相同的数据的计算结果各不相同。用于实现摘要算法的函数是单向函数,也就是说,只能根据数据计算出数据的摘要,而无法根据数据的摘要恢复出数据。综上可知,摘要算法具有安全性高的特点。30.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。31.需要说明的是,本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。32.为了便于清楚描述本技术实施例的技术方案,在本技术的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不是在对数量和执行次序进行限定。33.为了解决交易安全性低下的问题,本技术实施例提供了一种数据校验系统和方法。34.以下结合图1说明本技术实施例提供的数据校验系统。35.图1是本技术实施例提供的数据校验系统的结构示意图。如图1所示,数据校验系统100包括:第一子系统110和第二子系统120。第一子系统110与第二子系统120连接。36.第一子系统110可以是发送交易信息的银行所对应的具有支付结算功能的系统。上述第一子系统110可以包括一个设备或多个设备,如上述第一子系统110可以包括如下一项或多项设备:网络接口适配器、交换机、路由器、服务器等,和/或,终端设备,如客户端(client)、个人电脑(personalcomputer,pc)、手机、平板电脑(tabletpersonalcomputer,tabletpc)。第一子系统110中的设备还可以是其他具有数据处理功能和数据收发功能的设备。37.第二子系统120可以是接收交易信息的银行所对应的具有支付结算功能的系统。第二子系统120可以包括一个设备或多个设备,如上述第二子系统120可以包括如下一项或多项设备:网络接口适配器、交换机、路由器、服务器等,和/或,终端设备,如客户端(client)、个人电脑(personalcomputer,pc)、手机、平板电脑(tabletpersonalcomputer,tabletpc)。第二子系统120中的设备还可以是其他具有数据处理功能和数据收发功能的设备。38.其中,第一子系统110,用于获取交易信息,基于区块链技术和智能合约获取交易信息的第一校验信息,并向第二子系统120发送交易信息和第一校验信息。39.示例性地,交易信息可以是发起交易的银行用户输入的信息,交易信息可以用于指示交易相关的信息。例如,用户a需要通知用户b执行汇款操作,则交易信息可以是用户a在第一子系统110中输入的信息。交易信息可以包括起息日、币种和金额。或者,交易信息还可以包括收款人。或者,交易信息还可以包括汇率。或者,交易信息可以包括起息日、币种、金额、收款人和汇率。本技术实施例中,对交易信息所包含的信息的类型不作限定。40.第一校验信息可以是交易信息的摘要信息,也可以称为哈希(hash)值。41.一种可能的设计方案中,第一子系统110可以包括第一输入设备,如触摸屏、触控屏、键盘或按键等,并通过第一输入设备获取用户输入的交易信息。第一子系统110中,可以配置第一区块链和智能合约。第一子系统110在获得交易信息后,可以将交易信息存储至第一区块链上,并通过智能合约获取交易信息对应的第一校验信息。例如,智能合约可以基于摘要算法获取第一校验信息。关于摘要算法的具体实现,可以参考已有摘要算法的具体实现方式,此处不再赘述。42.另一种可能的设计方案中,第一子系统110可以包括第一结算子系统111和第一区块链子系统112。其中,第一结算子系统111用于获取交易信息。示例性地,第一结算子系统111可以包括第二输入设备,如触摸屏、触控屏、键盘或按键等,并通过第二输入设备获取用户输入的交易信息。43.第一结算子系统111还用于向第一区块链子系统112发送交易信息。示例性地,本技术实施例中,第一结算子系统111可以将交易信息承载于环球同业银行金融电讯协会swift报文中,并向第一区块链子系统112发送swift报文(第一报文),以完成交易信息的发送。swift报文,也就是swift格式的报文,该报文中,可以包括多种字段,每种字段记录各自对应的信息。例如,以下所示的一种swift报文中包括多个不同的字段,如“:32a:”对应字段记录的信息包括起息日、币种和金额。又如,“:59:”对应字段记录的信息为“收款人”。“:72:”对应的字段为附言字段,可以用于记录用户需要记录的信息。44.{1:f01aboccnbjaxxx7735371777}45.{2:o1000414010315aeibus33axxx92124760880103151714n}46.{3:{108:2001031620000001}}47.{4:48.:20:01031500450249.:32a:010315usd81332,9150.:50:yalongpaperproducts(kunshan)co.ltd.51.:52a:icbkcnbjszu52.:57a:aboccnbj43653.:59:/140801581611154.kingpapersourceinternational55.trade(zjgfreetradezone)co.,ltd56.:70:/rfb/szuaeib/ks31507h57.:72:/ins/icbkcnbj58./rec/yourfreetradezonebr.59./acc/20,00feededucted[0060]-}[0061]{5:{mac:82761ca6}{chk:dca560a21c69}}[0062]需要说明的是,上述swift报文的格式仅用于作示例,具体实施时,swift报文还可以为其他的格式,此处不再赘述。[0063]例如,若交易信息包括起息日、币种和金额,则第一区块链子系统112可以获取“:32a:”对应的字段的摘要信息,并将该摘要信息确定为第一校验信息。若交易信息包括收款人,则第一区块链子系统112可以获取“:59:”对应的字段的摘要信息,并将该摘要信息确定为第一校验信息。或者,第一区块链子系统112可以获取“:32a:”对应的字段和“:59:”对应的字段的摘要信息,并将该摘要信息确定为第一校验信息。[0064]第一区块链子系统112,用于基于区块链技术和智能合约获取交易信息的第一校验信息。示例性地,第一区块链子系统112可以配置第一区块链和智能合约。第一区块链子系统112将来自第一子系统110的交易信息,存储至第一区块链上,并基于智能合约获取第一区块链上的交易信息的第一校验信息。例如,若交易信息包括“:32a:”对应的字段,则智能合约可以基于摘要算法计算“:32a:”对应的字段的摘要信息,从而获得第一校验信息。关于摘要算法的具体实现,可以参考已有摘要算法的具体实现方式,此处不再赘述。[0065]第一结算子系统111还用于接收来自第一区块链子系统112的第一校验信息,并向第二子系统120发送交易信息和第一校验信息。[0066]一种可能的设计方案中,第一校验信息与交易信息可以承载于swift报文(第二报文)中。在此情况下,第一结算子系统111可以通过swift网络,向第二子系统120发送交易信息和第一校验信息。[0067]需要说明的是,本技术实施例中,各个系统或子系统之间传输交易信息时,还可以传输交易信息之外的其他信息,如上述swift报文中,“:52a:”对应的字段中的信息,本技术实施例对此不作限定。[0068]此外,第一校验信息和交易信息还可以承载于其他格式的报文中,如用户数据报协议(userdatagramprotocol,udp)报文,本技术实施例中对此不作限定。[0069]可选地,第一校验信息可以承载于第二报文的附言字段中。[0070]示例性地,第一校验信息可以承载于第二报文的“:72:”对应的字段中。[0071]如此,可以将交易信息承载于swift报文的附言字段中,交易信息的实现方式更加灵活。[0072]需要说明的是,第一校验信息还可以承载于swift报文的其他字段中,本技术实施例中对此不作限定。[0073]一种可能的设计方案中,第二子系统120,用于基于区块链技术和智能合约,获取来自第一子系统110的交易信息的第二校验信息。并在确定第一校验信息和第二校验信息一致时,执行交易信息对应的操作。[0074]可选地,第二子系统120中,可以配置第二区块链和智能合约。第二子系统120在获取交易信息后,可以将交易信息存储至区块链上,并通过智能合约获取交易信息对应的第二校验信息。例如,智能合约可以基于摘要算法获取第二校验信息。关于摘要算法的具体实现,可以参考已有摘要算法的具体实现方式,此处不再赘述。接着,第二子系统120比对第一校验信息和第二校验信息,在确定第一校验信息与第二校验信息一致时,执行交易信息对应的操作。[0075]或者,可选地,第二子系统120包括第二区块链子系统122和第二结算子系统121。其中,第二结算子系统121,用于接收来自第一子系统110的第一校验信息和交易信息,并向第二区块链子系统122发送第一校验信息和交易信息。例如,若交易信息和第一校验信息承载于第二报文中,则第二结算子系统121接收第二报文,并向第二区块链子系统122发送接收到的第二报文。[0076]第二区块链子系统122,用于基于区块链技术和智能合约获取来自第一子系统110的交易信息的第二校验信息,并在确定第一校验信息与第二校验信息一致时,指示第二结算子系统121执行与交易信息对应的操作。示例性地,第二区块链子系统122配置有第二区块链和智能合约。第二区块链子系统122将接收到的第二报文存储至区块链上,并基于智能合约获取第二区块链上存储的交易信息的第二校验信息。智能合约可以基于摘要算法获取第二校验信息。[0077]以交易信息承载于“:32:”对应的字段中为例,则第二子系统120接收来自第一子系统110的swift报文,并从swift报文的“:32:”对应的字段中获得交易信息。接着,第二子系统120基于智能合约,计算交易信息的第二校验信息。可理解,第二子系统120中的智能合约与第一子系统110中的智能合约相同。关于摘要算法的具体实现,可以参考已有摘要算法的具体实现方式,此处不再赘述。[0078]本技术实施例中,第二区块链子系统122在确定第一校验信息和第二校验信息一致时,可以向第二结算子系统121发送操作指示信息,用于指示第二结算子系统121执行交易信息对应的操作。[0079]图2为本技术实施例提供的一种数据校验方法的流程示意图一。该数据校验方法可以应用于图1所示的数据校验系统。图2所示的数据校验方法包括:[0080]s201,第一子系统获取交易信息,基于区块链技术和智能合约获取交易信息的第一校验信息。[0081]s202,第一子系统向第二子系统发送交易信息和第一校验信息。[0082]关于步骤s201和s202的具体实现,可以参考图1中所示出的第一子系统的具体实现方式,此处不再赘述。[0083]s203,第二子系统基于区块链技术和智能合约,获取来自第一子系统的交易信息的第二校验信息。[0084]s204,第二子系统确定第一校验信息和第二校验信息一致,执行交易信息对应的操作。[0085]关于步骤s203和s204的具体实现,可以参考图1中所示出的第二子系统的具体实现方式,此处不再赘述。[0086]为便于理解,以下结合第一子系统包括第一区块链子系统和第一结算子系统、第二子系统包括第二区块链子系统和第二结算子系统,详细说明本技术实施例提供的数据校验方法。[0087]图3为本技术实施例提供的数据校验方法的流程示意图二。如图3所示,该数据校验方法可以包括s301至s308。[0088]s301,第一结算子系统获取交易信息。[0089]s302,第一结算子系统向第一区块链子系统发送交易信息。[0090]s303,第一区块链子系统基于区块链技术和智能合约获取交易信息的第一校验信息。[0091]s304,第一区块链子系统向第一结算子系统发送第一校验信息。[0092]s305,第一结算子系统向第二结算子系统发送交易信息和第一校验信息。[0093]关于s301、s302和s305的具体实现,可以参考上述图2所示的第一结算子系统的具体实现方式,s304和s305的具体实现,可以参考上述图2所示的第一区块链子系统的实现方式,此处不再赘述。[0094]s306,第二结算子系统向第二区块链子系统发送交易信息和第一校验信息。[0095]s306的具体实现,可以参考上述图2所示的第二结算子系统的实现方式,此处不再赘述。[0096]s307,第二区块链子系统基于区块链技术和智能合约获取交易信息的第二校验信息。[0097]s308,第二区块链子系统确定第一校验信息与第二校验信息是否一致,并在确定第一校验信息与第二校验信息是否一致时,向第二结算子系统发送操作指示信息。[0098]其中,操作指示信息用于指示第二结算子系统执行交易信息对应的操作。[0099]例如,操作指示信息可以为表示第一校验信息和第二校验信息是一致的信息,此时,第二结算子系统接收到操作指示信息后,可以执行与交易信息对应的操作。[0100]s307和s308的具体实现,可以参考上述图2所示的第二区块链子系统的实现方式,此处不再赘述。[0101]基于图1提供的数据校验系统或图2至图3提供的数据校验方法,第一子系统可以基于区块链技术和智能合约计算交易信息的第一校验信息,第二子系统可以基于区块链技术以及与第一子系统相同的智能合约计算接收到的交易信息的第二校验信息,并根据第一校验信息和第二校验信息的一致性,执行交易信息对应的操作,如此,可以利用区块链的安全特性,以及相同的智能合约,计算传输前的交易信息和传输后的交易信息各自的校验信息,减小数据被篡改的风险,进而提高交易的安全性。[0102]本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行如上述实施例提供的数据校验方法中,第一子系统的功能或者所述第二子系统的功能。[0103]本发明实施例还提供一种计算机程序,该计算机程序可直接加载到存储器中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述实施例提供的数据校验方法中,第一子系统的功能或者所述第二子系统的功能。[0104]本领域技术人员应该可以意识到,在上述一个或多个示例中,本技术所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。[0105]通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。[0106]在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。[0107]另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。[0108]以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献