CN110473106A - 一种交易处理的方法以及相关装置 - Google Patents

一种交易处理的方法以及相关装置 Download PDF

Info

Publication number
CN110473106A
CN110473106A CN201910775530.6A CN201910775530A CN110473106A CN 110473106 A CN110473106 A CN 110473106A CN 201910775530 A CN201910775530 A CN 201910775530A CN 110473106 A CN110473106 A CN 110473106A
Authority
CN
China
Prior art keywords
transaction data
campus
common recognition
transaction
node
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
Application number
CN201910775530.6A
Other languages
English (en)
Other versions
CN110473106B (zh
Inventor
吴楠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910775530.6A priority Critical patent/CN110473106B/zh
Priority claimed from CN201910775530.6A external-priority patent/CN110473106B/zh
Publication of CN110473106A publication Critical patent/CN110473106A/zh
Application granted granted Critical
Publication of CN110473106B publication Critical patent/CN110473106B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, 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/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, 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/405Establishing or using transaction specific rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本申请公开了一种基于区块链的交易处理方法,包括:获取交易数据,交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;向共识节点集合发送交易数据,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证;若交易数据验证通过,则将交易数据记录至区块链账本,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本。本申请还公开一种交易处理装置和节点设备。本申请不仅能够打通各个组织之间的交易壁垒,提升了交易的便利性,还能够实现不同组织之间的快速对账,降低了不同组织之间的对账难度,解决不同组织之间对账纠纷不可溯源的问题。

Description

一种交易处理的方法以及相关装置
技术领域
本申请涉及互联网技术领域,尤其涉及一种交易处理的方法以及相关装置。
背景技术
随着社会的不断进步,科技的飞速发展,使高等教育领域也面临着深刻的变革。与此同时,传统的高校管理模式已经无法应对教育事业高速发展和高校规模不断扩大的现状,为了适应国际化的要求,需要实行校园的信息化管理。数字化校园的概念将高校的管理模式带入了一个全新的领域。
目前,校园卡作为校园一卡通的交互介质,经过十余年的发展日趋成熟。校园卡可以发放给学生和教职工。在校园内,校园卡能够集工作证、图书证、乘车证、进餐卡、门禁卡、钱包以及存折等功能于一卡,真正实现“一卡在手,走遍校园”。
然而,校园和供应商分别属于不同的组织,校园卡通常只能在对应的组织(比如该校园卡所在的校区)内使用,无法进行跨组织的交易,导致交易便利性降低。如果使用其他的交易方式进行跨组织交易,还会增加组织之间的对账难度。
发明内容
本申请实施例提供了一种交易处理的方法以及相关装置,不仅能够打通各个组织之间的交易壁垒,提升了交易的便利性,还能够实现不同组织之间的快速对账,降低了不同组织之间的对账难度,解决不同组织之间对账纠纷不可溯源的问题。
有鉴于此,本申请第一方面提供一种交易处理的方法,包括:
获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本。
本申请第二方面提供一种交易处理的方法,所述方法应用于校园系统,所述校园系统包括多个校园,所述方法包括:
获取交易数据,其中,所述交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,所述第一校园标识对应于第一校园,所述第二校园标识对应于第二校园,所述第一校园与所述第二校园均属于所述校园系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证,所述共识节点与所述校园系统中的校园具有对应关系;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园系统中的校园具有对应关系。
本申请第三方面提供一种交易处理的方法,所述方法应用于校园与供应商系统,所述校园与供应商系统包括至少一个校园以及至少一个供应商,所述方法包括:
获取交易数据,其中,所述交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,所述校园标识对应于校园,所述供应商标识对应于供应商,所述校园为交易发起地,所述供应商为交易接收地,所述校园与所述供应商均属于所述校园与供应商系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园与供应商系统中的校园或供应商具有对应关系。
本申请第四方面提供一种交易处理装置,包括:
获取模块,用于获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
发送模块,用于向共识节点集合发送所述获取模块获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
记录模块,用于若所述发送模块发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本。
在一种可能的设计中,在本申请实施例的第四方面的第一种实现方式中,
所述发送模块,具体用于向共识节点集合发送所述交易数据,以使所述共识节点集合对所述交易数据进行验证;
若所述共识节点集合中的M个共识节点对所述交易数据验证成功,则确定所述交易数据验证通过,其中,所述共识节点集合包括所述M个共识节点,所述M为大于1的整数。
在一种可能的设计中,在本申请实施例的第四方面的第二种实现方式中,
所述发送模块,具体用于向共识节点集合发送所述交易数据,以使所述共识节点集合对所述交易数据进行验证;
若所述共识节点集合中的N个共识节点对所述交易数据验证成功,则确定所述交易数据验证通过,其中,所述共识节点集合包括所述M个共识节点,所述M为大于1的整数,所述N为大于M/2,且小于或等于所述M的整数。
在一种可能的设计中,在本申请实施例的第四方面的第三种实现方式中,
所述发送模块,具体用于向共识节点集合中至少一个目标共识节点发送所述交易数据,以使所至少一个目标共识节点对所述交易数据进行验证;
若所述至少一个目标共识节点中的每个目标共识节点均对所述交易数据验证成功,则确定所述交易数据验证通过。
在一种可能的设计中,在本申请实施例的第四方面的第四种实现方式中,
所述记录模块,具体用于将所述交易数据记录至所述区块链账本,以使观察节点集合通过所述区块链账本获取所述交易数据,其中,所述观察节点集合包括至少一个观察节点,所述观察节点属于监管系统。
在一种可能的设计中,在本申请实施例的第五方面的第五种实现方式中,所述交易处理装置还包括确定模块;
所述确定模块,用于所述发送模块向共识节点集合发送所述交易数据之前,基于节点资源分配规则,从业务节点集合中确定所述共识节点集合以及所述记账节点集合,其中,所述业务节点集合包括K个业务节点,所述共识节点集合包括P个共识节点,所述记账节点集合包括Q个记账节点,所述K为大于1的整数,所述P为大于或等于1的整数,所述Q为大于或等于1的整数,所述P与所述Q之和为所述K。
在一种可能的设计中,在本申请实施例的第六方面的第五种实现方式中,
所述记录模块,具体用于将所述交易数据中的所述发起方标识、所述接收方标识、所述交易发起时间、所述交易数值以及所述交易对象标识,记录至所述区块链账本中的目标区块。
本申请第五方面提供一种交易处理装置,所述交易处理装置应用于校园系统,所述校园系统包括多个校园,所述交易处理装置包括:
获取模块,用于获取交易数据,其中,所述交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,所述第一校园标识对应于第一校园,所述第二校园标识对应于第二校园,所述第一校园与所述第二校园均属于所述校园系统;
发送模块,用于向共识节点集合发送所述获取模块获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证,所述共识节点与所述校园系统中的校园具有对应关系;
记录模块,用于若所述发送模块发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园系统中的校园具有对应关系。
本申请第六方面提供一种交易处理装置,所述交易处理装置应用于校园与供应商系统,所述校园与供应商系统包括至少一个校园以及至少一个供应商,所述交易处理装置包括:
获取模块,用于获取交易数据,其中,所述交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,所述校园标识对应于校园,所述供应商标识对应于供应商,所述校园为交易发起地,所述供应商为交易接收地,所述校园与所述供应商均属于所述校园与供应商系统;
发送模块,用于向共识节点集合发送所述获取模块获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
记录模块,用于若所述发送模块发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园与供应商系统中的校园或供应商具有对应关系。
本申请第七方面提供一种节点设备,包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
本申请第八方面提供一种节点设备,所述节点设备应用于校园系统,所述校园系统包括多个校园,所述节点设备包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
获取交易数据,其中,所述交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,所述第一校园标识对应于第一校园,所述第二校园标识对应于第二校园,所述第一校园与所述第二校园均属于所述校园系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证,所述共识节点与所述校园系统中的校园具有对应关系;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园系统中的校园具有对应关系;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
本申请第九方面提供一种节点设备,所述节点设备应用于校园与供应商系统,所述校园与供应商系统包括至少一个校园以及至少一个供应商,所述节点设备包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
获取交易数据,其中,所述交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,所述校园标识对应于校园,所述供应商标识对应于供应商,所述校园为交易发起地,所述供应商为交易接收地,所述校园与所述供应商均属于所述校园与供应商系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园与供应商系统中的校园或供应商具有对应关系;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
本申请的第十方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例中,提供了一种交易处理的方法,首先获取交易数据,其中,交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识,然后向共识节点集合发送交易数据,如果交易数据验证通过,则将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本。通过上述方式,采用区块链账本对跨组织的交易进行记录,不仅能够打通各个组织之间的交易壁垒,提升了交易的便利性,还能够实现不同组织之间的快速对账,降低了不同组织之间的对账难度,解决不同组织之间对账纠纷不可溯源的问题。
附图说明
图1为本申请实施例中交易处理系统的一个架构示意图;
图2为本申请实施例中分布式区块链账本的一个网络拓扑图;
图3为本申请实施例中交易处理的方法一个实施例示意图;
图4为本申请实施例中基于不同组织之间的一个业务交互流程图;
图5为本申请实施例中交易处理的方法一个流程示意图;
图6为本申请实施例中区块链的一个结构示意图;
图7为本申请实施例中交易处理的方法另一个实施例示意图;
图8为本申请实施例中基于校园系统的一个交易场景示意图;
图9为本申请实施例中基于不同校园之间的一个业务交互流程图;
图10为本申请实施例中交易处理的方法另一个实施例示意图;
图11为本申请实施例中基于校园与供应商系统的一个交易场景示意图;
图12为本申请实施例中基于校园与供应商之间的一个业务交互流程图;
图13为本申请实施例中交易处理装置的一个实施例示意图;
图14为本申请实施例中交易处理装置的另一个实施例示意图;
图15为本申请实施例中交易处理装置的另一个实施例示意图;
图16为本申请实施例中交易处理装置的另一个实施例示意图;
图17为本申请实施例中节点设备的一个结构示意图。
具体实施方式
本申请实施例提供了一种交易处理的方法以及相关装置,不仅能够打通各个组织之间的交易壁垒,提升了交易的便利性,还能够实现不同组织之间的快速对账,降低了不同组织之间的对账难度,解决不同组织之间对账纠纷不可溯源的问题。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应理解,本申请提供的交易处理方法采用区块链分布式数据库的技术,可以应用于跨组织交易的场景,组织就是在一定的环境中,为实现某种共同的目标,按照一定的结构形式和活动规律结合起来的,且具有特定功能的开放系统。跨组织交易即为两个或两个以上的组织之间进行交易,例如,校园与校园之间的跨组织交易,校园与供应商之间的跨组织交易,企业园区与企业园区之间的跨组织交易,企业园区与供应商之间的跨组织交易。本申请为不同的组织搭建一个分布式的对账平台。在基于区块链技术搭建的对账平台之上,各个组织都是区块链对账平台的一个节点,各节点间通过身份标识进行交易,通过执行智能合约,在基于多方认可的背书策略、隐私数据策略与共识算法的基础上进行交易,各组织维护同一个共享的账本,实现快速对账,解决产生对账纠纷不可溯源的问题,从而实现一个多方可信赖的对账平台。
为了便于理解,本申请提出了一种交易处理的方法,该方法应用于图1所示的交易处理系统,请参阅图1,图1为本申请实施例中交易处理系统的一个架构示意图,如图所示,交易处理系统包括多个节点设备以及至少一个终端设备,其中,多个节点设备构成一个区块链系统,每个节点设备都可以与终端设备进行通信。比如图中的节点设备A、节点设备B和节点设备C共同维护同一个区块链账本,用户通过终端设备将节点设备A发起一笔交易,该交易记录在节点设备A的本地账本上,同时与交易对手方所对应的节点设备B达成交易共识后,将该笔交易数据记录到区块链中,通过区块链同步给其他的节点设备,至此,节点设备A、节点设备B和节点设备C都记录下了这笔交易的信息。
需要说明的是,终端设备包含但不仅限于平板电脑、笔记本电脑、掌上电脑、手机、语音交互设备及个人电脑(personal computer,PC),此处不做限定。其中,图1所示的节点设备数量仅为一个示意,在实际应用中,节点设备的数量可以是大于或等2的整数,每个组织可以包括至少一个节点设备,一个节点设备对应区块链中的一个节点,节点设备可以是服务器或者是终端设备,该服务器具体可以是业务服务器。
各个组织共同维护一个区块链账本,为了便于介绍,请参阅图2,图2为本申请实施例中分布式区块链账本的一个网络拓扑图,如图所示,分布式账本(distributed ledger)是一种在网络成员之间共享、复制和同步的数据库。分布式账本记录网络参与者之间的交易,比如资产或数据的交换,这种共享账本降低了因调解不同账本所产生的时间和开支成本。在本申请中所涉及的网络成员包含但不仅限于生产者、消费者、供应商、合作伙伴、造市者、推动者和其他项目干系人,交易的资产可以是有形的物理资产(比如汽车、住房或草莓),也可以是无形的虚拟资产(比如契约、专利和证券)。资产的所有权和转移会在业务网络中创造价值,这个过程被称为交易(transaction)。
分布式账本是由大型网络中的每个参与者独立持有和更新的数据库。分布是独一无二的,记录不是由中央机构传达给各个节点设备,而是由每个节点设备独立构建和保存。也就是说,网络上的每一个节点设备都处理每一笔交易,得出自己的结论,然后对这些结论进行投票,以确定大多数节点设备都同意这些结论。一旦达成共识,分布式区块链账本已经更新,并且所有节点设备都维护自己账本的相同副本。即如图2所示的,节点设备1与其他节点设备(如节点设备2、节点设备3、节点设备4、节点设备5和节点设备6)共享节点设备1的本地账本,节点设备2与其他节点设备(如节点设备1、节点设备3、节点设备4、节点设备5和节点设备6)共享节点设备2的本地账本,节点设备3其他节点设备(如节点设备1、节点设备2、节点设备4、节点设备5和节点设备6)共享节点设备3的本地账本,节点设备4与其他节点设备(如节点设备1、节点设备2、节点设备3、节点设备5和节点设备6)共享节点设备4的本地账本,节点设备5与其他节点设备(如节点设备1、节点设备2、节点设备3、节点设备4和节点设备6)共享节点设备5的本地账本,节点设备6与其他节点设备(如节点设备1、节点设备2、节点设备3、节点设备4和节点设备5)共享节点设备6的本地账本。至此,节点设备1、节点设备2、节点设备3、节点设备4、节点设备5和节点设备6均维护同一个区块链账本,该区块链账本包括所有节点设备记录的数据。
结合上述介绍,下面将对本申请中交易处理的方法进行介绍,请参阅图3,本申请实施例中交易处理的方法一个实施例包括:
101、获取交易数据,其中,交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
本实施例中,节点设备获取交易数据,该交易数据可以由客户端发起的,比如,用户使用客户端上展示的二维码进行付款操作,由此生成交易数据。或者,用户使用客户端的转账功能进行转账操作,由此生成交易数据。或者,用户使用银行卡进行支付操作,由此生成交易信数据。
每一笔交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识,其中,发起方标识可以是客户端标识或者银行卡标识,接收方标识可以是响应交易的商户标识,交易发起时间表示发起这笔交易的时间,交易数值表示交易的金额,交易对象标识用于标识具体的物品。
102、向共识节点集合发送交易数据,其中,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证;
本实施例中,节点设备向共识节点集合发送交易数据,共识节点集合包括多个共识节点,共识节点具体是指参与交易数据验证的节点设备,共识节点集合至少包括交易发起方所对应的节点设备以及交易接收方所对应的节点设备,还可以包括其他的节点设备。对交易数据进行验证过程可以理解为共识的过程。区块链作为一种按时间顺序存储数据的数据结构,可支持不同的共识机制。共识机制是区块链技术的重要组件。
可以理解的是,此时向共识节点集合发送交易数据的节点设备属于共识节点集合中的一份子,具有参与共识的作用。
共识是对区块以及区块内的交易数据进行一致性确认,只有通过共识的区块才能被加入区块链中并被所有的节点接受。需要注意的是,共识不包括业务逻辑校验的实现(业务逻辑校验由智能合约负责),共识针对业务逻辑校验的结果进行确认。本申请可以采用的共识算法包含但不仅限于实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)算法、股权证明(Proof of Stake,POS)算法、委任权益证明(Delegated Proof ofStake,DPOS)算法以及工作证明(Proof of Work,POW)算法等。
103、若交易数据验证通过,则将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本。
本实施例中,如果这笔交易数据经过共识节点集合共识后确定验证通过,则节点设备将交易数据记录至区块链账本,由此,同步至记账节点集合,该记账节点集合包括多个记账节点,记账节点集合至少包括交易发起方所对应的节点设备以及交易接收方所对应的节点设备,还可以包括其他的节点设备,
可以理解的是,此时向共识节点集合发送交易数据的节点设备属于记账节点集合中的一份子,具有参与记账的功能。由此可见,该节点设备具有不同的功能,可以随着不同的场景进行相应的功能切换。
本申请实施例中,提供了一种交易处理的方法,首先获取交易数据,其中,交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识,然后向共识节点集合发送交易数据,如果交易数据验证通过,则将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本。通过上述方式,采用区块链账本对跨组织的交易进行记录,不仅能够打通各个组织之间的交易壁垒,提升了交易的便利性,还能够实现不同组织之间的快速对账,降低了不同组织之间的对账难度,解决不同组织之间对账纠纷不可溯源的问题。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第一个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证;
若共识节点集合中的M个共识节点对交易数据验证成功,则确定交易数据验证通过,其中,共识节点集合包括M个共识节点,M为大于1的整数。
本实施例中,介绍了一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请参阅表1,表1为组织与节点设备之间对应关系的一个示意。
表1
如表1所示,假设组织A包括节点设备1和节点设备2,组织B包括节点设备3和节点设备4,组织C包括节点设备5、节点设备6、节点设备7和节点设备8,节点设备1向组织C中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他组织,比如组织B。假设从组织B中随机选择了节点设备3作为共识节点,于是,节点设备1、节点设备3和节点设备7共同组成了共识节点集合,即M=3。此时,节点设备1、节点设备3和节点设备7需要分别对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中所有的共识节点均验证成功,则确定交易数据验证通过。可以理解的是,在共识过程中是以组织为单位进行的。
其次,本申请实施例中,提供了一种共识节点集合进行共识的方法,即节点设备向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证,若共识节点集合中的所有的共识节点对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于全员共识机制,如果交易数据得到所有组织的认同,才表示验证通过,从而提升数据验证的可靠性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第二个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证;
若共识节点集合中的N个共识节点对交易数据验证成功,则确定交易数据验证通过,其中,共识节点集合包括M个共识节点,M为大于1的整数,N为大于M/2,且小于或等于M的整数。
本实施例中,介绍了另一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请再次参阅表1,如表1所示,假设组织A包括节点设备1和节点设备2,组织B包括节点设备3和节点设备4,组织C包括节点设备5、节点设备6、节点设备7和节点设备8,节点设备1向组织C中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他组织,比如组织B。假设从组织B中随机选择了节点设备3作为共识节点,于是,节点设备1、节点设备3和节点设备7共同组成了共识节点集合,即M=3。此时,节点设备1、节点设备3和节点设备7需要分别对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中节点设备1和节点设备7验证成功,而节点设备3验证失败,即2个共识节点对交易数据验证成功,N=2,此时,N大于M/2,即表示交易数据验证通过。可以理解的是,在共识过程中是以组织为单位进行的。
其次,本申请实施例中,提供了另一种共识节点集合进行共识的方法,即节点设备向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证,若共识节点集合中的大部分共识节点对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于大部分成员共识机制,如果交易数据得到大部分组织的认同,就可以认为验证通过,这样可以降低共识难度,提供共识效率,以大部分的共识结果为最终结果。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第三个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合中至少一个目标共识节点发送交易数据,以使所至少一个目标共识节点对交易数据进行验证;
若至少一个目标共识节点中的每个目标共识节点均对交易数据验证成功,则确定交易数据验证通过。
本实施例中,介绍了另一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请再次参阅表1,如表1所示,假设组织A包括节点设备1和节点设备2,组织B包括节点设备3和节点设备4,组织C包括节点设备5、节点设备6、节点设备7和节点设备8,节点设备1向组织C中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他组织,比如组织B。其中,组织A中的节点设备1、组织B中的节点设备3以及组织C中的节点设备7,均属于公信力较强的目标共识节点,于是,节点设备1、节点设备3和节点设备7共同组成了共识节点集合,即M=3。此时,目标共识节点需要对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中所有的目标共识节点均验证成功,则确定交易数据验证通过。可以理解的是,在共识过程中是以组织为单位进行的。
其次,本申请实施例中,提供了另一种共识节点集合进行共识的方法,即节点设备向共识节点集合中至少一个目标共识节点发送交易数据,以使所至少一个目标共识节点对交易数据进行验证,若至少一个目标共识节点中的每个目标共识节点均对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于公信力较强的组织进行共识,如果得到这部分组织的认同,就可以认为验证通过,这样可以不但能够降低共识难度,提供共识效率,还可以提升共识的可靠性。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第四个可选实施例中,将交易数据记录至区块链账本,可以包括:
将交易数据记录至区块链账本,以使观察节点集合通过区块链账本获取交易数据,其中,观察节点集合包括至少一个观察节点,观察节点属于监管系统。
本实施例中,介绍了一种供监管系统监控交易数据的方法,为了便于理解,请参阅图4,图4为本申请实施例中基于不同组织之间的一个业务交互流程图,如图所示,假设用户通过组织A发起一笔交易,具体地:
在步骤A1中,组织A的交易系统收到一笔交易数据,交易系统将这笔交易数据发送至组织A的节点设备,该节点设备为组织A的记账共识节点,即该节点设备既可以进行共识,也可以进行记账。其中,交易数据中包括发起方标识(组织C的标识)、接收方标识(组织A的标识)、交易发起时间(2019年8月2日15点12分32秒)、交易数值(15元)以及交易对象标识X;
在步骤A2中,组织A的节点设备将这笔交易数据共享给其他各个组织进行共识,取得交易双方的共识之后,确定交易上链,也就是将该笔交易数据通过加密算法加密处理后,加入至区块链账本,并同步至其他各个组织;
在步骤A3中,区块链账本在记录了该笔交易数据后,也可同步至观察节点,其中,观察节点具体可以是指监管机构能够访问的节点设备。
其次,本申请实施例中,提供了一种供监管系统监控交易数据的方法,即节点设备将交易数据记录至区块链账本,以使观察节点集合通过区块链账本获取交易数据,其中,观察节点集合包括至少一个观察节点,观察节点属于监管系统。通过上述方式,设置了观察节点,观察节点能够与监管系统对接,从而使得监管系统可以进行查账,进而加强了对账信息的可信度。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第五个可选实施例中,向共识节点集合发送交易数据之前,还可以包括:
基于节点资源分配规则,从业务节点集合中确定共识节点集合以及记账节点集合,其中,业务节点集合包括K个业务节点,共识节点集合包括P个共识节点,记账节点集合包括Q个记账节点,K为大于1的整数,P为大于或等于1的整数,Q为大于或等于1的整数,P与Q之和为K。
本实施例中,介绍了一种记账节点和共识节点之间功能转换的方法。整个区块链对账平台可以基于资源分配规则,自动化地根据节点资源消耗量来分配不同节点的功能,即节点设备可以根据区块链对账平台的分配结果,从业务节点集合中确定共识节点集合以及记账节点集合。其中,业务节点集合包括多个K个业务节点,每个业务节点对应一个节点设备。本申请提供的方案可以从K个业务节点中选择P个业务节点作为共识节点,选择Q个业务节点作为记账节点。
为了便于说明,请参阅图5,图5为本申请实施例中交易处理的方法一个流程示意图,如图所示,具体地:
在步骤S1中,组织收到一笔交易数据,该笔交易数据送入至组织的系统节点中;
在步骤S2中,系统节点将这笔交易数据发送至组织的节点设备,该节点设备为组织的记账共识节点,即该节点设备既可以进行共识,也可以进行记账,节点的角色可以切换;
在步骤S3中,节点设备针对这笔交易数据通过共识算法,取得交易双方的共识;
在步骤S4中,节点设备确定交易双方的共识之后,确定交易上链,于是将该笔交易数据通过加密算法加密处理后,加入至区块链账本,并同步至其他各个组织,其中,各个组织还包括监管系统,即观察系统通过各个观察节点获取组织之间的交易数据,普通节点中也可包含观察节点。
其次,本申请实施例中,提供了一种记账节点和共识节点之间功能转换的方法,即基于节点资源分配规则,从业务节点集合中确定共识节点集合以及记账节点集合。通过上述方式,每个组织可以复用同一个节点设备来进行不同的操作,共识节点与记账节点之间可以根据资源需求做角色互换,一方面可以动态地节约节点资源,另一方面可以防止单点故障而造成的数据安全问题。本申请采用自动化的资源分配机制,根据节点资源消耗量来分配,共识节点可以作为记账节点使用,反之亦然。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第六个可选实施例中,将交易数据记录至区块链账本,可以包括:
将交易数据中的发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识,记录至区块链账本中的目标区块。
本实施例中,介绍了一种将交易数据记录至区块链账本的方法,区块链账本由至少一条区块链组成,区块链是一串使用密码学方法相关联产生的数据块,该数据库即为区块,每个区块中存储相关信息,包括区块版本号、上一区块哈希值、默克尔(Merkle)根节点、时间戳与交易数据,通过例如安全哈希算法(Secure Hash Algorithm,SHA)256等的密码学方法以及Merkle可信树可用于验证交易的真实性与有效性(防伪)和生成下一个区块。
具体地,节点设备需要将交易数据写入到区块链账本中最新的一个区块,该区块即为目标区块,为了便于理解,请参阅图6,图6为本申请实施例中区块链的一个结构示意图。如图所示,假设目标区块为区块T,区块T内可以存储多条交易数据,此时需要将最新的一条交易数据写入至该区块T中。区块作为区块链的基本结构单元,由包含元数据的区块头和包含交易数据的区块体构成。区块头包含区块版本号、上一区块哈希值、Merkle根节点以及时间戳。下面依次对区块头内的信息进行介绍:
一个区块对应一个版本号,版本号用于确定区块高度,对于创世块而言,其版本号为0,后续依次递增版本号。
上一区块哈希值用于索引来自父区块哈希值的数据,该区块哈希值可以采用SHA256计算得到。哈希算法是为确保区块链中交易数据不被篡改而设计的单向密码机制。哈希算法可以在接收一段明文后,经一种不可逆的方式将其转化为一段长度较短,位数固定的散列数据。哈希算法具有以下的特点:
1、加密过程不可逆,无法使用通过哈希算法输出的散列数据倒推出原本的明文。输入的明文与输出的散列数据一一对应。任何一个输入信息的变化,都必将导致最终输出的散列数据的变化。
2、区块链通过哈希算法对一个区块中的交易数据进行加密,并把交易数据压缩成由一串数字和字母组成的散列字符串。区块链的哈希值能够唯一准确地标识一个区块,区块链中任意节点通过简单的哈希计算可以获得这个区块的哈希值,计算出的哈希值没有变化也就意味着区块中的信息没有被篡改。
Merkle根节点是利用Merkle树的数据结构存放所有叶子节点的值,并以此为基础生成一个统一的哈希值。Merkle树的叶子节点存储的是数据信息的哈希值,非叶子节点存储的是对其下面的所有叶子节点的组合进行哈希计算后得出的哈希值。区块中任意一个数据的变更都会导致Merkle树结构变化,在交易数据验证比对中,Merkle树结构能够大大减少数据的计算量。
时间戳从区块生成的那一刻起就存在于区块之中,时间戳是直接写在区块链中的,而区块链中已经生成的区块是不可篡改的,一旦篡改,生成的哈希值就会发生变化,从而变成一个无效的数据。每一个时间戳都会将前一个时间戳也纳入其随机哈希值中,这一过程不断重复,依次相连,最后会生成一个完整的链条。
在区块体的交易数据中存储有多个键(key)值(value)对,例如在一个校园卡交易的场景中,其中,一个键值对中的key为校园标识,value为校园卡标识以及校园对应的公钥,公钥与校园具有唯一的对应关系。另一个键值对中的key为供应商标识,value为供应商对应的公钥。另一个键值对中的key为交易标识,每个交易标识对应一个交易数据,value包括交易时间(比如2019年2月14日16点08分56秒)、交易物品(比如奶茶)、交易量(比如2杯)、所属校园卡标识(比如1000)、校园公钥、供应商标识(比如0101)以及供应商公钥。
对区块T加密后进行存储,然后开始写下一个区块,即T+1区块。
再次,本申请实施例中,提供了一种将交易数据记录至区块链账本的方法,节点设备可以根据交易数据生成交易标识,然后将交易标识、交易数据中的发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识,写入至区块链账本中的目标区块。通过上述方式,节点设备能够将合法的交易数据写入到最新的区块中,实现交易数据的同步,从而为方案的实现提供可行且可靠的手段。
结合上述介绍,下面将基于校园系统的场景,校园系统包括多个校园,对本申请中交易处理的方法进行介绍,请参阅图7,本申请实施例中交易处理的方法一个实施例包括:
201、获取交易数据,其中,交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,第一校园标识对应于第一校园,第二校园标识对应于第二校园,第一校园与第二校园均属于校园系统;
本实施例中,校园A的节点设备获取交易数据,该交易数据可以由客户端发起的,比如,用户使用客户端上展示的二维码进行付款操作,由此生成交易数据。或者,用户使用客户端的转账功能进行转账操作,由此生成交易数据。或者,用户使用校园卡进行支付操作,由此生成交易信数据。
每一笔交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,其中,第一校园标识可以是校园卡标识,比如1000,接收方标识可以是响应交易的校园B标识,比如9999,交易发起时间表示发起这笔交易的时间,比如是2019年8月1日15时32分08秒,交易数值表示交易的金额,比如,12元,物品标识用于标识具体的物品,比如奶茶。
202、向共识节点集合发送交易数据,其中,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证,共识节点与校园系统中的校园具有对应关系;
本实施例中,对账平台系统设计为一个联盟链,各个校园均为联盟链上的参与组织并承担记账节点的角色,这里可引入监管机构(比如卫生局、教育局以及质量监管局等)为观察节点,记账节点参与共识,观察节点只做数据同步不参与共识(数据处理流程和记账节点一样),但可作为公允的第三方参与监管。各大高校的校园卡通过证书授权(Certificate Authority,CA)身份证书标记对应各校园组织,交易数据可实时记录上区块链,将多账本变为一账通,实现快速对账与账本追溯。
其中,联盟链是介于公有链以及私有链之间的区块链,可实现部分去中心化的目的。链上各个节点通常有与之相对应的实体机构或者组织,参与者通过授权加入网络并组成利益相关联盟,共同维护区块链运行。
校园A的节点设备向共识节点集合发送交易数据,共识节点集合包括多个共识节点,共识节点具体是指在各个校园中参与交易数据验证的节点设备,共识节点集合至少包括第一校园的节点设备以及第二校园的节点设备,还可以包括其他校园的节点设备。对交易数据进行验证过程可以理解为共识的过程。区块链作为一种按时间顺序存储数据的数据结构,可支持不同的共识机制。共识机制是区块链技术的重要组件。
可以理解的是,此时向共识节点集合发送交易数据的节点设备属于共识节点集合中的一份子,具有参与共识的作用。
203、若交易数据验证通过,则将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本,记账节点与校园系统中的校园具有对应关系。
本实施例中,如果这笔交易数据经过共识节点集合共识后确定验证通过,则校园A的节点设备将交易数据记录至区块链账本,由此,同步至记账节点集合,该记账节点集合包括多个记账节点,记账节点集合至少包括交易发起方所对应的节点设备以及交易接收方所对应的节点设备,还可以包括其他的节点设备,
可以理解的是,此时向共识节点集合发送交易数据的节点设备属于记账节点集合中的一份子,具有参与记账的功能。由此可见,该节点设备具有不同的功能,可以随着不同的场景进行相应的功能切换。
为了便于说明,请参阅图8,图8为本申请实施例中基于校园系统的一个交易场景示意图,如图所示,用户可以通过校园卡打通各个校园之间的交易消费渠道,比如用户使用校园A的校园卡,在校园B内缴纳停车费,在校园C内支付伙食费,在校园D内购买奶茶。用户也可以使用校园B的校园卡,在校园A内支付伙食费,在校园C内支付伙食费,在校园D内缴纳停车费。由此可见,校园A、校园B、校园C和校园D之间可以使用本校的校园卡在其他校园内使用。
本申请实施例中,提供了一种交易处理的方法,首先获取交易数据,交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,然后向共识节点集合发送交易数据,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证,共识节点与校园系统中的校园具有对应关系,若交易数据验证通过,则将交易数据记录至区块链账本。通过上述方式,采用区块链账本对校园与校园之间的交易进行记录,不仅能够打通各个校园之间的交易壁垒,提升了交易的便利性,还能够实现不同校园之间的快速对账,降低了不同校园之间的对账难度,解决不同校园之间对账纠纷不可溯源的问题。
可选地,在上述图7对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第一个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证;
若共识节点集合中的M个共识节点对交易数据验证成功,则确定交易数据验证通过,其中,共识节点集合包括M个共识节点,M为大于1的整数。
本实施例中,介绍了一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请参阅表2,表2为校园与节点设备之间对应关系的一个示意。
表2
如表2所示,假设校园A包括节点设备1和节点设备2,校园B包括节点设备3和节点设备4,校园C包括节点设备5、节点设备6、节点设备7和节点设备8,节点设备1向校园C中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他校园,比如校园B。假设从校园B中随机选择了节点设备3作为共识节点,于是,节点设备1、节点设备3和节点设备7共同组成了共识节点集合,即M=3。此时,节点设备1、节点设备3和节点设备7需要分别对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中所有的共识节点均验证成功,则确定交易数据验证通过。可以理解的是,在共识过程中是以校园为单位进行的。
其次,本申请实施例中,提供了一种共识节点集合进行共识的方法,基于全员共识机制,如果交易数据得到所有校园的认同,才表示验证通过,从而提升数据验证的可靠性。
可选地,在上述图7对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第二个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证;
若共识节点集合中的N个共识节点对交易数据验证成功,则确定交易数据验证通过,其中,共识节点集合包括M个共识节点,M为大于1的整数,N为大于M/2,且小于或等于M的整数。
本实施例中,介绍了另一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请再次参阅表2,如表2所示,假设校园A包括节点设备1和节点设备2,校园B包括节点设备3和节点设备4,校园C包括节点设备5、节点设备6、节点设备7和节点设备8,节点设备1向校园C中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他校园,比如校园B。假设从校园B中随机选择了节点设备3作为共识节点,于是,节点设备1、节点设备3和节点设备7共同组成了共识节点集合,即M=3。此时,节点设备1、节点设备3和节点设备7需要分别对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中节点设备1和节点设备7验证成功,而节点设备3验证失败,即2个共识节点对交易数据验证成功,N=2,此时,N大于M/2,即表示交易数据验证通过。可以理解的是,在共识过程中是以校园为单位进行的。
提供了另一种共识节点集合进行共识的方法,即节点设备向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证,若共识节点集合中的大部分共识节点对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于大部分成员共识机制,如果交易数据得到大部分校园的认同,就可以认为验证通过,这样可以降低共识难度,提供共识效率,以大部分的共识结果为最终结果。
可选地,在上述图7对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第三个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合中至少一个目标共识节点发送交易数据,以使所至少一个目标共识节点对交易数据进行验证;
若至少一个目标共识节点中的每个目标共识节点均对交易数据验证成功,则确定交易数据验证通过。
本实施例中,介绍了另一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请再次参阅表2,如表2所示,假设校园A包括节点设备1和节点设备2,校园B包括节点设备3和节点设备4,校园C包括节点设备5、节点设备6、节点设备7和节点设备8,节点设备1向校园C中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他校园,比如校园B。其中,校园A中的节点设备1、校园B中的节点设备3以及校园C中的节点设备7,均属于公信力较强的目标共识节点,于是,节点设备1、节点设备3和节点设备7共同组成了共识节点集合,即M=3。此时,目标共识节点需要对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中所有的目标共识节点均验证成功,则确定交易数据验证通过。可以理解的是,在共识过程中是以校园为单位进行的。
其次,本申请实施例中,提供了另一种共识节点集合进行共识的方法,即节点设备向共识节点集合中至少一个目标共识节点发送交易数据,以使所至少一个目标共识节点对交易数据进行验证,若至少一个目标共识节点中的每个目标共识节点均对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于公信力较强的校园进行共识,如果得到这部分校园的认同,就可以认为验证通过,这样可以不但能够降低共识难度,提供共识效率,还可以提升共识的可靠性。
多个校园作为具体参与记账共识的节点加入到联盟链区块链对账平台中,校园通过校园卡作为身份认证的载体,对外执行交易动作,取得交易双方的记账共识后,确认交易数据上链,并共享给观察节点在内的各个所需共享的节点。为了便于理解,请参阅图9,图9为本申请实施例中基于不同校园之间的一个业务交互流程图,如图所示,假设学生使用C校园的校园卡在校园A购买了10元的奶茶,具体地:
在步骤B1中,校园A的交易系统通过校园卡管理系统收到一笔交易数据,其中,交易数据中包括第一校园标识(校园C的标识,更具体地,可以是校园C的校园卡标识)、第二校园标识(校园A的标识)、交易发起时间(2019年8月2日15点12分32秒)、交易数值(10元)以及交易对象(奶茶)标识;
在步骤B2中,交易系统将这笔交易数据发送至校园A的节点设备,该节点设备为校园A的记账共识节点,即该节点设备既可以进行共识,也可以进行记账;
在步骤B3中,校园A的节点设备可以将这笔交易数据共享给其他校园进行共识,取得交易双方的共识之后,确定交易上链,也就是将该笔交易数据通过加密算法加密处理后,加入至区块链账本,并同步至其他各个校园;
在步骤B4中,区块链账本在记录了该笔交易数据后,也可同步至观察节点,其中,观察节点具体可以是指监管机构能够访问的节点设备。
结合上述介绍,下面将基于校园与供应商系统的场景,校园与供应商系统包括至少一个校园以及至少一个供应商,对本申请中交易处理的方法进行介绍,请参阅图10,本申请实施例中交易处理的方法一个实施例包括:
301、获取交易数据,其中,交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,校园标识对应于校园,供应商标识对应于供应商,校园为交易发起地,供应商为交易接收地,校园与供应商均属于校园与供应商系统;
本实施例中,校园A的节点设备获取交易数据,该交易数据可以由客户端发起的,比如,用户使用客户端上展示的二维码进行付款操作,由此生成交易数据。或者,用户使用客户端的转账功能进行转账操作,由此生成交易数据。或者,用户使用校园卡进行支付操作,由此生成交易信数据。
每一笔交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,其中,校园标识可以是校园卡标识,比如1000,供应商标识可以是响应交易的供应商标识,比如1010,交易发起时间表示发起这笔交易的时间,比如是2019年8月1日15时32分08秒,交易数值表示交易的金额,比如,12元,物品标识用于标识具体的物品,比如桂林米粉。供应商可以是校园内入驻的食堂,或者校园内入驻的商店,或者校园内入驻的酒店等,此次不做限定。可以理解的是,该校园卡属于某个校园,也就是说,可以使用该校园的校园卡在不同的供应商内使用。
302、向共识节点集合发送交易数据,其中,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证;
本实施例中,对账平台系统设计为一个联盟链,各个校园和各个供应商均为联盟链上的参与组织并承担记账节点的角色,这里可引入监管机构(比如卫生局、教育局以及质量监管局等)为观察节点,记账节点参与共识,观察节点只做数据同步不参与共识(数据处理流程和记账节点一样),但可作为公允的第三方参与监管。各大高校的校园卡通过CA身份证书标记对应各校园组织,交易数据可实时记录上区块链,将多账本变为一账通,实现快速对账与账本追溯。
校园A的节点设备向共识节点集合发送交易数据,共识节点集合包括多个共识节点,共识节点具体是指在各个校园以及在各个供应商中参与交易数据验证的节点设备,共识节点集合至少包括校园的节点设备以及供应商的节点设备,还可以包括其他校园的节点设备和供应商的节点设备。对交易数据进行验证过程可以理解为共识的过程。区块链作为一种按时间顺序存储数据的数据结构,可支持不同的共识机制。共识机制是区块链技术的重要组件。
可以理解的是,此时向共识节点集合发送交易数据的节点设备属于共识节点集合中的一份子,具有参与共识的作用。
303、若交易数据验证通过,则将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本,记账节点与校园与供应商系统中的校园或供应商具有对应关系。
本实施例中,如果这笔交易数据经过共识节点集合共识后确定验证通过,则校园A的节点设备将交易数据记录至区块链账本,由此,同步至记账节点集合,该记账节点集合包括多个记账节点,记账节点集合至少包括校园的节点设备以及供应商的节点设备,还可以包括其他的节点设备,
可以理解的是,此时向共识节点集合发送交易数据的节点设备属于记账节点集合中的一份子,具有参与记账的功能。由此可见,该节点设备具有不同的功能,可以随着不同的场景进行相应的功能切换。
为了便于说明,请参阅图11,图11为本申请实施例中基于校园与供应商系统的一个交易场景示意图,如图所示,用户可以通过校园卡打通校园与供应商之间的交易消费渠道,比如用户使用校园A的校园卡,在供应商B中购买了一份“全素套餐”,用户也可以使用校园B的校园卡,在供应商A内购买奶茶,由此可见,校园A、校园B、供应商A和供应商B之间可以使用同一张校园卡在不同的供应商中使用。
本申请实施例中,提供了一种交易处理的方法,首先获取交易数据,交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,然后向共识节点集合发送交易数据,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证,共识节点与校园系统中的校园具有对应关系,若交易数据验证通过,则将交易数据记录至区块链账本。通过上述方式,采用区块链账本对校园与供应商之间的交易进行记录,不仅能够打通校园与供应商之间的交易壁垒,提升了交易的便利性,还能够实现校园与供应商之间的快速对账,降低了校园与供应商之间的对账难度,解决校园与供应商对账纠纷不可溯源的问题。
可选地,在上述图10对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第一个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证;
若共识节点集合中的M个共识节点对交易数据验证成功,则确定交易数据验证通过,其中,共识节点集合包括M个共识节点,M为大于1的整数。
本实施例中,介绍了一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请参阅表3,表3为校园的节点设备与供应商的节点设备之间对应关系的一个示意。
表3
如表3所示,假设校园A包括节点设备1和节点设备2,校园B包括节点设备3和节点设备4,供应商A包括节点设备5、节点设备6、节点设备7和节点设备8,供应商B包括节点设备9,节点设备1向供应商A中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他校园和供应商。假设从校园B中随机选择了节点设备3作为共识节点,从供应商B中随机选择了节点设备9作为共识节点,于是,节点设备1、节点设备3、节点设备7和节点设备9共同组成了共识节点集合,即M=4。此时,节点设备1、节点设备3、节点设备7和节点设备9需要分别对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。如果共识节点集合中所有的共识节点均验证成功,则确定交易数据验证通过。
其次,本申请实施例中,提供了一种共识节点集合进行共识的方法,基于全员共识机制,如果交易数据得到所有校园和供应商的认同,才表示验证通过,从而提升数据验证的可靠性。
可选地,在上述图10对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第二个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合发送交易数据,以使共识节点集合对交易数据进行验证;
若共识节点集合中的N个共识节点对交易数据验证成功,则确定交易数据验证通过,其中,共识节点集合包括M个共识节点,M为大于1的整数,N为大于M/2,且小于或等于M的整数。
本实施例中,介绍了另一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请再次参阅表3,如表3所示,假设校园A包括节点设备1和节点设备2,校园B包括节点设备3和节点设备4,供应商A包括节点设备5、节点设备6、节点设备7和节点设备8,供应商B包括节点设备9,节点设备1向供应商A中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他校园和供应商。假设从校园B中随机选择了节点设备3作为共识节点,从供应商B中随机选择了节点设备9作为共识节点,于是,节点设备1、节点设备3、节点设备7和节点设备9共同组成了共识节点集合,即M=4。此时,节点设备1、节点设备3、节点设备7和节点设备9需要分别对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中节点设备1、节点设备3和节点设备7验证成功,而节点设备9验证失败,即3个共识节点对交易数据验证成功,N=3,此时,N大于M/2,即表示交易数据验证通过。可以理解的是,在共识过程中是以校园或供应商为单位进行的。
其次,本申请实施例中,提供了另一种共识节点集合进行共识的方法,即节点设备向共识节点集合发送交易数据,使共识节点集合对交易数据进行验证,若共识节点集合中的大部分共识节点对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于大部分成员共识机制,如果交易数据得到大部分校园和供应商的认同,就可以认为验证通过,这样可以降低共识难度,提供共识效率,以大部分的共识结果为最终结果。
可选地,在上述图10对应的各个实施例的基础上,本申请实施例提供的交易处理的方法第三个可选实施例中,向共识节点集合发送交易数据,可以包括:
向共识节点集合中至少一个目标共识节点发送交易数据,以使所至少一个目标共识节点对交易数据进行验证;
若至少一个目标共识节点中的每个目标共识节点均对交易数据验证成功,则确定交易数据验证通过。
本实施例中,介绍了另一种共识节点集合进行共识的方法,节点设备在收到交易数据后,将该交易数据发送给共识节点集合。为了便于理解,请再次参阅表3,如表3所示,假设校园A包括节点设备1和节点设备2,校园B包括节点设备3和节点设备4,供应商A包括节点设备5、节点设备6、节点设备7和节点设备8,供应商B包括节点设备9,节点设备1向供应商A中的节点设备7发送了一笔交易数据,该笔交易数据同步给其他校园和供应商。其中,校园A中的节点设备1、校园B中的节点设备3以及供应商A中的节点设备7,均属于公信力较强的目标共识节点,即校园A、校园B和供应商A的公信力较好。于是,节点设备1、节点设备3和节点设备7共同组成了共识节点集合,即M=3。此时,目标共识节点需要对该笔交易数据进行验证,验证过程包括对交易数据的签名进行验证,对交易发起时间进行验证,对交易数值进行验证,以及对交易对象标识进行验证。
如果共识节点集合中所有的目标共识节点均验证成功,则确定交易数据验证通过。可以理解的是,在共识过程中是以校园或供应商为单位进行的。
其次,本申请实施例中,提供了另一种共识节点集合进行共识的方法,即节点设备向共识节点集合中至少一个目标共识节点发送交易数据,以使所至少一个目标共识节点对交易数据进行验证,若至少一个目标共识节点中的每个目标共识节点均对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于公信力较强的校园进行共识,如果得到这部分校园的认同,就可以认为验证通过,这样可以不但能够降低共识难度,提供共识效率,还可以提升共识的可靠性。
校园与供应商作为具体参与记账共识的节点加入到联盟链区块链对账平台中,校园通过校园卡作为身份认证的载体,对外执行交易动作,取得交易双方的记账共识后,确认交易数据上链,并共享给观察节点在内的各个所需共享的节点。为了便于理解,请参阅图12,图12为本申请实施例中基于校园与供应商之间的一个业务交互流程图,如图所示,假设学生使用C校园的校园卡在校园A购买了10元的奶茶,具体地:
在步骤C1中,校园A的交易系统通过校园卡管理系统收到一笔交易数据,其中,交易数据中包括校园标识(校园A的标识,更具体地,可以是校园A的校园卡标识)、供应商标识(供应商A的标识,供应商A可以是校园A中的食堂供应商)、交易发起时间(2019年8月2日15点12分32秒)、交易数值(18元)以及交易对象(全素午餐)标识;
在步骤C2中,交易系统将这笔交易数据发送至校园A的节点设备,该节点设备为校园A的记账共识节点,即该节点设备既可以进行共识,也可以进行记账;
在步骤C3中,校园A的节点设备可以将这笔交易数据共享给其他节点进行共识,取得交易双方的共识之后,确定交易上链,也就是将该笔交易数据通过加密算法加密处理后,加入至区块链账本,并同步至其他各个校园和各个供应商;
在步骤B4中,区块链账本在记录了该笔交易数据后,也可同步至观察节点,其中,观察节点具体可以是指监管机构能够访问的节点设备。
下面对本申请中的交易处理装置进行详细描述,请参阅图13,图13为本申请实施例中交易处理装置一个实施例示意图,交易处理装置40包括:
获取模块401,用于获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
发送模块402,用于向共识节点集合发送所述获取模块401获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
记录模块403,用于若所述发送模块402发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本。
本实施例中,获取模块401获取交易数据,其中,交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识,发送模块402向共识节点集合发送获取模块401获取的交易数据,其中,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证,若发送模块402发送的交易数据验证通过,则记录模块403将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本。
本申请实施例中,提供了一种交易处理装置,采用区块链账本对跨组织的交易进行记录,不仅能够打通各个组织之间的交易壁垒,提升了交易的便利性,还能够实现不同组织之间的快速对账,降低了不同组织之间的对账难度,解决不同组织之间对账纠纷不可溯源的问题。
可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的交易处理装置40的另一实施例中,
所述发送模块402,具体用于向共识节点集合发送所述交易数据,以使所述共识节点集合对所述交易数据进行验证;
若所述共识节点集合中的M个共识节点对所述交易数据验证成功,则确定所述交易数据验证通过,其中,所述共识节点集合包括所述M个共识节点,所述M为大于1的整数。
其次,本申请实施例中,基于全员共识机制,如果交易数据得到所有组织的认同,才表示验证通过,从而提升数据验证的可靠性。
可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的交易处理装置40的另一实施例中,
所述发送模块402,具体用于向共识节点集合发送所述交易数据,以使所述共识节点集合对所述交易数据进行验证;
若所述共识节点集合中的N个共识节点对所述交易数据验证成功,则确定所述交易数据验证通过,其中,所述共识节点集合包括所述M个共识节点,所述M为大于1的整数,所述N为大于M/2,且小于或等于所述M的整数。
其次,本申请实施例中,基于大部分成员共识机制,如果交易数据得到大部分组织的认同,就可以认为验证通过,这样可以降低共识难度,提供共识效率,以大部分的共识结果为最终结果。
可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的交易处理装置40的另一实施例中,
所述发送模块402,具体用于向共识节点集合中至少一个目标共识节点发送所述交易数据,以使所至少一个目标共识节点对所述交易数据进行验证;
若所述至少一个目标共识节点中的每个目标共识节点均对所述交易数据验证成功,则确定所述交易数据验证通过。
其次,本申请实施例中,提供了另一种共识节点集合进行共识的方法,即节点设备向共识节点集合中至少一个目标共识节点发送交易数据,以使所至少一个目标共识节点对交易数据进行验证,若至少一个目标共识节点中的每个目标共识节点均对交易数据验证成功,则确定交易数据验证通过。通过上述方式,基于公信力较强的组织进行共识,如果得到这部分组织的认同,就可以认为验证通过,这样可以不但能够降低共识难度,提供共识效率,还可以提升共识的可靠性。
可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的交易处理装置40的另一实施例中,
所述记录模块403,具体用于将所述交易数据记录至所述区块链账本,以使观察节点集合通过所述区块链账本获取所述交易数据,其中,所述观察节点集合包括至少一个观察节点,所述观察节点属于监管系统。
其次,本申请实施例中,提供了一种供监管系统监控交易数据的方法,即节点设备将交易数据记录至区块链账本,以使观察节点集合通过区块链账本获取交易数据,其中,观察节点集合包括至少一个观察节点,观察节点属于监管系统。通过上述方式,设置了观察节点,观察节点能够与监管系统对接,从而使得监管系统可以进行查账,进而加强了对账信息的可信度。
可选地,在上述图13所对应的实施例的基础上,请参阅图14,本申请实施例提供的交易处理装置40的另一实施例中,所述交易处理装置40还包括确定模块404;
所述确定模块404,用于所述发送模块402向共识节点集合发送所述交易数据之前,基于节点资源分配规则,从业务节点集合中确定所述共识节点集合以及所述记账节点集合,其中,所述业务节点集合包括K个业务节点,所述共识节点集合包括P个共识节点,所述记账节点集合包括Q个记账节点,所述K为大于1的整数,所述P为大于或等于1的整数,所述Q为大于或等于1的整数,所述P与所述Q之和为所述K。
其次,本申请实施例中,每个组织可以复用同一个节点设备来进行不同的操作,共识节点与记账节点之间可以根据资源需求做角色互换,一方面可以动态地节约节点资源,另一方面可以防止单点故障而造成的数据安全问题。本申请采用自动化的资源分配机制,根据节点资源消耗量来分配,共识节点可以作为记账节点使用,反之亦然。
可选地,在上述图13或图14所对应的实施例的基础上,本申请实施例提供的交易处理装置40的另一实施例中,
所述记录模块403,具体用于将所述交易数据中的所述发起方标识、所述接收方标识、所述交易发起时间、所述交易数值以及所述交易对象标识,记录至所述区块链账本中的目标区块。
再次,本申请实施例中,提供了一种将交易数据记录至区块链账本的方法,节点设备可以根据交易数据生成交易标识,然后将交易标识、交易数据中的发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识,写入至区块链账本中的目标区块。通过上述方式,节点设备能够将合法的交易数据写入到最新的区块中,实现交易数据的同步,从而为方案的实现提供可行且可靠的手段。
下面对本申请中的交易处理装置进行详细描述,请参阅图15,图15为本申请实施例中交易处理装置一个实施例示意图,该交易处理装置应用于校园系统,该校园系统包括多个校园,交易处理装置50包括:
获取模块501,用于获取交易数据,其中,所述交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,所述第一校园标识对应于第一校园,所述第二校园标识对应于第二校园,所述第一校园与所述第二校园均属于所述校园系统;
发送模块502,用于向共识节点集合发送所述获取模块501获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证,所述共识节点与所述校园系统中的校园具有对应关系;
记录模块503,用于若所述发送模块502发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园系统中的校园具有对应关系。
本实施例中,获取模块501获取交易数据,其中,交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,第一校园标识对应于第一校园,第二校园标识对应于第二校园,第一校园为交易发起地,第二校园为交易接收地,第一校园与第二校园均属于校园系统,发送模块502向共识节点集合发送获取模块501获取的交易数据,其中,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证,共识节点与校园系统中的校园具有对应关系,若发送模块502发送的交易数据验证通过,则记录模块503将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本,记账节点与校园系统中的校园具有对应关系。
本申请实施例中,提供了一种交易处理装置,采用区块链账本对校园与校园之间的交易进行记录,不仅能够打通各个校园之间的交易壁垒,提升了交易的便利性,还能够实现不同校园之间的快速对账,降低了不同校园之间的对账难度,解决不同校园之间对账纠纷不可溯源的问题。
下面对本申请中的交易处理装置进行详细描述,请参阅图16,16为本申请实施例中交易处理装置一个实施例示意图,该交易处理装置应用于校园与供应商系统,该校园与供应商系统包括至少一个校园以及至少一个供应商,该交易处理装置60包括:
获取模块601,用于获取交易数据,其中,所述交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,所述校园标识对应于校园,所述供应商标识对应于供应商,所述校园为交易发起地,所述供应商为交易接收地,所述校园与所述供应商均属于所述校园与供应商系统;
发送模块602,用于向共识节点集合发送所述获取模块601获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
记录模块603,用于若所述发送模块602发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园与供应商系统中的校园或供应商具有对应关系。
本实施例中,获取模块601获取交易数据,其中,交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,校园标识对应于校园,供应商标识对应于供应商,校园为交易发起地,供应商为交易接收地,校园与供应商均属于校园与供应商系统,发送模块602向共识节点集合发送获取模块601获取的交易数据,其中,共识节点集合包括多个共识节点,共识节点用于对交易数据进行验证,若发送模块602发送的交易数据验证通过,则记录模块603将交易数据记录至区块链账本,其中,区块链账本用于同步至记账节点集合,记账节点集合包括多个记账节点,记账节点用于存储区块链账本,记账节点与校园与供应商系统中的校园或供应商具有对应关系。
本申请实施例中,提供了一种交易处理的方法,采用区块链账本对校园与供应商之间的交易进行记录,不仅能够打通校园与供应商之间的交易壁垒,提升了交易的便利性,还能够实现校园与供应商之间的快速对账,降低了校园与供应商之间的对账难度,解决校园与供应商对账纠纷不可溯源的问题。
图17是本发明实施例提供的一种节点设备结构示意图,该节点设备700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing unit,CPU)722和存储器732,一个或一个以上存储应用程序742或数据744的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器732和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对节点设备中的一系列指令操作。更进一步地,中央处理器722可以设置为与存储介质730通信,在节点设备700上执行存储介质730中的一系列指令操作。
节点设备700还可以包括一个或一个以上电源726,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口758,和/或,一个或一个以上操作系统741,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由节点设备所执行的步骤可以基于该图17所示的节点设备结构。
本申请实施例中,CPU 722用于执行如下步骤:
获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本。
本申请实施例中,CPU 722用于执行如下步骤:
获取交易数据,其中,所述交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,所述第一校园标识对应于第一校园,所述第二校园标识对应于第二校园,所述第一校园与所述第二校园均属于所述校园系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证,所述共识节点与所述校园系统中的校园具有对应关系;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园系统中的校园具有对应关系。
本申请实施例中,CPU 722用于执行如下步骤:
获取交易数据,其中,所述交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,所述校园标识对应于校园,所述供应商标识对应于供应商,所述校园为交易发起地,所述供应商为交易接收地,所述校园与所述供应商均属于所述校园与供应商系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园与供应商系统中的校园或供应商具有对应关系。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性连接、有线连接、无线连接或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (14)

