CN112069262A - 基于区块链智能合约的对账数据上链方法 - Google Patents
基于区块链智能合约的对账数据上链方法 Download PDFInfo
- Publication number
- CN112069262A CN112069262A CN202010943203.XA CN202010943203A CN112069262A CN 112069262 A CN112069262 A CN 112069262A CN 202010943203 A CN202010943203 A CN 202010943203A CN 112069262 A CN112069262 A CN 112069262A
- Authority
- CN
- China
- Prior art keywords
- data
- logistics transaction
- logistics
- transaction
- block chain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
Abstract
本发明提供了一种基于区块链智能合约的对账数据上链方法,物流交易双方基于物流交易订单信息来实现基于区块链去中心化的可靠存储及基于智能合约实现的数据安全及自动化对账方法。本发明通过采用区块链智能合约技术,实现了对上链数据的存证及管理,对账结果可追溯,基于智能合约的身份校验,保障了数据安全及访问控制,基于上链数据形成的去中心化物流交易分布式账本实现自动化对账功能,解决了实际业务处理过程中人工对账结果不精确,对账效率不高,对账结果可信度低及性能低下,数据不安全等问题。
Description
技术领域
本发明涉及区块链技术领域,具体地,涉及基于区块链智能合约的对账数据上链方法。
背景技术
当前区块链技术发展迅速,被称为下一代“价值”互联网,存在广泛的应用。区块链是具备分布式数据存储、点对点传输、节点共识、安全加密等计算机技术特征的新型应用模式,具有去中心化、开放性、数据不可篡改等特点。智能合约是传统合约的数字化版本,是在区块链系统上自动运行的计算机程序,可以在满足约定条件时自动执行。智能合约一旦部署就不可更改,具备可信特征。区块链与智能合约是天生的联盟,可有效结合使用。
专利文献CN109003175A(申请号:CN201810737178.2)公开了一种基于区块链的对账方法及系统,方法包括:将银行的每条交易记录计入区块链中,形成基于区块链的银行对账分布式账本,将支付平台的每条交易流水记录计入区块链中,形成基于区块链的支付平台对账分布式账本;基于智能合约,核对银行对账分布式账本和支付平台对账分布式账本,生成对账结果。本申请能够简化对账流程,防止数据被篡改,提升交易效率和交易安全性。
缺点:该专利用于银行交易记录与支付记录进行对账过程,对上链数据进行hash后上链,触发智能合约比对hash值是否一致完成对账;
专利文献CN110689333A(申请号:CN201910969497.0)公开了一种区块链自动对账方法,遍历区块链系统的所有交易记录,统计出每条区块链所对应的跨链转入金额和跨链转出金额;以所有区块链中的任意一条区块链即目标区块链为例,其它区块链为所有区块链中除目标区块链之外的剩余区块链,判断目标区块链的跨链转入金额与其它区块链向所述目标区块链的目标跨链转出金额是否相等;当目标区块链的跨链转入金额与其它区块链向所述目标区块链的目标跨链转出金额不相等,则输出跨链交易数据丢失的提示信息。
缺点:该专利用于比对转入金额与转入金额是否相等,来完成对账;数据遍历比对,性能低下;
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于区块链智能合约的对账数据上链方法。
根据本发明提供的一种基于区块链智能合约的对账数据上链方法,物流交易双方基于物流交易订单信息来实现基于区块链去中心化的可靠存储及基于智能合约实现的数据安全及自动化对账方法;
包括:
步骤S1:在物流交易企业之间实际对账过程中,基于物流交易订单信息完成的对账过程涉及到物流交易双方的参与,交易的双方有合作关系,交易发起方记为物流客户A,交易接收方记为物流客户B,A和B基于双方之间的物流交易订单信息,来完成一笔物流交易过程的对账逻辑;
步骤S2:A就物流交易订单想与B达成交易时,首先是A推送物流交易订单给B,就该条物流交易订单信息来进行双方的协商,并等待B对此物流交易订单的处理结果,为了防止B长时间无反馈,设定一个反馈时间的期限,超过期限该推送消息自动失效,交易过程结束;
步骤S3:B接收到A推送的物流交易订单后,查看该物流交易订单的详情信息并进行接受或拒绝处理,并推送一条订单处理反馈消息给A以确认该物流交易订单被B处理,若B拒绝此订单,则流程结束,不产生对账数据及上链数据;若B接受此物流交易订单,则触发A对此物流交易订单的物流交易数据S00上链申请;
步骤S4:A上链申请提交后,触发智能合约校验A的身份信息,所述校验智能合约对A的公司唯一识别码进行身份校验,校验通过后,对上链数据S00使用A的公钥进行加密,生成加密数据S01,再对S01进行Hash算法后生成hash数据,此hash数据即为上链数据S02,并把S02数据存储在区块链上,形成基于区块链去中心化的物流交易分布式账本,该上链数据S02接受B的查询请求,所述查询上链请求包括A的公钥加密并经过Hash算法的S02上链数据,所述A的公钥为所述区块链节点发送给B的;
步骤S5:B在完成物流交易后,对该物流交易订单信息进行确认,触发此物流交易订单的物流交易数据的上链申请,所述物流交易数据记为S10,S00与S10数据内容是一致的;
步骤S6:B上链申请提交后,触发智能合约对B的身份信息进行校验,所述校验智能合约对B的身份进行校验,校验通过后,对物流交易数据S10使用B的公钥进行加密,生成加密数据S11,再对S11使用Hash算法,生成hash数据即为上链数据S12,并把S12存储在区块链上,形成基于区块链去中心化的物流交易分布式账本,该上链数据S12接受A的查询请求,该查询上链请求包括B的公钥加密并经过Hash算法的S12上链数据,所述B的公钥为所述区块链节点发送给A的;
步骤S7:B数据上链后,推送一条确认物流交易订单完成的消息给A,告知A该笔物流交易订单已完成,请确认;A在确认的这个过程中核对订单是否完成及运输过程是否有出现问题,以此来对B的确认进行确认,以完成后续操作;
步骤S8:A收到消息后,对该物流交易订单进行二次确认,确认通过后则可以提交一个确认对账的申请给区块链以触发对账过程;确认出现问题,双方可以就该物流交易订单进行协商解决方案,根据协商结果来判定后续对账过程是否要继续;
步骤S9:区块链收到对账申请后,触发智能合约身份校验及物流交易订单数据校验,然后基于该物流交易订单数据使用B的公钥进行加密产生加密数据S30,再使用hash算法生成hash值S31,在区块链上检索B的上链数据以实现自动对账过程,并生成对账结果S32存储在区块链上。
优选地,所述步骤S1:
一次对账过程会涉及到物流交易订单的发送、处理、确认、二次确认及最后的对账过程,通过这些交易流程来确保本次对账过程信息的完整性及对账结果的准确性;
所述物流交易订单的发送指A发送物流交易订单信息给B;
所述物流交易订单的处理指B对此交易订单的接受或拒绝操作;
所述确认指B完成此物流交易订单后,确认完成;
所述二次确认指A对此物流交易订单完成的真实性进行确认;
所述对账指双方都确认无误后,生成对账结果,处理后续费用问题。
优选地,所述步骤S2:
A、B之间能生成交易订单,前提条件是双方已达成合作关系并已签订合同;
A把物流交易订单下发时,从A的合作企业中选择B,并把此物流交易订单下发给B,并同时推送一条订单发起的消息给B,告知B收到A的物流交易订单并提醒B处理此物流交易订单;
该物流交易订单包含物流交易的基本信息、出发地、目的地及订单金额相关信息。
优选地,所述步骤S3:
B推送订单处理反馈消息给A的内容包括物流交易号,对该订单的处理结果,如接受或拒绝,确认时间等相关属性;
物流交易数据包含A与B的公司唯一识别码、物流交易号、出发地、目的地、订单金额及交易发生时间相关属性字段。
优选地,所述步骤S8所述根据协商结果来判定后续对账过程是否要继续指:
物流运输过程中,可能会造成物品的损坏,因此需要交易发起方对该交易进行确认,保证该交易完好的完成,中间出现运输导致的问题,就需要双方来协商怎么处理,继续则可以对账,不继续的话,就不需要产生对账数据,该笔交易就会线下解决。
优选地,所述对账结果S32数据包括:
物流交易双方公司唯一编码、物流交易号、出发地、目的地、订单金额、交易发生时间及对账日期,该S32数据对物流交易双方均提供查询功能,以方便对账双方核实对账结果的准确性。
优选地,所述上链申请能够触发智能合约校验物流交易双方身份信息,并实现对账数据的上链,使得上链的数据准确及有效;在此次对账数据上链过程中,共触发了2次对账数据的上链申请及2次智能合约的校验,保证了对账数据的安全;交易双方对账数据上链后,A对物流交易订单进行二次确认,触发第3次智能合约校验,同时物流交易双方均能参与到对物流交易订单的完成情况进行确认,实现了整个流程的可靠控制,同时实现了基于区块链智能合约的自动化匹配对账结果并实时通知对账双方,提升了对账流程的高效和可靠性,解决了前面提出的人工出错问题及效率低下等问题;对账逻辑对物流交易双方是不可见的,保证对账过程的安全性。
优选地,所述物流交易双方的上链数据S02、S12,对交易的对方均提供了查询权限,均可以根据物流交易数据去查询交易另一方的上链数据,同时也可以基于此物流交易数据,查询此次物流交易的对账结果信息,实现了上链数据对物流交易双方的公开,并以此生成交易凭证,完成后续的结算问题。
优选地,所述步骤S4:
所述Hash算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值;
A与B公钥发送方式为:A、B在签订合作关系后,生成A、B的一对加密公钥,并存储至区块链中,并且基于智能合约校验访问公钥的身份信息,来保证生成的这对公钥仅在A、B之间可见,A、B均可通过查询区块链来访问自己的或交易方的公钥,以此保证A、B双方公钥之间的安全;
加密过程是把物流交易数据S00转化成JSON字符串格式,然后使用A的公钥对该JSON字符串使用对称加密算法进行加密,产生一段密文,再用此密文基于区块链的hash算法,生成一个长度固定的hash值存储于区块链中。
优选地,所述步骤S9包括:
步骤S9.1:所述校验智能合约对A的身份进行校验,通过公司唯一识别码来校验身份信息;物流交易订单数据校验则是通过物流交易数据S00加A的公钥,在区块链上查找对应的上链数据玩来校验数据的有效性;
步骤S9.2:智能合约校验通过后,开始本次对账流程,使用A的物流交易数据S00及B的公钥(区块链节点发送给A的)进行加密生成加密数据(S30),对S30使用Hash算法(步骤3.1)计算后,生成hash数据(S31),通过S31去查询对A提供查询请求的B的上链数据S12(即比较S31与S12的hash值是否相同),来完成自动对账过程并生成对账结果数据(S32)存储在区块链上,并通知对账双方此次对账结果信息;
步骤S9:如果能在区块链上查询到B的对账上链数据,则说明对账成功;查询不到B的对账上链数据,则说明物流交易双方对账数据不一致导致对账失败,则需要对账双方核实物流交易订单信息,重新发起整个上链申请并触发自动对账流程来完成对账。
与现有技术相比,本发明具有如下的有益效果:
本发明通过采用区块链智能合约技术,实现了对上链数据的存证及管理,对账结果可追溯,基于智能合约的身份校验,保障了数据安全及访问控制,基于上链数据形成的去中心化物流交易分布式账本实现自动化对账功能,解决了实际业务处理过程中人工对账结果不精确,对账效率不高,对账结果可信度低及性能低下,数据不安全等问题。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明提供的形成基于区块链去中心化的物流交易分布式账本流程示意图。
图2为本发明提供的形成基于区块链去中心化的物流交易分布式账本流程示意图。
图3为本发明提供的使用hash算法生成hash值流程示意图。
图4为本发明提供的在区块链上检索B的上链数据以实现自动对账过程示意图。
图5为本发明提供的基于区块链智能合约的对账数据上链方法整体流程示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
下面通过实施例,对本发明进行更为具体地说明。
实施例:
如图5所示,本申请公开了一种基于区块链智能合约的对账数据上链方法,所述方法包括:区块链节点接受物流公司A发送的与物流公司B之间的加密物流交易数据上链请求;触发校验智能合约,所述校验智能合约对物流公司A的身份进行校验,校验通过后,执行该加密物流交易数据的上链流程;上链数据接受物流公司B的查询及对账结果比对功能;物流公司B在完成物流交易后,触发物流公司B加密对账数据上链请求;触发校验智能合约,所述校验智能合约对物流公司B的身份进行校验,校验通过后,执行该加密物流交易数据的上链流程,并触发智能合约,使用物流公司A的公钥去检索物流公司A上链的物流交易数据,进行解密后比对双方对账数据,生成对账结果并通知物流交易双方对账结果。本申请使用去中心化的区块链节点存储对账数据,可以防止数据被篡改,保证数据安全及可信;数据上链可以触发智能合约,校验对账双方身份的真实性,保证对账数据的真实有效;整个对账过程是保密的并且触发智能合约实现自动对账结果匹配,不需要人工进行干预,简化了对账流程,提升了基于区块链的交易效率及交易的安全性,保证了对账结果的准确性。
步骤1:本方法实现了一种基于区块链智能合约的对账数据上链方法,该方法适用于有合作关系的物流企业之间的对账过程,涉及到物流交易双方基于物流交易订单信息来实现的基于区块链去中心化的可靠存储及基于智能合约实现的数据安全及自动化对账方法;
步骤2:实际物流交易企业之间实际对账过程中,基于物流交易订单信息完成的对账过程涉及到物流交易双方的参与,交易的双方确保有合作关系并且可以是公司对公司、公司对个人及个人对个人,我们可以统称他们为物流客户A(A),物流客户B(B),A和B基于双方之间的物流交易订单信息,来完成一笔物流交易过程的对账逻辑;一次对账过程会涉及到物流交易订单的发送(A发送物流交易订单信息给B),处理(此处理包括B对此交易订单的接受或拒绝操作),确认(B完成此物流交易订单后,确认完成),二次确认(A对此物流交易订单完成的真实性进行确认)及最后的对账(双方都确认无误后,生成对账结果,处理后续费用问题)过程,通过这些交易流程来确保本次对账过程信息的完整性及对账结果的准确性;物流交易双方,交易发起方我定义为A客户,交易接收方我定义为B客户。
步骤3:A就物流交易订单想与B达成交易时,首先是A推送物流交易订单给B,就该条物流交易订单信息来进行双方的协商(为了防止B长时间无反馈,设定一个反馈时间的期限,如1天,超过期限该推送消息自动失效,交易过程结束),并等待B对此物流交易订单的处理结果;
步骤4:B接收到A推送的物流交易订单后,查看该物流交易订单的详情信息并进行接受或拒绝处理,并推送一条订单处理反馈消息给A以确认该物流交易订单被B处理,若B拒绝此订单,则流程结束,不产生对账数据及上链数据;若B接受此物流交易订单,则触发A对此物流交易订单的物流交易数据(此物流交易数据为物流交易订单的部分属性信息,命名为S00)上链申请;
步骤5:A上链申请提交后,触发智能合约校验A的身份信息,所述校验智能合约对A的公司唯一识别码进行身份校验,校验通过后,对上链数据S00使用A的公钥进行加密,生成加密数据(S01),再对S01进行Hash算法后生成hash数据,此hash数据即为上链数据(S02),并把S02数据存储在区块链上,形成基于区块链去中心化的物流交易分布式账本(对应流程图1),该上链数据S02接受B的查询请求,所述查询上链请求包括A的公钥加密并经过Hash算法的S02上链数据,所述A的公钥为所述区块链节点发送给B的;
步骤6:B在完成物流交易后,对该物流交易订单信息进行确认,触发此物流交易订单信息的上链申请,所述物流交易数据内容如S00,为了区分,命名为S10,S00与S10数据内容是一致的;
步骤7:B上链申请提交后,触发智能合约对B的身份信息进行校验,所述校验智能合约对B的身份进行校验,校验通过后,对物流交易数据S10使用B的公钥进行加密,生成加密数据(S11),再对S11使用Hash算法(步骤5.1),生成hash数据即为上链数据(S12),并把S12存储在区块链上,形成基于区块链去中心化的物流交易分布式账本(对应流程图2),该上链数据S12接受A的查询请求,该查询上链请求包括B的公钥加密并经过Hash算法(步骤5.1)的S12上链数据,所述B的公钥为所述区块链节点发送给A的;
步骤8:B数据上链后,推送一条确认物流交易订单完成的消息给A,意图是告诉A该笔物流交易订单已完成,请确认;A在确认的这个过程中可以核对订单是否完成及运输过程是否有出现问题,以此来对B的确认进行确认,以完成后续操作;
步骤9:A收到消息后,对该物流交易订单进行二次确认,确认通过后则可以提交一个确认对账的申请给区块链以触发对账过程;确认出现问题,双方可以就该物流交易订单进行协商解决方案,根据协商结果来判定后续对账过程是否要继续;物流运输过程中,可能会造成物品的损坏,所以这里是需要交易发起方对该交易进行确认,保证该交易完好的完成,中间出现运输导致的问题,就需要双方来协商怎么处理,继续则可以对账,不继续的话,就不需要产生对账数据,该比交易就会线下解决。
步骤10:区块链收到对账申请后,触发智能合约身份校验及物流交易订单数据校验,然后基于该物流交易订单数据使用B的公钥进行加密产生加密数据(S30),再使用hash算法生成hash值(S31)(对应流程图3),在区块链上检索B的上链数据以实现自动对账过程,并生成对账结果(S32)存储在区块链上(对应流程图4);
步骤11:此对账结果S32数据包括:物流交易双方公司唯一编码,物流交易号,出发地,目的地,订单金额,交易发生时间及对账日期,该S32数据对物流交易双方均提供查询功能,以方便对账双方核实对账结果的准确性;
步骤12:此次物流交易双方的上链数据(S02,S12),对交易的对方均提供了查询权限,均可以根据物流交易数据去查询交易另一方的上链数据,同时也可以基于此物流交易数据,查询此次物流交易的对账结果信息,实现了上链数据对物流交易双方的公开,并以此生成交易凭证,完成后续的结算问题;
步骤13:本上链申请能够触发智能合约校验物流交易双方身份信息,并实现对账数据的上链,使得上链的数据准确及有效;在此次对账数据上链过程中,共触发了2次对账数据的上链申请及2次智能合约的校验,保证了对账数据的安全;交易双方对账数据上链后,A对物流交易订单进行二次确认,触发第3次智能合约校验,同时物流交易双方均能参与到对物流交易订单的完成情况进行确认,实现了整个流程的可靠控制,同时实现了基于区块链智能合约的自动化匹配对账结果并实时通知对账双方,提升了对账流程的高效和可靠性,解决了前面提出的人工出错问题及效率低下等问题;对账逻辑对物流交易双方是不可见的(如黑盒测试),保证了对账过程的安全性。
所述步骤3包括:
步骤3.1:A、B之间能生成交易订单,前提条件是双方已达成合作关系并已签订合同;
步骤3.2:A把物流交易订单下发时,从A的合作企业中选择B,并把此物流交易订单下发给B,并同时推送一条订单发起的消息给B,告知B收到A的物流交易订单并提醒B处理此物流交易订单;
步骤3.3:该物流交易订单包含物流交易的基本信息(如物品类型,对车辆要求,需要注意事项等),出发地,目的地,订单金额等相关信息,以方便B对该物流交易订单的熟悉,以帮助后面对该订单的处理做出准确判断。
所述步骤4包括:
步骤4.1:B推送订单处理反馈消息给A的内容包括物流交易号,对该订单的处理结果,如接受或拒绝,确认时间等相关属性;
步骤4.2:物流交易数据包含A与B的公司唯一识别码,物流交易号,出发地,目的地,订单金额,交易发生时间等相关属性字段。
所述步骤5包括:
步骤5.1:Hash算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法;简单理解Hash算法就是一种单向的加密,一个明文加密称为密文,不可逆推,只有加密过程,没有解密过程;目前常用的hash算法有MD5、SHA系列算法;
步骤5.2:A与B公钥发送方式为:A、B在签订合作关系后,生成A、B的一对加密公钥,并存储至区块链中,并且基于智能合约校验访问公钥的身份信息,来保证生成的这对公钥仅在A、B之间可见,A、B均可通过查询区块链来访问自己的或交易方的公钥,以此保证A、B双方公钥之间的安全。
步骤5.3:加密过程是把物流交易数据S00转化成JSON字符串格式(如'{"name":"张三","sex":"男"}'),然后使用A的公钥对该JSON字符串使用对称加密算法进行加密,产生一段密文,再用此密文基于区块链的hash算法,生成一个长度固定的hash值存储于区块链中;
步骤5.4:对称加密算法(对称加密算法是发送方将明文(原始数据)和加密密钥(双方约定好的加密密钥,如123也可做为加密密钥,只是安全级别比较低)一起经过特殊加密算法处理后,使其变成复杂的加密密文发送给接收方。接收方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥)的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信的安全性至关重要;因为对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高等特性,并且A、B双方的公钥是基于区块链存储,在查询公钥时,基于智能合约的身份校验,可以保证公钥的安全。
所述步骤10包括:
步骤10.1:所述校验智能合约对A的身份进行校验,通过公司唯一识别码来校验身份信息;物流交易订单数据校验则是通过物流交易数据S00加A的公钥,在区块链上查找对应的上链数据玩来校验数据的有效性;
步骤10.2:智能合约校验通过后,开始本次对账流程,使用A的物流交易数据S00及B的公钥(区块链节点发送给A的)进行加密生成加密数据(S30),对S30使用Hash算法(步骤5.1)计算后,生成hash数据(S31),通过S31去查询对A提供查询请求的B的上链数据S12(即比较S31与S12的hash值是否相同),来完成自动对账过程并生成对账结果数据(S32)存储在区块链上,并通知对账双方此次对账结果信息;
步骤10.3:如果能在区块链上查询到B的对账上链数据,则说明对账成功;查询不到B的对账上链数据,则说明物流交易双方对账数据不一致导致对账失败,则需要对账双方核实物流交易订单信息,重新发起整个上链申请并触发自动对账流程来完成对账。
在本申请的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种基于区块链智能合约的对账数据上链方法,其特征在于,物流交易双方基于物流交易订单信息来实现基于区块链去中心化的可靠存储及基于智能合约实现的数据安全及自动化对账方法;
包括:
步骤S1:在物流交易企业之间实际对账过程中,基于物流交易订单信息完成的对账过程涉及到物流交易双方的参与,交易的双方有合作关系,交易发起方记为物流客户A,交易接收方记为物流客户B,A和B基于双方之间的物流交易订单信息,来完成一笔物流交易过程的对账逻辑;
步骤S2:A就物流交易订单想与B达成交易时,首先是A推送物流交易订单给B,就该条物流交易订单信息来进行双方的协商,并等待B对此物流交易订单的处理结果,为了防止B长时间无反馈,设定一个反馈时间的期限,超过期限该推送消息自动失效,交易过程结束;
步骤S3:B接收到A推送的物流交易订单后,查看该物流交易订单的详情信息并进行接受或拒绝处理,并推送一条订单处理反馈消息给A以确认该物流交易订单被B处理,若B拒绝此订单,则流程结束,不产生对账数据及上链数据;若B接受此物流交易订单,则触发A对此物流交易订单的物流交易数据S00上链申请;
步骤S4:A上链申请提交后,触发智能合约校验A的身份信息,所述校验智能合约对A的公司唯一识别码进行身份校验,校验通过后,对上链数据S00使用A的公钥进行加密,生成加密数据S01,再对S01进行Hash算法后生成hash数据,此hash数据即为上链数据S02,并把S02数据存储在区块链上,形成基于区块链去中心化的物流交易分布式账本,该上链数据S02接受B的查询请求,所述查询上链请求包括A的公钥加密并经过Hash算法的S02上链数据,所述A的公钥为所述区块链节点发送给B的;
步骤S5:B在完成物流交易后,对该物流交易订单信息进行确认,触发此物流交易订单的物流交易数据的上链申请,所述物流交易数据记为S10,S00与S10数据内容是一致的;
步骤S6:B上链申请提交后,触发智能合约对B的身份信息进行校验,所述校验智能合约对B的身份进行校验,校验通过后,对物流交易数据S10使用B的公钥进行加密,生成加密数据S11,再对S11使用Hash算法,生成hash数据即为上链数据S12,并把S12存储在区块链上,形成基于区块链去中心化的物流交易分布式账本,该上链数据S12接受A的查询请求,该查询上链请求包括B的公钥加密并经过Hash算法的S12上链数据,所述B的公钥为所述区块链节点发送给A的;
步骤S7:B数据上链后,推送一条确认物流交易订单完成的消息给A,告知A该笔物流交易订单已完成,请确认;A在确认的这个过程中核对订单是否完成及运输过程是否有出现问题,以此来对B的确认进行确认,以完成后续操作;
步骤S8:A收到消息后,对该物流交易订单进行二次确认,确认通过后则可以提交一个确认对账的申请给区块链以触发对账过程;确认出现问题,双方可以就该物流交易订单进行协商解决方案,根据协商结果来判定后续对账过程是否要继续;
步骤S9:区块链收到对账申请后,触发智能合约身份校验及物流交易订单数据校验,然后基于该物流交易订单数据使用B的公钥进行加密产生加密数据S30,再使用hash算法生成hash值S31,在区块链上检索B的上链数据以实现自动对账过程,并生成对账结果S32存储在区块链上。
2.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述步骤S1:
一次对账过程会涉及到物流交易订单的发送、处理、确认、二次确认及最后的对账过程,通过这些交易流程来确保本次对账过程信息的完整性及对账结果的准确性;
所述物流交易订单的发送指A发送物流交易订单信息给B;
所述物流交易订单的处理指B对此交易订单的接受或拒绝操作;
所述确认指B完成此物流交易订单后,确认完成;
所述二次确认指A对此物流交易订单完成的真实性进行确认;
所述对账指双方都确认无误后,生成对账结果,处理后续费用问题。
3.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述步骤S2:
A、B之间能生成交易订单,前提条件是双方已达成合作关系并已签订合同;
A把物流交易订单下发时,从A的合作企业中选择B,并把此物流交易订单下发给B,并同时推送一条订单发起的消息给B,告知B收到A的物流交易订单并提醒B处理此物流交易订单;
该物流交易订单包含物流交易的基本信息、出发地、目的地及订单金额相关信息。
4.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述步骤S3:
B推送订单处理反馈消息给A的内容包括物流交易号,对该订单的处理结果,如接受或拒绝,确认时间等相关属性;
物流交易数据包含A与B的公司唯一识别码、物流交易号、出发地、目的地、订单金额及交易发生时间相关属性字段。
5.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述步骤S8所述根据协商结果来判定后续对账过程是否要继续指:
物流运输过程中,可能会造成物品的损坏,因此需要交易发起方对该交易进行确认,保证该交易完好的完成,中间出现运输导致的问题,就需要双方来协商怎么处理,继续则可以对账,不继续的话,就不需要产生对账数据,该笔交易就会线下解决。
6.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述对账结果S32数据包括:
物流交易双方公司唯一编码、物流交易号、出发地、目的地、订单金额、交易发生时间及对账日期,该S32数据对物流交易双方均提供查询功能,以方便对账双方核实对账结果的准确性。
7.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述上链申请能够触发智能合约校验物流交易双方身份信息,并实现对账数据的上链,使得上链的数据准确及有效;在此次对账数据上链过程中,共触发了2次对账数据的上链申请及2次智能合约的校验,保证了对账数据的安全;交易双方对账数据上链后,A对物流交易订单进行二次确认,触发第3次智能合约校验,同时物流交易双方均能参与到对物流交易订单的完成情况进行确认,实现了整个流程的可靠控制,同时实现了基于区块链智能合约的自动化匹配对账结果并实时通知对账双方,提升了对账流程的高效和可靠性,解决了前面提出的人工出错问题及效率低下等问题;对账逻辑对物流交易双方是不可见的,保证对账过程的安全性。
8.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述物流交易双方的上链数据S02、S12,对交易的对方均提供了查询权限,均可以根据物流交易数据去查询交易另一方的上链数据,同时也可以基于此物流交易数据,查询此次物流交易的对账结果信息,实现了上链数据对物流交易双方的公开,并以此生成交易凭证,完成后续的结算问题。
9.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述步骤S4:
所述Hash算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值;
A与B公钥发送方式为:A、B在签订合作关系后,生成A、B的一对加密公钥,并存储至区块链中,并且基于智能合约校验访问公钥的身份信息,来保证生成的这对公钥仅在A、B之间可见,A、B均可通过查询区块链来访问自己的或交易方的公钥,以此保证A、B双方公钥之间的安全;
加密过程是把物流交易数据S00转化成JSON字符串格式,然后使用A的公钥对该JSON字符串使用对称加密算法进行加密,产生一段密文,再用此密文基于区块链的hash算法,生成一个长度固定的hash值存储于区块链中。
10.根据权利要求1所述的基于区块链智能合约的对账数据上链方法,其特征在于,所述步骤S9包括:
步骤S9.1:所述校验智能合约对A的身份进行校验,通过公司唯一识别码来校验身份信息;物流交易订单数据校验则是通过物流交易数据S00加A的公钥,在区块链上查找对应的上链数据玩来校验数据的有效性;
步骤S9.2:智能合约校验通过后,开始本次对账流程,使用A的物流交易数据S00及B的公钥(区块链节点发送给A的)进行加密生成加密数据(S30),对S30使用Hash算法(步骤3.1)计算后,生成hash数据(S31),通过S31去查询对A提供查询请求的B的上链数据S12(即比较S31与S12的hash值是否相同),来完成自动对账过程并生成对账结果数据(S32)存储在区块链上,并通知对账双方此次对账结果信息;
步骤S9:如果能在区块链上查询到B的对账上链数据,则说明对账成功;查询不到B的对账上链数据,则说明物流交易双方对账数据不一致导致对账失败,则需要对账双方核实物流交易订单信息,重新发起整个上链申请并触发自动对账流程来完成对账。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010943203.XA CN112069262B (zh) | 2020-09-09 | 2020-09-09 | 基于区块链智能合约的对账数据上链方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010943203.XA CN112069262B (zh) | 2020-09-09 | 2020-09-09 | 基于区块链智能合约的对账数据上链方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112069262A true CN112069262A (zh) | 2020-12-11 |
CN112069262B CN112069262B (zh) | 2022-05-24 |
Family
ID=73663296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010943203.XA Active CN112069262B (zh) | 2020-09-09 | 2020-09-09 | 基于区块链智能合约的对账数据上链方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112069262B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112506998A (zh) * | 2020-12-16 | 2021-03-16 | 福州凌云数据科技有限公司 | 一种基于区块链智能合约的数据上链方法 |
CN113098876A (zh) * | 2021-04-02 | 2021-07-09 | 中南大学 | 一种基于区块链与智能合约的产品数据上链方法和介质 |
CN113849543A (zh) * | 2021-09-30 | 2021-12-28 | 北京荷月科技有限公司 | 一种对账信息查询系统、数据更新方法及对账查询方法 |
CN117333184A (zh) * | 2023-09-20 | 2024-01-02 | 金网络(北京)数字科技有限公司 | 一种基于区块链的供应链对账方法、系统及存储介质 |
CN117350879A (zh) * | 2023-12-05 | 2024-01-05 | 国网山东省电力公司物资公司 | 一种基于区块链技术的企业对账业务优化方法 |
CN117593155A (zh) * | 2024-01-18 | 2024-02-23 | 山东省国土空间数据和遥感技术研究院(山东省海域动态监视监测中心) | 一种基于区块链的土地出让合同管理方法及系统 |
CN117333184B (zh) * | 2023-09-20 | 2024-05-14 | 金网络(北京)数字科技有限公司 | 一种基于区块链的供应链对账方法、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108074177A (zh) * | 2017-12-05 | 2018-05-25 | 深圳前海微众银行股份有限公司 | 数据对账方法、系统和计算机可读存储介质 |
CN109670924A (zh) * | 2018-11-29 | 2019-04-23 | 平安科技(深圳)有限公司 | 一种基于区块链的实时对账方法及装置、电子设备 |
WO2019105407A1 (zh) * | 2017-11-30 | 2019-06-06 | 云图有限公司 | 一种适合区块链隐私保护的零知识证明方法和介质 |
CN110472914A (zh) * | 2019-08-15 | 2019-11-19 | 上海天地汇供应链科技有限公司 | 一种基于区块链的发票管理方法及系统 |
-
2020
- 2020-09-09 CN CN202010943203.XA patent/CN112069262B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019105407A1 (zh) * | 2017-11-30 | 2019-06-06 | 云图有限公司 | 一种适合区块链隐私保护的零知识证明方法和介质 |
CN108074177A (zh) * | 2017-12-05 | 2018-05-25 | 深圳前海微众银行股份有限公司 | 数据对账方法、系统和计算机可读存储介质 |
CN109670924A (zh) * | 2018-11-29 | 2019-04-23 | 平安科技(深圳)有限公司 | 一种基于区块链的实时对账方法及装置、电子设备 |
CN110472914A (zh) * | 2019-08-15 | 2019-11-19 | 上海天地汇供应链科技有限公司 | 一种基于区块链的发票管理方法及系统 |
Non-Patent Citations (2)
Title |
---|
吕坤: "基于区块链的数字资产交易系统的研究与设计", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 * |
周硙: "基于区块链的对账系统设计与实现", 《软件工程》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112506998A (zh) * | 2020-12-16 | 2021-03-16 | 福州凌云数据科技有限公司 | 一种基于区块链智能合约的数据上链方法 |
CN113098876A (zh) * | 2021-04-02 | 2021-07-09 | 中南大学 | 一种基于区块链与智能合约的产品数据上链方法和介质 |
CN113849543A (zh) * | 2021-09-30 | 2021-12-28 | 北京荷月科技有限公司 | 一种对账信息查询系统、数据更新方法及对账查询方法 |
CN113849543B (zh) * | 2021-09-30 | 2022-07-12 | 北京荷月科技有限公司 | 一种对账信息查询系统、数据更新方法及对账查询方法 |
CN117333184A (zh) * | 2023-09-20 | 2024-01-02 | 金网络(北京)数字科技有限公司 | 一种基于区块链的供应链对账方法、系统及存储介质 |
CN117333184B (zh) * | 2023-09-20 | 2024-05-14 | 金网络(北京)数字科技有限公司 | 一种基于区块链的供应链对账方法、系统及存储介质 |
CN117350879A (zh) * | 2023-12-05 | 2024-01-05 | 国网山东省电力公司物资公司 | 一种基于区块链技术的企业对账业务优化方法 |
CN117593155A (zh) * | 2024-01-18 | 2024-02-23 | 山东省国土空间数据和遥感技术研究院(山东省海域动态监视监测中心) | 一种基于区块链的土地出让合同管理方法及系统 |
CN117593155B (zh) * | 2024-01-18 | 2024-04-12 | 山东省国土空间数据和遥感技术研究院(山东省海域动态监视监测中心) | 一种基于区块链的土地出让合同管理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112069262B (zh) | 2022-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112069262B (zh) | 基于区块链智能合约的对账数据上链方法 | |
CN107274139B (zh) | 仓单数据管理方法和计算机可读介质 | |
US20210334808A1 (en) | Identity management service using a blockchain providing certifying transactions between devices | |
US20220038294A1 (en) | Platform for generating authenticated data objects | |
CN107660293B (zh) | 物权电子凭证(edt)的分布式管理方法及其系统 | |
CN109889504B (zh) | 去中心化数据访问权交易方法及系统 | |
EP2547033B1 (en) | Public-key encrypted bloom filters with applications to private set intersection | |
CN1682490B (zh) | 从多证书管理机构报告组件检索证书状态时远程访问使能信托和互用服务的系统及方法 | |
CN111492634A (zh) | 使用零知识协议的安全并且机密的保管交易系统、方法和设备 | |
JP2020035436A (ja) | ペットフードのトレーサビリティシステム | |
CN110569675A (zh) | 一种基于区块链技术的多Agent交易信息保护方法 | |
CN110096903B (zh) | 基于区块链的资产验证方法及区块链网络系统 | |
WO2021174927A1 (zh) | 基于区块链的身份校验方法、装置、设备及存储介质 | |
US11818266B2 (en) | Methods and systems for distributed cryptographically secured data validation | |
US20220014502A1 (en) | Blockchain-based anonymous transfers zero-knowledge proofs | |
US20230208642A1 (en) | Secure data transfer system and method | |
CN110597836B (zh) | 基于区块链网络的信息查询请求响应方法及装置 | |
CN112417512A (zh) | 一种基于区块链的跨境贸易隐私数据管理系统及方法 | |
Li et al. | A decentralized and secure blockchain platform for open fair data trading | |
CN109889523A (zh) | 物联网服务评测信息的管理方法及系统 | |
US11818271B2 (en) | Linking transactions | |
CN115204873A (zh) | 一种基于区块链的开放大数据交易撮合方法及系统 | |
CN114785511A (zh) | 证明生成方法及装置、电子设备、存储介质 | |
CN109918451A (zh) | 基于区块链的数据库管理方法及系统 | |
US20210391993A1 (en) | Methods, systems, and apparatuses for cryptographic wireless detection and authentication of fluids |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |