CN111277496B - 区块链层次化数据交换方法、装置和计算机设备 - Google Patents

区块链层次化数据交换方法、装置和计算机设备 Download PDF

Info

Publication number
CN111277496B
CN111277496B CN202010063562.6A CN202010063562A CN111277496B CN 111277496 B CN111277496 B CN 111277496B CN 202010063562 A CN202010063562 A CN 202010063562A CN 111277496 B CN111277496 B CN 111277496B
Authority
CN
China
Prior art keywords
node
data transmission
backbone
common
common 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.)
Active
Application number
CN202010063562.6A
Other languages
English (en)
Other versions
CN111277496A (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.)
Bubi Beijing Network Technology Co ltd
Original Assignee
Bubi Beijing Network Technology 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 Bubi Beijing Network Technology Co ltd filed Critical Bubi Beijing Network Technology Co ltd
Priority to CN202010063562.6A priority Critical patent/CN111277496B/zh
Publication of CN111277496A publication Critical patent/CN111277496A/zh
Application granted granted Critical
Publication of CN111277496B publication Critical patent/CN111277496B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供了一种区块链层次化数据交换方法、装置和计算机设备,该方法应用于区块链系统中的第一普通节点,区块链系统至少还包括第二普通节点和骨干节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连,向与第一普通节点直连的第一骨干节点发送数据传输请求;接收与第二普通节点直连的第二骨干节点发送的数据传输响应;在各数据传输响应中,确定目标数据传输响应并将目标数据传输响应中携带的传输路径作为目标传输路径;向第一骨干节点发送数据传输交易,数据传输交易中携带有第二普通节点的节点标识、目标数据和目标传输路径,以使目标传输路径中的各骨干节点将数据传输交易转发至第二普通节点,采用本方法提高了数据传输的安全性。

Description