1.一种交易处理的方法,其特征在于,包括:
获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本。
2.根据权利要求1所述的方法,其特征在于,所述向共识节点集合发送所述交易数据,包括:
向共识节点集合发送所述交易数据,以使所述共识节点集合对所述交易数据进行验证;
若所述共识节点集合中的M个共识节点对所述交易数据验证成功,则确定所述交易数据验证通过,其中,所述共识节点集合包括所述M个共识节点,所述M为大于1的整数。
3.根据权利要求1所述的方法,其特征在于,所述向共识节点集合发送所述交易数据,包括:
向共识节点集合发送所述交易数据,以使所述共识节点集合对所述交易数据进行验证;
若所述共识节点集合中的N个共识节点对所述交易数据验证成功,则确定所述交易数据验证通过,其中,所述共识节点集合包括所述M个共识节点,所述M为大于1的整数,所述N为大于M/2,且小于或等于所述M的整数。
4.根据权利要求1所述的方法,其特征在于,所述向共识节点集合发送所述交易数据,包括:
向共识节点集合中至少一个目标共识节点发送所述交易数据,以使所至少一个目标共识节点对所述交易数据进行验证;
若所述至少一个目标共识节点中的每个目标共识节点均对所述交易数据验证成功,则确定所述交易数据验证通过。
5.根据权利要求1所述的方法,其特征在于,所述将所述交易数据记录至区块链账本,包括:
将所述交易数据记录至所述区块链账本,以使观察节点集合通过所述区块链账本获取所述交易数据,其中,所述观察节点集合包括至少一个观察节点,所述观察节点属于监管系统。
6.根据权利要求1所述的方法,其特征在于,所述向共识节点集合发送所述交易数据之前,所述方法还包括:
基于节点资源分配规则,从业务节点集合中确定所述共识节点集合以及所述记账节点集合,其中,所述业务节点集合包括K个业务节点,所述共识节点集合包括P个共识节点,所述记账节点集合包括Q个记账节点,所述K为大于1的整数,所述P为大于或等于1的整数,所述Q为大于或等于1的整数,所述P与所述Q之和为所述K。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述将所述交易数据记录至区块链账本,包括:
将所述交易数据中的所述发起方标识、所述接收方标识、所述交易发起时间、所述交易数值以及所述交易对象标识,记录至所述区块链账本中的目标区块。
8.一种交易处理的方法,其特征在于,所述方法应用于校园系统,所述校园系统包括多个校园,所述方法包括:
获取交易数据,其中,所述交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,所述第一校园标识对应于第一校园,所述第二校园标识对应于第二校园,所述第一校园与所述第二校园均属于所述校园系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证,所述共识节点与所述校园系统中的校园具有对应关系;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园系统中的校园具有对应关系。
9.一种交易处理的方法,其特征在于,所述方法应用于校园与供应商系统,所述校园与供应商系统包括至少一个校园以及至少一个供应商,所述方法包括:
获取交易数据,其中,所述交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,所述校园标识对应于校园,所述供应商标识对应于供应商,所述校园为交易发起地,所述供应商为交易接收地,所述校园与所述供应商均属于所述校园与供应商系统;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园与供应商系统中的校园或供应商具有对应关系。
10.一种交易处理装置,其特征在于,包括:
获取模块,用于获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
发送模块,用于向共识节点集合发送所述获取模块获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
记录模块,用于若所述发送模块发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本。
11.一种交易处理装置,其特征在于,所述交易处理装置应用于校园系统,所述校园系统包括多个校园,所述交易处理装置包括:
获取模块,用于获取交易数据,其中,所述交易数据中包括第一校园标识、第二校园标识、交易发起时间戳、交易数值以及物品标识,所述第一校园标识对应于第一校园,所述第二校园标识对应于第二校园,所述第一校园与所述第二校园均属于所述校园系统;
发送模块,用于向共识节点集合发送所述获取模块获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证,所述共识节点与所述校园系统中的校园具有对应关系;
记录模块,用于若所述发送模块发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园系统中的校园具有对应关系。
12.一种交易处理装置,其特征在于,所述交易处理装置应用于校园与供应商系统,所述校园与供应商系统包括至少一个校园以及至少一个供应商,所述交易处理装置包括:
获取模块,用于获取交易数据,其中,所述交易数据中包括校园标识、供应商标识、交易发起时间戳、交易数值以及物品标识,所述校园标识对应于校园,所述供应商标识对应于供应商,所述校园为交易发起地,所述供应商为交易接收地,所述校园与所述供应商均属于所述校园与供应商系统;
发送模块,用于向共识节点集合发送所述获取模块获取的所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
记录模块,用于若所述发送模块发送的所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本,所述记账节点与所述校园与供应商系统中的校园或供应商具有对应关系。
13.一种节点设备,其特征在于,包括:存储器、收发器、处理器以及总线系统;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
获取交易数据,其中,所述交易数据中包括发起方标识、接收方标识、交易发起时间、交易数值以及交易对象标识;
向共识节点集合发送所述交易数据,其中,所述共识节点集合包括多个共识节点,所述共识节点用于对所述交易数据进行验证;
若所述交易数据验证通过,则将所述交易数据记录至区块链账本,其中,所述区块链账本用于同步至记账节点集合,所述记账节点集合包括多个记账节点,所述记账节点用于存储所述区块链账本;
所述总线系统用于连接所述存储器以及所述处理器,以使所述存储器以及所述处理器进行通信。
14.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至7中任一项所述的方法,或执行如权利要求8所述的方法,或执行如权利要求9所述的方法。
CN201910775530.6A 2019-08-21 一种交易处理的方法以及相关装置 Active CN110473106B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910775530.6A CN110473106B (zh) 2019-08-21 一种交易处理的方法以及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910775530.6A CN110473106B (zh) 2019-08-21 一种交易处理的方法以及相关装置

