消息传输方法及装置.pdf

上传人:奶盖 文档编号:10050168 上传时间:2021-06-02 格式:PDF 页数:23 大小:799.26KB
收藏 版权申诉 举报 下载
消息传输方法及装置.pdf_第1页
第1页 / 共23页
消息传输方法及装置.pdf_第2页
第2页 / 共23页
消息传输方法及装置.pdf_第3页
第3页 / 共23页
文档描述:

《消息传输方法及装置.pdf》由会员分享,可在线阅读,更多相关《消息传输方法及装置.pdf(23页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202011019924.8 (22)申请日 2020.09.25 (71)申请人 支付宝 (杭州) 信息技术有限公司 地址 310000 浙江省杭州市西湖区西溪路 556号8层B段801-11 (72)发明人 孙赫曾超王江 (74)专利代理机构 北京博思佳知识产权代理有 限公司 11415 代理人 周嗣勇 (51)Int.Cl. H04L 12/701(2013.01) H04L 12/721(2013.01) H04L 25/20(2006.01) H04L 9/32(200。

2、6.01) H04L 29/06(2006.01) (54)发明名称 消息传输方法及装置 (57)摘要 本说明书提供一种消息传输方法及装置, 应 用于区块链中继通信网络中的中继节点; 该方法 可以包括: 接收各个区块链节点发送的数字证 书, 所述数字证书中包含各个区块链节点的身份 信息和所属区块链网络的网络标识信息; 通过签 发所述数字证书的CA认证中心的公钥对所述数 字证书进行验签, 并在验签通过的情况下关联记 录各个区块链节点的身份信息与相应的网络标 识信息的映射关系; 在接收到任一区块链节点发 送的区块链消息的情况下, 确定所述区块链消息 的接收方身份信息和所述任一区块链节点的目 标网络。

3、标识信息, 并根据所述映射关系确定匹配 于所述目标网络标识信息和所述接收方身份信 息的目标区块链节点; 向所述目标区块链节点传 输所述区块链消息。 权利要求书3页 说明书15页 附图4页 CN 111934996 A 2020.11.13 CN 111934996 A 1.一种消息传输方法, 应用于区块链中继通信网络中的中继节点, 所述方法包括: 接收各个区块链节点发送的数字证书, 所述数字证书中包含各个区块链节点的身份信 息和所属区块链网络的网络标识信息; 通过签发所述数字证书的CA认证中心的公钥对所述数字证书进行验签, 并在验签通过 的情况下关联记录各个区块链节点的身份信息与相应的网络标识。

4、信息的映射关系; 在接收到任一区块链节点发送的区块链消息的情况下, 确定所述区块链消息的接收方 身份信息和所述任一区块链节点的目标网络标识信息, 并根据所述映射关系确定匹配于所 述目标网络标识信息和所述接收方身份信息的目标区块链节点; 向所述目标区块链节点传输所述区块链消息。 2.根据权利要求1所述的方法, 各个区块链节点所属区块链网络的网络标识信息由所 述CA认证中心基于相应区块链节点维护的创世块生成。 3.根据权利要求1所述的方法, 区块链节点的身份信息包括相应的区块链节点的节点 标识信息和/或节点公钥。 4.根据权利要求3所述的方法, 还包括: 在身份信息包括节点标识信息和节点公钥的情况。

5、下, 若针对所述数字证书验签通过, 则通过所述数字证书中包含的节点公钥对所述数字证书中包含的节点标识信息进行验签。 5.根据权利要求4所述的方法, 还包括: 在针对节点标识信息验签通过的情况下, 与相应的区块链节点建立传输通道, 所述传 输通道用于在所述中继节点与该区块链节点之间传输区块链消息。 6.根据权利要求1所述的方法, 还包括: 向各个区块链节点发送所述中继节点的数字证书; 其中, 在所述中继节点的数字证书被各个区块链节点通过所述CA认证中心的公钥验签 通过的情况下, 各个区块链节点的数字证书被发送至所述中继节点。 7.根据权利要求1所述的方法, 所述区块链消息中包含目标区块链节点集合。

6、的集合标 识; 所述方法还包括: 确定与所述集合标识对应的目标区块链节点集合; 所述根据所述映射关系确定匹配于所述目标网络标识信息和所述接收方身份信息的 目标区块链节点, 包括: 根据所述映射关系确定所述目标区块链节点集合中匹配于所述目 标网络标识信息和所述接收方身份信息的目标区块链节点。 8.根据权利要求7所述的方法, 还包括: 根据各个区块链节点提交的注册请求, 分别将各个区块链节点注册至所述注册请求所 指示的区块链节点集合中。 9.根据权利要求7所述的方法, 各个区块链节点的数字证书中包含相应的区块链节点 所属区块链节点集合的集合标识; 所述方法还包括: 在针对所述数字证书验签通过的情况。

7、下, 分别将各个区块链节点注册至所述数字证书 包含的集合标识所指示的区块链节点集合中。 10.根据权利要求1所述的方法, 所述区块链消息包括以下至少之一: 区块同步消息、 共识消息、 交易同步消息。 11.一种消息传输方法, 应用于区块链节点, 所述方法包括: 权利要求书 1/3 页 2 CN 111934996 A 2 获取CA认证中心向所述区块链节点签发的数字证书, 所述数字证书中包含所述区块链 节点的身份信息和所属区块链网络的网络标识信息; 向区块链中继通信网络中的中继节点发送所述数字证书, 所述中继节点用于根据所述 CA认证中心的公钥对各个区块链节点发送的数字证书进行验签, 并在验签通。

8、过的情况下关 联记录各个区块链节点的身份信息与相应的网络标识信息的映射关系; 以及, 在接收到任 一区块链节点发送的区块链消息的情况下, 确定所述区块链消息的接收方身份信息和所述 任一区块链节点的目标网络标识信息, 并根据所述映射关系确定匹配于所述目标网络标识 信息和所述接收方身份信息的目标区块链节点, 以向所述目标区块链节点传输所述区块链 消息。 12.根据权利要求11所述的方法, 各个区块链节点所属区块链网络的网络标识信息由 所述CA认证中心基于相应区块链节点维护的创世块生成。 13.根据权利要求11所述的方法, 区块链节点的身份信息包括相应的区块链节点的节 点标识信息和/或节点公钥。 1。

9、4.根据权利要求13所述的方法, 在身份信息包括节点标识信息和节点公钥的情况下, 若所述中继节点针对所述数字证书验签通过, 则所述数字证书中包含的节点标识信息被所 述中继节点通过所述数字证书中包含的节点公钥进行验签。 15.根据权利要求14所述的方法, 在针对所述节点标识信息验签通过的情况下, 所述中 继节点与所述区块链节点建立传输通道, 所述传输通道用于在所述中继节点与所述区块链 节点之间传输区块链消息。 16.根据权利要求11所述的方法, 还包括: 获取所述中继节点的数字证书, 并通过所述CA认证中心的公钥对所述中继节点的数字 证书进行验签, 以在验签通过的情况下向所述中继节点发送自身的数。

10、字证书。 17.根据权利要求11所述的方法, 所述区块链消息中包含目标区块链节点集合的集合 标识; 其中, 所述中继节点用于确定与所述集合标识对应的目标区块链节点集合, 并根据所 述映射关系确定所述目标区块链节点集合中匹配于所述目标网络标识信息和所述接收方 身份信息的目标区块链节点。 18.根据权利要求17所述的方法, 还包括: 向所述中继节点提交注册请求, 所述注册请求用于指示所述中继节点分别将提交注册 请求的各个区块链节点注册至相应的注册请求所指示的区块链节点集合中。 19.根据权利要求17所述的方法, 各个区块链节点的数字证书中包含相应的区块链节 点所属区块链节点集合的集合标识; 其中,。

11、 所述中继节点用于在针对所述数字证书验签通 过的情况下, 分别将各个区块链节点注册至所述数字证书包含的集合标识所指示的区块链 节点集合中。 20.根据权利要求11所述的方法, 所述区块链消息包括以下至少之一: 区块同步消息、 共识消息、 交易同步消息。 21.一种消息传输装置, 应用于区块链中继通信网络中的中继节点, 所述装置包括: 接收单元, 接收各个区块链节点发送的数字证书, 所述数字证书中包含各个区块链节 点的身份信息和所属区块链网络的网络标识信息; 验证单元, 通过签发所述数字证书的CA认证中心的公钥对所述数字证书进行验签, 并 权利要求书 2/3 页 3 CN 111934996 A。

12、 3 在验签通过的情况下关联记录各个区块链节点的身份信息与相应的网络标识信息的映射 关系; 确定单元, 在接收到任一区块链节点发送的区块链消息的情况下, 确定所述区块链消 息的接收方身份信息和所述任一区块链节点的目标网络标识信息, 并根据所述映射关系确 定匹配于所述目标网络标识信息和所述接收方身份信息的目标区块链节点; 传输单元, 向所述目标区块链节点传输所述区块链消息。 22.一种消息传输装置, 应用于区块链节点, 所述装置包括: 获取单元, 获取CA认证中心向所述区块链节点签发的数字证书, 所述数字证书中包含 所述区块链节点的身份信息和所属区块链网络的网络标识信息; 发送单元, 向区块链中。

13、继通信网络中的中继节点发送所述数字证书, 所述中继节点用 于根据所述CA认证中心的公钥对各个区块链节点发送的数字证书进行验签, 并在验签通过 的情况下关联记录各个区块链节点的身份信息与相应的网络标识信息的映射关系; 以及, 在接收到任一区块链节点发送的区块链消息的情况下, 确定所述区块链消息的接收方身份 信息和所述任一区块链节点的目标网络标识信息, 并根据所述映射关系确定匹配于所述目 标网络标识信息和所述接收方身份信息的目标区块链节点, 以向所述目标区块链节点传输 所述区块链消息。 23.一种电子设备, 包括: 处理器; 用于存储处理器可执行指令的存储器; 其中, 所述处理器通过运行所述可执行。

14、指令以实现如权利要求1-10中任一项所述的方 法。 24.一种计算机可读存储介质, 其上存储有计算机指令, 该指令被处理器执行时实现如 权利要求1-10中任一项所述方法的步骤。 权利要求书 3/3 页 4 CN 111934996 A 4 消息传输方法及装置 技术领域 0001 本说明书一个或多个实施例涉及区块链技术领域, 尤其涉及一种消息传输方法及 装置。 背景技术 0002 区块链技术 (也被称之为, 分布式账本技术) 是一种去中心化的分布式数据库技 术, 具有去中心化、 公开透明、 不可篡改、 可信任等多种特点, 适用于诸多对数据可靠性具有 高需求的应用场景中。 发明内容 0003 有鉴。

15、于此, 本说明书一个或多个实施例提供一种消息传输方法及装置。 0004 为实现上述目的, 本说明书一个或多个实施例提供技术方案如下: 根据本说明书一个或多个实施例的第一方面, 提出了一种消息传输方法, 应用于区块 链中继通信网络中的中继节点, 所述方法包括: 接收各个区块链节点发送的数字证书, 所述数字证书中包含各个区块链节点的身份信 息和所属区块链网络的网络标识信息; 通过签发所述数字证书的CA认证中心的公钥对所述数字证书进行验签, 并在验签通过 的情况下关联记录各个区块链节点的身份信息与相应的网络标识信息的映射关系; 在接收到任一区块链节点发送的区块链消息的情况下, 确定所述区块链消息的接。

16、收方 身份信息和所述任一区块链节点的目标网络标识信息, 并根据所述映射关系确定匹配于所 述目标网络标识信息和所述接收方身份信息的目标区块链节点; 向所述目标区块链节点传输所述区块链消息。 0005 根据本说明书一个或多个实施例的第二方面, 提出了一种消息传输方法, 应用于 区块链节点, 所述方法包括: 获取CA认证中心向所述区块链节点签发的数字证书, 所述数字证书中包含所述区块链 节点的身份信息和所属区块链网络的网络标识信息; 向区块链中继通信网络中的中继节点发送所述数字证书, 所述中继节点用于根据所述 CA认证中心的公钥对各个区块链节点发送的数字证书进行验签, 并在验签通过的情况下关 联记录。

17、各个区块链节点的身份信息与相应的网络标识信息的映射关系; 以及, 在接收到任 一区块链节点发送的区块链消息的情况下, 确定所述区块链消息的接收方身份信息和所述 任一区块链节点的目标网络标识信息, 并根据所述映射关系确定匹配于所述目标网络标识 信息和所述接收方身份信息的目标区块链节点, 以向所述目标区块链节点传输所述区块链 消息。 0006 根据本说明书一个或多个实施例的第三方面, 提出了一种消息传输装置, 应用于 区块链中继通信网络中的中继节点, 所述装置包括: 接收单元, 接收各个区块链节点发送的数字证书, 所述数字证书中包含各个区块链节 说明书 1/15 页 5 CN 111934996 。

18、A 5 点的身份信息和所属区块链网络的网络标识信息; 验证单元, 通过签发所述数字证书的CA认证中心的公钥对所述数字证书进行验签, 并 在验签通过的情况下关联记录各个区块链节点的身份信息与相应的网络标识信息的映射 关系; 确定单元, 在接收到任一区块链节点发送的区块链消息的情况下, 确定所述区块链消 息的接收方身份信息和所述任一区块链节点的目标网络标识信息, 并根据所述映射关系确 定匹配于所述目标网络标识信息和所述接收方身份信息的目标区块链节点; 传输单元, 向所述目标区块链节点传输所述区块链消息。 0007 根据本说明书一个或多个实施例的第四方面, 提出了一种消息传输装置, 应用于 区块链节。

19、点, 所述装置包括: 获取单元, 获取CA认证中心向所述区块链节点签发的数字证书, 所述数字证书中包含 所述区块链节点的身份信息和所属区块链网络的网络标识信息; 发送单元, 向区块链中继通信网络中的中继节点发送所述数字证书, 所述中继节点用 于根据所述CA认证中心的公钥对各个区块链节点发送的数字证书进行验签, 并在验签通过 的情况下关联记录各个区块链节点的身份信息与相应的网络标识信息的映射关系; 以及, 在接收到任一区块链节点发送的区块链消息的情况下, 确定所述区块链消息的接收方身份 信息和所述任一区块链节点的目标网络标识信息, 并根据所述映射关系确定匹配于所述目 标网络标识信息和所述接收方身。

20、份信息的目标区块链节点, 以向所述目标区块链节点传输 所述区块链消息。 0008 根据本说明书一个或多个实施例的第五方面, 提出了一种电子设备, 包括: 处理器; 用于存储处理器可执行指令的存储器; 其中, 所述处理器通过运行所述可执行指令以实现如第一方面或第二方面所述的方 法。 0009 根据本说明书一个或多个实施例的第六方面, 提出了一种计算机可读存储介质, 其上存储有计算机指令, 该指令被处理器执行时实现如第一方面或第二方面所述方法的步 骤。 附图说明 0010 图1是一示例性实施例提供的一种区块链节点与区块链中继通信网络的交互示意 图。 0011 图2是一示例性实施例提供的一种消息传输。

21、场景的示意图。 0012 图3是一示例性实施例提供的一种消息传输方法的流程图。 0013 图4是一示例性实施例提供的一种树状路由表的示意图。 0014 图5是一示例性实施例提供的另一种消息传输方法的流程图。 0015 图6是一示例性实施例提供的一种设备的结构示意图。 0016 图7是一示例性实施例提供的一种消息传输装置的框图。 0017 图8是一示例性实施例提供的另一种消息传输装置的框图。 说明书 2/15 页 6 CN 111934996 A 6 具体实施方式 0018 这里将详细地对示例性实施例进行说明, 其示例表示在附图中。 下面的描述涉及 附图时, 除非另有表示, 不同附图中的相同数字。

22、表示相同或相似的要素。 以下示例性实施例 中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。 相 反, 它们仅是与如所附权利要求书中所详述的、 本说明书一个或多个实施例的一些方面相 一致的装置和方法的例子。 0019 需要说明的是: 在其他实施例中并不一定按照本说明书示出和描述的顺序来执行 相应方法的步骤。 在一些其他实施例中, 其方法所包括的步骤可以比本说明书所描述的更 多或更少。 此外, 本说明书中所描述的单个步骤, 在其他实施例中可能被分解为多个步骤进 行描述; 而本说明书中所描述的多个步骤, 在其他实施例中也可能被合并为单个步骤进行 描述。 0020 图1是一示。

23、例性实施例提供的一种区块链节点与区块链中继通信网络的交互示意 图。 如图1所示, 假定区块链中继通信网络包含中继11、 中继12、 中继13和中继14等若干中继 节点。 以中继11为例, 该中继11可以通过网关101与区块链网络中的节点21相连; 类似地, 其 他中继节点也可以与区块链网络中的其他区块链节点相连。 网关101用于协助节点21接入 区块链中继通信网络, 该网关101在逻辑上相当于区块链网络中的一个区块链节点, 但该网 关101本身并不参与区块链共识, 这样节点21可以通过区块链网络所采用的通信协议与该 网关101进行通信, 并且该网关101不会对区块链网络中的共识等过程产生负面影。

24、响。 网关 101本质上是节点21接入区块链中继通信网络的适配程序, 该适配程序可以部署在节点21 上, 也可以部署在中继11上, 还可以部署在独立于中继11和节点21的另一设备中, 本说明书 并不对此进行限制。 0021 区块链网络中包含若干区块链节点, 区块链节点之间需要实现诸如共识、 交易传 输、 区块同步等通信操作。 在相关技术中, 各个区块链节点之间直接采用P2P (Peer to Peer, 点对点) 技术进行通信, 以传输交易、 区块等, 但由于各种网络因素导致通信时延高、 稳定性差, 无法满足应用需求。 因此, 类似于上述的节点21, 每个区块链节点都可以分别接 入区块链中继通。

25、信网络中的中继节点, 这样区块链节点之间就可以通过区块链中继通信网 络来实现通信。 由于区块链中继通信网络是面向区块链实时传输的骨干中继通信网络, 各 个中继节点之间能够通过高QoS保障的优质带宽进行通信交互, 因而由区块链中继通信网 络接管区块链节点之间通信的中间链路, 能够降低通信时延、 提高稳定性, 从而显著提升区 块链节点之间的通信质量。 0022 区块链中继通信网络可以适用于各种类型的区块链网络, 包括公有链、 私有链和 联盟链等。 譬如, 应用于公有链的区块链中继通信网络主要包括Falcon、 Fast Bitcoin Relay Network (FBRN) 、 Fast Int。

26、ernet Bitcoin Relay Engine (FIBRE) 等, 而应用于联盟 链的区块链中继通信网络主要包括BloXRoute、 Blockchain Transmission Network (BTN) 等。 0023 在相关技术中, 区块链中继通信网络可同时接入多个区块链网络, 即支持多条区 块链同时进行消息的传输。 其中, 由于中继节点接入了分别属于不同区块链网络的多个区 块链节点, 为了防止各个区块链网络内的消息泄露至其他区块链网络, 中继节点必须保证 待传输的消息在属于同一区块链网络内的区块链节点之间传输, 而不会传输至其他区块链 说明书 3/15 页 7 CN 1119。

27、34996 A 7 网络。 0024 以图2所示的消息传输场景为例。 节点21与区块链中继通信网络中的中继11相连、 节点22与中继12相连、 节点23-24与中继13相连; 当然, 也可能是中继11分别与节点21-24相 连。 其中, 为了便于理解, 此处省去了前文所述的网关 (如网关101) 。 假定节点21-24在区块 链网络中的分布情况如表1所示: 如表1所示, 节点21为区块链网络1中的节点a, 节点22同时作为区块链网络1和区块链 网络2中的区块链节点 (比如, 节点22同时维护区块链网络1和区块链网络2的数据, 区块链 网络1和区块链网络2之间的数据隔离存储) , 节点23与节点。

28、24分别属于区块链网络1和区块 链网络2中的区块链节点, 但是两节点的节点id均为节点c。 0025 在一种情况下, 节点21作为区块链网络1中的节点a, 需要向同属于区块链网络1的 节点b传输消息, 因此指示区块链中继通信网络向节点b传输消息。 假设节点b在逻辑层面上 作为区块链网络1中的区块链节点b1, 以及在逻辑层面上作为区块链网络2中的区块链节点 b2。 那么, 区块链中继通信网络中的中继节点无法确认待传输的消息是传输至区块链节点 b1还是传输至区块链节点b2; 比如, 中继节点无法确认是与节点b建立用于传输区块链网络 1中消息的通道1, 还是与节点b建立用于传输区块链网络2中消息的通。

29、道2。 0026 在另一种情况下, 节点21作为区块链网络1中的节点a, 需要向同属于区块链网络1 的节点c传输消息, 因此指示区块链中继通信网络向节点c传输消息。 那么, 区块链中继通信 网络中的中继节点无法确认待传输的消息是传输至属于区块链网络1中的节点c (即节点 23) , 还是传输至属于区块链网络2中的节点c (即节点24) ; 比如, 中继节点无法确认是与区 块链网络1中的节点c建立用于传输区块链网络1中消息的通道1, 还是与区块链网络2中的 节点c建立用于传输区块链网络2中消息的通道2。 0027 由此可见, 在上述情况下, 中继节点存在将某一区块链网络内的消息泄露至其他 区块链。

30、网络的风险。 而为了避免该风险, 保证待传输的消息在属于同一区块链网络内的区 块链节点之间传输, 本说明书提供了新的消息传输方案。 0028 图3是一示例性实施例提供的一种消息传输方法的流程图。 如图3所示, 该方法应 用于区块链中继通信网络中的中继节点, 该方法可以包括: 步骤302, 接收各个区块链节点发送的数字证书, 所述数字证书中包含各个区块链节点 的身份信息和所属区块链网络的网络标识信息。 说明书 4/15 页 8 CN 111934996 A 8 0029 当区块链网络申请接入区块链中继通信网络时, 该区块链网络中的区块链节点需 先向区块链中继通信网络的CA (Certificat。

31、e Authority) 认证中心申请数字证书。 换言之, 由CA认证中心向各个区块链节点 (可属于同一区块链网络, 也可属于不同区块链网络) 签发 数字证书, 所签发的数字证书中包含各个区块链节点的身份信息和所属区块链网络的网络 标识信息, 该网络标识信息作为区块链网络的唯一性标识, 用于标明区块链网络的身份, 以 与其他区块链网络区分开。 比如, CA认证中心可针对每个区块链网络生成相应的链id, 即同 一区块链网络内的区块链节点拥有相同的链id, 而属于不同区块链网络的区块链节点的链 id也随之不同。 0030 作为一示例性实施例, 各个区块链节点所属区块链网络的网络标识信息可由CA认 。

32、证中心基于相应区块链节点维护的创世块生成。 对于属于同一区块链网络内的不同区块链 节点, 其维护的创世块必然相同, 那么基于创世块生成的网络标识信息即可作为该区块链 网络的网络标识信息。 也即, CA认证中心通过基于区块链节点维护的创世块来生成网络标 识信息, 可使得针对属于同一区块链网络的区块链节点生成相同的网络标识信息, 而针对 属于不同区块链网络的区块链节点, 生成的网络标识信息也不同。 因此, 后续可基于网络标 识信息来区分不同区块链网络内的区块链节点。 当然, 也可基于其他预先指定的区块来生 成网络标识信息, 比如该预先指定的区块可以是第10个区块、 第100个区块、 第166个区块。

33、等 等, 只要保证基于统一的指定区块来生成网络标识信息即可, 本说明书并不对此进行限制。 0031 以创世块的情况为例进行说明。 可在区块链网络的链代码中定义用于生成该区块 链网络的创世块的代码逻辑。 在该情况下, 对于新加入某一区块链网络的区块链节点, 该区 块链节点配置有对应于区块链网络的链代码, 那么可由该区块链节点通过执行上述代码逻 辑来生成创世块, 以完成后续接入区块链中继通信网络的过程。 或者, 对于新加入某一区块 链网络的区块链节点, 该区块链节点可从区块链网络的其他区块链节点处拷贝区块数据 (比如, 可仅拷贝创世块的数据, 或者可拷贝所有区块的数据) 以获得创世块, 从而基于创。

34、世 块完成后续接入区块链中继通信网络的过程。 0032 进一步的, 各个区块链节点可对自身维护的创世块进行哈希计算得到相应的创世 块哈希值, 然后将生成的创世块哈希值、 自身的节点公钥和节点id (即节点标识信息) 发送 至CA认证中心, 以由CA认证中心对上述数据进行认证。 其中, CA认证中心可配置针对区块链 节点的认证规则, 该认证规则用于判定区块链节点是否具备申请获得数字证书的资格。 当 然, 认证规则的具体内容可根据实际需求灵活设定, 本说明书并不对此进行限制。 进一步 的, CA认证中心可根据创世块哈希值生成链id, 从而根据链id、 节点公钥和节点id生成数字 证书, 并向相应的。

35、区块链节点返回该数字证书。 比如, CA认证中心可采用自身的私钥对数字 证书中包含的链id、 节点公钥和节点id进行签名, 并将签名记录在数字证书中。 同时, CA认 证中心可在本地记录生成的链id。 0033 需要说明的是, 可将区别于区块链中继通信网络中所有中继节点的其他设备配置 为CA认证中心, 从而面向各个区块链节点提供数字证书的签发服务。 或者, 可将区块链中继 通信网络中的一个或多个中继节点配置为CA认证中心。 比如, 每个中继节点均可以内置证 书授权服务 (即CA服务) , 但通常只有网络内的部分中继节点会启动CA服务, 较为典型的, 可 以仅有一台中继节点启动CA服务, 从而面。

36、向各个区块链节点提供数字证书的签发服务。 0034 步骤304, 通过签发所述数字证书的CA认证中心的公钥对所述数字证书进行验签, 说明书 5/15 页 9 CN 111934996 A 9 并在验签通过的情况下关联记录各个区块链节点的身份信息与相应的网络标识信息的映 射关系。 0035 区块链节点在获得CA认证中心为其签发的数字证书后, 可请求与区块链中继通信 网络建立连接, 以向区块链中继通信网络出示自身的数字证书以供中继节点验证, 从而完 成与区块链中继通信网络的接入。 比如, 区块链节点可通过SSL(Secure Sockets Layer, 安 全套接字协议)连接至区块链中继通信网络。

37、中的中继节点, 并与中继节点建立连接以传输 数据。 0036 由于CA认证中心在为区块链节点签发数字证书时, 采用自身的私钥对数字证书包 含的内容进行签名, 中继节点在获取区块链节点提供的数字证书后, 可通过CA认证中心的 公钥对该数字证书进行验签, 从而确认是否允许区块链节点接入区块链中继通信网络。 在 验证通过后, 可关联记录各个区块链节点的节点标识信息与相应的网络标识信息的映射关 系, 从而后续可利用该映射关系来准确查找待传输的区块链消息的接收方。 当然, 若验证失 败, 则禁止区块链节点接入区块链中继通信网络。 0037 为了防止区块链节点假冒其他区块链节点, 可进一步验证提供数字证书。

38、的区块链 节点的身份。 具体而言, 数字证书中包含的身份信息可包括相应的区块链节点的节点标识 信息和/或节点公钥。 其中, 针对区块链节点提供的数字证书中包含自身的节点公钥和节点 标识信息 (即节点id) 的情况 (即身份信息包括节点标识信息和节点公钥的情况) , 区块链节 点通过自身的节点私钥对节点标识信息进行了签名。 那么, 中继节点在针对区块链节点的 数字证书验签通过的情况下, 可通过数字证书中包含的节点公钥对数字证书中包含的节点 标识信息进行验签。 当验签通过时, 判定区块链节点的身份无误。 进一步的, 在针对节点标 识信息验签通过的情况下, 中继节点可与相应的区块链节点建立传输通道,。

39、 该传输通道用 于在中继节点与该区块链节点之间传输区块链消息。 例如, 中继节点可与区块链节点建立 长连接以用于后续传输区块链消息。 0038 除上述中继节点对区块链节点进行验证以外, 区块链节点也可相应地对中继节点 进行验证, 从而防止其他设备假冒中继节点。 也即, 中继节点与区块链节点之间可相互交换 数字证书进行验证。 具体而言, 与区块链节点申请数字证书类似的, 中继节点也可向CA认证 中心申请数字证书, 比如中继节点可向CA认证中心提供自身的描述信息 (节点id、 节点公 钥、 区块链中继通信网络的网络标识、 软件版本等等) 以由CA认证中心进行验证。 在验证通 过后, CA认证中心可。

40、向中继节点签发数字证书。 同理, 中继节点可向各个区块链节点发送自 身的数字证书。 那么, 区块链节点在获取中继节点的数字证书后, 可通过CA认证中心的公钥 对该数字证书进行验签。 若验签通过, 则判定中继节点的身份无误, 从而向中继节点提供自 身的数字证书。 0039 步骤306, 在接收到任一区块链节点发送的区块链消息的情况下, 确定所述区块链 消息的接收方身份信息和所述任一区块链节点的目标网络标识信息, 并根据所述映射关系 确定匹配于所述目标网络标识信息和所述接收方身份信息的目标区块链节点。 0040 同一区块链网络内的区块链节点之间传输的区块链消息可以包括以下至少之一: 区块同步消息、。

41、 共识消息、 交易同步消息。 比如, 当区块链网络内新加入一区块链节点时, 该 区块链节点可向其他区块链节点获取当前已有的区块数据, 以实现区块数据的同步。 那么, 其他区块链节点向该区块链节点传输的区块数据则为上述区块同步消息。 又如, 区块链网 说明书 6/15 页 10 CN 111934996 A 10 络内各个区块链节点之间在进行共识时, 各个区块链节点之间进行共识所需互相传输的数 据则为上述共识消息。 又如, 区块链网络内各个区块链节点之间在对交易进行共识时, 由接 收到客户端提交的交易的区块链节点向其他区块链节点传输该交易, 从而完成后续的共识 过程; 在该情况下, 该交易则为上。

42、述交易同步消息。 0041 任一区块链节点发送的区块链消息中可记录该区块链消息的接收方的身份信息 (下文简称为接收方身份信息) 和该区块链节点 (即区块链消息的发送方) 所属区块链网络 的网络标识信息 (下文简称为目标网络标识信息) 。 那么, 中继节点在获取区块链消息后, 可 读取接收方身份信息和目标网络标识信息, 进而根据记录的映射关系, 从中查找同时与接 收方身份信息和目标网络标识信息相匹配的区块链节点作为目标区块链节点。 0042 可见, 基于关联记录有各个区块链节点的身份信息与相应的网络标识信息的映射 关系, 可同时从节点层面和网络层面共同来标记区块链节点的身份, 即可通过节点标识和。

43、 网络标识共同来定位区块链节点, 从而避免上述中继节点存在将某一区块链网络内的消息 泄露至其他区块链网络的风险, 实现区块链网络之间的数据隔离, 保证待传输的消息在属 于同一区块链网络内的区块链节点之间传输。 0043 步骤308, 向所述目标区块链节点传输所述区块链消息。 0044 中继节点在确定出目标区块链节点后, 可进一步确定区块链中继通信网络中与该 目标区块链节点相连的目标中继节点, 从而通过目标中继节点将区块链消息传输至目标区 块链节点。 0045 中继节点可同时采用节点id和相应的链id来共同标记区块链节点的身份。 承接于 上述图2和表1的举例进行说明, 如表2所示: 如表2所示,。

44、 对于节点22, 同时作为区块链网络1和区块链网络2中的区块链节点, 因此 节点22存在两个身份, 分别为 “区块链网络1节点b (即上述区块链节点b1) ” 和 “区块链网 络2节点b (即上述区块链节点b2) ” , 可从链id上区分两者。 对于节点23与节点24, 虽然两 者的节点id相同, 但是分别属于区块链网络1和区块链网络2, 因此也可从链id上区分两者。 0046 比如, 节点21作为区块链网络1中的节点a, 需要向同属于区块链网络1的节点b (即 逻辑层面上的区块链节点b1) 传输区块链消息, 可在区块链消息中记录自身的链id “区块链 网络1” 以及目标区块链节点的节点id 。

45、“节点b” 。 那么, 中继节点在接收到节点a发送的区块 链消息后, 可读取上述链id “区块链网络1” 和节点id “节点b” , 进而在记录的映射关系中查 说明书 7/15 页 11 CN 111934996 A 11 找同时匹配于链id “区块链网络1” 和节点id “节点b” 的区块链节点以作为目标区块链节点。 例如, 中继节点可匹配命中映射关系 “区块链网络1节点b” , 进而确定目标区块链节点为 属于区块链网络1的节点b (即逻辑层面上的区块链节点b1) , 进而与节点b建立与区块链网 络1对应的传输通道 (比如为长连接) , 该传输通道专用于在中继节点与节点a之间传输区块 链网络。

46、1内的区块链消息, 而无法传输区块链网络2内的区块链消息, 即传输通道与区块链 网络为 “一一对应” 的关系。 0047 又如, 节点21作为区块链网络1中的节点a, 需要向同属于区块链网络1的节点c传 输区块链消息, 可在区块链消息中记录自身的链id “区块链网络1” 以及目标区块链节点的 节点id “节点c” 。 那么, 中继节点在接收到节点a发送的区块链消息后, 可读取上述链id “区 块链网络1” 和节点id “节点c” , 进而在记录的映射关系中查找同时匹配于链id “区块链网络 1” 和节点id “节点c” 的区块链节点以作为目标区块链节点。 例如, 中继节点可匹配命中映射 关系 。

47、“区块链网络1节点c” , 进而确定目标区块链节点为属于区块链网络1的节点c (即节 点23) , 而非属于区块链网络2的节点c (即节点24) , 进而与节点23建立与区块链网络1对应 的传输通道, 该传输通道专用于在中继节点与节点23之间传输区块链网络1内的区块链消 息。 0048 在本说明书的消息传输方案中, 还可定义区块链节点集合以节省通讯资源, 通过 区块链中继通信网络实现更为高效的通信过程。 下面进行详细说明。 0049 以图2所示的消息传输场景为例。 当节点21需要向节点22和节点23发送消息时, 节 点21首先将消息发送至中继11, 由中继11将该消息转发至中继12。 中继12。

48、一方面将该消息 转发至节点22、 另一方面将该消息转发至中继13。 中继13分别将该消息转发至节点23和节 点24。 那么, 最终节点22和节点23收到来自节点21的消息, 但是节点24也同样收到了该消 息, 实际上中继13向节点24转发消息的操作并非必要, 该操作造成了对通讯资源的浪费。 0050 为此, 区块链中继通信网络中可以在控制面和数据面上实现分层, 通过把网络数 据的转发控制策略和数据传输过程分离, 使得转发控制策略可自由定义, 而数据传输也能 够更加通用和高效。 对于区块链中继通信网络而言, 控制面可以理解为消息路由的策略, 而 数据面是指区块链消息在区块链中继通信网络中的传输。。

49、 而区块链节点通过提交注册请 求, 可以根据应用 (或业务) 上的需求而自由配置自身所属的区块链节点集合, 进而调整与 该区块链节点相关的消息路由。 0051 通过采用上述方式, 区块链消息在区块链中继通信网络中的传输过程得以优化。 仍以上文所述的节点21-24为例: 假定节点21希望将区块链消息发送至节点22和节点23, 如 果节点22和节点23预先加入了同一区块链节点集合, 那么节点21只要将该区块链消息的发 送目标标注为该区块链节点集合, 就可以确保区块链中继通信网络仅将该区块链消息发送 至归属于该区块链节点集合的节点22和节点23, 比如节点21将区块链消息发送至中继11、 中继11将。

50、该区块链消息转发至中继12、 中继12分别将区块链消息转发至节点22和中继13、 中继13将该区块链消息转发至节点23, 而避免将该区块链消息发送至其他的中继节点和区 块链节点, 以避免通信资源的浪费。 0052 在一实施例中, 可由区块链节点通过预先向中继节点发送注册请求来加入区块链 节点集合。 那么, 中继节点可根据各个区块链节点提交的注册请求, 分别将各个区块链节点 注册至相应的注册请求所指示的区块链节点集合中。 说明书 8/15 页 12 CN 111934996 A 12 0053 如果注册请求中包含集合标识, 中继节点可以将发起该注册请求的区块链节点注 册至该集合标识对应的区块链节。

展开阅读全文
内容关键字: 消息 传输 方法 装置
关于本文
本文标题:消息传输方法及装置.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/10050168.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1