区块链层次化数据交换方法、装置和计算机设备
技术领域
本申请涉及区块链的技术领域,特别是涉及一种区块链层次化数据交换方法、装置和计算机设备。
背景技术
随着区块链技术的发展,区块链在各领域的应用越来越广泛,从而越来越多的数据需要在区块链各节点间进行传输。
传统的区块链中一般采用消息广播的方式进行数据传输,数据源节点将携带数据信息的消息广播给全网各区块链节点,目的节点接收到该携带数据信息的消息后,对消息中的数据进行处理,其他区块链节点则丢弃该消息,不对数据进行处理。然而,这种数据传输方式安全性差,因此,亟需一种提高数据安全性的数据交换的方法。
发明内容
基于此,有必要针对上述技术问题,提供一种区块链层次化数据交换方法、装置和计算机设备。
第一方面,提供了一种区块链层次化数据交换方法,所述方法应用于区块链系统中的第一普通节点,所述区块链系统至少还包括第二普通节点和至少一个骨干节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述方法包括:
向与所述第一普通节点直连的第一骨干节点发送数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识;
接收与所述第二普通节点直连的第二骨干节点发送的数据传输响应,所述数据传输响应中携带有所述第一普通节点的节点标识、第二普通节点的节点标识和传输路径;
在各数据传输响应中,确定目标数据传输响应,并将所述目标数据传输响应中携带的传输路径,作为目标传输路径;
向所述第一骨干节点发送数据传输交易,所述数据传输交易中携带有所述第二普通节点的节点标识、目标数据和所述目标传输路径,以使所述目标传输路径中的各骨干节点将所述数据传输交易转发至所述第二普通节点。
作为一种可选的实施方式,所述方法还包括:
向各其他普通节点发送骨干节点申请请求,根据所述骨干节点申请请求创建申请合约并向全网其他普通节点发布,根据所述骨干节点申请请求创建申请合约并向全网其他普通节点发布,所述申请请求中携带有所述第一普通节点的资质证明、能力证明、当选共享费用和数据传输费用,以使所述全网其他普通节点根据所述申请合约中的资质证明、能力证明信息及对应的当选共享费用和数据传输费用判断所述第一普通节点是否可以申请成为骨干节点;
当所述申请合约中所述其他普通节点的节点标识数目超过预设阈值时,将所述第一普通节点切换为骨干节点。
作为一种可选的实施方式,所述方法还包括:
接收第三普通节点发布的申请合约,所述申请合约中携带有所述第三普通节点的资质证明、能力证明及对应的当选共享费用和数据传输费用;
根据预设的能力指标和费用指标评判规则,判断所述第三普通节点是否可以成为所述骨干节点;
如果所述第三普通节点满足所述第一普通节点预设的能力指标和费用指标评判规则,则将所述第一普通节点的节点标识添加至所述申请合约中。
作为一种可选的实施方式,所述数据传输响应中还包含传输路径中各骨干节点的传输费用,所述在各数据传输响应中,确定目标数据传输响应,包括:
针对每个数据传输响应,计算该数据传输响应的传输路径中各骨干节点的传输费用的总和;
在所述各数据传输响应中,确定所述传输费用总和最低的数据传输响应为目标数据传输响应。
作为一种可选的实施方式,所述数据传输交易中还携带有所述目标传输路径中各骨干节点的传输费用,所述向与所述第一骨干节点发送数据传输交易之前,所述方法还包括:
根据所述第二普通节点的公钥对所述目标数据进行加密,得到加密后的目标数据;
根据目标传输路径中各骨干节点的公钥,按照传输顺序由后到前的顺序,对所述目标传输路径中骨干节点的传输费用进行加密,得到加密后的传输费用;
所述向与所述第一骨干节点发送数据传输交易,包括:
向所述第一骨干节点发送数据传输交易,所述数据传输交易中携带有所述第二普通节点的节点标识、所述目标传输路径、所述加密后的目标数据和所述加密后的传输费用。
第二方面,提供了一种区块链层次化数据交换方法,所述方法应用于区块链系统中的骨干节点,所述区块链系统至少还包括第一普通节点和第二普通节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述方法包括:
接收数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识和第一传输路径;
在路由转发表中查询所述第二普通节点对应的目标下一跳节点,所述路由转发表包括普通节点和下一跳节点的对应关系;
判断所述目标下一跳节点中是否存在所述第二普通节点;
如果所述目标下一跳节点中存在所述第二普通节点,则向所述第一普通节点发送所述数据传输响应,所述数据传输响应中携带有所述第二普通节点的节点标识和第二传输路径,所述第二传输路径包括该骨干节点对应的节点标识和所述第一传输路径中各骨干节点的节点标识及所述第二普通节点的节点标识,以使所述第一普通节点基于所述数据传输响应中的所述第二传输路径向所述第二普通节点发送数据传输交易;
如果所述目标下一跳节点中不存在所述第二普通节点,则将自身骨干节点对应的节点标识添加到所述数据传输请求的所述第一传输路径中,并将更新后的该数据传输请求发送给所述目标下一跳节点。
作为一种可选的实施方式,所述方法还包括:
接收所述数据传输响应,所述数据传输响应包括所述第二传输路径和所述第一普通节点的节点标识;
如果该骨干节点在所述第二传输路径中存在前一个节点,则将所述前一个节点,确定为下一跳节点;
如果该骨干节点在所述第二传输路径中不存在前一个节点,则将所述第一普通节点确定为下一跳节点;
将所述数据传输响应发送给所述下一跳节点。
作为一种可选的实施方式,所述方法还包括:
接收所述数据传输交易,所述数据传输交易包括目标传输路径和目标数据;
根据所述数据传输交易中的目标传输路径,将所述目标数据传输给该骨干节点在所述目标传输路径节点顺序中对应的后一个节点,所述后一个节点为该骨干节点对应的下一跳节点。
作为一种可选的实施方式,所述数据传输请求中还包含传输费用,所述传输费用包含总传输费用上限阈值和第一传输路径中各骨干节点的传输费用,所述方法还包括:
查询所述路由转发表中自身骨干节点对应的最低传输费用,并计算该骨干节点最低传输费用与所述第一传输路径中各骨干节点传输费用的总和;
根据所述总传输费用上限阈值,判断该骨干节点最低传输费用与所述第一传输路径中各骨干节点传输费用的总和是否小于或等于所述总传输费用上限阈值;
如果该骨干节点最低传输费用与所述第一传输路径中各骨干节点传输费用的总和小于或等于所述总传输费用上限阈值,则将该骨干节点的最低传输费用添加至所述数据传输请求中第一传输路径的各骨干节点传输费用中。
第三方面,提供了一种区块链层次化数据交换装置,所述装置应用于区块链系统中的第一普通节点,所述区块链系统至少还包括第二普通节点和至少一个骨干节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述装置包括:
第一发送模块,用于向与所述第一普通节点直连的第一骨干节点发送数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识;
接收模块,用于接收与所述第二普通节点直连的第二骨干节点发送的数据传输响应,所述数据传输响应中携带有所述第一普通节点的节点标识、第二普通节点的节点标识和传输路径;
确定模块,用于在各数据传输响应中,确定目标数据传输响应,并将所述目标数据传输响应中携带的传输路径,作为目标传输路径;
第二发送模块,用于向所述第一骨干节点发送数据传输交易,所述数据传输交易中携带有所述第二普通节点的节点标识、目标数据和所述目标传输路径,以使所述目标传输路径中的各骨干节点将所述数据传输交易转发至所述第二普通节点。
第四方面,提供了一种区块链层次化数据交换装置,所述装置应用于区块链系统中的骨干节点,所述区块链系统至少还包括第一普通节点和第二普通节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述装置包括:
接收模块,用于接收数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识和第一传输路径;
查询模块,用于在路由转发表中查询所述第二普通节点对应的目标下一跳节点,所述路由转发表包括所述普通节点和下一跳节点的对应关系;
判断模块,用于判断所述目标下一跳节点中是否存在所述第二普通节点;
发送模块,用于如果所述目标下一跳节点中存在所述第二普通节点,则向所述第一普通节点发送所述数据传输响应,所述数据传输响应中携带有所述第二普通节点对应的节点标识和第二传输路径,所述第二传输路径包括该骨干节点对应的节点标识和所述第一传输路径中各骨干节点的节点标识及所述第二普通节点的节点标识,以使所述第一普通节点基于所述数据传输响应中的所述第二传输路径向所述第二普通节点发送数据传输交易;
添加模块,用于如果所述目标下一跳节点中不存在所述第二普通节点,则将自身骨干节点对应的节点标识添加到所述数据传输请求的所述第一传输路径中,并将更新后的该数据传输请求发送给所述目标下一跳节点。
本申请实施例提供了一种区块链层次化数据交换方法、装置和计算机设备,该方法应用于区块链系统中的第一普通节点,区块链系统至少还包括第二普通节点和至少一个骨干节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连,第一普通节点向与该第一普通节点直连的第一骨干节点发送数据传输请求,数据传输请求中携带有第二普通节点的节点标识;然后,第一普通节点接收与第二普通节点直连的第二骨干节点发送的数据传输响应,数据传输响应中携带有第一普通节点的节点标识、第二普通节点的节点标识和传输路径;第一普通节点在各数据传输响应中,确定目标数据传输响应,并将目标数据传输响应中携带的传输路径,作为目标传输路径;然后,第一普通节点向第一骨干节点发送数据传输交易,该数据传输交易中携带有第二普通节点的节点标识、目标数据和目标传输路径,以使目标传输路径中的各骨干节点将数据传输交易转发至第二普通节点,采用该方法提高了数据传输的安全性。
附图说明
图1为一个实施例中区块链层次化数据交换方法的流程示意图;
图2为另一个实施例中区块链层次化数据交换方法的流程示意图;
图3为一个实施例中区块链层次化数据交换装置的结构示意图;
图4为另一个实施例中区块链层次化数据交换装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了便于理解,首先对区块链中的普通节点和骨干节点进行介绍,其中,普通节点不具备数据传输功能,仅作为数据传输的源节点或者目的节点,普通节点可以通过提交申请成为骨干节点;骨干节点为承载数据传输功能的节点。
本申请提供了一种区块链层次化数据交换方法,可以应用于区块链系统中的第一普通节点,区块链系统至少还包括第二普通节点和至少一个骨干节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连。第一普通节点向与自身节点直连的第一骨干节点发送数据传输请求,数据传输请求中携带有第二普通节点的节点标识;然后,第一普通节点接收与第二普通节点直连的第二骨干节点发送的数据传输响应,数据传输响应中携带有第一普通节点的节点标识、第二普通节点的节点标识和传输路径;第一普通节点在各数据传输响应中,确定目标数据传输响应,并将目标数据传输响应中携带的传输路径,作为目标传输路径;然后,第一普通节点向第一骨干节点发送数据传输交易,其中,数据传输交易中携带有第二普通节点的节点标识、目标数据和目标传输路径,以使目标传输路径中的各骨干节点将该数据传输交易转发至第二普通节点。
可选的,区块链系统中还包括骨干节点,骨干节点接收数据传输请求,该数据传输请求中携带有第二普通节点的节点标识和第一传输路径;然后,骨干节点在路由转发表中查询第二普通节点对应的目标下一跳节点,其中,路由转发表包括普通节点和下一跳节点的对应关系;骨干节点判断目标下一跳节点中是否存在第二普通节点;如果目标下一跳节点中存在第二普通节点,则向第一普通节点发送数据传输响应,该数据传输响应中携带有第二普通节点的节点标识和第二传输路径,其中,第二传输路径包括该骨干节点对应的节点标识和第一传输路径中各骨干节点的节点标识及第二普通节点的节点标识,以使第一普通节点根据数据传输响应中的第二传输路径向第二普通节点发送数据传输交易。可选的,如果目标下一跳节点中不存在第二普通节点,则将自身骨干节点的节点标识添加到数据传输请求的第一传输路径中,并将更新后的该数据传输请求发送给目标下一跳节点。
本申请实施例提供了一种区块链层次化数据交换方法,如图1所示,该方法应用于区块链系统中的第一普通节点,则具体处理过程如下:
步骤101,向与第一普通节点直连的第一骨干节点发送数据传输请求,数据传输请求中携带有第二普通节点的节点标识。
在实施中,当第一普通节点作为数据源节点需要向目的节点发送数据时,第一普通节点向与第一普通节点直连的第一骨干节点发送数据传输请求,其中,数据传输请求中携带有第二普通节点的节点标识。
可选的,数据传输请求的字段中不仅可以包括:目的节点的节点标识(即第二普通节点的节点地址),还可以包括传输路径(此时的传输路径中还未添加骨干节点)、传输路径中各骨干节点的传输费用(此时还未添加各骨干节点的传输费用)、总传输费用上限阈值、总传输跳数上限阈值、时间戳和源节点(即第一普通节点)签名,因此,本申请实施例不做限定。
步骤102,接收与第二普通节点直连的第二骨干节点发送的数据传输响应,数据传输响应中携带有第一普通节点的节点标识、第二普通节点的节点标识和传输路径。
在实施中,第一普通节点可以接收到与第二普通节点(目的节点)直连的第二骨干节点发送的数据传输响应,其中,数据传输响应中携带有第一普通节点的节点标识、第二普通节点的节点标识和传输路径。
步骤103,在各数据传输响应中,确定目标数据传输响应,并将目标数据传输响应中携带的传输路径,作为目标传输路径。
在实施中,第一普通节点将接收到的各数据传输响应存储到本地,按照预设的路径筛选原则,确定目标数据传输响应,并将目标数据传输响应中携带的传输路径作为目标传输路径。
作为一种可选的实施方式,数据传输响应中还包含传输路径中各骨干节点的传输费用,在各数据传输响应中,确定目标数据传输响应,具体处理过程如下:
步骤一,针对每个数据传输响应,计算该数据传输响应的传输路径中各骨干节点的传输费用的总和。
在实施中,第一普通节点针对接收到的每个数据传输响应,计算该数据传输响应的传输路径中各骨干节点的传输费用的总和。
例如,第一普通节点接收到3条数据传输响应,这3条数据传输响应中携带的传输路径分别为{C,D,E,G,H,B}、{C,D,E,F,B}和{C,D,E,M,N,B}。其中C,D,E,F,G,H,M,N表示传输路径中经过的各骨干节点的节点标识,(该节点标识可以是节点的地址);B表示目的节点即第二普通节点的节点标识。对应的第一普通节点计算出的{C,D,E,G,H,B}的传输费用总和为fc+fd+fe+fg+fh;{C,D,E,F,B}的传输费用总和为fc+fd+fe+ff;{C,D,E,M,N,B}的传输费用总和为fc+fd+fe+fm+fn。
步骤二,在各数据传输响应中,确定传输费用总和最低的数据传输响应为目标数据传输响应。
在实施中,第一普通节点根据计算出的各数据传输响应的传输路径中各骨干节点的传输费用的总和,在各数据传输响应中,确定传输费用最低的数据传输响应为目标数据传输响应,从而可以确定该目标数据传输响应中携带的传输路径为目标传输路径。
例如,第一普通节点将计算的各数据传输响应的传输路径中各骨干节点的传输费用的总和进行比较,确定出传输费用(如fc+fd+fe+fg+fh)对应的数据传输响应为最低的数据传输响应,并将该最低的数据传输响应确定为目标数据传输响应,从而可以确定出该目标数据传输响应中携带的传输路径{C,D,E,G,H,B}为目标传输路径。
可选的,第一普通节点的路径筛选原则也可以为传输路径中节点数目最少或者传输路径中不包含恶意节点等原则,因此,本申请实施例不做限定。
步骤104,向第一骨干节点发送数据传输交易,数据传输交易中携带有第二普通节点的节点标识、目标数据和目标传输路径,以使目标传输路径中的各骨干节点将数据传输交易转发至第二普通节点。
在实施中,第一普通节点在确定目标传输路径后,按照目标传输路径,向传输路径中第一普通节点直连的第一骨干节点发送数据传输交易,该数据传输交易中携带有第二普通节点(目的节点)的节点标识、目标数据和目标传输路径,以使目标传输路径中的各骨干节点将数据传输交易转发至第二普通节点。
作为一种可选的实施方式,数据传输交易中还携带有目标传输路径中各骨干节点的传输费用,向与第一骨干节点发送数据传输交易向之前,方法还包括:
步骤一,根据第二普通节点的公钥对目标数据进行加密,得到加密后的目标数据。
在实施中,第一普通节点根据第二普通节点的公钥对目标数据进行加密,得到加密后的目标数据,例如,第二普通节点的公钥为PB,目标数据为m,则第一普通节点生成的加密后的目标数据可以表示为Enc(PB,m)。
步骤二,根据目标传输路径中各骨干节点的公钥,按照传输顺序由后到前的顺序,对目标传输路径中骨干节点的传输费用进行加密,得到加密后的传输费用。
在实施中,第一普通节点针对目标传输路径中每一骨干节点生成与各骨干节点的支付交易,并对各骨干节点的支付交易进行加密即第一普通节点根据目标传输路径中各骨干节点的公钥,按照在目标传输路径中由后到前的顺序,对目标传输路径中骨干节点的传输费用进行加密层层加密。具体的,针对目标传输路径{C,D,E,G,H,B},第一普通节点可以生成第一普通节点与骨干节点C的支付交易(A,B,C,fc),其中,A表示第一普通节点(数据源节点);B表示第二普通节点(目的节点),C表示骨干节点,fc表示骨干节点C的传输费用。同样的,第一普通节点生成与目标传输路径中其他骨干节点的支付交易(A,B,D,fd)(A,B,E,fe)(A,B,G,fg)(A,B,H,fh),然后,目标传输路径中各骨干节点的公钥分别为PC、PD、PE、PG、PH,则第一普通节点按照目标传输路径中由后到前的顺序对各骨干节点的传输费用(即与第一普通节点间的支付交易)进行层层加密,得到Enc(PC,Enc(PD,Enc(PE,Enc(PG,Enc(PH,(A,B,C,fc)(A,B,D,fd)(A,B,E,fe)(A,B,G,fg)(A,B,H,fh))))))。
步骤三,向第一骨干节点发送数据传输交易,数据传输交易中携带有第二普通节点的节点标识、目标传输路径、加密后的目标数据和加密后的传输费用。
在实施中,第一普通节点将加密后的数据传输交易发送给目标传输路径中第一普通节点直连的第一骨干节点,其中,该数据传输交易携带有第二普通节点的节点标识,目标传输路径、加密后的目标数据即(Enc(PB,m))和加密后的传输费用即(Enc(PC,Enc(PD,Enc(PE,Enc(PG,Enc(PH,(A,B,C,fc)(A,B,D,fd)(A,B,E,fe)(A,B,G,fg)(A,B,H,fh)))))))。
可选的,第一普通节点生成的数据传输交易,可以通过第一普通节点和第二普通节点进行联合签名生效,第一普通节点在生成数据传输交易后利用第一普通节点自身私钥对该数据传输交易进行签名,当该数据传输交易传输到第二普通节点后,第二普通节点再用第二普通节点的私钥对该数据传输交易进行签名,从而完成联合签名过程,然后,由第二普通节点将该数据传输交易发布到区块链各节点进行全网共识生效。
作为一种可选的实施方式,第一普通节点除了作为数据发送的源节点也可以作为一般的普通节点,一般普通节点可以申请成为骨干节点也可以验证其他普通节点的申请合约,具体的,分两种情况进行介绍。
情况一,第一普通节点可以通过向区块链系统发送申请成为骨干节点的请求,申请成为骨干节点,具体处理过程如下:
步骤一,向各其他普通节点发送骨干节点申请请求,根据骨干节点申请请求创建申请合约并向全网其他普通节点发布,申请请求中携带有第一普通节点的资质证明、能力证明、当选共享费用和数据传输费用,以使全网其他普通节点根据申请合约中的资质证明、能力证明信息及对应的当选共享费用和数据传输费用判断第一普通节点是否可以申请成为骨干节点。
在实施中,第一普通节点向各其他普通节点发送骨干节点申请请求,根据该骨干节点申请请求创建申请合约,该申请合约中包括第一普通节点的资质证明(如实体认证)、能力证明(如计算能力和存储能力)、当选共享费用和数据传输费用,以使全网各其他普通节点根据申请合约中的资质证明、能力证明、当选共享费用和数据传输费用判断该第一普通节点是否可以申请成为骨干节点。
其中,当选共享费用和数据传输费用均是根据第一普通节点在申请成为骨干节点时创建的当选共享费用模型和数据传输收费模型得到的。其中,当选费用共享模型用于在区块链其他普通节点通过投票的方式在各申请的普通节点中选取骨干节点的模式中,第一普通节点通过创建该当选费用共享模型,发布第一普通节点当选成功,需要对其他普通节点提供的分成费用。其他普通节点倾向于投票给分成费用更高的后选普通节点。数据传输费用模型用于在后选普通节点成为骨干节点后,构建数据传输费用和收费方式的模型,其他普通节点倾向于投票给传输时收费较低的后选普通节点。
步骤二,当申请合约中其他普通节点的节点标识数目超过预设阈值时,将第一普通节点切换为骨干节点。
在实施中,当第一普通节点发布的申请合约中其他普通节点的节点标识数目超过预设阈值时(即当全网超过半数的其他普通节点均投票给该第一普通节点时),则该第一普通节点切换为骨干节点。
可选的,第一普通节点成为骨干节点后,可以根据该数据传输收费模型对传输时的收费额度和收费方式进行调整,如果该骨干节点由于收费过高,导致很少有普通节点选择其进行数据转发时,该骨干节点可以对数据传输收费模型进行调整,从而调低该骨干节点的传输费用。
可选的,如果第一普通节点成为骨干节点后,需要创建路由转发表。其中,路由转发表包括路由目标标识、下一跳节点和最低收费。路由目标标识可以根据目的节点地址或目的节点地址的哈希值等字段的特殊位(比如,目的节点地址的最后一位)进行分类标识,本申请实施例不做限定。下一跳节点为与该骨干节点邻接的转发节点,该骨干节点对应路由目标标识(也可以称为目的节点标识)将目标数据发送给下一跳节点。最低收费为该骨干节点传输目标数据所需传输费用的最低收费标准,如果普通节点给出低于该最低收费的数据传输费用,则该骨干节点拒绝转发目标数据。可选的,如果该骨干节点为到达目的节点的最后一跳,则该骨干节点对应的路由转发表中下一跳节点的节点标识就是路由目标标识。另外,区块链系统中每个骨干节点均分配有路由目标标识,比如骨干节点1对应的承载所有节点地址尾数为0-1的目的节点(称为目的节点0-1)的数据的传输,则该骨干节点1采用路由广播的方式逐跳广播发布其承载的目的节点的消息,直至全网区块链中的各骨干节点均接收该消息并更新自身路由转发表。需要说明的是,并不是每个骨干节点对应的路由转发表中,目的节点0-1对应的下一跳节点都是骨干节点1,也可以是到达该骨干节点1最近的下一跳节点。可选的,目的节点0-1的下一跳节点也可以是多个骨干节点。
可选的,骨干节点对应的路由转发表中转发的数据条数越多,表示该骨干节点的收益越高,但骨干节点的路由转发表中转发数据的条数并不是无限大的,路由转发表中转发数据的条数与该骨干节点的信誉度成正比,当该骨干节点进行数据传输时,如果因为计算能力和存储能力有限等原因导致数据传输难以完成时,该骨干接点的信誉度会降低,因此该骨干节点的路由转发表中转发数据的条数也会随之降低。
情况二,第一普通节点也可以作为区块链系统中的验证其他普通节点申请合约的验证节点,例如,第一普通节点接收第三普通节点发布的申请合约,申请合约中携带有第三普通节点的资质证明、能力证明及对应的当选共享费用和数据传输费用;第一普通节点根据预设的能力指标(例如,节点计算能力指标和节点存储能力指标)和费用指标评判规则(当选共享费用指标和传输费用指标),判断第三普通节点是否可以成为骨干节点;如果第三普通节点满足第一普通节点预设的能力指标和费用指标评判规则,则将第一普通节点的节点标识添加至申请合约中,即投票给第三普通节点。可选的,区块链系统中普通节点(即第一普通节点)对申请节点(即第三普通节点)进行筛选时,可以但不限于为集中筛选(如区块链投票)的方式,本申请实施例不做限定。
本申请实施例提供了一种区块链层次化数据交换方法,该方法应用于区块链系统中的第一普通节点,区块链系统至少还包括第二普通节点和至少一个骨干节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连,第一普通节点向与该第一普通节点直连的第一骨干节点发送数据传输请求,数据传输请求中携带有第二普通节点的节点标识;然后,第一普通节点接收与第二普通节点直连的第二骨干节点发送的数据传输响应,数据传输响应中携带有第一普通节点的节点标识、第二普通节点的节点标识和传输路径;第一普通节点在各数据传输响应中,确定目标数据传输响应,并将目标数据传输响应中携带的传输路径,作为目标传输路径;然后,第一普通节点向第一骨干节点发送数据传输交易,数据传输交易中携带有第二普通节点的节点标识、目标数据和目标传输路径,以使目标传输路径中的各骨干节点将数据传输交易转发至第二普通节点,采用该数据传输方法提高了数据传输的安全性。
本申请实施例还提供了一种区块链层次化数据交换方法,如图2所示,方法应用于区块链系统中的骨干节点,其中,区块链系统至少还包括第一普通节点和第二普通节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连,则具体的处理过程如下:
步骤201,接收数据传输请求,数据传输请求中携带有第二普通节点的节点标识和第一传输路径。
在实施中,骨干节点接收数据传输请求,该数据传输请求中携带有第二普通节点的节点标识和第一传输路径。例如,接收到由第一普通节点发送的数据传输请求,则该数据传输请求携带有第二普通节点的节点标识B和第一传输路径{C,D,E,G}。
步骤202,在路由转发表中查询第二普通节点对应的目标下一跳节点,路由转发表包括普通节点和下一跳节点的对应关系。
在实施中,骨干节点在自身路由表中查询到达第二普通节点(即目的节点)对应的目标下一跳节点,其中,路由转发表包含普通节点(即目的节点)和下一跳节点的对应关系。
作为一种可选的实施方式,数据传输请求中还可以包含传输费用,传输费用中包含总传输费用上限阈值和第一传输路径中各骨干节点的传输费用,则骨干节点在接收到数据传输请求后,具体处理过程如下:
步骤一,查询路由转发表中自身骨干节点对应的最低传输费用,并计算该骨干节点最低传输费用与第一传输路径中各骨干节点传输费用的总和。
在实施中,骨干节点查询自身路由转发表中对应的最低传输费用,然后计算该骨干节点传输费用与第一传输路径中各骨干节点传输费用的总和,例如:骨干节点H的最低传输费用为fh,则骨干节点H接收到前一骨干节点G发送的数据传输请求中携带有第一传输路径{C,D,E,G}中各骨干节点的传输费用fc+fd+fe+fg,则计算该骨干节点H最低传输费用fh与第一传输路径中各骨干节点传输费用{fc,fd,fe,fg}的总和为fc+fd+fe+fg+fh。
步骤二,根据总传输费用上限阈值,判断该骨干节点最低传输费用与第一传输路径中各骨干节点传输费用的总和是否小于或等于总传输费用上限阈值。
在实施中,骨干节点根据传输请求中携带的总传输费用上限阈值,判断自身节点的最低传输费用与第一传输路径中各骨干节点传输费用的总和是否小于或等于总传输费用上限阈值。例如,数据传输请求中携带的总传输费用上限阈值为fs,则判断是否fc+fd+fe+fg+fh<=fs。
步骤三,如果该骨干节点最低传输费用与第一传输路径中各骨干节点传输费用的总和小于或等于总传输费用上限阈值,则将该骨干节点的最低传输费用添加至数据传输请求中第一传输路径的各骨干节点传输费用中。
在实施中,如果该骨干节点最低传输费用与第一传输路径中各骨干节点传输费用的总和小于或等于总传输费用上限阈值,则骨干节点将自身节点的最低传输费用添加至数据传输请求中第一传输路径的各骨干节点传输费用中。具体的,如果fc+fd+fe+fg+fh<=fs,则骨干节点H将自身最低传输费用添加至第一传输路径各骨干节点传输费用中,即为{fc,fd,fe,fg,fh}。可选的,将骨干节点H更新到第一传输路径中为{C,D,E,G,H}。
步骤203,判断目标下一跳节点中是否存在第二普通节点。
步骤204,如果目标下一跳节点中存在第二普通节点,则向第一普通节点发送数据传输响应,数据传输响应中携带有第二普通节点的节点标识和第二传输路径,第二传输路径包括该骨干节点对应的节点标识和第一传输路径中各骨干节点的节点标识及第二普通节点的节点标识,以使第一普通节点基于数据传输响应中的第二传输路径向第二普通节点发送数据传输交易。
在实施中,骨干节点判断到达目的节点(即第二普通节点)对应的目标下一跳节点中是否存在第二普通节点,如果目标下一跳中存在第二普通节点,则该骨干节点向第一普通节点(即数据源节点)发送数据传输响应,该数据传输响应中携带有第二普通节点的节点标识和第二传输路径。第二传输路径为第一传输路径中各骨干节点的节点标识及添加了该骨干节点的节点标识和第二普通节点的节点标识的传输路径。以使第一普通节点基于数据传输响应中的第二传输路径向第二普通节点发送数据传输交易。具体的,骨干节点H判断目的节点B(即第二普通节点)对应的目标下一跳节点中是否存在第二普通节点对应的节点标识,当存在第二普通节点的节点标识B时,即表明骨干节点H为到达第二普通节点B的最后一跳,则骨干节点H生成数据传输响应。该数据传输响应中包含第二普通节点(即目的节点B)的节点标识(可以为第二普通节点的节点地址)和第二传输路径{C,D,E,G,H,B}。
步骤205,如果目标下一跳节点中不存在第二普通节点,则将自身骨干节点对应的节点标识添加到数据传输请求的第一传输路径中,并将更新后的该数据传输请求发送给目标下一跳节点。
在实施中,如果骨干节点判断出到达目的节点(第二普通节点)的目标下一跳节点中不存在第二普通节点(即该骨干节点不是到达目的节点的最后一跳),则将自身骨干节点的节点标识添加到数据传输请求的第一传输路径中,并将更新后的数据传输请求发送给到达目的节点的全部目标下一跳节点。具体的,骨干节点H不是到达目的节点B的最后一跳,则将自身骨干节点的节点标识添加到数据传输请求的第一传输路径中为{C,D,E,G,H},然后,将更新后的数据传输请求发送给目标下一节点如骨干节点K。可选的,目标下一节点可以为多个,当目标下一节点为多个(如骨干节点K和骨干节点M)时,则骨干节点H将更新后的数据传输请求发送全部的目标下一节点即骨干节点K和骨干节点M。
作为一种可选的实施方式,骨干节点接收数据传输响应,数据传输响应包括第二传输路径和第一普通节点的节点标识;如果该骨干节点在第二传输路径中存在前一个节点,则将前一个节点,确定为下一跳节点;如果该骨干节点在第二传输路径中不存在前一个节点,则将第一普通节点确定为下一跳节点;将数据传输响应发送给下一跳节点。
在实施中,骨干节点还可以用来接收数据传输响应,该数据传输响应中包括第二传输路径和第一普通节点(数据源节点)的节点标识(骨干节点在传输数据传输响应时,对应的第一普通节点就作为数据传输响应的目的节点)。当该骨干节点在第二传输路径中存在前一个节点,则骨干节点将前一个节点,确定为下一跳节点。具体的,当骨干节点G接收到数据传输响应时,该数据传输响应中携带的第二传输路径为{C,D,E,G,H,B},则骨干节点G在第二传输路径中存在前一节点(骨干节点E),则骨干节点G将前一节点(骨干节点E),作为下一跳节点,将数据传输响应发送给下一跳节点E。
如果该骨干节点在第二传输路径中不存在前一个节点,则将第一普通节点确定为下一跳节点;将数据传输响应发送给下一跳节点。
具体的,当骨干节点C接收到数据传输响应时,该数据传输响应中携带的第二传输路径为{C,D,E,G,H,B},则骨干节点C在第二传输路径中不存在前一节点。因此,骨干节点C将数据传输响应中携带的第一普通节点(数据源节点A)作为下一跳节点,将数据传输响应发送给下一跳节点A。
可选的,该数据传输响应中还包括第二普通节点的节点标识,第二传输路径中各骨干节点的传输费用、数据传输跳数上限阈值、总传输费用上限阈值、时间戳和签名,因此,本申请实施例不做限定。
可选的,数据传输响应中携带的第一普通节点的节点标识也可以直接添加到第二传输路径中,用于数据传输响应的传输,本申请实施例不做限定。
作为一种可选的实施方式,骨干节点接收数据传输交易,数据传输交易包括目标传输路径和目标数据;根据数据传输交易中的目标传输路径,将目标数据传输给该骨干节点在目标传输路径节点顺序中对应的后一个节点,后一个节点为该骨干节点对应的下一跳节点。
在实施中,骨干节点还可以接收由第一普通节点(数据源节点)创建的数据传输交易,该数据传输交易中包括目标传输路径和目标数据,骨干节点根据数据传输交易中的目标传输路径,可以将目标数据传输给该骨干节点在目标传输路径节点顺序中的后一个节点,即对应的到达目的节点的下一跳节点。可选的,当数据传输交易中还包括数据传输费用时,该骨干节点需要根据自身的私钥对层层加密的数据支付交易进行解压,然后发送给对应的下一跳节点。
作为一种可选的实施方式,区块链系统中还可以包括监管节点,监管节点对每一个骨干节点的数据传输过程进行查询监管;如果数据传输过程未在预设时长内完成(如骨干节点接收到目标数据后不进行传输),监管节点根据该骨干节点的路由转发表分析该骨干节点的传输数据行为,确定为恶意不传输行为或者接收到其他骨干节点的投诉,则根据预设的处罚规则对该骨干节点进行处罚。比如,扣除该骨干节点的传输质押金,减少该骨干节点的数据转发条数、降低该骨干节点的节点信誉度或者解除该节点的骨干节点资格等。可选的,如果普通节点发起恶意数据传输请求,即构造大量无效数据包进行数据传输申请,则监管节点也会对该普通节点进行处罚。
本申请实施例还提供了一种区块链层次化数据交换方法,该方法应用于区块链系统中的骨干节点,区块链系统至少还包括第一普通节点和第二普通节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连,骨干节点接收数据传输请求,数据传输请求中携带有第二普通节点的节点标识和第一传输路径。然后,骨干节点在路由转发表中查询第二普通节点对应的目标下一跳节点,路由转发表包括普通节点和下一跳节点的对应关系;骨干节点判断目标下一跳节点中是否存在第二普通节点;如果目标下一跳节点中存在第二普通节点,则骨干节点向第一普通节点发送数据传输响应,数据传输响应中携带有第二普通节点的节点标识和第二传输路径,第二传输路径包括该骨干节点对应的节点标识和第一传输路径中各骨干节点的节点标识及第二普通节点的节点标识,以使第一普通节点基于数据传输响应中的第二传输路径向第二普通节点发送数据传输交易。如果目标下一跳节点中不存在第二普通节点,则骨干节点将自身骨干节点对应的节点标识添加到数据传输请求的第一传输路径中,并将更新后的该数据传输请求发送给目标下一跳节点。采用此数据传输方法提高了数据传输的安全性。
本申请实施例还提供了一种区块链层次化数据交换装置300,如图3所示,该装置应用于区块链系统中的第一普通节点,区块链系统至少还包括第二普通节点和至少一个骨干节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连,该装置包括:
第一发送模块310,用于向与第一普通节点直连的第一骨干节点发送数据传输请求,数据传输请求中携带有第二普通节点的节点标识;
接收模块320,用于接收与第二普通节点直连的第二骨干节点发送的数据传输响应,数据传输响应中携带有第一普通节点的节点标识、第二普通节点的节点标识和传输路径;
确定模块330,用于在各数据传输响应中,确定目标数据传输响应,并将目标数据传输响应中携带的传输路径,作为目标传输路径;
第二发送模块340,用于向第一骨干节点发送数据传输交易,数据传输交易中携带有第二普通节点的节点标识、目标数据和目标传输路径,以使目标传输路径中的各骨干节点将数据传输交易转发至第二普通节点。
本申请实施例还提供了一种区块链层次化数据交换装置400,如图4所示,该装置应用于区块链系统中的骨干节点,区块链系统至少还包括第一普通节点和第二普通节点,第一普通节点与第二普通节点之间通过至少一个骨干节点相连,该装置包括:
接收模块410,用于接收数据传输请求,数据传输请求中携带有第二普通节点的节点标识和第一传输路径;
查询模块420,用于在路由转发表中查询第二普通节点对应的目标下一跳节点,路由转发表包括普通节点和下一跳节点的对应关系;
判断模块430,用于判断目标下一跳节点中是否存在第二普通节点;
发送模块440,用于如果目标下一跳节点中存在第二普通节点,则向第一普通节点发送数据传输响应,数据传输响应中携带有第二普通节点的节点标识和第二传输路径,第二传输路径包括该骨干节点对应的节点标识和第一传输路径中各骨干节点的节点标识及第二普通节点的节点标识,以使第一普通节点基于数据传输响应中的第二传输路径向第二普通节点发送数据传输交易;
添加模块450,用于如果目标下一跳节点中不存在第二普通节点,则将自身骨干节点对应的节点标识添加到数据传输请求的第一传输路径中,并将更新后的该数据传输请求发送给目标下一跳节点。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (11)

