CN109472596B - 基于交易评估的联盟链共识方法及系统 - Google Patents
基于交易评估的联盟链共识方法及系统 Download PDFInfo
- Publication number
- CN109472596B CN109472596B CN201811202390.5A CN201811202390A CN109472596B CN 109472596 B CN109472596 B CN 109472596B CN 201811202390 A CN201811202390 A CN 201811202390A CN 109472596 B CN109472596 B CN 109472596B
- Authority
- CN
- China
- Prior art keywords
- transaction
- host node
- node
- accounting nodes
- integral
- 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.)
- Expired - Fee Related
Links
Classifications
-
- 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/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- 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
-
- 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/405—Establishing or using transaction specific rules
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供一种基于交易评估的联盟链共识方法及系统,共识方法包括:应用程序生成交易提案并发送给背书节点;背书节点接收并模拟执行交易提案,得到模拟执行结果;交易评估模块计算用户积分,并根据用户积分对主节点进行动态授权;将用户积分返回至背书节点;背书节点将用户积分和模拟执行结果反馈给应用程序;应用程序将交易以及用户积分发送给排序服务节点;排序服务节点对交易进行排序后生成区块,并将用户积分记录在区块中,并广播给主节点;动态授权的主节点接收区块并同步给记账节点;主节点和记账节点分别对区块验证后保存到各自的本地账本中。本申请能够实现对交易质量的提升和交易的激励,并避免过于依赖单一节点,增加联盟链的可信度。
Description
技术领域
本申请属于区块链技术领域,具体涉及一种基于交易评估的联盟链共识方法及系统。
背景技术
作为一种新兴技术,区块链的发展历史比较短暂,在1.0时代它仅仅是支持数字货币比特币交易的技术。然而,随着区块链技术的不断发展,其已经脱离比特币,为更多的行业领域提供去中心化、去信任的独特解决方案,建立值得信赖的网络。区块链实质是由多方参与共同维护的分布式共享账本。不同于传统的集中式记账,区块链系统中节点地位平等,彼此之间无需信任,通过共识方法达成一致后即可获得全部的数据记录,同时通过密码学的机制可以保障其不可篡改,进一步确保交易无法抵赖和破坏并保护用户与交易信息的隐私。
区块链技术根据其使用场景和开放权限的不同分为公有链、私有链和联盟链。其中,联盟链介于公有链和私有链之间,只对特定的团体组织开放。公众可以查阅和交易,对于验证交易或发布智能合约等功能则需获得联盟许可,可以更好的实现部分去中心化,适用于诸多商用场景。Linux基金会下的超级账本就是适用于商用场景的联盟链项目。由于通常交易数据的双方多为各大企业与网络运营商,基于联盟链实现去信任的数据交易成为了一个很好的选择。
传统的数据交易平台通常存在各类数据主体缺乏共享理念、缺乏统一交易标准、数据法律属性与归属存争议、存在交易风险等等问题。联盟链具有去中心化、去信任、公开透明、不可篡改、可追踪溯源等特性。基于联盟链的数据交易平台可以很好地解决传统交易平台上的数据共享、数据存储、数据分析和数据流通的问题。然而,联盟链的准入机制使得联盟链的稳定性、去中心、去信任等特性不如比特币等公有链好。基于传统联盟链共识算法达成节点间一致无法满足数据交易平台的性能需求。如何更快速、安全、可信地达成基于联盟链的数据交易平台中各方数据交易信息的分布式一致性成为当下亟需解决的问题。
由Linux基金会发起创建的开源区块链分布式账本Hyperledger Fabric 1.0利用kafka消息队列进行排序,虽然能够提高数据的吞吐量,但是在整个共识流程中,主节点的静态设置直到故障后,才根据PKI-ID(在超级账本中,每个节点都会有MSP颁发的证书,对证书进行哈希处理生成的一个标识符,用于表示节点的身份)重新授权这种机制,是十分不利于整个交易环境的。即使主节点一直不出故障,但如果该主节点日后基本不再进行交易或者很少进行交易,成为主节点对于它来说都是一种资源浪费,就会存在主节点主动退出整个联盟链网络这样的风险,这样也不利于联盟链网络的稳定。同时现有的共识方法也无法与交易平台的业务流程很好地相结合。
发明内容
为至少在一定程度上克服相关技术中存在的问题,本申请提供了一种基于交易评估的联盟链共识方法及系统。
根据本申请实施例的第一方面,本申请提供了一种基于交易评估的联盟链共识方法,其包括以下步骤:
在联盟链网络中设置交易评估模块;
应用程序生成交易提案,并将交易提案发送给背书节点;
背书节点接收交易提案,并模拟执行交易提案,得到模拟执行结果;
交易评估模块对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分,并根据用户积分对主节点进行动态授权;将用户积分返回至背书节点;
背书节点将用户积分和模拟执行结果反馈给应用程序;
应用程序将包含背书签名和模拟执行结果的交易以及用户积分发送给排序服务节点;
排序服务节点对接收到的交易进行排序后生成区块,同时将用户积分记录在区块中,并将区块广播给主节点;
主节点接收区块并将接收到的区块同步给记账节点;
主节点对接收到的区块进行验证后保存到主节点的本地账本中,记账节点对同步到的区块进行验证后保存到记账节点的本地账本中。
进一步地,所述交易数据价值包括:数据样本量、数据品种、数据完整性、数据时间跨度、数据实时性、数据样本覆盖性、数据深度、数据稀缺性和数据获取难易度指标;所述交易行为包括是否遵守交易规则、是否频繁操作、是否及时付款或提供商品指标。
更进一步地,所述对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分的具体过程为:
根据交易数据价值的各项指标及其权重计算得到当前交易达成后的交易数据积分,根据交易行为的各项指标及其权重计算得到当前交易达成后的交易行为积分;
分别对交易数据积分和交易行为积分进行归一化处理,得到交易数据积分归一化值和交易行为积分归一化值;
利用以下公式计算当前交易达成后的用户积分:
Ti=ωTbi′P+(1-ω)Tdi′
式中,Ti表示第i次交易达成后得到的用户积分;P表示惩罚强度;ω表示交易行为积分在最终所得用户积分中所占比重,ω∈(0,1);Tdi′表示交易数据积分归一化值;Tbi′表示交易行为积分归一化值;
根据当前交易达成后的用户积分和初始积分计算得到用户总积分:
式中,I表示用户在完成交易平台注册、阅读并同意交易平台的交易规则、实名制认证后交易平台给予的初始积分,i∈[1,j],j表示交易次数。
更进一步地,所述交易行为积分在最终所得用户积分中所占比重ω根据以下公式动态设置:
式中,ω随着交易行为积分归一化值Tbi′的减少而增加。
更进一步地,所述惩罚强度P为:
式中,λ表示根据交易平台情况所设置的常数参量。
进一步地,所述根据用户积分对主节点进行动态授权的具体过程为:
将所有记账节点以及原主节点为主节点的属性设置为假;
根据更新后的用户积分对记账节点以及原主节点进行排序;
根据排名从高到低授权预设数量的记账节点参与竞争主节点;
授权的记账节点等待网络稳定后向其他未授权记账节点发送竞争消息;其中,如果预设时间内联盟链网络中的节点没有变动,则表示网络稳定;
非授权记账节点在预设时间内收集各竞争消息,并从各竞争消息中选择用户积分最高的授权记账节点,将该授权记账节点记为新的主节点,并向新的主节点反馈竞争结果;
新的主节点接收竞争结果,并将为主节点的属性设置为真;
新的主节点向其他记账节点或原主节点广播声明消息,声明消息用于声明自己为新的主节点;
其他授权记账节点接收声明消息后放弃竞争主节点。
根据本申请实施例的第二方面,本申请提供了一种基于交易评估的联盟链共识系统,其包括:
交易提案生成模块,利用应用程序生成交易提案,并将交易提案发送给背书节点;还用于将包含背书签名和模拟执行结果的交易以及用户积分发送给区块生成模块;
模拟执行模块,利用背书节点接收交易提案,并模拟执行交易提案,得到模拟执行结果;还用于将用户积分和模拟执行结果反馈给交易提案生成模块;
交易评估模块,用于对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分,并根据用户积分对主节点进行动态授权;还用于将用户积分返回至模拟执行模块;
区块生成模块,用于对接收到的交易进行排序后生成区块,同时将用户积分记录在区块中,并将区块广播给主节点;
同步模块,用于将主节点接收到的区块同步给记账节点;
验证保存模块,用于对主节点接收到的区块进行验证后保存到主节点的本地账本中,还用于对记账节点同步到的区块进行验证后保存到记账节点的本地账本。
进一步地,所述交易评估模块根据用户积分对主节点进行动态授权时被配置为:
将所有记账节点以及原主节点为主节点的属性设置为假;
根据更新后的用户积分对记账节点以及原主节点进行排序;
根据排名从高到低授权预设数量的记账节点参与竞争主节点;
授权的记账节点等待网络稳定后向其他未授权记账节点发送竞争消息;其中,如果预设时间内联盟链网络中的节点没有变动,则表示网络稳定;
非授权记账节点在预设时间内收集各竞争消息,并从各竞争消息中选择用户积分最高的授权记账节点,将该授权记账节点记为新的主节点,并向新的主节点反馈竞争结果;
新的主节点接收竞争结果,并将为主节点的属性设置为真;
新的主节点向其他记账节点或原主节点广播声明消息,声明消息用于声明自己为新的主节点;
其他授权记账节点接收声明消息后放弃竞争主节点。
根据本申请实施例的第三方面,本申请提供了一种基于交易评估的联盟链共识装置,其包括:处理器和存储器,所述存储器用于存储能够在所述处理器上运行的计算机程序,所述处理器用于运行所述计算机程序时,执行上述任一方法的步骤。
根据本申请实施例的第四方面,本申请还提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一方法的步骤。
根据本申请的上述具体实施方式可知,至少具有以下有益效果:本申请通过对交易双方的每次交易进行评分,各评分累加后得到用户积分,根据用户积分对主节点进行动态授权,本申请能够保证活跃度较高、信任度较高的记账节点成为主节点,避免过于依赖单一节点,从而实现对交易质量的提升和交易的激励,增加联盟链的可信度,提高数据交易平台中信息达成分布式一致的稳定性和安全性,满足平台交易的实际需求。动态授权的主节点负责从排序服务节点处获取区块并向其他记账节点同步区块,在一定程度上保障了节点间的通信,能够加快区块的广播与同步,还能够增加联盟链的稳定性和可信度,防止恶意攻击。
应了解的是,上述一般描述及以下具体实施方式仅为示例性及阐释性的,其并不能限制本申请所欲主张的范围。
附图说明
下面的所附附图是本申请的说明书的一部分,其示出了本申请的实施例,所附附图与说明书的描述一起用来说明本申请的原理。
图1为现有技术中联盟链节点的组成示意图。
图2为本申请具体实施方式提供的一种基于交易评估的联盟链共识方法的流程图。
图3为本申请具体实施方式提供的一种基于交易评估的联盟链共识方法中得到用户积分的方法流程图。
图4为本申请具体实施方式提供的一种基于交易评估的联盟链共识方法中根据用户积分动态授权主节点的方法流程图。
图5为本申请具体实施方式提供的一种基于交易评估的联盟链共识系统的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚明白,下面将以附图及详细叙述清楚说明本申请所揭示内容的精神,任何所属技术领域技术人员在了解本申请内容的实施例后,当可由本申请内容所教示的技术,加以改变及修饰,其并不脱离本申请内容的精神与范围。
本申请的示意性实施例及其说明用于解释本申请,但并不作为对本申请的限定。另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部分。
关于本文中所使用的“第一”、“第二”、…等,并非特别指称次序或顺位的意思,也非用以限定本申请,其仅为了区别以相同技术用语描述的元件或操作。
关于本文中所使用的方向用语,例如:上、下、左、右、前或后等,仅是参考附图的方向。因此,使用的方向用语是用来说明并非用来限制本创作。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
关于本文中所使用的“及/或”,包括所述事物的任一或全部组合。
关于本文中的“多个”包括“两个”及“两个以上”;关于本文中的“多组”包括“两组”及“两组以上”。
关于本文中所使用的用语“大致”、“约”等,用以修饰任何可以细微变化的数量或误差,但这些微变化或误差并不会改变其本质。一般而言,此类用语所修饰的细微变化或误差的范围在部分实施例中可为20%,在部分实施例中可为10%,在部分实施例中可为5%或是其他数值。本领域技术人员应当了解,前述提及的数值可依实际需求而调整,并不以此为限。
某些用以描述本申请的用词将于下或在此说明书的别处讨论,以提供本领域技术人员在有关本申请的描述上额外的引导。
图1为现有技术中联盟链节点组成示意图。其中,联盟链网络中包括背书节点、排序服务节点、记账节点和主节点。应用程序为用户操作的实体,其通过背书节点与联盟链网络进行通信。当交易发起时,应用程序构造交易提案并发送给背书节点。背书节点接收交易提案并模拟执行,对模拟执行结果进行背书后反馈给应用程序。
应用程序将包含背书签名和模拟执行结果的交易发送给排序服务节点。排序服务节点对接收到的交易进行排序后生成区块,并将区块广播给主节点。
主节点接收区块并将接收到的区块同步给记账节点。主节点对接收到的区块进行验证后保存到主节点的本地账本。记账节点对同步到的区块进行验证后保存到记账节点的本地账本。
如图2所示,在联盟链网络中加入交易评估模块,本申请实施例提供了一种基于交易评估的联盟链共识方法,其包括以下步骤:
S1、应用程序生成交易提案,并将交易提案发送给背书节点。
S2、背书节点接收交易提案,并模拟执行交易提案,得到模拟执行结果。
S3、交易评估模块对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分,并根据用户积分对主节点进行动态授权;将用户积分返回至背书节点。其中,当前交易中的用户可以为数据提供方,也可以为数据购买方。交易评估模块作为系统的一部分,以链码的形式部署在所有节点上。
S4、背书节点将用户积分和模拟执行结果反馈给应用程序。
S5、应用程序将包含背书签名和模拟执行结果的交易以及用户积分发送给排序服务节点。
S6、排序服务节点对接收到的交易进行排序后生成区块,同时将用户积分记录在区块中,并将区块广播给主节点。具体地,排序服务节点对交易进行排序时可以按照交易的接收顺序对交易进行排序。
S7、主节点接收区块并将接收到的区块同步给记账节点。
S8、主节点对接收到的区块进行验证后保存到主节点的本地账本中,记账节点对同步到的区块进行验证后保存到记账节点的本地账本中。
本申请对交易双方的每次交易进行评分,各评分累加后得到用户积分,用户积分能够体现数据购买方的购买能力、数据提供方的数据质量以及交易双方的活跃度与信誉度。高质量的交易会增加交易双方的用户积分,低质量的交易(包括大量冗余空缺数据、恶意刷单等)会减少交易双方的用户积分,因此本申请共识方法能够在一定程度上提高交易质量,能够更安全、可信、快速地达成基于联盟链的数据交易平台中各方数据交易信息的分布式一致性。
根据用户积分动态授权主节点,能够保证活跃度较高的记账节点成为主节点,负责从排序服务节点处获取区块并向其他记账节点同步区块,在一定程度上保障了节点间的通信,能够加快区块的广播与同步。根据用户积分动态授权主节点,能够保证信任度较高的记账节点成为主节点,负责从排序服务节点处获取区块并向其他记账节点同步区块,能够增加联盟链的稳定性和可信度,防止恶意攻击。
上述步骤S3中,交易数据价值包括数据样本量、数据品种、数据完整性、数据时间跨度、数据实时性、数据样本覆盖性、数据深度、数据稀缺性和数据获取难易度等指标。交易行为包括是否遵守交易规则、是否频繁操作、是否及时付款或提供商品等指标。以上各项指标可以根据实际数据交易平台进行动态设置,指标权重可以根据主观赋权法、客观赋权法或主观赋权法与客观赋权法的结合来确定。其中,主观赋权法包括专家咨询法、层次分析法、指数加权法和功效系数法等,客观赋权法包括熵值法、主成分分析法、变异系数法、神经网络分析法和灰色关联分析法等。
如图3所示,对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分的具体过程为:
S311、根据交易数据价值的各项指标及其权重计算得到当前交易达成后的交易数据积分Tdi,根据交易行为的各项指标及其权重计算得到当前交易达成后的交易行为积分Tbi。其中,交易数据积分Tdi和交易行为积分Tbi均可以为负值。
具体地,针对数据价值评价指标体系和国内外文献无形资产定价方法,比较分析收益现值法、市场价值法、重置成本法、Black-Scholes期权定价模型和EVA方法的原理和适用范围,同时基于数据资产特殊性的基础之上建立基于数据访问频率的Cache替换迁移算法、基于信息生命周期的数据价值评估法;应用统计建模、数据挖掘、博弈论、人工智能等方法对数据资产建立数据价值评估模型,利用编程语言等进行评价指标计算和模型求解;检验模型显著性和参数显著性、比较验证模型;确定最优价值评估模型方法并给出交易数据积分Tdi。
具体地,针对电子商务平台交易风控系统和证券交易行为分析方法,比较主观赋权法和客观赋权法的原理与适用范围,并将二者相结合;应用统计建模、数据挖掘、博弈论、人工智能等方法对交易行为建立交易行为评估模型;利用编程语言等进行评价指标计算和模型求解;检验模型显著性和参数显著性、比较验证模型;确定最优价值评估模型方法并给出交易行为积分Tbi。
S312、分别对交易数据积分Tdi和交易行为积分Tbi进行归一化处理,得到交易数据积分归一化值Tdi′和交易行为积分归一化值Tbi′,其中,Tdi′∈(0,1),Tbi′∈(0,1)。
S313、利用以下公式计算当前交易达成后的用户积分:
Ti=ωTbi′P+(1-ω)Tdi′
式中,Ti表示第i次交易达成后得到的用户积分,即当前交易达成后得到的用户积分;P表示惩罚强度;ω表示交易行为积分在最终所得用户积分中所占比重,ω∈(0,1)。ω可以设置为常量,也可以动态设置为变量。例如,可以根据以下公式动态设置ω:
式中,ω随着交易行为积分归一化值Tbi′的减少而增加。当用户交易行为不规范或存在欺诈行为时,增加所得用户积分中交易行为积分的权重,同时减少交易数据积分的权重。当用户进行规范交易时,减少交易行为积分的权重,同时增加交易数据积分的权重,用户积分主要由交易数据的质量决定。
惩罚强度P为:
从上式可以看出,惩罚强度P只有在交易行为积分归一化值Tbi′为负值,即用户交易行为不规范时才发挥作用。λ为根据交易平台情况所设置的常数参量。例如,令λ=10,则表示用户进行欺诈交易行为时,会受到正常交易下十倍的惩罚。
S314、根据当前交易达成后的用户积分和初始积分计算得到用户总积分:
式中,I表示用户在完成交易平台注册、阅读并同意交易平台的交易规则、实名制认证等后交易平台给予的初始积分,i∈[1,j],j表示交易次数。
上述步骤S3中,由于每次交易达成后交易双方的用户积分都会发生变动,因此根据用户积分对主节点进行动态授权,能够保证活跃度和信任度较高的用户能够成为主节点。如图4所示,根据用户积分对主节点进行动态授权的具体过程为:
S321、将所有记账节点以及原主节点为主节点的属性设置为假。
S322、根据更新后的用户积分对记账节点以及原主节点进行排序。
S323、根据排名从高到低授权预设数量的记账节点参与竞争主节点。
S324、授权的记账节点等待网络稳定后向其他未授权记账节点发送竞争消息。其中,如果预设时间内联盟链网络中的节点没有变动,则表示网络稳定。
S325、非授权记账节点在预设时间内收集各竞争消息,并从各竞争消息中选择用户积分最高的授权记账节点,将该授权记账节点记为新的主节点,并向新的主节点反馈竞争结果。
S326、新的主节点接收竞争结果,并将为主节点的属性设置为真。
S327、新的主节点向其他记账节点或原主节点广播声明消息,声明消息用于声明自己为新的主节点。
S328、其他授权记账节点接收声明消息后放弃竞争主节点。当经过预设时间周期交易双方的用户积分再次发生变化时,返回步骤S321,重新对主节点进行动态授权。
如图5所示,本申请实施例还提供了一种基于交易评估的联盟链共识系统,其包括:
交易提案生成模块1,利用应用程序生成交易提案,并将交易提案发送给背书节点;还用于将包含背书签名和模拟执行结果的交易以及用户积分发送给区块生成模块4。
模拟执行模块2,利用背书节点接收交易提案,并模拟执行交易提案,得到模拟执行结果;还用于将用户积分和模拟执行结果反馈给交易提案生成模块1。
交易评估模块3,用于对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分,并根据用户积分对主节点进行动态授权;还用于将用户积分返回至模拟执行模块2。
区块生成模块4,用于对接收到的交易进行排序后生成区块,同时将用户积分记录在区块中,并将区块广播给主节点。
同步模块5,用于将主节点接收到的区块同步给记账节点。
验证保存模块6,用于对主节点接收到的区块进行验证后保存到主节点的本地账本中,还用于对记账节点同步到的区块进行验证后保存到记账节点的本地账本。
需要说明的是:上述实施例提供的共识系统仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将共识系统的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的共识系统与共识方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请通过设置交易评估模块3,交易评估模块3对交易双方的每次交易进行评分,各评分累加后得到用户积分,用户积分能够体现数据购买方的购买能力、数据提供方的数据质量以及交易双方的活跃度与信誉度。高质量的交易会增加交易双方的用户积分,低质量的交易会减少交易双方的用户积分,因此本申请共识系统能够在一定程度上提高交易质量,能够更安全、可信、快速地达成基于联盟链的数据交易平台中各方数据交易信息的分布式一致性。
基于上述共识系统中各模块的硬件实现,为了实现本申请实施例提供的共识方法,本申请实施例还提供了一种基于交易评估的联盟链共识装置,其包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器。其中所述处理器用于运行所述计算机程序时,执行如下步骤:
应用程序生成交易提案,并将交易提案发送给背书节点。
背书节点接收交易提案,并模拟执行交易提案,得到模拟执行结果。
对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分,并根据用户积分对主节点进行动态授权;将用户积分返回至背书节点。其中,当前交易中的用户可以为数据提供方,也可以为数据购买方。
背书节点将用户积分和模拟执行结果反馈给应用程序。
应用程序将包含背书签名和模拟执行结果的交易以及用户积分发送给排序服务节点。
排序服务节点对接收到的交易进行排序后生成区块,同时将用户积分记录在区块中,并将区块广播给主节点。具体地,排序服务节点对交易进行排序时可以按照交易的接收顺序对交易进行排序。
主节点接收区块并将接收到的区块同步给记账节点。
主节点对接收到的区块进行验证后保存到主节点的本地账本中,记账节点对同步到的区块进行验证后保存到记账节点的本地账本中。
在示例性实施例中,本申请实施例还提供了一种计算机存储介质,是计算机可读存储介质,例如,包括计算机程序的存储器,上述计算机程序可由共识系统中的处理器执行,以完成前述共识方法中的所述步骤。计算机可读存储介质可以是磁性随机存取存储器(FRAM,ferromagnetic random access memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、快闪存储器(FlashMemory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-OnlyMemory)等存储器。
以上所述仅为本申请示意性的具体实施方式,在不脱离本申请的构思和原则的前提下,任何本领域的技术人员所做出的等同变化与修改,均应属于本申请保护的范围。
Claims (8)
1.一种基于交易评估的联盟链共识方法,其特征在于,包括以下步骤:
在联盟链网络中设置交易评估模块;
应用程序生成交易提案,并将交易提案发送给背书节点;
背书节点接收交易提案,并模拟执行交易提案,得到模拟执行结果;
交易评估模块对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分,并根据用户积分对主节点进行动态授权;将用户积分返回至背书节点;
背书节点将用户积分和模拟执行结果反馈给应用程序;
应用程序将包含背书签名和模拟执行结果的交易以及用户积分发送给排序服务节点;
排序服务节点对接收到的交易进行排序后生成区块,同时将用户积分记录在区块中,并将区块广播给主节点;
主节点接收区块并将接收到的区块同步给记账节点;
主节点对接收到的区块进行验证后保存到主节点的本地账本中,记账节点对同步到的区块进行验证后保存到记账节点的本地账本中;
所述根据用户积分对主节点进行动态授权的具体过程为:
将所有记账节点以及原主节点为主节点的属性设置为假;
根据更新后的用户积分对记账节点以及原主节点进行排序;
根据排名从高到低授权预设数量的记账节点参与竞争主节点;
授权的记账节点等待网络稳定后向其他未授权记账节点发送竞争消息;其中,如果预设时间内联盟链网络中的节点没有变动,则表示网络稳定;
非授权记账节点在预设时间内收集各竞争消息,并从各竞争消息中选择用户积分最高的授权记账节点,将该授权记账节点记为新的主节点,并向新的主节点反馈竞争结果;
新的主节点接收竞争结果,并将为主节点的属性设置为真;
新的主节点向其他记账节点或原主节点广播声明消息,声明消息用于声明自己为新的主节点;
其他授权记账节点接收声明消息后放弃竞争主节点。
2.根据权利要求1所述的基于交易评估的联盟链共识方法,其特征在于,所述交易数据价值包括:数据样本量、数据品种、数据完整性、数据时间跨度、数据实时性、数据样本覆盖性、数据深度、数据稀缺性和数据获取难易度指标;所述交易行为包括是否遵守交易规则、是否频繁操作、是否及时付款或提供商品指标。
3.根据权利要求2所述的基于交易评估的联盟链共识方法,其特征在于,所述对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分的具体过程为:
根据交易数据价值的各项指标及其权重计算得到当前交易达成后的交易数据积分,根据交易行为的各项指标及其权重计算得到当前交易达成后的交易行为积分;
分别对交易数据积分和交易行为积分进行归一化处理,得到交易数据积分归一化值和交易行为积分归一化值;
利用以下公式计算当前交易达成后的用户积分:
Ti=ωTbi′P+(1-ω)Tdi′
式中,Ti表示第i次交易达成后得到的用户积分;P表示惩罚强度;ω表示交易行为积分在最终所得用户积分中所占比重,ω∈(0,1);Tdi′表示交易数据积分归一化值;Tbi′表示交易行为积分归一化值;
根据当前交易达成后的用户积分和初始积分计算得到用户总积分:
式中,I表示用户在完成交易平台注册、阅读并同意交易平台的交易规则、实名制认证后交易平台给予的初始积分,i∈[1,j],j表示交易次数。
4.根据权利要求3所述的基于交易评估的联盟链共识方法,其特征在于,所述交易行为积分在最终所得用户积分中所占比重ω根据以下公式动态设置:
式中,ω随着交易行为积分归一化值Tbi′的减少而增加。
5.根据权利要求3所述的基于交易评估的联盟链共识方法,其特征在于,所述惩罚强度P为:
式中,λ表示根据交易平台情况所设置的常数参量。
6.一种基于交易评估的联盟链共识系统,其特征在于,包括:
交易提案生成模块,利用应用程序生成交易提案,并将交易提案发送给背书节点;还用于将包含背书签名和模拟执行结果的交易以及用户积分发送给区块生成模块;
模拟执行模块,利用背书节点接收交易提案,并模拟执行交易提案,得到模拟执行结果;还用于将用户积分和模拟执行结果反馈给交易提案生成模块;
交易评估模块,用于对当前交易中用户的交易数据价值和交易行为进行综合评分,得到用户积分,并根据用户积分对主节点进行动态授权;还用于将用户积分返回至模拟执行模块;
区块生成模块,用于对接收到的交易进行排序后生成区块,同时将用户积分记录在区块中,并将区块广播给主节点;
同步模块,用于将主节点接收到的区块同步给记账节点;
验证保存模块,用于对主节点接收到的区块进行验证后保存到主节点的本地账本中,还用于对记账节点同步到的区块进行验证后保存到记账节点的本地账本;
所述交易评估模块根据用户积分对主节点进行动态授权时被配置为:
将所有记账节点以及原主节点为主节点的属性设置为假;
根据更新后的用户积分对记账节点以及原主节点进行排序;
根据排名从高到低授权预设数量的记账节点参与竞争主节点;
授权的记账节点等待网络稳定后向其他未授权记账节点发送竞争消息;其中,如果预设时间内联盟链网络中的节点没有变动,则表示网络稳定;
非授权记账节点在预设时间内收集各竞争消息,并从各竞争消息中选择用户积分最高的授权记账节点,将该授权记账节点记为新的主节点,并向新的主节点反馈竞争结果;
新的主节点接收竞争结果,并将为主节点的属性设置为真;
新的主节点向其他记账节点或原主节点广播声明消息,声明消息用于声明自己为新的主节点;
其他授权记账节点接收声明消息后放弃竞争主节点。
7.一种基于交易评估的联盟链共识装置,其特征在于,包括:处理器和存储器,所述存储器用于存储能够在所述处理器上运行的计算机程序,所述处理器用于运行所述计算机程序时,执行权利要求1至5任一项所述方法的步骤。
8.一种计算机存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811202390.5A CN109472596B (zh) | 2018-10-16 | 2018-10-16 | 基于交易评估的联盟链共识方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811202390.5A CN109472596B (zh) | 2018-10-16 | 2018-10-16 | 基于交易评估的联盟链共识方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109472596A CN109472596A (zh) | 2019-03-15 |
CN109472596B true CN109472596B (zh) | 2019-11-22 |
Family
ID=65665077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811202390.5A Expired - Fee Related CN109472596B (zh) | 2018-10-16 | 2018-10-16 | 基于交易评估的联盟链共识方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109472596B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111817852A (zh) * | 2019-04-10 | 2020-10-23 | 上海旺链信息科技有限公司 | 一种联盟链系统管理方法和装置 |
CN110097458A (zh) * | 2019-04-11 | 2019-08-06 | 贝克链区块链技术有限公司 | 一种基于区块链技术的量化信誉体系 |
CN110287254B (zh) * | 2019-05-08 | 2021-08-20 | 杭州圣吉奥软件有限公司 | 一种基于联盟链的数据交易方法、装置及计算机设备 |
CN110222536A (zh) * | 2019-05-25 | 2019-09-10 | 上海源庐加佳信息科技有限公司 | 一种基于分布式记账的仓单数据存储方法 |
CN110189176A (zh) * | 2019-05-29 | 2019-08-30 | 中国联合网络通信集团有限公司 | 基于联盟链的积分管理机构、方法及系统 |
CN110309657A (zh) * | 2019-06-20 | 2019-10-08 | 四川大学 | 区块链的安全风险评估方法 |
CN110490700A (zh) * | 2019-08-08 | 2019-11-22 | 上海源庐加佳信息科技有限公司 | 一种基于区块链智能合约的大宗商品现货交易系统 |
CN110442591B (zh) * | 2019-08-12 | 2021-08-24 | 中国银行股份有限公司 | 一种联盟链的全局时钟系统及方法 |
CN112417030A (zh) * | 2019-08-20 | 2021-02-26 | 中国电信股份有限公司 | 智能合约实现方法和装置、区块链系统和存储介质 |
CN110766551B (zh) * | 2019-09-10 | 2022-04-01 | 中国科学院信息工程研究所 | 一种基于改进Kafka共识机制的联盟链及交易方法 |
CN112953747B (zh) * | 2019-12-10 | 2023-02-10 | 深圳先进技术研究院 | 一种联盟链的性能分析方法、系统及终端设备 |
US11308552B1 (en) | 2019-12-20 | 2022-04-19 | Wells Fargo Bank, N.A. | Device-to-device microlending within a distributed system |
US11734656B1 (en) | 2019-12-20 | 2023-08-22 | Wells Fargo Bank N.A. | Distributed device rating system |
US11138657B1 (en) | 2019-12-20 | 2021-10-05 | Wells Fargo Bank, N.A. | Device-to-device microlending within a distributed system |
CN112685765A (zh) * | 2020-03-25 | 2021-04-20 | 华控清交信息科技(北京)有限公司 | 一种数据质量评估方法、装置和用于数据质量评估的装置 |
CN112200575B (zh) * | 2020-05-28 | 2022-05-31 | 支付宝(杭州)信息技术有限公司 | 在联盟链网络中创建节点组、基于节点组的交易方法 |
CN111901293B (zh) * | 2020-06-08 | 2021-08-27 | 北京邮电大学 | 面向联盟链的资源恶意竞争避免方法 |
US11250446B2 (en) | 2020-06-12 | 2022-02-15 | Wells Fargo Bank, N.A. | Customized device rating system using device performance information |
CN112508661A (zh) * | 2020-12-17 | 2021-03-16 | 北京金山云网络技术有限公司 | 记账权的确定方法、装置和线上竞拍系统 |
CN113242131B (zh) * | 2021-04-22 | 2023-10-24 | 卓尔智联(武汉)研究院有限公司 | 区块链跨链方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107369008A (zh) * | 2017-07-17 | 2017-11-21 | 北京京东金融科技控股有限公司 | 用于提高票据交易安全性的管理方法、装置及系统 |
CN107464118A (zh) * | 2017-08-16 | 2017-12-12 | 济南浪潮高新科技投资发展有限公司 | 一种基于区块链智能合约的数据交易方法 |
CN108335128A (zh) * | 2017-12-12 | 2018-07-27 | 北京瑞卓喜投科技发展有限公司 | 基于积分处理系统的区块链数据处理方法及装置 |
-
2018
- 2018-10-16 CN CN201811202390.5A patent/CN109472596B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107369008A (zh) * | 2017-07-17 | 2017-11-21 | 北京京东金融科技控股有限公司 | 用于提高票据交易安全性的管理方法、装置及系统 |
CN107464118A (zh) * | 2017-08-16 | 2017-12-12 | 济南浪潮高新科技投资发展有限公司 | 一种基于区块链智能合约的数据交易方法 |
CN108335128A (zh) * | 2017-12-12 | 2018-07-27 | 北京瑞卓喜投科技发展有限公司 | 基于积分处理系统的区块链数据处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
区块链共识机制综述;杨宇光等;《信息安全研究》;20180430(第4期);369-379 * |
Also Published As
Publication number | Publication date |
---|---|
CN109472596A (zh) | 2019-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109472596B (zh) | 基于交易评估的联盟链共识方法及系统 | |
Chai et al. | Proof-of-reputation based-consortium blockchain for trust resource sharing in internet of vehicles | |
CN110535836B (zh) | 一种基于角色分类的信任区块链共识方法 | |
CN112633780B (zh) | 基于气候链处理碳资源的方法、相关装置及存储介质 | |
CN108734565A (zh) | 一种征信分实时调整处理方法、装置及处理服务器 | |
CN110222536A (zh) | 一种基于分布式记账的仓单数据存储方法 | |
CN101257386A (zh) | 基于信任模型的动态访问控制方法 | |
WO2019242285A1 (zh) | 基于区块链的权益资产价值代币的创建、交易方法及系统 | |
Bugday et al. | Creating consensus group using online learning based reputation in blockchain networks | |
CN114663091B (zh) | 基于多链式区块链架构的电力交易方法 | |
CN109684519B (zh) | 一种基于区块链的去中心化芯片研发交易数据存储方法及系统 | |
CN114048515B (zh) | 一种基于联邦学习和区块链的医疗大数据共享方法 | |
Zhang et al. | Social health insurance vs private health insurance in China: Revisit crowd‐out effect based on a multiple mediation analysis | |
CN111582864A (zh) | 一种区块链数据量证明共识协议 | |
Wei et al. | Impacts of consensus protocols and trade network topologies on blockchain system performance | |
CN112598132A (zh) | 模型训练方法及装置、存储介质、电子装置 | |
US20240048383A1 (en) | Decentralized system and method for mitigation of climate change | |
CN110910158A (zh) | 联邦学习收入分配方法和系统 | |
Swanson | Watermarked tokens and pseudonymity on public blockchains | |
CN108985909A (zh) | 基于区块链技术的数据交易方法及系统 | |
CN114757490A (zh) | 基于区块链的防共谋的微电网能源交易定价及评估系统 | |
Qi et al. | A hybrid incentive mechanism for decentralized federated learning | |
Xie et al. | Double auction mechanisms in edge computing resource allocation for blockchain networks | |
Alkhodair et al. | Consensus Algorithms of Distributed Ledger Technology--A Comprehensive Analysis | |
Zhang et al. | Medicare Fraud Gang Discovery Based on Community Discovery Algorithms |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20191122 Termination date: 20201016 |
|
CF01 | Termination of patent right due to non-payment of annual fee |