CN113037497A - 一种基于区块链的风险数据共享方法及系统 - Google Patents

一种基于区块链的风险数据共享方法及系统 Download PDF

Info

Publication number
CN113037497A
CN113037497A CN202110275304.9A CN202110275304A CN113037497A CN 113037497 A CN113037497 A CN 113037497A CN 202110275304 A CN202110275304 A CN 202110275304A CN 113037497 A CN113037497 A CN 113037497A
Authority
CN
China
Prior art keywords
node
node cluster
dump
cluster
data
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
CN202110275304.9A
Other languages
English (en)
Other versions
CN113037497B (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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110275304.9A priority Critical patent/CN113037497B/zh
Publication of CN113037497A publication Critical patent/CN113037497A/zh
Application granted granted Critical
Publication of CN113037497B publication Critical patent/CN113037497B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/03Credit; Loans; Processing thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请提供的一种基于区块链的风险数据共享方法及系统,可用于金融领域或其他领域,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;用户节点集群在获取风险数据时,先在自身链下通道内查询是否存在风险数据,若自身链下通道内未存储风险数据,则在其他链下通道内查询是否存在风险数据,在所有存储风险数据的转储节点集群中选取最优节点集群获取风险数据,最优节点以及最优转储节点集群会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能。

Description

一种基于区块链的风险数据共享方法及系统
技术领域
本申请涉及金融领域,具体涉及一种基于区块链的风险数据共享方法及系统。
背景技术
当今社会,金融业务蓬勃发展。信贷业务尤其是小额信贷产品势头大盛,金融产品本身就充满风险,频繁出现的借贷平台倒闭事件喻示了一个事实:各类放贷机构风险管理不当,征信信息不充足。以银行为例,目前银行放贷的风险管理主要由以下成分构成:
1、征信信息提供系统
2、反欺诈系统
3、业务部门的用户画像系统
4、担保系统
在这些支撑系统中,一般的,小额信贷业务并不存在担保,风险管理是否合理有效的保障来自征信系统提供的征信信息和用户评级。传统征信行业的困境在于:1、企业自身无法收集到足够的征信数据,本身拥有的数据不足以构建风险判断模型;2、第三方数据昂贵且时效性、真实性得不到保证,特别是对于小型公司而言获取数据成本较高;3、采集数据时用户隐私容易受到侵犯,监管部门很难及时发现侵权行为,管理措施有所滞后。从维护金融社会整体稳定性而言,征信数据作为风险管理的重要组成成分,不应当作为制约企业发展的竞争手段,提供真实可信的共享数据百利无害。
从上述问题出发,使用区块链技术可以确保征信数据的安全性。区块链是一种分布式存储技术,目的是为解决网络中多方交易时的信任问题,其效果可以实现在不依赖中心化权威节点的条件下建立可信的交易集群。
去中心化、安全可信是区块链技术的特性,但由于传统的共识机制(以比特币系统的共识机制Pow,proof of work为例)通常需要使整个系统全部达到共识,一轮共识操作的耗时将导致区块链交易系统性能严重不足(以比特币系统为代表,据估算,全网完成一轮共识的时间为10分钟),无法达到传统集中式存储系统的性能,更远远达不到商用分布式存储解决方案的性能要求,这使得区块链技术发展受到极大的限制。
为了解决上述性能瓶颈,目前主流提升区块链处理能力的途径是区块链扩容。有两类代表性的解决思路。一种是链上扩容(Layer1),这种思路主要是通过修改区块链的自身特性来提高系统性能,例如修改区块链的共识机制(以拜占庭容错(BFT)及其变种算法代替Pow)、扩大区块容量等,这类改造方案具有原生的性能天花板,且由于任何修改依然需要广播共识,维护和升级困难;另一种是链下扩容(Layer2),链下扩容的思路并不改变区块链系统的自身机制,而是把耗时操作放到链下进行,只有需要产生共识的时候才与区块链进行信息交互,减少交互次数,使需要高时效的事务与长耗时的共识操作隔离,代表的实现方案有闪电网络等。闪电网络通过锁定智能合约,打开链下交易通道,使通道内的两个用户可以在通道内直接进行交易,提高对应交易的响应时效。但是,首先,闪电网络需要本地存储交易中间状态,会提高用户的存储负担;其次,闪电网络仅打开两个用户间的交易通道,当有多个用户需要与多个其他用户进行高频交易时,会导致整个系统的拓扑结构过于复杂。
发明内容
针对现有技术中的问题,本申请提供一种基于区块链的风险数据共享方法及系统,将数据交换操作与共识操作隔离,使用链下扩容思路,扩展智能合约,达到更好的访问性能。
为解决上述技术问题,本申请提供以下技术方案:
第一方面,本申请提供一种基于区块链的风险数据共享方法,所述区块链包括上送节点集群以及转储节点集群,由上送节点集群执行,所述风险数据共享方法包括:
确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点;
将所述风险数据转储至所有最优待转储节点中。
进一步地,所述风险数据共享方法还包括:基于自身节点集群的编号确定多个链下通道。
进一步地,所述确定一最优待转储节点,包括:
根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第一速率变量;
根据上送节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第一流量变量;
根据所述每个节点的第一速率变量以及所述每个节点的第一流量变量,确定所述最优待转储节点。
进一步地,所述根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第一速率变量,包括:
根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到上送节点集群中所有节点完成数据传输所需的传输时长总和;
根据所述上送节点集群中任意节点传输预设数据所需要的传输时长和所有节点完成数据传输所需的传输时长总和的比例,得到上送节点集群中每个节点的第一速率变量。
进一步地,所述数据流量包括:当上送节点集群中任意节点向其他节点传输的预设数据达到一设定条件时得到的第一传输流量值,以及当上送节点集群中任意节点向其他节点传输的预设数据未达到一设定条件时得到的第二传输流量值;所述根据上送节点集群中的任意节点向其他节点传输预设数据的数据流量,得到每个节点的第一流量变量,包括:
计算上送节点集群中每个节点传输预设数据的传输流量值总和;
根据上送节点集群中每个节点的传输流量值总和与上送节点集群中节点的数量的比值,得到上送节点集群中每个节点的第一流量变量。
进一步地,所述基于自身节点集群的编号确定多个链下通道,包括:
根据第一转储节点集群组中每个第一转储节点集群的编号,以及上送节点集群的编号,结合第一哈希函数,生成每个第一转储节点集群的第一哈希值;
根据第二转储节点集群组中每个第二转储节点集群的编号,以及上送节点集群的编号,结合第二哈希函数,生成每个第二转储节点集群的第二哈希值;
根据所述上送节点集群的唯一身份标识码,结合第三哈希函数,生成第三哈希值;
根据每个第一转储节点集群的第一哈希值、每个第二转储节点集群的第二哈希值以及第三哈希值,确定上送节点集群的多个链下通道。
进一步地,所述第一哈希函数、所述第二哈希函数以及所述第三哈希函数中的任意两个相同或不同。
第二方面,本申请提供一种基于区块链的风险数据共享方法,所述区块链包括上送节点集群以及转储节点集群,由转储节点集群执行,所述风险数据共享方法包括:
确定一最优待转储节点,其中,所述转储节点集群对应包括在至少一个链下通道内,每个链下通道还包括上送节点集群,每个链下通道内的上送节点集群确定一最优待转储节点;
将所述上送节点集群发送的风险数据存储至所有最优待转储节点中。
进一步地,所述确定一最优待转储节点,包括:
根据转储节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第二速率变量;
根据转储节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第二流量变量;
根据所述每个节点的第二速率变量以及所述每个节点的第二流量变量,确定所述最优待转储节点。
进一步地,所述根据转储节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第二速率变量,包括:
根据转储节点集群中任意节点传输预设数据所需要的传输时长,得到转储节点集群中所有节点完成数据传输所需的传输时长总和;
根据转储节点集群中任意节点传输预设数据所需要的传输时长和转储节点集群中所有节点完成数据传输所需的传输时长总和的比值,得到转储节点集群中每个节点的第二速率变量。
进一步地,所述数据流量包括:当转储节点集群中任意节点向其他节点传输的预设数据达到一设定条件时得到的第三传输流量值,以及当转储节点集群中任意节点向其他节点传输的预设数据未达到一设定条件时得到的第四传输流量值;所述根据转储节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第二流量变量,包括:
计算转储节点集群中每个节点传输预设数据的传输流量值总和;
根据转储节点集群中每个节点的传输流量值总和与转储节点集群中节点的数量的比值,得到转储节点集群中每个节点的第二流量变量。
第三方面,本申请提供一种基于区块链的风险数据共享方法,所述区块链包括转储节点集群以及用户节点集群,由用户节点集群执行,所述风险数据共享方法包括:
根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
根据至少一个发送风险数据确认信息的第一转储节点集群,确定一最优转储节点集群;
获取所述最优转储节点集群内的风险数据。
进一步地,所述风险数据共享方法还包括:
若未收到所有自身链下通道内的转储节点集群发送的风险数据确认信息,则向其他链下通道内的第二转储节点集群发送风险数据查询请求,其中,所述第二转储节点集群对应包括至少一个其他链下通道,至少一个存储风险数据的第二转储节点集群向用户节点集群发送风险数据确认信息;
根据至少一个发送风险数据确认信息的第二转储节点集群,确定一最优转储节点集群;
获取所述最优转储节点集群内的风险数据。
进一步地,所述确定一最优转储节点集群,包括:
根据任意转储节点集群向其他转储节点集群传输预设数据所需要的传输时长,得到每个转储节点集群的第三速率变量;
根据任意转储节点集群向其他转储节点集群传输预设数据的数据流量,得到每个转储节点集群的第三流量变量;
根据所述每个转储节点集群的第三速率变量以及所述每个转储节点集群的第三流量变量,确定所述最优转储节点集群。
进一步地,所述根据任意转储节点集群向其他转储节点集群传输预设数据所需要的传输时长,得到每个转储节点集群的第三速率变量,包括:
根据每个转储节点集群传输预设数据所需要的传输时长,得到所有转储节点集群完成数据传输所需的传输时长总和;
根据每个转储节点集群传输预设数据所需要的传输时长和所有转储节点集群完成数据传输所需的传输时长总和的比值,得到每个转储节点集群的第三速率变量。
进一步地,所述数据流量包括:当任意转储节点集群向其他转储节点集群传输的预设数据达到一设定条件时得到的第五传输流量值,以及当任意转储节点集群向转储节点集群传输的预设数据未达到一设定条件时得到的第六传输流量值;所述根据任意转储节点集群向其他转储节点集群传输预设数据的数据流量,得到每个转储节点集群的第三流量变量,包括:
计算每个转储节点集群传输预设数据的传输流量值总和;
根据每个转储节点集群的传输流量值总和以及所有转储节点集群的数量的比值,得到每个转储节点集群的第三流量变量。
第四方面,本申请提供一种上送节点集群,所述上送节点集群包括:
第一优选模块:确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点;
第一转储模块:将风险数据转储所有最优待转储节点中。
第五方面,本申请提供一种转储节点集群,所述转储节点集群包括:
第二优选模块:确定一最优待转储节点,其中,所述转储节点集群对应包括在至少一个链下通道内,每个链下通道还包括上送节点集群,每个链下通道内的上送节点集群确定一最优待转储节点;
第二转储模块:将所述上送节点集群发送的风险数据存储至所有最优待转储节点中。
第六方面,本申请提供一种用户节点集群,所述用户节点集群包括:
通道计算模块:根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
第一数据查询模块:向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
第二查询模块:若未收到所有自身链下通道内的转储节点集群发送的风险数据确认信息,则向其他链下通道内的第二转储节点集群发送风险数据查询请求,其中,所述第二转储节点集群对应包括至少一个其他链下通道,至少一个存储风险数据的第二转储节点集群向用户节点集群发送风险数据确认信息;
第三优选模块:根据至少一个发送风险数据确认信息的转储节点集群,确定一最优转储节点集群;
数据获取模块:获取所述最优转储节点集群中的风险数据。
第七方面,一种基于区块链的风险数据共享系统,所述区块链包括上送节点集群、转储节点集群以及用户节点集群,所述风险数据共享系统包括:
上送节点集群:所述上送节点集群确定自身集群内的最优待转储节点,将风险数据发送至转储节点集群,并将风险数据存储至自身集群内的最优待转储节点中;
转储节点集群:所述转储节点集群确定自身集群内的最优待转储节点,接收所述上送节点集群发送的风险数据,将所述风险数据存储至自身集群内的最优待转储节点中;
用户节点集群:所述用户节点集群确定自身链下通道以及其他链下通道内的转储节点集群是否存储风险数据,根据至少一个存储风险数据的转储节点集群确定最优转储节点集群,获取所述最优转储节点集群中的风险数据。
第八方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的风险数据共享方法。
第九方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的风险数据共享方法。
由上述技术方案可知,本申请提供的一种基于区块链的风险数据共享方法及系统,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;用户节点集群在获取风险数据时,先在自身链下通道内查询是否存在风险数据,若存在风险数据则直接在自身链下通道内选取最优转储节点集群获取风险数据,若自身链下通道内未存储风险数据,则在其他链下通道内查询是否存在风险数据,在其他链下通道内选取最优转储节点集群获取风险数据,最优节点以及最优转储节点集群会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能,为企业和监管机构解决征信难、征信贵的问题提供帮助。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例中的风险数据共享方法中上送节点集群执行内容的流程示意图。
图2是本申请实施例中的风险数据共享方法中步骤101的流程示意图。
图3是本申请实施例中的风险数据共享方法中步骤010至步骤011的流程示意图。
图4是本申请实施例中的风险数据共享方法中步骤100的流程示意图。
图5是本申请实施例中风险数据共享方法中转储节点集群执行内容的流程示意图。
图6是本申请实施例中风险数据共享方法中步骤200的流程示意图。
图7是本申请实施例中的风险数据共享方法中步骤020至步骤021的流程示意图。
图8是本申请实施例中风险数据共享方法的一种实施例示意图。
图9是本申请实施例中风险数据共享方法中上送节点集群提交数据的流程示意图。
图10是本申请实施例中风险数据共享方法的数据转储的流程示意图。
图11是本申请实施例中风险数据共享方法中用户节点集群执行内容的一种流程示意图。
图12是本申请实施例中风险数据共享方法中用户节点集群执行内容的一种流程示意图。
图13是本申请实施例中风险数据共享方法的步骤302至步骤305的流程示意图。
图14是本申请实施例中风险数据共享方法的步骤030至步骤031的流程示意图。
图15是本申请实施例中风险数据共享方法的一种实施例示意图。
图16是本申请实施例中风险数据共享方法的用户节点集群申请数据查询的流程示意图。
图17是本申请实施例中风险数据共享方法的用户节点集群数据获取的流程示意图。
图18是本申请应用实施例中上送节点集群的结构示意图。
图19是本申请应用实施例中转储节点集群的结构示意图。
图20是本申请应用实施例中用户节点集群的结构示意图。
图21是本申请应用实施例中风险数据共享系统的结构示意图。
图22是本申请应用实施例中风险数据共享的系统主要的流程示意图。
图23是本申请应用实施例中风险数据共享中仲裁准入的流程示意图。
图24是本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请公开的一种基于区块链的风险数据共享方法及系统可用于金融领域,也可用于除金融领域之外的任意领域,本申请公开的一种基于区块链的风险数据共享方法及系统的应用领域不做限定。
考虑到现有的区块链技术采用闪电网络进行链下扩容,而闪电网络首先需要本地存储交易中间状态,会提高用户的存储负担;其次,仅打开两个用户间的交易通道,当有多个用户需要与多个其他用户进行高频交易时,会导致整个系统的拓扑结构过于复杂。
基于上述内容,本申请还提供一种用于实现本申请一个或多个实施例中提供的风险数据共享方法的风险数据共享系统,该风险数据共享系统可以与客户端设备之间通信连接,所述客户终端设备可以设有多个,风险数据共享系统具体可以通过多个设定节点集群访问所述客户终端设备,所述设定节点集群包括多个设定节点。
其中,所述风险数据共享系统中的任意设定节点集群可以自客户终端设备收集用户的自身风险数据,并对用户的自身风险数据的摘要以及自身唯一用户标识码进行加密,获取用户风险数据的设定节点集群可以将加密后的用户自身风险数据发送给风险数据共享系统中的其他与之匹配的设定节点集群,对用户风险数据进行转储,存储风险数据的设点节点集群可以将加密后的风险数据发送至数据消费者,以使放贷机构获得申请放贷额度的用户的风险数据。
可以理解的是,所述客户端设备可以包括智能手机、平板电子设备、便携式计算机、台式电脑、个人数字助理(PDA)、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
上述的客户端设备具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。例如,通信单元可以将用户风险数据发送至风险数据共享系统中的其中一个设定节点集群,以便风险数据共享系统对用户风险数据进行转储。通信单元还可以接收风险数据共享系统中的其中一个设定节点集群发送的用户风险数据。所述设定节点集群是由多个服务器组成的服务器集群。
上述服务器与所述客户端设备之间可以使用任何合适的网络协议进行通信,包括在本申请提交日尚未开发出的网络协议。所述网络协议例如可以包括TCP/IP协议、UDP/IP协议、HTTP协议、HTTPS协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的RPC协议(Remote Procedure Call Protocol,远程过程调用协议)、REST协议(Representational State Transfer,表述性状态转移协议)等。
本申请提供的基于区块链的风险数据共享方法、电子设备、计算机可读存储介质以及风险数据共享系统,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;用户节点集群从多个转储节点集群中选取最有转储节点集群在获取风险数据,最优节点以及最优转储节点集群会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能,为企业和监管机构解决征信难、征信贵的问题提供帮助。
具体通过下述多个实施例及应用实例分别进行说明。
为了解决现有的区块链闪电网络无法满足多个用户进行高频交易,导致整个系统的拓扑结构过于复杂的问题,本申请提供一种基于区块链的风险数据共享方法的实施例,参见图1,所述风险数据共享方法具体包含有如下内容,由上送节点集群执行:
步骤101:确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点。
可以理解的是,多个设定节点构成一设定节点集群,每个设定节点集群既可以是风险数据的上送方,也可以是风险数据的存储方,同时也能是风险数据的使用方。在不同情况下,每个设定节点集群内的风险数据传输方向不同。
在步骤101之前,任意设定节点集群申请加入区块链,需要进行准入校验,如果仲裁系统校验通过,认为该设定节点集群具备收集和获取风险数据的资格,就为该设定节点集群生成唯一id和专属私钥,将唯一id和私钥并同系统公钥一同返回给申请设定节点集群;如果仲裁系统校验不通过,认为该设定节点集群不具备数据收集资格,则直接拒绝请求。当用户产生了自身的风险数据,一设定节点集群即上送节点集群将该风险数据收集,然后将自身唯一身份标识码和该条风险数据的摘要使用自身私钥加密后发送给审核节点。审核节点根据收集方上送的信息,使用系统预留的私钥,将上送节点集群的自身唯一身份标识码解密后判断是否为真实的上送节点集群信息,假设确认真实,审核节点接受该笔上送,将解密后的数据摘要以TX1交易的形式记录到区块链中,并返回成功给上送节点集群。
在步骤101中,区块链记账模块存在多个链下通道。每个节点集群进入系统后将会组成链下通道,定义链下通道的编号为双层结构,例如,记为0-0、0-1、……3-3。链下通道的数量只需要满足拜占庭算法的有效性即可,保证后续可以支持正常纠错,防止有坏节点篡改数据。在多个设定节点中选择一个最优待转储节点存储风险数据,该最优待转储节点会随时间动态变化,平衡节点的流量压力,保证设定集群性能。
步骤102:将所述风险数据转储至所有最优待转储节点中。
可以理解的是,上送节点集群将加密后的风险数据转储自身集群中的最优待转储节点中,同时将加密后的风险数据发送给自身多个链下通道,所有链下通道内的转储节点集群将加密后的风险数据存储在自身集群中的最优待转储节点中。转储完毕后,上送节点集群向审核节点提交共享的数据量,并发送一笔TX2形式交易记录到区块链中,表示该风险数据已经可以查询。
从上述描述可知,本申请实施例提供的风险数据共享方法,将风险数据存储在自身节点集群中的最优节点内,最优存储节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能。
为了进一步提高区块链的访问性能,在本申请提供的风险数据共享方法的一个实施例中,提供一种分配链下通道的优选方式,参见图1,在所述风险数据共享方法中的步骤101之前具体包含有如下内容:
步骤100:基于自身节点集群的编号确定多个链下通道。
可以理解的是,区块链记账模块存在多个链下通道。每个节点集群进入系统后将会组成链下通道,定义链下通道的编号为双层结构,例如,记为0-0、0-1、……3-3。根据上送节点集群自身通道X-Y,确定多个链下通道X-i和i-Y通道,链下通道的数量需要满足拜占庭算法的有效性,保证后续可以支持正常纠错,防止有坏节点篡改数据。例如i代表0-3,即上送节点集群的链下通道为X-0、X-1、X-2、X-3、0-Y、1-Y、2-Y、3-Y 8个通道。
从上述描述可知,本申请实施例提供的风险数据共享方法,采用通道匹配算法,能够在多个设定节点集群中匹配到与自身节点集群最合适的节点集群,形成通道,将风险数据存储在通道内,使得区块链能够达到更好的访问性能。
为了进一步提高链下通道的性能,在本申请提供的风险数据共享方法的一个实施例中,提供一种选取最优待转储节点的优选方式,参见图2,在所述风险数据共享方法中的步骤101具体包含有如下内容:
步骤010:根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第一速率变量。
步骤011:根据上送节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第一流量变量。
步骤012:根据所述每个节点的第一速率变量以及所述每个节点的第一流量变量,确定所述最优待转储节点。
可以理解的是,上送节点集群内部包括N个设定节点,每个设定节点可以临时加入或者推出,各设定节点之间地位均等,每个设定节点之间相互传输一定大小的相同数据,通过比较每个设定节点传输数据的时长和流量,得到最优设定节点即最优待转储节点。
从上述描述可知,本申请实施例提供的风险数据共享方法,通过比较每个设定节点的数据传输性能,得到最优待转储节点,该节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能。
为了进一步提高选取最有待转储节点的准确性,在本申请提供的风险数据共享方法的一个实施例中,提供一种自适应最优节点算法,参见图3,所述步骤010至011具体包含有如下内容:
步骤1001:根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到上送节点集群中所有节点完成数据传输所需的传输时长总和。
步骤1002:根据所述上送节点集群中任意节点传输预设数据所需要的传输时长和所有节点完成数据传输所需的传输时长总和的比例,得到上送节点集群中每个节点的第一速率变量。
步骤1003:计算转储节点集群中每个节点传输预设数据的传输流量值总和。
步骤1004:根据转储节点集群中每个节点的传输流量值总和与转储节点集群中节点的数量的比值,得到转储节点集群中每个节点的第二流量变量。
可以理解的是,数据流量包括:当转储节点集群中任意节点向其他节点传输的预设数据达到一设定条件时得到的第三传输流量值,以及当转储节点集群中任意节点向其他节点传输的预设数据未达到一设定条件时得到的第四传输流量值。上送节点集群内部有N个设定节点,假设有两个设定节点i、j,如果在t时刻i节点可以向j节点发送数据,构造一个N*N的同阶矩阵,记
Figure BDA0002976376750000131
为t时刻从i用户节点发送1M数据到j用户节点所需要的时间,统计通道内部的所有节点,可以得到矩阵:
W(t)=N(t)*N(t)
借助矩阵W(t),可以构造出矩阵A(t),如果i节点可有数据流向j节点,则记录
Figure BDA0002976376750000132
否则为0:
Figure BDA0002976376750000141
统计t时刻i节点数据流向j节点的速率变量及计算方法如下:
Figure BDA0002976376750000142
统计t时刻i节点数据流动压力变量及计算方法如下:
Figure BDA0002976376750000143
当t时刻j节点需要获取数据时,通过以下公式计算出优选节点i:
选择i,符合
Figure BDA0002976376750000144
对任意i成立
其中,u为系统调节参数,通过调节该参数,可以改变流量优先判断时是以速率为主还是以负载为主。
从上述描述可知,本申请实施例提供的风险数据共享方法,通过自适应优选算法,计算得到最优待转储节点,该节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能。
为了进一步提高区块链的访问性能,在本申请提供的风险数据共享方法的一个实施例中,提供一种通道分配算法,参见图4,所述风险数据共享方法中的步骤100具体包含有如下内容:
步骤1005:根据第一转储节点集群组中每个第一转储节点集群的编号,以及上送节点集群的编号,结合第一哈希函数,生成每个第一转储节点集群的第一哈希值;
步骤1006:根据第二转储节点集群组中每个第二转储节点集群的编号,以及上送节点集群的编号,结合第二哈希函数,生成每个第二转储节点集群的第二哈希值;
步骤1007:根据所述上送节点集群的唯一身份标识码,结合第三哈希函数,生成第三哈希值;
步骤1008:根据每个第一转储节点集群的第一哈希值、每个第二转储节点集群的第二哈希值以及第三哈希值,确定上送节点集群的多个链下通道。
可以理解的是,区块链记账模块存在多个链下通道。每个节点集群进入系统后将会组成链下通道,在每个节点上运行代码:
1.使用一致性哈希函数【编号01】,存储i编号算出的数值:
h1(i)→[0,1>,i=0,1,2,,3...n
2.使用另一组哈希函数【编号02】,存储i编号算出来的哈希值:
h2(i)→[0,1>,i=0,1,2,3,...n
3.采用哈希函数【编号01】,通过节点的唯一id(id为纯数,计为x),算出哈希值:
h1(x)→[0,1>,x=0,1,2...k
4.对一个节点x,若h1(i)≈h1(x),则可确定x通道的第一层编号,再匹配h2(i)≈h1(x)计算出第二层编号,匹配之后即可确定x所属的通道。具体而言h1(i)≈h1(x)意味着:
选择i,符合
Figure BDA0002976376750000151
对任意i均成立。
从上述描述可知,本申请实施例提供的风险数据共享方法,采用通道匹配算法,能够在多个设定节点集群中匹配到与自身节点集群最合适的节点集群,形成通道,将风险数据存储在通道内,使得区块链能够达到更好的访问性能。
为了进一步提高区块链的访问性能,在本申请提供的风险数据共享方法的一个实施例中,提供一种通道分配算法的优选方式,所述第一哈希函数、所述第二哈希函数以及所述第三哈希函数中的任意两个相同或不同。
可以理解的是,当第一转储节点集群组中每个第一转储节点集群的编号与第二转储节点集群组中每个第二转储节点集群的编号相同时,则第一哈希函数与第二哈希函数不同,第三哈希函数可以与第一哈希函数、第二哈希函数相同或不同;当第一转储节点集群组中每个第一转储节点集群的编号与第二转储节点集群组中每个第二转储节点集群的编号不同时,则第一哈希函数与第二哈希函数相同,第三哈希函数可以与第一哈希函数、第二哈希函数相同或不同。
从上述描述可知,本申请实施例提供的风险数据共享方法,采用通道匹配算法,能够在多个设定节点集群中匹配到与自身节点集群最合适的节点集群,形成通道,将风险数据存储在通道内,使得区块链能够达到更好的访问性能。
为了解决现有的区块链闪电网络需要本地存储交易中间状态,会提高用户的存储负担的问题,本申请提供一种基于区块链的风险数据共享方法的实施例,参见图5,所述风险数据共享方法具体包含有如下内容,由转储节点集群执行:
步骤200:确定一最优待转储节点,其中,所述转储节点集群对应包括在至少一个链下通道内,每个链下通道还包括上送节点集群,每个链下通道内的上送节点集群确定一最优待转储节点。
可以理解的是,多个设定节点构成一设定节点集群,每个设定节点集群既可以是风险数据的上送方,也可以是风险数据的存储方,同时也能是风险数据的使用方。在不同情况下,每个设定节点集群内的风险数据传输方向不同。每个待转储节点集群在其内部多个节点中选择一个最优待转储节点存储风险数据,该最优待转储节点会随时间动态变化,平衡节点的流量压力,保证设定集群性能。
步骤201:将所述上送节点集群发送的风险数据存储至所有最优待转储节点中。
可以理解的是,转储节点集群将加密后的风险数据转储自身集群中的最优待转储节点中,同时发送一笔TX2形式交易记录到区块链中,表示该风险数据已经可以查询。
当第一次转储完成后,区块链内所有设定节点集群均存储有风险数据,即完成整个转出过程,当第一次转储完成后,区块链内还有部分设定节点集群未存储有风险数据,参与第一次存储的所有转储节点集群需进行第二次转储,此时第一次存储的所有转储节点集群则变为上送节点集群,未存储有风险数据的设定节点集群则变为转储节点集群,第二次转储与第一次转储重复的设定节点集群无需再次转储风险数据。
从上述描述可知,本申请实施例提供的风险数据共享方法,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;最优存储节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能。
为了进一步提高链下通道的性能,在本申请提供的风险数据共享方法的一个实施例中,提供一种选取最优待转储节点的优选方式,参见图6,在所述风险数据共享方法中的步骤200具体包含有如下内容:
步骤020:根据转储节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第二速率变量;
步骤021:根据转储节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第二流量变量;
步骤022:根据所述每个节点的第二速率变量以及所述每个节点的第二流量变量,确定所述最优待转储节点。
可以理解的是,转储节点集群内部包括N个设定节点,每个设定节点可以临时加入或者推出,各设定节点之间地位均等,每个设定节点之间相互传输一定大小的相同数据,通过比较每个设定节点传输数据的时长和流量,得到最优设定节点即最优待转储节点。
从上述描述可知,本申请实施例提供的风险数据共享方法,通过比较每个设定节点的数据传输性能,得到最优待转储节点,该节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能。
为了进一步提高选取最有待转储节点的准确性,在本申请提供的风险数据共享方法的一个实施例中,提供一种自适应最优节点算法,参见图7,所述步骤020至021具体包含有如下内容:
步骤2001:根据转储节点集群中任意节点传输预设数据所需要的传输时长,得到转储节点集群中所有节点完成数据传输所需的传输时长总和;
步骤2002:根据转储节点集群中任意节点传输预设数据所需要的传输时长和转储节点集群中所有节点完成数据传输所需的传输时长总和的比值,得到转储节点集群中每个节点的第二速率变量;
步骤2003:计算转储节点集群中每个节点传输预设数据的传输流量值总和;
步骤2004:根据转储节点集群中每个节点的传输流量值总和与转储节点集群中节点的数量的比值,得到转储节点集群中每个节点的第二流量变量。
可以理解的是,数据流量包括:当转储节点集群中任意节点向其他节点传输的预设数据达到一设定条件时得到的第三传输流量值,以及当转储节点集群中任意节点向其他节点传输的预设数据未达到一设定条件时得到的第四传输流量值。转出节点集群内部有N个设定节点,假设有两个设定节点i、j,如果在t时刻i节点可以向j节点发送数据,构造一个N*N的同阶矩阵,记
Figure BDA0002976376750000171
为t时刻从i用户节点发送1M数据到j用户节点所需要的时间,统计通道内部的所有节点,可以得到矩阵:
W(t)=N(t)*N(t)
借助矩阵W(t),可以构造出矩阵A(t),如果i节点可有数据流向j节点,则记录
Figure BDA0002976376750000172
否则为0:
Figure BDA0002976376750000173
统计t时刻i节点数据流向j节点的速率变量及计算方法如下:
Figure BDA0002976376750000181
统计t时刻i节点数据流动压力变量及计算方法如下:
Figure BDA0002976376750000182
当t时刻j节点需要获取数据时,通过以下公式计算出优选节点i:
选择i,符合
Figure BDA0002976376750000183
对任意i成立
其中,u为系统调节参数,通过调节该参数,可以改变流量优先判断时是以速率为主还是以负载为主。
从上述描述可知,本申请实施例提供的风险数据共享方法,通过自适应优选算法,计算得到最优待转储节点,该节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能。
下面结合具体实施例对风险数据转储过程的具体内容进行说明。
一区块链由4×4设定节点集群构成,参见图8,任意一个设定节点集群既可以是转储节点集群,也可以是上送节点集群,每个设定节点集群都包含一编号,图中黑色圆点表示上送节点集群,白色圆点表示转储节点集群。上送节点集群提交数据的处理逻辑如下,参见图9,数据提供者申请将风险数据提交到区块链,审核节点验证该数据的有效性;如果验证通过,则将该笔数据的摘要和提供方记录至存储区块链;如果验证失败,则拒绝记录该笔交易。
上送节点集群提交记录正常进行区块链记账后,开始触发转储。转储步骤如下,参见图10。
第一步:将风险数据加密后,根据自身节点ID计算可传输的节点。首先计算本节点所属通道X-Y,计算结束后得到X-Y,需要将数据发送到所有的X-N和N-Y通道,N代表0-3。
第二步:转储节点集群临时加入上一步计算得到的8个通道,对于每个通道,使用自适应最优算法选择最佳节点服务器,将数据转储到该服务器。
第三步:转储数据后,转储节点集群退出通道,并将共享信息发送审核节点,并将转储信息记录至区块链。
第四步:数据转储结束后,收到加密数据的节点集群使用第一步和第二中的方法再进行一次数据转储。
完成转储后,整个系统中将存在至少16份数据备份,并保证了每个通道内至少有一份备份数据。
为了解决现有的区块链闪电网络需要本地存储交易中间状态,会提高用户的存储负担,且无法满足多个用户进行高频交易,会导致整个系统的拓扑结构过于复杂的问题,本申请提供一种基于区块链的风险数据共享方法的实施例,参见图11,所述风险数据共享方法具体包含有如下内容,由用户节点集群执行:
步骤300:根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
步骤301:向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
步骤302:根据至少一个发送风险数据确认信息的第一转储节点集群,确定一最优转储节点集群;
步骤303:获取所述最优转储节点集群内的风险数据。
可以理解的是,用户节点集群采用通道分配算法,得到自身链下通道,向自身链下通道内的转储节点集群以及自身节点集群发送风险数据查询请求,若自身链下通道内的转储节点集群以及自身节点集群存储风险数据,则采用自适应优选算法,从自身链下通道内的转储节点集群以及自身节点集群中选取最优节点集群,获取该最优节点集群内的风险数据,发送一笔TX4形式交易记录到区块链,表示进行了一次数据查询,并得到了结果;若用户节点集群同意消费者使用数据,则将解密私钥发送给消费者,消费者使用该密钥进行解密,获得数据;如果用户节点集群不同意消费者使用数据,消费者无法解密密文获得数据。
从上述描述可知,本申请实施例提供的风险数据共享方法,用户节点集群先从自身链下通道内查询风险数据,降低了区块链的工作负载,若自身链下通道内未存储数据,则向其他链下通道查询风险数据,再从多个存储风险数据的转储节点集群中选取最优转储节点集群中获取风险数据,降低了系统宕机的风险,提高了区块链的性能。
为了解决现有的区块链闪电网络需要本地存储交易中间状态,会提高用户的存储负担,且无法满足多个用户进行高频交易,会导致整个系统的拓扑结构过于复杂的问题,本申请提供一种基于区块链的风险数据共享方法的实施例,参见图12,所述风险数据共享方法具体包含有如下内容,由用户节点集群执行:
步骤304:若未收到所有自身链下通道内的转储节点集群发送的风险数据确认信息,则向其他链下通道内的第二转储节点集群发送风险数据查询请求,其中,所述第二转储节点集群对应包括至少一个其他链下通道,至少一个存储风险数据的第二转储节点集群向用户节点集群发送风险数据确认信息;
步骤305:根据至少一个发送风险数据确认信息的第二转储节点集群,确定一最优转储节点集群;
步骤306:获取所述最优转储节点集群内的风险数据。
可以理解的是,若自身链下通道内的转储节点集群以及自身节点集群未存储风险数据,则向其他链下通道内的转储节点集群发送数据查询请求,从其他链下通道内的转储节点集群中选取最优节点集群,获取该最优节点集群内的风险数据;若用户节点集群同意消费者使用数据,则将解密私钥发送给消费者,消费者使用该密钥进行解密,获得数据;如果用户节点集群不同意消费者使用数据,消费者无法解密密文获得数据。
为了进一步提高链下通道的性能,在本申请提供的风险数据共享方法的一个实施例中,提供一种选取最优待转储节点的优选方式,参见图13,在所述风险数据共享方法中的步骤302以及步骤305具体包含有如下内容:
步骤030:根据任意转储节点集群向其他转储节点集群传输预设数据所需要的传输时长,得到每个转储节点集群的第三速率变量;
步骤031:根据任意转储节点集群向其他转储节点集群传输预设数据的数据流量,得到每个转储节点集群的第三流量变量;
步骤032:根据所述每个转储节点集群的第三速率变量以及所述每个转储节点集群的第三流量变量,确定所述最优转储节点集群。
可以理解的是,用户节点集群内部其自身链下通道内包括多个转储节点集群,每个转储节点集群之间地位均等,每个转储节点集群之间相互传输一定大小的相同数据,通过比较每个转储节点集群传输数据的时长和流量,得到最优转储节点集群。
从上述描述可知,本申请实施例提供的风险数据共享方法,通过比较每个设定节点的数据传输性能,得到最优转储节点集群,该转储节点集群会随时间动态变化,平衡链下通道内节点集群的流量压力,保证通道性能。
为了进一步提高选取最有待转储节点的准确性,在本申请提供的风险数据共享方法的一个实施例中,提供一种自适应最优节点算法,参见图14,所述步骤030至步骤031具体包含有如下内容:
步骤3001:根据每个转储节点集群传输预设数据所需要的传输时长,得到所有转储节点集群完成数据传输所需的传输时长总和;
步骤3002:根据每个转储节点集群传输预设数据所需要的传输时长和所有转储节点集群完成数据传输所需的传输时长总和的比值,得到每个转储节点集群的第三速率变量;
步骤3003:计算每个转储节点集群传输预设数据的传输流量值总和;
步骤3004:根据每个转储节点集群的传输流量值总和以及所有转储节点集群的数量的比值,得到每个转储节点集群的第三流量变量。
可以理解的是,数据流量包括:当任意转储节点集群向其他转储节点集群传输的预设数据达到一设定条件时得到的第五传输流量值,以及当任意转储节点集群向转储节点集群传输的预设数据未达到一设定条件时得到的第六传输流量值;用户节点集群收到N个转储节点集群发送的数据确认信息,假设有两个转储节点集群i、j,如果在t时刻i转储节点集群可以向j转储节点集群发送数据,构造一个N*N的同阶矩阵,记
Figure BDA0002976376750000211
为t时刻从i转储节点集群发送1M数据到j转储节点集群所需要的时间,统计所有转储节点集群,可以得到矩阵:
W(t)=N(t)*N(t)
借助矩阵W(t),可以构造出矩阵A(t),如果i转储节点集群可有数据流向j转储节点集群,则记录
Figure BDA0002976376750000212
否则为0:
Figure BDA0002976376750000213
统计t时刻i转储节点集群数据流向j转储节点集群的速率变量及计算方法如下:
Figure BDA0002976376750000214
统计t时刻i转储节点集群数据流动压力变量及计算方法如下:
Figure BDA0002976376750000215
当t时刻j转储节点集群需要获取数据时,通过以下公式计算出最优转储节点集群i:
选择i,符合
Figure BDA0002976376750000221
对任意i成立
其中,u为系统调节参数,通过调节该参数,可以改变流量优先判断时是以速率为主还是以负载为主。
从上述描述可知,本申请实施例提供的风险数据共享方法,通过自适应优选算法,计算得到最优待转储节点集群,该节点集群会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能。
下面结合具体实施例对由用户节点集群执行的内容进行具体说明。
一区块链由4×4设定节点集群构成,参见图15,任意一个设定节点集群既可以是转储节点集群,也可以是用户节点集群,用户节点集群可以随时退出或加入区块链,每个设定节点集群都包含一编号,图中圆形表示上送节点集群,三角形表示用户节点集群。
用户节点集群查询和获取数据的具体方法,参见图16,用户节点集群申请查询某笔风险数据,区块链审核系统先验证查询者的合法性;如果验证失败,则拒绝记录该笔交易;如果验证通过,将该查询请求记录至区块链。获得可查口令后,可以真正进行数据获取,参见图17,用户节点集群可以对多个通道的所有可达节点集群广播查询请求。如果有节点集群回应可提供数据,则将回应可提供数据的节点集群集合生成流量矩阵,使用选取自适应最优算法计算最优的选择服务器节点集群。
计算出最优节点集群后,将查询请求发送到服务器节点集群。
最优节点集群接受请求后,将该数据发送给请求者。用户节点集群得到加密的风险数据后,将该笔交易记录至区块链。由于是加密数据,用户节点集群需要使用事先与提供者约定的私钥进行数据解密。
为了解决现有的区块链闪电网络需要本地存储交易中间状态,会提高用户的存储负担,且无法满足多个用户进行高频交易,会导致整个系统的拓扑结构过于复杂的问题,本申请提供一种上送节点集群的实施例,参见图18,所述上送节点集群具体包含有如下内容:
第一优选模块10:确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点;
可以理解的是,区块链记账模块存在多个链下通道。每个节点集群进入系统后将会组成链下通道,定义链下通道的编号为双层结构,例如,记为0-0、0-1、……3-3。链下通道的数量只需要满足拜占庭算法的有效性即可,保证后续可以支持正常纠错,防止有坏节点篡改数据。第一优选模块10采用自适应最优算法在多个设定节点中选择一个最优待转储节点存储风险数据,该最优待转储节点会随时间动态变化,平衡节点的流量压力,保证设定集群性能。
第一转储模块11:将风险数据转储所有最优待转储节点中。
可以理解的是,第一转储模块11将加密后的风险数据转储上送节点集群中的最优待转储节点中,同时将加密后的风险数据发送给自身多个链下通道,所有链下通道内的转储节点集群将加密后的风险数据存储在自身集群中的最优待转储节点中。转储完毕后,第一转储模块11向审核节点提交共享的数据量,并发送一笔TX2形式交易记录到区块链中,表示该风险数据已经可以查询。
从上述描述可知,本申请实施例提供的上送节点集群,将风险数据存储在自身节点集群中的最优节点内,最优存储节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能。
为了解决现有的区块链闪电网络需要本地存储交易中间状态,会提高用户的存储负担的问题,本申请提供一种转储节点集群的实施例,参见图19,具体包含有如下内容:
第二优选模块20:确定一最优待转储节点,其中,所述转储节点集群对应包括在至少一个链下通道内,每个链下通道还包括上送节点集群,每个链下通道内的上送节点集群确定一最优待转储节点。
可以理解的是,多个设定节点构成一设定节点集群,每个设定节点集群既可以是风险数据的上送方,也可以是风险数据的存储方,同时也能是风险数据的使用方。在不同情况下,每个设定节点集群内的风险数据传输方向不同。每个待转储节点集群的第二优选模块20在内部多个节点中选择一个最优待转储节点存储风险数据,该最优待转储节点会随时间动态变化,平衡节点的流量压力,保证设定集群性能。
第二转储模块21:将所述上送节点集群发送的风险数据存储至所有最优待转储节点中。
可以理解的是,转储节点集群的第二转储模块21将加密后的风险数据转储自身集群中的最优待转储节点中,同时发送一笔TX2形式交易记录到区块链中,表示该风险数据已经可以查询。
从上述描述可知,本申请实施例提供的转储节点集群,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;最优存储节点会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能。
为了解决现有的区块链闪电网络需要本地存储交易中间状态,会提高用户的存储负担,且无法满足多个用户进行高频交易,会导致整个系统的拓扑结构过于复杂的问题,本申请提供一种用户节点集群的实施例,参见图20,具体包含有如下内容:
通道计算模块30:根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
第一数据查询模块31:向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
第二查询模块32:若未收到所有自身链下通道内的转储节点集群发送的风险数据确认信息,则向其他链下通道内的第二转储节点集群发送风险数据查询请求,其中,所述第二转储节点集群对应包括至少一个其他链下通道,至少一个存储风险数据的第二转储节点集群向用户节点集群发送风险数据确认信息;
第三优选模块33:根据至少一个发送风险数据确认信息的转储节点集群,确定一最优转储节点集群;
数据获取模块34:获取所述最优转储节点集群中的风险数据。
可以理解的是,通道计算模块30采用通道分配算法,得到用户节点集群链下通道,第一数据查询模块31向链下通道内的转储节点集群以及自身节点集群发送风险数据查询请求,若未收到存储风险数据的转储节点集群发送的数据存在答复,则第二查询模块32向其他链下通道内的转储节点集群发送数据查询请求,第三优选模块33则采用自适应优选算法,从多个自存储风险数据的的转储节点集群中选取最优节点集群,数据获取模块34获取该最优节点集群内的风险数据,并发送一笔TX4形式交易记录到区块链,表示进行了一次数据查询,并得到了结果;若用户节点集群同意消费者使用数据,则将解密私钥发送给消费者,消费者使用该密钥进行解密,获得数据;如果用户节点集群不同意消费者使用数据,消费者无法解密密文获得数据。
从上述描述可知,本申请实施例提供的用户节点集群,先从自身链下通道内查询风险数据,降低了区块链的工作负载,若自身链下通道内未存储数据,则向其他链下通道查询风险数据,再从多个存储风险数据的转储节点集群中选取最优转储节点集群中获取风险数据,降低了系统宕机的风险,提高了区块链的性能。
从软件层面来说,为了解决现有的区块链闪电网络无法满足多个用户进行高频交易,导致整个系统的拓扑结构过于复杂的问题,本申请提供一种基于区块链的风险数据共享系统的实施例,参见图21,所述风险数据共享系统具体包含有如下内容:
上送节点集群40:所述上送节点集群确定自身集群内的最优待转储节点,将风险数据发送至转储节点集群,并将风险数据存储至自身集群内的最优待转储节点中;
转储节点集群41:所述转储节点集群确定自身集群内的最优待转储节点,接收所述上送节点集群发送的风险数据,将所述风险数据存储至自身集群内的最优待转储节点中;
用户节点集群42:所述用户节点集群确定自身链下通道以及其他链下通道内的转储节点集群是否存储风险数据,根据至少一个存储风险数据的转储节点集群确定最优转储节点集群,获取所述最优转储节点集群中的风险数据。
可以理解的是,上送节点集群40收集用户的风险数据,存储至自身集群内的最优节点,并发送至自身链下通道内的所有转储节点集群内,转储节点集群41将风险数据存储至自身节点集群内的最优节点内,用户节点集群42先查询自身链下通道内是否存储风险数据,若不存在,则向查询链下通道内是否存储风险数据,用户节点集群42在获得多个转储节点集群的数据存在答复后,针对这些转储节点集群,采用自适应最优算法,得到最优转储节点集群,获取改节点集群内的风险数据。
从上述描述可知,本申请实施例提供的风险数据共享系统,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;用户节点集群在获取风险数据时,先在自身链下通道内查询是否存在风险数据,若存在风险数据则直接在自身链下通道内选取最优转储节点集群获取风险数据,若自身链下通道内未存储风险数据,则在其他链下通道内查询是否存在风险数据,在其他链下通道内选取最优转储节点集群获取风险数据,最优节点以及最优转储节点集群会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能,为企业和监管机构解决征信难、征信贵的问题提供帮助。
下面结合具体实施例对风险数据共享系统进行说明。
区块链内部存在以下组成模块,如表1所示,数据生产者也可以是数据消费者,数据消费者也可以是数据生产者。
模块名称 模块用途
仲裁模块 判断节点是否可以准入,仲裁被举报的恶意交易
数据生产者 共享的风险数据来源方(生产者也可以是消费者)
数据消费者 需要使用风险数据的用户(消费者也可以是生产者)
区块链记账网络 记录数据摘要和数据提供方、数据使用者
表1
区块链网络上记录的交易类型有四种,如表2所示,分别是:
交易类型 用途
TX1 记录一笔风险数据的产生
TX2 记录一笔风险数据的共享
TX3 记录一笔风险数据的使用申请
TX4 记录一笔风险数据的使用结果
表2
四类交易的结构分别如表3、4、5、6所示:
Figure BDA0002976376750000261
表3
Figure BDA0002976376750000262
Figure BDA0002976376750000271
表4
Figure BDA0002976376750000272
表5
Figure BDA0002976376750000273
表6
系统总体流程主要包括4个步骤,分别是节点准入、生产者数据提交、数据转储、消费者消费数据,参见图22。
节点准入是由仲裁模块提供的接入判断功能,通过判断节点是否合法,生成相应的节点ID和密钥,参见图23。
仲裁系统首先制作系统内部公钥。
节点申请加入系统,进行准入校验;如果仲裁系统校验通过,认为该机构具备收集和获取风险数据的资格,就为该机构生成唯一id和专属私钥,将唯一id和私钥并同系统公钥一同返回给申请机构;如果仲裁系统校验不通过,认为该机构不具备数据收集资格,则直接拒绝请求。
所述风险数据共享系统基于以下假设:包含起码一名用户,存在请求该用户数据的数据消费者、一定数量的风险数据生产者和系统审核节点。在这个案例中,数据生产者和数据消费者通过区块链组合数据,审核节点负责审核节点和数据的有效性、合法性,并且只有审核有效的数据才能被记录到区块链上。
一位用户产生了自身的风险数据,上送节点集群将该数据收集,然后将自身信息和该条数据的摘要使用自身私钥加密后发送给审核节点。
审核节点根据收集方上送的信息,使用系统预留的生产者私钥,将数据解密后判断是否为真实的生产者信息,假设确认真实,审核节点接受该笔上送,将解密后的数据摘要以TX1交易的形式记录到区块链中,并返回成功给收集方。
上送节点集群接受到成功应答后,计算出自身通道编号为X-Y,需要将数据发送给X-0,X-1,X-2,X-3,0-Y,1-Y,2-Y,3-Y 8个通道。
对每个通道内的所有可达节点集群,使用自适应最优算法得到8个目标节点。将数据传输至8个目标服务器,传输完毕后,数据提供方向审核节点提交共享的数据量。并发送一笔TX2形式交易记录到区块链中,表示该数据已经可以查询。
审核节点收到提交后,认为该数据已经正常存储。
该用户向放贷机构申请额度,放贷机构(数据消费者)需要获取用户风险信息。用户节点集群先发送交易至审核节点。审核节点收到请求后,验证该机构是否可以获取数据,验证成功后,返回可查,并发送一笔TX3形式的交易记录到区块链中,表示该机构需要查询用户x的数据。
获得可查返回后,用户节点集群先算出自身通道编号X-Y,向自身通道内的所有可达节点集群广播询问是否存在该笔数据,如果没有获得存在答复,再按编号顺序从小到大向U-R(U!=X,R!=Y)通道内的所有可达节点集群广播是否存在该笔数据。
得到多个(1个或大于1个节点)存在数据的回复后,用户节点集群使用自适应最优算法计算出最优节点,向最优节点集群(记为K)发送获取数据的请求。
节点集群K将数据发送到用户节点集群,用户节点集群获取到数据后,发送一笔TX4形式交易记录到区块链,表示进行了一次数据查询,并得到了结果。
消费者得到来自用户节点集群的用户风险信息。这笔数据可能是加密后的数据,如果该用户节点集群同意请求方使用数据,用户节点集群则将解密私钥发送给消费者,消费者使用该密钥进行解密,获得数据;如果该用户节点集群不同意消费者使用数据,消费者无法解密密文获得数据。
从硬件层面来说,为了解决现有的区块链闪电网络,需要存储交易中间状态,会提高用户的存储负担;其次,仅打开两个用户间的交易通道,当有多个用户需要与多个其他用户进行高频交易时,会导致整个系统的拓扑结构过于复杂的问题,本申请提供一种用于实现所述风险数据共享方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
图24为本申请实施例的电子设备9600的系统构成的示意框图。如图24所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图24是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
在一实施例中,风险数据共享功能可以被集成到中央处理器中。其中,中央处理器可以被配置为进行如下控制:
步骤100:基于自身节点集群的编号确定多个链下通道。
可以理解的是,区块链记账模块存在多个链下通道。每个节点集群进入系统后将会组成链下通道,定义链下通道的编号为双层结构,例如,记为0-0、0-1、……3-3。根据上送节点集群自身通道X-Y,确定多个链下通道X-i和i-Y通道,链下通道的数量需要满足拜占庭算法的有效性,保证后续可以支持正常纠错,防止有坏节点篡改数据。例如i代表0-3,即上送节点集群的链下通道为X-0、X-1、X-2、X-3、0-Y、1-Y、2-Y、3-Y 8个通道。
步骤101:确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点。
可以理解的是,在多个设定节点中选择一个最优待转储节点存储风险数据,该最优待转储节点会随时间动态变化,平衡节点的流量压力,保证设定集群性能。
步骤102:将所述风险数据转储至所有最优待转储节点中。
可以理解的是,上送节点集群将加密后的风险数据转储自身集群中的最优待转储节点中,同时将加密后的风险数据发送给自身多个链下通道,所有链下通道内的转储节点集群将加密后的风险数据存储在自身集群中的最优待转储节点中。转储完毕后,上送节点集群向审核节点提交共享的数据量,并发送一笔TX2形式交易记录到区块链中,表示该风险数据已经可以查询。
在步骤100至步骤102中,多个设定节点构成一设定节点集群,每个设定节点集群既可以是风险数据的上送方,也可以是风险数据的存储方。在不同情况下,每个设定节点集群内的风险数据传输方向不同。每个节点集群都可以临时加入或退出该系统。
步骤300:根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
步骤301:向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
步骤302:根据至少一个发送风险数据确认信息的第一转储节点集群,确定一最优转储节点集群;
步骤303:获取所述最优转储节点集群内的风险数据。
可以理解的是,用户节点集群采用通道分配算法,得到自身链下通道,向自身链下通道内的转储节点集群以及自身节点集群发送风险数据查询请求,若自身链下通道内的转储节点集群以及自身节点集群存储风险数据,则采用自适应优选算法,从自身链下通道内的转储节点集群以及自身节点集群中选取最优节点集群,获取该最优节点集群内的风险数据,发送一笔TX4形式交易记录到区块链,表示进行了一次数据查询,并得到了结果;若用户节点集群同意消费者使用数据,则将解密私钥发送给消费者,消费者使用该密钥进行解密,获得数据;如果用户节点集群不同意消费者使用数据,消费者无法解密密文获得数据。
在步骤302至步骤303中间还包括:若自身链下通道内的转储节点集群以及自身节点集群未存储风险数据,则向其他链下通道内的转储节点集群发送数据查询请求,从其他链下通道内的转储节点集群中选取最优节点集群,获取该最优节点集群内的风险数据。
在步骤300至步骤303中,多个设定节点构成一设定节点集群,每个设定节点集群既可以是风险数据的存储方,也可以是风险数据的使用方。在不同情况下,每个设定节点集群内的风险数据传输方向不同。每个节点集群都可以临时加入或退出该系统。
从上述描述可知,本申请实施例提供的电子设备,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;用户节点集群在获取风险数据时,先在自身链下通道内查询是否存在风险数据,若存在风险数据则直接在自身链下通道内选取最优转储节点集群获取风险数据,若自身链下通道内未存储风险数据,则在其他链下通道内查询是否存在风险数据,在其他链下通道内选取最优转储节点集群获取风险数据,最优节点以及最优转储节点集群会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能。
在另一个实施方式中,风险数据共享系统可以与中央处理器9100分开配置,例如可以将风险数据共享系统为与中央处理器9100连接的芯片,通过中央处理器的控制来实现风险数据共享功能。
如图24所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图24中所示的所有部件;此外,电子设备9600还可以包括图24中没有示出的部件,可以参考现有技术。
如图24所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的风险数据共享方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的风险数据共享方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤100:基于自身节点集群的编号确定多个链下通道。
可以理解的是,区块链记账模块存在多个链下通道。每个节点集群进入系统后将会组成链下通道,定义链下通道的编号为双层结构,例如,记为0-0、0-1、……3-3。根据上送节点集群自身通道X-Y,确定多个链下通道X-i和i-Y通道,链下通道的数量需要满足拜占庭算法的有效性,保证后续可以支持正常纠错,防止有坏节点篡改数据。例如i代表0-3,即上送节点集群的链下通道为X-0、X-1、X-2、X-3、0-Y、1-Y、2-Y、3-Y 8个通道。
步骤101:确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点。
可以理解的是,在多个设定节点中选择一个最优待转储节点存储风险数据,该最优待转储节点会随时间动态变化,平衡节点的流量压力,保证设定集群性能。
步骤102:将所述风险数据转储至所有最优待转储节点中。
可以理解的是,上送节点集群将加密后的风险数据转储自身集群中的最优待转储节点中,同时将加密后的风险数据发送给自身多个链下通道,所有链下通道内的转储节点集群将加密后的风险数据存储在自身集群中的最优待转储节点中。转储完毕后,上送节点集群向审核节点提交共享的数据量,并发送一笔TX2形式交易记录到区块链中,表示该风险数据已经可以查询。
在步骤100至步骤102中,多个设定节点构成一设定节点集群,每个设定节点集群既可以是风险数据的上送方,也可以是风险数据的存储方。在不同情况下,每个设定节点集群内的风险数据传输方向不同。每个节点集群都可以临时加入或退出该系统。
步骤300:根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
步骤301:向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
步骤302:根据至少一个发送风险数据确认信息的第一转储节点集群,确定一最优转储节点集群;
步骤303:获取所述最优转储节点集群内的风险数据。
可以理解的是,用户节点集群采用通道分配算法,得到自身链下通道,向自身链下通道内的转储节点集群以及自身节点集群发送风险数据查询请求,若自身链下通道内的转储节点集群以及自身节点集群存储风险数据,则采用自适应优选算法,从自身链下通道内的转储节点集群以及自身节点集群中选取最优节点集群,获取该最优节点集群内的风险数据,发送一笔TX4形式交易记录到区块链,表示进行了一次数据查询,并得到了结果;若用户节点集群同意消费者使用数据,则将解密私钥发送给消费者,消费者使用该密钥进行解密,获得数据;如果用户节点集群不同意消费者使用数据,消费者无法解密密文获得数据。
在步骤302至步骤303中间还包括:若自身链下通道内的转储节点集群以及自身节点集群未存储风险数据,则向其他链下通道内的转储节点集群发送数据查询请求,从其他链下通道内的转储节点集群中选取最优节点集群,获取该最优节点集群内的风险数据。
在步骤300至步骤303中,多个设定节点构成一设定节点集群,每个设定节点集群既可以是风险数据的存储方,也可以是风险数据的使用方。在不同情况下,每个设定节点集群内的风险数据传输方向不同。每个节点集群都可以临时加入或退出该系统。
从上述描述可知,本申请实施例提供的电子设备,将风险数据存储在多个节点集群中的最优节点内,由于这些节点集群是分布式的,解决了单点存储量小和宕机风险;用户节点集群在获取风险数据时,先在自身链下通道内查询是否存在风险数据,若存在风险数据则直接在自身链下通道内选取最优转储节点集群获取风险数据,若自身链下通道内未存储风险数据,则在其他链下通道内查询是否存在风险数据,在其他链下通道内选取最优转储节点集群获取风险数据,最优节点以及最优转储节点集群会随时间动态变化,平衡链下通道内节点的流量压力,保证通道性能;将耗时的操作放到链下进行,采用链下扩容和自适应最优节点算法,提高了区块链系统性能。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (22)

1.一种基于区块链的风险数据共享方法,其特征在于,所述区块链包括上送节点集群以及转储节点集群,由上送节点集群执行,所述风险数据共享方法包括:
确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点;
将所述风险数据转储至所有最优待转储节点中。
2.根据权利要求1所述的风险数据共享方法,其特征在于,所述风险数据共享方法还包括:
基于自身节点集群的编号确定多个链下通道。
3.根据权利要求1所述的风险数据共享方法,其特征在于,所述确定一最优待转储节点,包括:
根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第一速率变量;
根据上送节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第一流量变量;
根据所述每个节点的第一速率变量以及所述每个节点的第一流量变量,确定所述最优待转储节点。
4.根据权利要求3所述的风险数据共享方法,其特征在于,所述根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第一速率变量,包括:
根据上送节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到上送节点集群中所有节点完成数据传输所需的传输时长总和;
根据所述上送节点集群中任意节点传输预设数据所需要的传输时长和所有节点完成数据传输所需的传输时长总和的比例,得到上送节点集群中每个节点的第一速率变量。
5.根据权利要求3所述的风险数据共享方法,其特征在于,所述数据流量包括:当上送节点集群中任意节点向其他节点传输的预设数据达到一设定条件时得到的第一传输流量值,以及当上送节点集群中任意节点向其他节点传输的预设数据未达到一设定条件时得到的第二传输流量值;所述根据上送节点集群中的任意节点向其他节点传输预设数据的数据流量,得到每个节点的第一流量变量,包括:
计算上送节点集群中每个节点传输预设数据的传输流量值总和;
根据上送节点集群中每个节点的传输流量值总和与上送节点集群中节点的数量的比值,得到上送节点集群中每个节点的第一流量变量。
6.根据权利要求2所述的风险数据共享方法,其特征在于,所述基于自身节点集群的编号确定多个链下通道,包括:
根据第一转储节点集群组中每个第一转储节点集群的编号,以及上送节点集群的编号,结合第一哈希函数,生成每个第一转储节点集群的第一哈希值;
根据第二转储节点集群组中每个第二转储节点集群的编号,以及上送节点集群的编号,结合第二哈希函数,生成每个第二转储节点集群的第二哈希值;
根据所述上送节点集群的唯一身份标识码,结合第三哈希函数,生成第三哈希值;
根据每个第一转储节点集群的第一哈希值、每个第二转储节点集群的第二哈希值以及第三哈希值,确定上送节点集群的多个链下通道。
7.根据权利要求6所述的风险数据共享方法,其特征在于,所述第一哈希函数、所述第二哈希函数以及所述第三哈希函数中的任意两个相同或不同。
8.一种基于区块链的风险数据共享方法,其特征在于,所述区块链包括上送节点集群以及转储节点集群,由转储节点集群执行,所述风险数据共享方法包括:
确定一最优待转储节点,其中,所述转储节点集群对应包括在至少一个链下通道内,每个链下通道还包括上送节点集群,每个链下通道内的上送节点集群确定一最优待转储节点;
将所述上送节点集群发送的风险数据存储至所有最优待转储节点中。
9.根据权利要求8所述的风险数据共享方法,其特征在于,所述确定一最优待转储节点,包括:
根据转储节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第二速率变量;
根据转储节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第二流量变量;
根据所述每个节点的第二速率变量以及所述每个节点的第二流量变量,确定所述最优待转储节点。
10.根据权利要求9所述的风险数据共享方法,其特征在于,所述根据转储节点集群中任意节点向其他节点传输预设数据所需要的传输时长,得到每个节点的第二速率变量,包括:
根据转储节点集群中任意节点传输预设数据所需要的传输时长,得到转储节点集群中所有节点完成数据传输所需的传输时长总和;
根据转储节点集群中任意节点传输预设数据所需要的传输时长和转储节点集群中所有节点完成数据传输所需的传输时长总和的比值,得到转储节点集群中每个节点的第二速率变量。
11.根据权利要求9所述的风险数据共享方法,其特征在于,所述数据流量包括:当转储节点集群中任意节点向其他节点传输的预设数据达到一设定条件时得到的第三传输流量值,以及当转储节点集群中任意节点向其他节点传输的预设数据未达到一设定条件时得到的第四传输流量值;所述根据转储节点集群中任意节点向其他节点传输预设数据的数据流量,得到每个节点的第二流量变量,包括:
计算转储节点集群中每个节点传输预设数据的传输流量值总和;
根据转储节点集群中每个节点的传输流量值总和与转储节点集群中节点的数量的比值,得到转储节点集群中每个节点的第二流量变量。
12.一种基于区块链的风险数据共享方法,其特征在于,所述区块链包括转储节点集群以及用户节点集群,由用户节点集群执行,所述风险数据共享方法包括:
根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
根据至少一个发送风险数据确认信息的第一转储节点集群,确定一最优转储节点集群;
获取所述最优转储节点集群内的风险数据。
13.根据权利要求12所述的风险数据共享方法,其特征在于,所述风险数据共享方法还包括:
若未收到所有自身链下通道内的转储节点集群发送的风险数据确认信息,则向其他链下通道内的第二转储节点集群发送风险数据查询请求,其中,所述第二转储节点集群对应包括至少一个其他链下通道,至少一个存储风险数据的第二转储节点集群向用户节点集群发送风险数据确认信息;
根据至少一个发送风险数据确认信息的第二转储节点集群,确定一最优转储节点集群;
获取所述最优转储节点集群内的风险数据。
14.根据权利要求12或13所述的风险数据共享方法,其特征在于,所述确定一最优转储节点集群,包括:
根据任意转储节点集群向其他转储节点集群传输预设数据所需要的传输时长,得到每个转储节点集群的第三速率变量;
根据任意转储节点集群向其他转储节点集群传输预设数据的数据流量,得到每个转储节点集群的第三流量变量;
根据所述每个转储节点集群的第三速率变量以及所述每个转储节点集群的第三流量变量,确定所述最优转储节点集群。
15.根据权利要求14所述的风险数据共享方法,其特征在于,所述根据任意转储节点集群向其他转储节点集群传输预设数据所需要的传输时长,得到每个转储节点集群的第三速率变量,包括:
根据每个转储节点集群传输预设数据所需要的传输时长,得到所有转储节点集群完成数据传输所需的传输时长总和;
根据每个转储节点集群传输预设数据所需要的传输时长和所有转储节点集群完成数据传输所需的传输时长总和的比值,得到每个转储节点集群的第三速率变量。
16.根据权利要求14所述的风险数据共享方法,其特征在于,所述数据流量包括:当任意转储节点集群向其他转储节点集群传输的预设数据达到一设定条件时得到的第五传输流量值,以及当任意转储节点集群向转储节点集群传输的预设数据未达到一设定条件时得到的第六传输流量值;所述根据任意转储节点集群向其他转储节点集群传输预设数据的数据流量,得到每个转储节点集群的第三流量变量,包括:
计算每个转储节点集群传输预设数据的传输流量值总和;
根据每个转储节点集群的传输流量值总和以及所有转储节点集群的数量的比值,得到每个转储节点集群的第三流量变量。
17.一种上送节点集群,其特征在于,所述上送节点集群包括:
第一优选模块:确定一最优待转储节点,其中,所述上送节点集群对应包括在至少一个链下通道内,每个链下通道还包括一转储节点集群,每个链下通道内的转储节点集群确定一最优待转储节点;
第一转储模块:将风险数据转储所有最优待转储节点中。
18.一种转储节点集群,其特征在于,所述转储节点集群包括:
第二优选模块:确定一最优待转储节点,其中,所述转储节点集群对应包括在至少一个链下通道内,每个链下通道还包括上送节点集群,每个链下通道内的上送节点集群确定一最优待转储节点;
第二转储模块:将所述上送节点集群发送的风险数据存储至所有最优待转储节点中。
19.一种用户节点集群,其特征在于,所述用户节点集群包括:
通道计算模块:根据自身节点集群的编号,确定多个自身链下通道,其中,每个自身链下通道包括所述用户节点集群以及第一转储节点集群;
第一数据查询模块:向所有自身链下通道内的第一转储节点集群以及自身节点集群发送风险数据查询请求,其中,至少一个存储风险数据的第一转储节点集群向用户节点集群发送风险数据确认信息;
第二查询模块:若未收到所有自身链下通道内的转储节点集群发送的风险数据确认信息,则向其他链下通道内的第二转储节点集群发送风险数据查询请求,其中,所述第二转储节点集群对应包括至少一个其他链下通道,至少一个存储风险数据的第二转储节点集群向用户节点集群发送风险数据确认信息;
第三优选模块:根据至少一个发送风险数据确认信息的转储节点集群,确定一最优转储节点集群;
数据获取模块:获取所述最优转储节点集群中的风险数据。
20.一种基于区块链的风险数据共享系统,其特征在于,所述区块链包括上送节点集群、转储节点集群以及用户节点集群,所述风险数据共享系统包括:
上送节点集群:所述上送节点集群确定自身集群内的最优待转储节点,将风险数据发送至转储节点集群,并将风险数据存储至自身集群内的最优待转储节点中;
转储节点集群:所述转储节点集群确定自身集群内的最优待转储节点,接收所述上送节点集群发送的风险数据,将所述风险数据存储至自身集群内的最优待转储节点中;
用户节点集群:所述用户节点集群确定自身链下通道以及其他链下通道内的转储节点集群是否存储风险数据,根据至少一个存储风险数据的转储节点集群确定最优转储节点集群,获取所述最优转储节点集群中的风险数据。
21.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至16任一项所述的风险数据共享方法。
22.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至16任一项所述的风险数据共享方法。
CN202110275304.9A 2021-03-15 2021-03-15 一种基于区块链的风险数据共享方法及系统 Active CN113037497B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110275304.9A CN113037497B (zh) 2021-03-15 2021-03-15 一种基于区块链的风险数据共享方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110275304.9A CN113037497B (zh) 2021-03-15 2021-03-15 一种基于区块链的风险数据共享方法及系统

Publications (2)

Publication Number Publication Date
CN113037497A true CN113037497A (zh) 2021-06-25
CN113037497B CN113037497B (zh) 2023-08-01

Family

ID=76468842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110275304.9A Active CN113037497B (zh) 2021-03-15 2021-03-15 一种基于区块链的风险数据共享方法及系统

Country Status (1)

Country Link
CN (1) CN113037497B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105491149A (zh) * 2015-12-26 2016-04-13 深圳市金立通信设备有限公司 一种数据存储方法及终端
WO2018112805A1 (zh) * 2016-12-21 2018-06-28 深圳前海达闼云端智能科技有限公司 区块链存储方法、装置及节点设备
CN108462724A (zh) * 2018-05-17 2018-08-28 北京京东金融科技控股有限公司 数据共享方法、装置、系统、成员节点和可读存储介质
CN109871669A (zh) * 2019-03-14 2019-06-11 哈尔滨工程大学 一种基于区块链技术的数据共享解决方法
CN111770198A (zh) * 2020-08-31 2020-10-13 支付宝(杭州)信息技术有限公司 一种信息共享方法、装置及设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105491149A (zh) * 2015-12-26 2016-04-13 深圳市金立通信设备有限公司 一种数据存储方法及终端
WO2018112805A1 (zh) * 2016-12-21 2018-06-28 深圳前海达闼云端智能科技有限公司 区块链存储方法、装置及节点设备
CN108462724A (zh) * 2018-05-17 2018-08-28 北京京东金融科技控股有限公司 数据共享方法、装置、系统、成员节点和可读存储介质
CN109871669A (zh) * 2019-03-14 2019-06-11 哈尔滨工程大学 一种基于区块链技术的数据共享解决方法
CN111770198A (zh) * 2020-08-31 2020-10-13 支付宝(杭州)信息技术有限公司 一种信息共享方法、装置及设备

Also Published As

Publication number Publication date
CN113037497B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
US20240144280A1 (en) Blockchain architecture with record security
Kotobi et al. Secure blockchains for dynamic spectrum access: A decentralized database in moving cognitive radio networks enhances security and user access
CN109756582B (zh) 区块链网络中的信息记录方法、装置、节点及存储介质
AU2020200584B2 (en) Parameter based key derivation
CN111476572B (zh) 基于区块链的数据处理方法、装置、存储介质及设备
CN112749969B (zh) 一种数据处理方法、装置、计算机设备及存储介质
Xiao et al. Decentralized spectrum access system: Vision, challenges, and a blockchain solution
CN110070357B (zh) 数据处理方法、装置和系统
CN111767569A (zh) 区块链的访问授权方法及节点
JP2022518960A (ja) 複数のノードに基づくネットワークトランザクション検証方法及びそのシステム並びに記憶媒体
CN114519197A (zh) 一种基于区块链和云服务的数据存储架构和方法
CN111639938A (zh) 数据处理方法、装置、设备及介质
Gao et al. BFR‐SE: A Blockchain‐Based Fair and Reliable Searchable Encryption Scheme for IoT with Fine‐Grained Access Control in Cloud Environment
CN111866181B (zh) 一种基于区块链的雾网络中任务卸载优化方法
Xiao et al. Bd-sas: Enabling dynamic spectrum sharing in low-trust environment
CN111709053A (zh) 基于松散耦合交易网络的作业方法及作业装置
CN113037497B (zh) 一种基于区块链的风险数据共享方法及系统
CN115526629A (zh) 基于区块链网络的收单交易方法、装置及身份认证装置
CN111444280B (zh) 一种数据处理系统
Nguyen Blockchain for internet of things: Data markets, learning, and sustainability
CN113538129B (zh) 一种跨机构的隐私查询请求方法及装置
US20240193611A1 (en) System and Methods of Verifiable Smart Contract as a Service
CN115378943B (zh) 基于多层共享机制的智信水务场景链数据共享方法及系统
WO2024146179A1 (zh) 跨区块链事务处理方法、相关设备、存储介质和产品
CN116962444A (zh) 基于状态通道的数据存储方法及装置

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