1.一种区块链层次化数据交换方法,其特征在于,所述方法应用于区块链系统中的第一普通节点,所述区块链系统至少还包括第二普通节点和至少一个骨干节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述方法包括:
向与所述第一普通节点直连的第一骨干节点发送数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识;
接收与所述第二普通节点直连的第二骨干节点发送的数据传输响应,所述数据传输响应中携带有所述第一普通节点的节点标识、第二普通节点的节点标识和传输路径;
在各数据传输响应中,确定目标数据传输响应,并将所述目标数据传输响应中携带的传输路径,作为目标传输路径;
向所述第一骨干节点发送数据传输交易,所述数据传输交易中携带有所述第二普通节点的节点标识、目标数据和所述目标传输路径,以使所述目标传输路径中的各骨干节点将所述数据传输交易转发至所述第二普通节点。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向各其他普通节点发送骨干节点申请请求,根据所述骨干节点申请请求创建申请合约并向全网其他普通节点发布,所述申请请求中携带有所述第一普通节点的资质证明、能力证明、当选共享费用和数据传输费用,以使所述全网其他普通节点根据所述申请合约中的资质证明、能力证明信息及对应的当选共享费用和数据传输费用判断所述第一普通节点是否可以申请成为骨干节点;
当所述申请合约中所述其他普通节点的节点标识数目超过预设阈值时,将所述第一普通节点切换为骨干节点。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收第三普通节点发布的申请合约,所述申请合约中携带有所述第三普通节点的资质证明、能力证明及对应的当选共享费用和数据传输费用;
根据预设的能力指标和费用指标评判规则,判断所述第三普通节点是否可以成为所述骨干节点;
如果所述第三普通节点满足所述第一普通节点预设的能力指标和费用指标评判规则,则将所述第一普通节点的节点标识添加至所述申请合约中。
4.根据权利要求1所述的方法,其特征在于,所述数据传输响应中还包含传输路径中各骨干节点的传输费用,所述在各数据传输响应中,确定目标数据传输响应,包括:
针对每个数据传输响应,计算该数据传输响应的传输路径中各骨干节点的传输费用的总和;
在所述各数据传输响应中,确定所述传输费用总和最低的数据传输响应为目标数据传输响应。
5.根据权利要求4所述的方法,其特征在于,所述数据传输交易中还携带有所述目标传输路径中各骨干节点的传输费用,所述向与所述第一骨干节点发送数据传输交易之前,所述方法还包括:
根据所述第二普通节点的公钥对所述目标数据进行加密,得到加密后的目标数据;
根据目标传输路径中各骨干节点的公钥,按照传输顺序由后到前的顺序,对所述目标传输路径中骨干节点的传输费用进行加密,得到加密后的传输费用;
所述向与所述第一骨干节点发送数据传输交易,包括:
向所述第一骨干节点发送数据传输交易,所述数据传输交易中携带有所述第二普通节点的节点标识、所述目标传输路径、所述加密后的目标数据和所述加密后的传输费用。
6.一种区块链层次化数据交换方法,其特征在于,所述方法应用于区块链系统中的骨干节点,所述区块链系统至少还包括第一普通节点和第二普通节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述方法包括:
接收数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识和第一传输路径;
在路由转发表中查询所述第二普通节点对应的目标下一跳节点,所述路由转发表包括普通节点和下一跳节点的对应关系;
判断所述目标下一跳节点中是否存在所述第二普通节点;
如果所述目标下一跳节点中存在所述第二普通节点,则向所述第一普通节点发送所述数据传输响应,所述数据传输响应中携带有所述第二普通节点的节点标识和第二传输路径,所述第二传输路径包括该骨干节点对应的节点标识和所述第一传输路径中各骨干节点的节点标识及所述第二普通节点的节点标识,以使所述第一普通节点基于所述数据传输响应中的所述第二传输路径向所述第二普通节点发送数据传输交易;
如果所述目标下一跳节点中不存在所述第二普通节点,则将自身骨干节点对应的节点标识添加到所述数据传输请求的所述第一传输路径中,并将更新后的该数据传输请求发送给所述目标下一跳节点。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
接收所述数据传输响应,所述数据传输响应包括所述第二传输路径和所述第一普通节点的节点标识;
如果该骨干节点在所述第二传输路径中存在前一个节点,则将所述前一个节点,确定为下一跳节点;
如果该骨干节点在所述第二传输路径中不存在前一个节点,则将所述第一普通节点确定为下一跳节点;
将所述数据传输响应发送给所述下一跳节点。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
接收所述数据传输交易,所述数据传输交易包括目标传输路径和目标数据;
根据所述数据传输交易中的目标传输路径,将所述目标数据传输给该骨干节点在所述目标传输路径节点顺序中对应的后一个节点,所述后一个节点为该骨干节点对应的下一跳节点。
9.根据权利要求6所述的方法,其特征在于,所述数据传输请求中还包含传输费用,所述传输费用包含总传输费用上限阈值和第一传输路径中各骨干节点的传输费用,所述方法还包括:
查询所述路由转发表中自身骨干节点对应的最低传输费用,并计算该骨干节点最低传输费用与所述第一传输路径中各骨干节点传输费用的总和;
根据所述总传输费用上限阈值,判断该骨干节点最低传输费用与所述第一传输路径中各骨干节点传输费用的总和是否小于或等于所述总传输费用上限阈值;
如果该骨干节点最低传输费用与所述第一传输路径中各骨干节点传输费用的总和小于或等于所述总传输费用上限阈值,则将该骨干节点的最低传输费用添加至所述数据传输请求中第一传输路径的各骨干节点传输费用中。
10.一种区块链层次化数据交换装置,其特征在于,所述装置应用于区块链系统中的第一普通节点,所述区块链系统至少还包括第二普通节点和至少一个骨干节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述装置包括:
第一发送模块,用于向与所述第一普通节点直连的第一骨干节点发送数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识;
接收模块,用于接收与所述第二普通节点直连的第二骨干节点发送的数据传输响应,所述数据传输响应中携带有所述第一普通节点的节点标识、第二普通节点的节点标识和传输路径;
确定模块,用于在各数据传输响应中,确定目标数据传输响应,并将所述目标数据传输响应中携带的传输路径,作为目标传输路径;
第二发送模块,用于向所述第一骨干节点发送数据传输交易,所述数据传输交易中携带有所述第二普通节点的节点标识、目标数据和所述目标传输路径,以使所述目标传输路径中的各骨干节点将所述数据传输交易转发至所述第二普通节点。
11.一种区块链层次化数据交换装置,其特征在于,所述装置应用于区块链系统中的骨干节点,所述区块链系统至少还包括第一普通节点和第二普通节点,所述第一普通节点与所述第二普通节点之间通过至少一个所述骨干节点相连,所述装置包括:
接收模块,用于接收数据传输请求,所述数据传输请求中携带有所述第二普通节点的节点标识和第一传输路径;
查询模块,用于在路由转发表中查询所述第二普通节点对应的目标下一跳节点,所述路由转发表包括所述普通节点和下一跳节点的对应关系;
判断模块,用于判断所述目标下一跳节点中是否存在所述第二普通节点;
发送模块,用于如果所述目标下一跳节点中存在所述第二普通节点,则向所述第一普通节点发送所述数据传输响应,所述数据传输响应中携带有所述第二普通节点的节点标识和第二传输路径,所述第二传输路径包括该骨干节点对应的节点标识和所述第一传输路径中各骨干节点的节点标识及所述第二普通节点的节点标识,以使所述第一普通节点基于所述数据传输响应中的所述第二传输路径向所述第二普通节点发送数据传输交易;
添加模块,用于如果所述目标下一跳节点中不存在所述第二普通节点,则将自身骨干节点对应的节点标识添加到所述数据传输请求的所述第一传输路径中,并将更新后的该数据传输请求发送给所述目标下一跳节点。
CN202010063562.6A 2020-01-20 2020-01-20 区块链层次化数据交换方法、装置和计算机设备 Active CN111277496B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010063562.6A CN111277496B (zh) 2020-01-20 2020-01-20 区块链层次化数据交换方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010063562.6A CN111277496B (zh) 2020-01-20 2020-01-20 区块链层次化数据交换方法、装置和计算机设备