Publications (2)

Publication Number Publication Date
CN110473106A true CN110473106A (zh) 2019-11-19
CN110473106B CN110473106B (zh) 2024-10-22

Family

ID=

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110889040A (zh) * 2019-11-21 2020-03-17 北京海益同展信息科技有限公司 用于推送信息的方法和装置
CN111191292A (zh) * 2019-12-16 2020-05-22 平安壹钱包电子商务有限公司 记账方法、装置、系统及计算机可读存储介质
CN111242783A (zh) * 2020-01-16 2020-06-05 腾讯科技(深圳)有限公司 交易数据处理方法、装置、计算机设备以及存储介质
CN111383008A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 基于账户模型的区块链转账方法及装置
CN111553735A (zh) * 2020-04-29 2020-08-18 陈议尊 一种利用公链的积分交易方法和系统
CN112667749A (zh) * 2021-03-16 2021-04-16 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备及存储介质
CN112830354A (zh) * 2019-11-22 2021-05-25 富泰华工业(深圳)有限公司 基于区块链系统的电梯调度系统、装置、方法及存储介质
CN113132430A (zh) * 2019-12-31 2021-07-16 中移(成都)信息通信科技有限公司 联盟链系统管理方法、装置、设备及计算机存储介质
CN113191865A (zh) * 2021-03-30 2021-07-30 建信金融科技有限责任公司 海运费数据处理方法、装置、设备及系统
CN113259130A (zh) * 2021-06-21 2021-08-13 腾讯科技(深圳)有限公司 一种交易数据处理方法、装置、设备以及介质
CN114511321A (zh) * 2022-01-14 2022-05-17 北京第五力科技有限公司 基于点对点的数据处理方法、系统、计算设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769173A (zh) * 2018-05-21 2018-11-06 阿里体育有限公司 运行智能合约的区块链实现方法及设备
CN108776929A (zh) * 2018-04-02 2018-11-09 成都云创智融科技有限公司 基于区块链数据库的账单处理方法、系统和可读存储介质
CN109726229A (zh) * 2018-11-30 2019-05-07 深圳市元征科技股份有限公司 一种区块链数据存储方法及装置
CN110009338A (zh) * 2018-12-25 2019-07-12 阿里巴巴集团控股有限公司 基于区块链的记账方法及装置、电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776929A (zh) * 2018-04-02 2018-11-09 成都云创智融科技有限公司 基于区块链数据库的账单处理方法、系统和可读存储介质
CN108769173A (zh) * 2018-05-21 2018-11-06 阿里体育有限公司 运行智能合约的区块链实现方法及设备
CN109726229A (zh) * 2018-11-30 2019-05-07 深圳市元征科技股份有限公司 一种区块链数据存储方法及装置
CN110009338A (zh) * 2018-12-25 2019-07-12 阿里巴巴集团控股有限公司 基于区块链的记账方法及装置、电子设备

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110889040A (zh) * 2019-11-21 2020-03-17 北京海益同展信息科技有限公司 用于推送信息的方法和装置
CN110889040B (zh) * 2019-11-21 2020-09-01 北京海益同展信息科技有限公司 用于推送信息的方法和装置
CN112830354A (zh) * 2019-11-22 2021-05-25 富泰华工业(深圳)有限公司 基于区块链系统的电梯调度系统、装置、方法及存储介质
CN111191292A (zh) * 2019-12-16 2020-05-22 平安壹钱包电子商务有限公司 记账方法、装置、系统及计算机可读存储介质
CN113132430A (zh) * 2019-12-31 2021-07-16 中移(成都)信息通信科技有限公司 联盟链系统管理方法、装置、设备及计算机存储介质
CN111242783A (zh) * 2020-01-16 2020-06-05 腾讯科技(深圳)有限公司 交易数据处理方法、装置、计算机设备以及存储介质
CN111242783B (zh) * 2020-01-16 2021-10-26 腾讯科技(深圳)有限公司 交易数据处理方法、装置、计算机设备以及存储介质
CN111553735A (zh) * 2020-04-29 2020-08-18 陈议尊 一种利用公链的积分交易方法和系统
CN111383008A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 基于账户模型的区块链转账方法及装置
CN112667749B (zh) * 2021-03-16 2021-05-25 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备及存储介质
CN112667749A (zh) * 2021-03-16 2021-04-16 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备及存储介质
CN113191865A (zh) * 2021-03-30 2021-07-30 建信金融科技有限责任公司 海运费数据处理方法、装置、设备及系统
CN113259130A (zh) * 2021-06-21 2021-08-13 腾讯科技(深圳)有限公司 一种交易数据处理方法、装置、设备以及介质
CN114511321A (zh) * 2022-01-14 2022-05-17 北京第五力科技有限公司 基于点对点的数据处理方法、系统、计算设备及存储介质