Publications (2)

Publication Number Publication Date
CN111277496A CN111277496A (zh) 2020-06-12
CN111277496B true CN111277496B (zh) 2021-11-19

Family

ID=71001112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010063562.6A Active CN111277496B (zh) 2020-01-20 2020-01-20 区块链层次化数据交换方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN111277496B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111541790B (zh) * 2020-07-10 2020-10-23 北京东方通科技股份有限公司 一种基于区块链的大数据处理方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503995A (zh) * 2016-11-17 2017-03-15 中国银行股份有限公司 一种数据分享方法、源节点、目标节点及系统
CN109034813A (zh) * 2018-09-07 2018-12-18 腾讯科技(深圳)有限公司 代表节点设备选举方法、装置、计算机设备及存储介质
CN110335037A (zh) * 2019-04-19 2019-10-15 矩阵元技术(深圳)有限公司 基于区块链和多方安全计算的交易方法、装置及存储介质
CN110506409A (zh) * 2017-01-13 2019-11-26 维萨国际服务协会 安全区块链管理技术
CN110557359A (zh) * 2018-06-01 2019-12-10 厦门本能管家科技有限公司 一种基于区块链的消息通信方法及其装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2975843C (en) * 2016-08-10 2023-06-13 Peer Ledger Inc. Apparatus, system, and methods for a blockchain identity translator

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503995A (zh) * 2016-11-17 2017-03-15 中国银行股份有限公司 一种数据分享方法、源节点、目标节点及系统
CN110506409A (zh) * 2017-01-13 2019-11-26 维萨国际服务协会 安全区块链管理技术
CN110557359A (zh) * 2018-06-01 2019-12-10 厦门本能管家科技有限公司 一种基于区块链的消息通信方法及其装置
CN109034813A (zh) * 2018-09-07 2018-12-18 腾讯科技(深圳)有限公司 代表节点设备选举方法、装置、计算机设备及存储介质
CN110335037A (zh) * 2019-04-19 2019-10-15 矩阵元技术(深圳)有限公司 基于区块链和多方安全计算的交易方法、装置及存储介质

Also Published As

Publication number Publication date
CN111277496A (zh) 2020-06-12

Similar Documents

Publication Publication Date Title
CN110046521B (zh) 去中心化隐私保护方法
CN109462587B (zh) 区块链分层共识方法、区块链网络系统及区块链节点
US10135616B2 (en) Revocation of cryptographic keys in the absence of a trusted central authority
CN113194469B (zh) 基于区块链的5g无人机跨域身份认证方法、系统及终端
Čapkun et al. SECTOR: secure tracking of node encounters in multi-hop wireless networks
CN101981889B (zh) 计算机集群系统中的安全通信
CN110059503B (zh) 可追溯的社交信息防泄露方法
CN110771088A (zh) 用于解决在网络故障情况下与区块链外通道相关出现的安全性相关漏洞的系统和方法
CN112418860A (zh) 一种基于跨链技术的区块链高效管理架构及工作方法
CN110191153B (zh) 基于区块链的社交通信方法
CN111294339B (zh) 基于Fabric架构的同构联盟链跨链方法及装置
CN112651830B (zh) 应用于电力资源共享网络的区块链共识方法
CN113328997B (zh) 联盟链跨链系统及方法
Zou et al. Crowdhb: A decentralized location privacy-preserving crowdsensing system based on a hybrid blockchain network
CN111126988A (zh) 基于区块链的转账方法、装置、设备及计算机介质
CN113726913B (zh) 骨干节点接入方法和区块链系统
CN104010302A (zh) 车载自组织网络路况数据信任评价方法
CN113949544A (zh) 基于dag区块链的物联网设备轻量级认证和访问授权方法
CN115361395A (zh) 一种基于区块链支付通道网络的物联网数据共享方法
CN111277496B (zh) 区块链层次化数据交换方法、装置和计算机设备
CN112910661B (zh) 适用于电子签约的区块链共识方法、装置、设备及介质
CN112039837B (zh) 一种基于区块链和秘密共享的电子证据保全方法
Fujitani et al. A privacy-preserving enforced bill collection system using smart contracts
CN106559474B (zh) 分布式总账的高吞吐量数据处理方法及系统
CN115664735A (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