Similar Documents

Publication Publication Date Title
Sunyaev et al. Distributed ledger technology
CN106228446B (zh) 基于私有区块链的资产交易平台系统及方法
CN110351133A (zh) 用于区块链系统中的主节点切换处理的方法及装置
CN109035029A (zh) 基于区块链的资产转移方法及装置、电子设备
CN110471986A (zh) 基于区块链的票据实名领取方法、装置及电子设备
CN109242675A (zh) 基于区块链的资产发布方法及装置、电子设备
CN108764925A (zh) 一种基于区块链技术的综合业务平台
CN109903026A (zh) 基于区块链的事件处理方法及装置、电子设备
CN107239940A (zh) 基于区块链系统的网络交易方法及装置
CN108764993A (zh) 一种基于区块链的商场促销系统
CN109903027A (zh) 基于区块链的事件处理方法及装置、电子设备
CN109377363B (zh) 一种基于区块链的物联网数据交易架构及其交易安全方法
CN111369730B (zh) 基于区块链的投票表决处理方法和装置
CN112862303B (zh) 一种基于区块链的众包质量评估的系统及方法
CN110557276B (zh) 基于Fabric架构的区块链机房管理系统
CN110503290A (zh) 面向产品全生命周期的数字孪生体数据管理方法
CN110490640A (zh) 用于对象分发处理的方法、装置及系统
Ramadoss Blockchain technology: An overview
CN109636558A (zh) 基于区块链的员工数据处理方法、装置及系统
CN109829690A (zh) 基于区块链的数据处理方法、装置和系统
CN110278246A (zh) 一种针对联盟链的存证业务转移方法、装置及设备
CN113221191A (zh) 基于区块链的数据存证方法、装置、设备和存储介质
CN110727735B (zh) 基于区块链技术协作完成任务事件的方法、装置及设备
Khalifa et al. Trust requirements in blockchain systems: a preliminary study
US20200175562A1 (en) Gem trade and exchange system and previous-block verification method for block chain transactions

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