CN110855565A - 一种基于区块链的可验证域间路由验证方法 - Google Patents

一种基于区块链的可验证域间路由验证方法 Download PDF

Info

Publication number
CN110855565A
CN110855565A CN201911154492.9A CN201911154492A CN110855565A CN 110855565 A CN110855565 A CN 110855565A CN 201911154492 A CN201911154492 A CN 201911154492A CN 110855565 A CN110855565 A CN 110855565A
Authority
CN
China
Prior art keywords
routing
route
verification
evidence
information
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
CN201911154492.9A
Other languages
English (en)
Other versions
CN110855565B (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.)
Guangzhou University
Original Assignee
Guangzhou University
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 Guangzhou University filed Critical Guangzhou University
Priority to CN201911154492.9A priority Critical patent/CN110855565B/zh
Publication of CN110855565A publication Critical patent/CN110855565A/zh
Priority to US17/100,804 priority patent/US11206127B2/en
Application granted granted Critical
Publication of CN110855565B publication Critical patent/CN110855565B/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/006Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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
    • 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
    • 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/3247Cryptographic 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 involving digital signatures
    • 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
    • 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/42Anonymization, e.g. involving pseudonyms

Landscapes

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

Abstract

本发明公开了一种基于区块链的可验证域间路由验证方法。技术方案是构建由可验证域间路由、路由行为验证子***组成的基于区块链的可验证域间路由***;路由行为验证子***由路由行为验证终端和路由验证区块链***组成。发送方路由器R1、R1所属自治域的路由行为验证终端、路由验证区块链***构造路由证据、路由证据验证提案,对提案进行验证、背书、判断是否满足背书策略、生成路由证据交易、对交易进行共识排序、更新路由验证区块链;接收方路由器T、T所属自治域的路由行为验证终端、路由验证区块链***构造验证路由请求报文、检索是否存在路由请求对应的路由证据。本发明能验证路由单点攻击和路由多点合谋攻击引起的违反路由策略的问题。

Description

一种基于区块链的可验证域间路由验证方法
技术领域
本发明涉及网络安全技术,尤其涉及用于发现和解决现有域间路由协议BGP存在的由路由单点攻击或路由多点合谋攻击引起的违反路由策略的问题的方法。
背景技术
互联网域间路由的安全问题已经研究了很多年。大多数与安全相关的工作都集中在路由伪造上,如S-BGP(Secure BGP,安全域间路由协议)、SoBGP(Secure Origin BGP,安全源域间路由协议)、IRV(Inter-domain Routing Validation,域间路由验证)等。S-BGP通过基于PKI(Public Key Infrastructure,公钥基础设施)中的证书验证路由路径属性,来确保信息的安全性。SoBGP只能提供起源身份验证,不能提供路径身份验证。IRV是一种集中式解决方案,其操作与路由协议无关。它要求每个AS向IRV服务器报告,它与其他AS的连接关系。相关研究将安全多方计算技术引到域间路由中,将私有信息分离到不同的计算实体(指计算机这类能进行运算的机器)中,并且结果由多个计算实体计算。还有相关研究在不揭示拓扑结构的情况下改变路由通告的原理,并且可以通过回溯的方式来计算最短路径。
路由单点攻击可通过多节点协同路由验证的手段检查出来,即路由节点通过与其他路由节点进行协同合作,共同验证路由策略是否被违反。但这种方法有个前提条件是路由***中只有一个恶意节点,通过多个诚实节点协同检查路由是否违反路由策略,从而发现违反路由策略的问题。如果有多个恶意节点,则无法通过多个节点***检查路由是否违反路由策略,因为一个路由节点不清楚它收到来自其他路由节点的路由协同验证信息是否是真实的。路由多点合谋攻击引起的违反路由策略问题即是指有多个恶意路由节点参与路由过程时,造成路由策略被违反的问题,并且这种攻击无法被检查出来,目前还没有公开技术文献涉及抵御该类攻击的方法。
发明内容
本发明要解决的技术问题是:针对现有域间路由协议BGP存在由路由单点攻击或路由多点合谋攻击引起的违反路由策略的问题,提供一种基于区块链的可验证域间路由验证方法,实现对发布的路由信息进行验证,验证该路由信息是否符合路由策略,本发明既能验证路由单点攻击引起的违反路由策略的问题,又能验证路由多点合谋攻击引起的违反路由策略的问题。
本发明所采用的技术方案是:
第一步,构建基于区块链的可验证域间路由***,基于区块链的可验证域间路由***由可验证域间路由子***和路由行为验证子***组成,它们之间通过网络相连。
可验证域间路由子***由多个自治域组成,每个自治域中有多个路由器。与现有网络中常用的路由子***相比,主要是修改了现有域间路由器的路由软件***,在域间路由器路由软件***中增加了路由行为验证代理模块,它与路由软件***的其他模块通过进程间调用通信。路由行为验证代理模块与路由行为验证子***的路由行为验证终端通过网络相连,路由行为验证代理模块根据路由软件***发送的路由信息(指路由器之间传输的路由报文,由源AS号、目的AS号、时间戳、路由前缀、路由操作等字段组成)构造路由基本信息(包含路由发送者ID,路由接收者ID,路由发送时间戳,路由前缀地址,路由操作,路由分类信息;路由发送者ID由路由信息的源AS号进行哈希得到;路由接收者ID由路由信息的目的AS号进行哈希得到;路由发送时间戳由路由信息的时间戳得到,路由前缀地址由路由信息的路由前缀字段得到;路由操作设置由路由信息的路由操作字段得到;路由分类信息根据路由信息的路径长度生成,以16位二进制表示,假设路径长度是nn,则路由分类信息的第nn位二进制设置为1,其他位设置为0,nn为正整数)和路由证据,生成路由验证请求信息,将路由证据、路由验证请求信息发送到路由行为验证终端。路由证据由路由基本信息、前向路由证据PRP、路由信息标识IDR、路由接收者签名和公钥、路由发送者签名和公钥这五部分组成,前向路由证据PRP指向已存储在路由证据区块链中的一个路由证据;路由信息标识IDR是路由信息的唯一标识,在路由验证过程中代替路由信息;路由接收者签名指路由接收者收到路由信息时的签名,路由接收者公钥指用来进行非对称加密的公钥,路由行为验证子***使用路由接收者签名和公钥字段来验证路由接收者确实接收到该路由信息;路由接收者签名指路由接收者收到路由信息时的签名,路由接收者公钥指用来进行非对称加密的公钥,路由行为验证子***使用路由接收者签名和公钥字段来验证路由证据的内容是否被篡改;路由证据签名指路由发送者对路由信息进行的签名,保证路由信息的完整性,防止被伪造和篡改。路由验证请求信息包括待验证的路由基本信息。
路由行为验证子***由路由行为验证终端和路由验证区块链***组成。路由行为验证终端部署在自治域内(一个自治域可部署n台路由行为验证终端,n为正整数),路由行为验证终端与路由行为验证代理模块、路由验证区块链***相连,路由行为验证终端从路由行为验证代理模块接收路由证据和路由验证请求信息,根据路由证据构造路由证据验证提案,将路由证据验证提案、路由证据交易(路由证据交易结构与Fabric平台的交易结构是一样的,路由证据交易内容包括路由证据及各背书节点签名)和路由验证请求信息发送给路由验证区块链***;路由行为验证终端由路由证据处理模块、路由验证请求处理模块组成。
路由验证区块链***主要进行三方面工作:(1)接收并处理路由证据验证提案,验证路由证据是否正确;(2)接收并处理路由证据交易,将交易打包成区块,将区块存入路由证据区块链;(3)验证路由验证请求信息并将验证结果反馈给路由行为验证代理模块。
路由验证区块链***与路由行为验证终端相连,基于Fabric区块链平台实现,由背书节点、排序节点、提交节点、路由证据区块链、配置文件组成。
背书节点上安装路由证据验证链码,从路由行为验证终端接收路由证据验证提案和路由验证请求信息,路由证据验证链码是验证路由证据的程序,它检查路由证据的路由基本信息、路由证据签名是否正确,检查路由证据对应的路由信息是否是最佳路由,为通过验证的路由证据进行背书。排序节点接收从路由行为验证终端发送来的路由证据交易;排序节点对路由证据交易进行共识操作,共识完成后构造区块、将区块发给提交节点;提交节点从排序节点接收区块并将区块放到路由证据区块链中。路由证据区块链由区块组成,一个区块分为两大部分:区块头和区块体,区块头里面存储着区块的头信息,包含区块大小、上一区块的哈希值,本区块体的哈希值,区块ID以及时间戳,区块体存储交易计数和交易,交易中存放路由证据,区块体的长度可变,区块头一般为84字节。配置文件存储在每个节点上。配置文件存放路由验证区块链***的配置信息,配置文件包含背书节点、排序节点、提交节点的数量,以及这些节点的网络拓扑信息(包括节点的地址、节点之间的连接关系)。
第二步,启动路由行为验证子***。
2.1启动路由验证区块链***。
2.1.1根据路由验证区块链***中的配置文件,启动配置文件指定数量的背书节点、提交节点、排序节点。
2.1.2背书节点、提交节点和排序节点根据配置文件中网络拓扑信息里的地址信息,自动配置地址,并根据配置文件中网络拓扑信息建立通信连接。
2.1.3路由证据区块链中的所有背书节点设置背书策略,背书策略说明一个路由证据验证提案只有得到指定数量的背书节点的背书后,才能提交给排序节点。
2.1.4初始化路由证据区块链为空。
2.1.5排序节点根据配置文件指定的网络拓扑信息构建共识网络,共识网络中的所有排序节点在收到路由交易时并行运行共识算法(如PBFT(实用拜占庭容错算法,出自1999年召开的国际会议OSDI的一篇论文《Practical Byzantine Fault Tolerance》)等)。共识网络中的所有排序节点等待从背书节点发来的路由证据交易。
2.1.6提交节点等待接收排序节点发来的区块。
2.2启动可验证域间路由子***所有自治域中的所有路由行为验证终端,以任意一台路由行为验证终端(命名为Tp)为例来说明启动过程,方法是:
2.2.1路由行为验证终端Tp初始化,包括设置自治域信息(即自治域编号)、设置路由验证区块链***中将与Tp相连的背书节点地址(只有1个)、设置路由验证区块链***中将与Tp相连的排序节点地址(只有1个)。
2.2.2根据2.2.1初始化时设置的背书节点地址,Tp向该背书节点进行身份认证。身份认证采用常用的基于口令的认证方式,如果身份认证通过,向该背书节点发送连接申请,转2.2.3。如果身份认证未通过,则启动失败,转2.2.5。
2.2.3背书节点向Tp发送“同意建立连接”消息。
2.2.4 Tp从背书节点接收“同意建立连接”消息,启动工作完成,转第三步。
2.2.5 Tp启动失败,转2.2.1。
第三步,令可验证域间路由子***中任意一个自治域AS1内的所有成功启动的路由行为验证终端(假设有n1个,n1≤n,n为AS1中的路由行为验证终端的个数,n为正整数)侦听来自可验证域间路由子***的信息,确认是否与其路由行为验证代理模块建立连接。
3.1由于本发明针对的是域间路由协议,可验证域间路由子***中所有域间路由器(假设有M台,M为正整数)启动路由软件***。
3.2可验证域间路由子***中所有域间路由器启动路由行为验证代理模块,M台域间路由器并行向路由行为验证终端发送自治域信息、路由器信息,为描述方便,以任意一个自治域(令为AS1)中任意一台域间路由器(命名为R1)来为例来说明,方法是:
3.2.1 R1的路由行为验证代理模块进行初始化,包括设置路由行为验证代理模块所在路由器(即R1)所属自治域(命名为AS1)信息(即AS1的自治域编号)、设置R1的信息(即路由器R1的ID)、设置AS1内的n个路由行为验证终端地址(即路由行为验证终端的IP地址)。
3.2.2路由行为验证代理模块将自治域AS1信息、路由器R1信息发送给AS1内的n1个成功启动的路由行为验证终端,申请与AS1内的任意一个成功启动的路由行为验证终端(命名为RT1-1)(一个自治域中的n个路由行为验证终端之间可以连接、也可以不连接)建立连接,将自治域AS1信息及路由器R1信息发送给路由行为验证终端RT1-1。
3.3 RT1-1的路由验证请求处理模块侦听来自AS1的消息。
3.4 RT1-1的路由验证请求处理模块通过从AS1收到的自治域信息及路由器R1信息判定路由器R1是否属于AS1,若属于AS1,则记录路由器R1信息,同意与R1的路由行为验证代理模块建立连接,转第四步;如果不属于,则拒绝与R1的路由行为验证代理模块建立连接,转3.3。
第四步,自治域AS1中的任意一台路由器(以R1为例)向自治域AS2中的一台路由器(令为T,T属于AS2)发送路由信息RI。
第五步,路由器T接收来自R1的路由信息RI,根据情况,发送路由信息确认报文,方法如下:
5.1路由器T检查路由信息RI的正确性(检查方法采用BGP路由协议检查路由信息的方法)。如果检查正确,转5.2;如果检查有错误,则丢弃RI,转第六步。
5.2路由器T构造并发送路由信息确认报文给路由器R1,方法如下:
5.2.1从RI中提取出路由基本信息。
5.2.2路由器T根据RI构造路由信息确认报文RIQ,方法是:在RI后面,加上路由器T的公钥及签名。获取路由器T签名的方法是:使用路由器T的私钥,对RI的路由基本信息进行签名,得到路由器T对于RI的路由基本信息的签名。
5.2.3路由器T将RIQ发送给路由器R1,转第六步。
第六步,R1等待从路由器T接收路由信息确认报文RIQ。如果路由器R1收到从路由器T发来的路由信息确认报文RIQ,转第七步。如果在设置的时间阈值δ(时间阈值δ一般设置为10秒钟)内仍未收到路由信息确认报文RIQ,转第四步。
第七步,R1、AS1的路由行为验证终端RT1-1、路由验证区块链***相互配合按第八步~第十四步的流程构造路由证据、构造路由证据验证提案、对路由证据验证提案进行验证(包括完整性检查、最佳路由检查)、对路由证据验证提案进行背书、判断有背书节点签名的路由证据验证提案是否满足背书策略、生成路由证据交易、对路由证据交易进行共识排序、生成区块并更新路由验证区块链;同时路由器T、AS2的路由行为验证终端RT2-1、路由验证区块链***相互配合按第十五步~第二十步的流程构造验证路由请求报文、检查验证路由请求报文是否正确、在路由验证区块链检索是否存在路由请求对应的路由证据、向路由器T反馈路由信息的验证结果。
第八步,R1的路由行为验证代理模块根据RI构造路由证据,将路由证据发送给路由行为验证子***,方法是:
8.1 R1的路由行为验证代理模块构造路由证据RE,方法是从路由信息RI中提取相关内容,得到路由基本信息、前向路由证据PRP、路由信息标识IDR、路由接收者签名和公钥、路由发送者签名和公钥,将它们组合成RE:
8.1.1构建路由基本信息,路由发送者ID由路由信息的源AS号进行哈希得到;路由接收者ID由路由信息的目的AS号进行哈希得到;路由发送时间戳由路由信息的时间戳得到,路由前缀地址由路由信息的路由前缀字段得到;路由操作设置由路由信息的路由操作字段得到;路由分类信息根据路由信息的路径长度生成,以16位二进制表示,假设路径长度是nn,则路由分类信息的第nn位二进制设置为1,其他位设置为0,nn为正整数;
8.1.2构建前向路由证据PRP,指向已存储在路由证据区块链中的一个路由证据,假设PRP所指向的路由证据对应路由信息RI’,路由信息RI’是路由器R1收到的来自其他路由器的路由信息,R1在RI’后加上自身信息,即得到路由信息RI;
8.1.3构建路由信息标识IDR,即将路由发送者ID、路由接收者ID、路由发送时间戳、路由前缀地址、路由操作、路由分类信息的哈希值组合成IDR。
8.1.4将路由接收者收到路由信息时的签名作为路由接收者签名,将路由接收者自身的公钥作为路由接收者公钥;
8.1.5将路由发送者发送路由证据时的签名作为路由发送者签名,将路由发送者自身的公钥作为路由发送者公钥。
8.2路由器R1的路由行为验证代理模块将路由证据RE发送给路由行为验证终端RT1-1。
第九步,路由行为验证终端RT1-1从路由器R1的路由行为验证代理模块接收RE,将RE构造成一个路由证据验证提案(命名为REA),将REA发送到与RT1-1有连接关系的一个背书节点(令为BS1)。REA的结构与当前各类区块链平台(如Fabric)上提案结构(参见《HyperLedger Fabric开发实战——快速掌握区块链技术》第6章,杨毅著,电子工业出版社,2018年第1版)相同,REA构造方法采用当前各类区块链平台(如Fabric)上提案构造方法(参见《HyperLedger Fabric开发实战——快速掌握区块链技术》第6章,杨毅著,电子工业出版社,2018年第1版)。
第十步,背书节点BS1监测是否从RT1-1接收到REA,若接收到REA,检查REA的完整性,若REA完整,根据背书策略将REA发送到背书策略规定的另外K个与BS1相连的背书节点,K为正整数,转第十一步。若REA不完整,转第十步继续等待。
第十一步,接收到REA的K个背书节点对REA并行进行验证:从REA提取路由证据,调用路由证据验证链码验证路由证据,得到K个路由证据验证提案结果,K个背书节点对REA进行验证的方法相同,以K个背书节点中的任意一个背书节点(令为BSi)来说明,方法是:
11.1 BSi从REA中提取出路由证据RE,提取路由证据的方法采用当前各类区块链平台(如Fabric)从提案里提取数据的方法(参见《HyperLedger Fabric开发实战——快速掌握区块链技术》第6章,杨毅著,电子工业出版社,2018年第1版)。
11.2 BSi执行路由证据验证链码,对RE进行验证,方法如下:
11.2.1检查RE的路由基本信息,方法是:
11.2.1.1检查路由验证区块链中是否存在RE里面包含的前向路由证据PRP,若不存在,丢弃RE,转11.5;若存在,判定路由验证区块链中包含的PRP中的路由发送时间戳是否比RE中的路由发送时间戳要早,若早,转11.2.1.2;若不早,则丢弃RE,转11.5。
11.2.1.2检查RE中的路由前缀地址是否与路由验证区块链中包含的PRP中的路由前缀地址相同,若相同,转11.2.1.3;若不相同,丢弃RE,转11.5。
11.2.1.3检查RE中的路由分类信息是否与路由验证区块链中包含的PRP中的路由分类信息一致,若一致,转11.2.2;若不一致,丢弃RE,转11.5。
11.2.2检查RE的签名,方法是:
11.2.2.1使用RE的路由发送者公钥检查路由发送者的签名是否正确,若正确,转11.2.2.2;若不正确,丢弃RE,转11.5。使用RE的路由发送者公钥检查路由发送者的签名是否正确的方法是:使用路由发送者公钥,对RE内容进行哈希操作,比对哈希操作的结果与RE的路由发送者签名是否一致。
11.2.2.2使用RE的路由接收者公钥检查路由接收者的签名是否正确。若正确,转11.2.3;若不正确,丢弃RE,转11.5。
11.2.3检查RE对应的路由信息是否是最佳路由,方法是:
搜索路由验证区块链,推断R1(此时是路由发送者)是否已经接收到比当前要验证的路由(即RE对应的路由信息中的路由)更好的路由,方法是
使用R1的ID、路由前缀地址作为索引,在路由验证区块链进行检索,查找是否存在满足索引条件的路由证据:
11.2.3.1如果在路由验证区块链找到一个路由证据RE’,满足RE’的路由分类信息优于RE的路由分类信息(即RE’对应路由信息的路径长度小于RE对应路由信息的路径长度),证明有路由器曾经给R1发送过更好的路由,但R1没有把这个路由信息发送给路由接收者T,即RE对应的路由信息不是最优路由,将RE丢弃,转11.5;
11.2.3.2如果在路由验证区块链没有找到满足索引条件的路由证据,则说明路由发送者R1发送给路由接收者T的路由信息是最优路由,则RE通过最优路由验证,转11.3。
11.3 BSi为路由证据验证提案REA进行背书,生成路由证据验证提案结果,背书方法采用当前各类区块链平台(如Fabric)背书的方法,路由证据验证提案结果的内容为路由证据验证提案REA和背书节点BSi签名。
11.4 BSi将带有BSi签名的路由证据验证提案结果(此时说明路由证据验证提案通过了验证)发送给路由行为验证终端RT1-1,转第十二步。
11.5BSi生成背书节点签名字段为空的路由证据验证提案结果(说明路由证据验证提案未通过验证),并将该路由证据验证提案结果发送给路由行为验证终端RT1-1,转第十二步。
第十二步,路由行为验证终端RT1-1陆续接收来自于K个背书节点的路由证据验证提案结果,判断从K个背书节点陆续收到的路由证据验证提案结果中通过验证的路由证据验证提案是否满足背书策略,方法是:
12.1检查陆续收到的K个路由证据验证提案结果中带有背书节点签名字段的路由证据验证提案结果数是否大于等于K1(K1是在背书策略中规定的,即至少有K1个背书节点签名的路由证据,才可以向排序节点提交路由证据交易,1≤K1≤K)。如满足,转12.2;如果不满足,则表示没有K1个背书节点为路由证据验证提案进行背书签名,不满足背书策略,表示此轮域间路由证据无法存入区块链,转第二十一步。
12.2路由行为验证终端RT1-1将K1个路由证据验证提案结果打包成一个路由证据交易(路由证据交易结构与Fabric平台一样,只是路由证据交易结构中交易内容存放的是路由证据及各背书节点签名),采用当前各类区块链平台(如Fabric)打包交易的方法。将路由证据交易发送给与RT1-1通信的任意一个排序节点(命名为PX1),转第十三步。
第十三步,排序节点PX1判断是否从RT1-1接收到路由证据交易,若接收到路由证据交易,转13.1;若未接收到,转第十三步等待。
13.1检查交易内容是否符合背书策略(检查签名背书节点数量),如果不符合,转13.5。如果符合,转13.2。
13.2排序节点PX1将路由证据交易发送到路由验证区块链***中其它所有的排序节点。
13.3路由验证区块链***中所有排序节点(包括PX1)对接收到的路由证据交易进行共识排序(采用区块链Fabric所公布的共识算法PBFT)。如果达成共识,转13.4;如果没有达成共识,则转13.5。
13.4路由验证区块链***中所有排序节点采用区块生成方法,将路由证据交易生成新的区块,N个排序节点生成的区块相同。生成区块采用当前各类区块链平台(如Fabric)生成区块方法,将该区块广播到路由验证区块链***中所有提交节点,转第十四步。
13.5路由验证区块链***中所有排序节点丢弃路由证据交易,转第二十一步。
第十四步,路由验证区块链***中所有提交节点从与之相连的排序节点接收新的区块,将区块加入到路由证据验证区块链中,检查区块里的交易是否有效(验证交易的签名是否有效、交易是否满足背书策略)。如果检查有效,说明该交易是经背书节点签名背书过的,路由验证区块链***中所有提交节点将区块加入本地路由验证区块链中,转第二十一步。如果检查无效,则丢弃该区块,转第二十一步。
第十五步,路由器T验证路由信息RI,方法如下:
15.1路由器T的路由行为验证代理模块构造验证路由请求,并将验证路由请求发送给T所属自治域(令为AS2)的路由行为验证终端,方法如下:
15.1.1路由行为验证代理模块从RI中提取路由基本信息。
15.1.2路由行为验证代理模块构造RI的验证路由请求报文RIQB。RIQB的内容包括RI的路由基本信息、路由器T公钥、路由器T对RI的路由基本信息的签名。
15.1.3路由行为验证代理模块将RIQB发送给AS2的路由行为验证终端(令为RT2-1)。
第十六步,AS2的路由行为验证终端RT2-1收到来自路由器T的RIQB,检查RIQB的签名是否正确,判断签名的方法是:使用路由器T的公钥,对RIQB内容进行哈希操作,比对哈希操作的结果与RIQB的路由器T签名是否一致。如果签名一致,说明正确,将RIQB发送给路由验证区块链***的与RT2-1相连的背书节点,转第十八步;如果签名不一致,说明不正确,转第十七步。
第十七步,丢弃验证路由请求报文RIQB,转第二十一步。
第十八步,路由验证区块链***的与RT2-1相连的任意一个背书节点接收RIQB,对RIQB进行验证:
18.1检查RIQB的签名是否正确,如果签名正确,转18.2;如果签名不正确,转第十七步。
18.2从RIQB中提取路由信息标识IDR。
18.3在路由证据区块链中检索IDR,如果在路由证据区块链中找到一个与IDR相同的匹配项,则验证通过,转18.4;否则,验证失败,转18.6。
18.4构造一个路由信息验证成功报文RIYC,即在RIQB尾部加上验证成功标记、背书节点签名,将RIYC反馈给路由行为验证终端RT2-1。
18.5 RT2-1将RIYC转发给路由器T,转第十九步。
18.6构造一个路由信息验证失败报文RIYS,即在RIQB尾部加上验证失败标记、背书节点签名,将路由信息验证失败报文反馈给路由行为验证终端RT2-1。
18.7RT2-1将RIYS转发给路由器T,转第二十步。
第十九步,路由器T接收RIYC,认为路由信息RI符合路由策略,则从RI学习到新的路由,将新的路由添加到路由表中。学习路由和添加路由表的方法,与公知的路由学习和添加路由方法相同,转第二十一步。
第二十步,路由器T接收RIYS,认为路由信息RI违反路由策略,丢弃RI,转第二十一步。
第二十一步,转第四步。
采用本发明可以达到以下技术效果:
1.本发明通过第八步至第十四步,进行验证路由证据并存储在路由证据区块链中;通过第十五步至第二十步,结合路由证据区块链,可检查一个路由器发送的路由信息是否满足路由策略,从而发现由于单点及多点攻击引发的违反路由策略情况。
2.本发明在第八步至第十四步进行路由验证时,采用路由证据代替路由信息参与路由验证过程,保护了路由数据隐私安全性,使得路由隐私信息得以保护;
3.本发明采用区块链存储路由证据,使得本发明提出的“基于区块链的可验证域间路由验证***”具有较好的安全性和鲁棒性,提高了路由证据伪造的难度;通过区块链***和路由行为验证终端的配合使用,可检查出由路由单点攻击以及多点合谋攻击造成的违反路由策略的问题,解决目前域间路由中多点合谋攻击难以被发现的难题。
附图说明
图1为本方法所述的一种基于区块链的可验证域间路由***;
图2是本发明区块数据结构图
图3是本发明总体流程图。
具体实施方式
图3是本发明总体流程图。如图3所示,本发明包括以下步骤:
第一步,构建基于区块链的可验证域间路由***,基于区块链的可验证域间路由***如图1所示,由可验证域间路由子***和路由行为验证子***组成,它们之间通过网络相连。
可验证域间路由子***由多个自治域组成,每个自治域中有多个路由器。在域间路由器路由软件***中增加了路由行为验证代理模块,它与路由软件***的其他模块通过进程间调用通信。路由行为验证代理模块与路由行为验证子***的路由行为验证终端通过网络相连,路由行为验证代理模块根据路由软件***发送的路由信息构造路由基本信息和路由证据,生成路由验证请求信息,将路由证据、路由验证请求信息发送到路由行为验证终端。路由证据由路由基本信息、前向路由证据PRP、路由信息标识IDR、路由接收者签名和公钥、路由发送者签名和公钥这五部分组成;路由证据签名指路由发送者对路由信息进行的签名。路由验证请求信息包括待验证的路由基本信息。
路由行为验证子***由路由行为验证终端和路由验证区块链***组成。路由行为验证终端部署在自治域内(一个自治域部署n台路由行为验证终端,n为正整数),路由行为验证终端与路由行为验证代理模块、路由验证区块链***相连,路由行为验证终端从路由行为验证代理模块接收路由证据和路由验证请求信息,根据路由证据构造路由证据验证提案,将路由证据验证提案、路由证据交易(路由证据交易内容包括路由证据及各背书节点签名)和路由验证请求信息发送给路由验证区块链***;路由行为验证终端由路由证据处理模块、路由验证请求处理模块组成。
路由验证区块链***主要进行三方面工作:(1)接收并处理路由证据验证提案,验证路由证据是否正确;(2)接收并处理路由证据交易,将交易打包成区块,将区块存入路由证据区块链;(3)验证路由验证请求信息并将验证结果反馈给路由行为验证代理模块。
路由验证区块链***与路由行为验证终端相连,基于Fabric区块链平台实现,由背书节点、排序节点、提交节点、路由证据区块链、配置文件组成。
背书节点上安装路由证据验证链码,从路由行为验证终端接收路由证据验证提案和路由验证请求信息,路由证据验证链码是验证路由证据的程序,它检查路由证据的路由基本信息、路由证据签名是否正确,检查路由证据对应的路由信息是否是最佳路由,为通过验证的路由证据进行背书。排序节点接收从路由行为验证终端发送来的路由证据交易;排序节点对路由证据交易进行共识操作,共识完成后构造区块、将区块发给提交节点;提交节点从排序节点接收区块并将区块放到路由证据区块链中。路由证据区块链由区块组成,一个区块如图2所示,分为两大部分:区块头和区块体,区块头里面存储着区块的头信息,包含区块大小、上一区块的哈希值,本区块体的哈希值,区块ID以及时间戳,区块体存储交易计数和交易,交易中存放路由证据,区块体的长度可变,区块头一般为84字节。配置文件存储在每个节点上。配置文件存放路由验证区块链***的配置信息,配置文件包含背书节点、排序节点、提交节点的数量,以及这些节点的网络拓扑信息(包括节点的地址、节点之间的连接关系)。
第二步,启动路由行为验证子***。
2.1启动路由验证区块链***。
2.1.1根据路由验证区块链***中的配置文件,启动配置文件指定数量的背书节点、提交节点、排序节点。
2.1.2背书节点、提交节点和排序节点根据配置文件中网络拓扑信息里的地址信息,自动配置地址,并根据配置文件中网络拓扑信息建立通信连接。
2.1.3路由证据区块链中的所有背书节点设置背书策略,背书策略说明一个路由证据验证提案只有得到指定数量的背书节点的背书后,才能提交给排序节点。
2.1.4初始化路由证据区块链为空。
2.1.5排序节点根据配置文件指定的网络拓扑信息构建共识网络,共识网络中的所有排序节点等待从背书节点发来的路由证据交易。
2.1.6提交节点等待接收排序节点发来的区块。
2.2启动可验证域间路由子***所有自治域中的所有路由行为验证终端,以任意一台路由行为验证终端(命名为Tp)为例来说明启动过程,方法是:
2.2.1路由行为验证终端Tp初始化,包括设置自治域信息(即自治域编号)、设置路由验证区块链***中将与Tp相连的背书节点地址(只有1个)、设置路由验证区块链***中将与Tp相连的排序节点地址(只有1个)。
2.2.2根据2.2.1初始化时设置的背书节点地址,Tp向该背书节点进行身份认证。身份认证采用常用的基于口令的认证方式,如果身份认证通过,向该背书节点发送连接申请,转2.2.3。如果身份认证未通过,则启动失败,转2.2.5。
2.2.3背书节点向Tp发送“同意建立连接”消息。
2.2.4Tp从背书节点接收“同意建立连接”消息,启动工作完成,转第三步。
2.2.5Tp启动失败,转2.2.1。
第三步,令可验证域间路由子***中任意一个自治域AS1内的所有成功启动的路由行为验证终端(假设有n1个,n1≤n,n为AS1中的路由行为验证终端的个数,n为正整数)侦听来自可验证域间路由子***的信息,确认是否与其路由行为验证代理模块建立连接。
3.1由于本发明针对的是域间路由协议,可验证域间路由子***中所有域间路由器(假设有M台,M为正整数)启动路由软件***。
3.2可验证域间路由子***中所有域间路由器启动路由行为验证代理模块,M台域间路由器并行向路由行为验证终端发送自治域信息、路由器信息,任意一个自治域(令为AS1)中任意一台域间路由器(命名为R1)向路由行为验证终端发送自治域信息、路由器信息的方法是:
3.2.1 R1的路由行为验证代理模块进行初始化,包括设置路由行为验证代理模块所在路由器(即R1)所属自治域(命名为AS1)信息(即AS1的自治域编号)、设置R1的信息(即路由器R1的ID)、设置AS1内的n个路由行为验证终端地址(即路由行为验证终端的IP地址)。
3.2.2路由行为验证代理模块将自治域AS1信息、路由器R1信息发送给AS1内的n1个成功启动的路由行为验证终端,申请与AS1内的任意一个成功启动的路由行为验证终端(命名为RT1-1)建立连接,将自治域AS1信息及路由器R1信息发送给路由行为验证终端RT1-1。
3.3 RT1-1的路由验证请求处理模块侦听来自AS1的消息。
3.4 RT1-1的路由验证请求处理模块通过从AS1收到的自治域信息及路由器R1信息判定路由器R1是否属于AS1,若属于AS1,则记录路由器R1信息,同意与R1的路由行为验证代理模块建立连接,转第四步;如果不属于,则拒绝与R1的路由行为验证代理模块建立连接,转3.3。
第四步,自治域AS1中的任意一台路由器(以R1为例)向自治域AS2中的一台路由器(令为T,T属于AS2)发送路由信息RI。
第五步,路由器T接收来自R1的路由信息RI,根据情况,发送路由信息确认报文,方法如下:
5.1路由器T检查路由信息RI的正确性。如果检查正确,转5.2;如果检查有错误,则丢弃RI,转第六步。
5.2路由器T构造并发送路由信息确认报文给路由器R1,方法如下:
5.2.1从RI中提取出路由基本信息。
5.2.2路由器T根据RI构造路由信息确认报文RIQ,方法是:在RI后面,加上路由器T的公钥及签名。获取路由器T签名的方法是:使用路由器T的私钥,对RI的路由基本信息进行签名,得到路由器T对于RI的路由基本信息的签名。
5.2.3路由器T将RIQ发送给路由器R1,转第六步。
第六步,R1等待从路由器T接收路由信息确认报文RIQ。如果路由器R1收到从路由器T发来的路由信息确认报文RIQ,转第七步。如果在设置的时间阈值δ(时间阈值δ设置为10秒钟)内仍未收到路由信息确认报文RIQ,转第四步。
第七步,R1、AS1的路由行为验证终端RT1-1、路由验证区块链***相互配合按第八步~第十四步的流程构造路由证据、构造路由证据验证提案、对路由证据验证提案进行验证(包括完整性检查、最佳路由检查)、对路由证据验证提案进行背书、判断有背书节点签名的路由证据验证提案是否满足背书策略、生成路由证据交易、对路由证据交易进行共识排序、生成区块并更新路由验证区块链;同时路由器T、AS2的路由行为验证终端RT2-1、路由验证区块链***相互配合按第十五步~第二十步的流程构造验证路由请求报文、检查验证路由请求报文是否正确、在路由验证区块链检索是否存在路由请求对应的路由证据、向路由器T反馈路由信息的验证结果。
第八步,R1的路由行为验证代理模块根据RI构造路由证据,将路由证据发送给路由行为验证子***,方法是:
8.1 R1的路由行为验证代理模块构造路由证据RE,方法是从路由信息RI中提取相关内容,得到路由基本信息、前向路由证据PRP、路由信息标识IDR、路由接收者签名和公钥、路由发送者签名和公钥,将它们组合成RE:
8.1.1构建路由基本信息,路由发送者ID由路由信息的源AS号进行哈希得到;路由接收者ID由路由信息的目的AS号进行哈希得到;路由发送时间戳由路由信息的时间戳得到,路由前缀地址由路由信息的路由前缀字段得到;路由操作设置由路由信息的路由操作字段得到;路由分类信息根据路由信息的路径长度生成,以16位二进制表示,假设路径长度是nn,则路由分类信息的第nn位二进制设置为1,其他位设置为0,nn为正整数;
8.1.2构建前向路由证据PRP,指向已存储在路由证据区块链中的一个路由证据,假设PRP所指向的路由证据对应路由信息RI’,路由信息RI’是路由器R1收到的来自其他路由器的路由信息,R1在RI’后加上自身信息,即得到路由信息RI;
8.1.3构建路由信息标识IDR,即将路由发送者ID、路由接收者ID、路由发送时间戳、路由前缀地址、路由操作、路由分类信息的哈希值组合成IDR。
8.1.4将路由接收者收到路由信息时的签名作为路由接收者签名,将路由接收者自身的公钥作为路由接收者公钥;
8.1.5将路由发送者发送路由证据时的签名作为路由发送者签名,将路由发送者自身的公钥作为路由发送者公钥。
8.2路由器R1的路由行为验证代理模块将路由证据RE发送给路由行为验证终端RT1-1。
第九步,路由行为验证终端RT1-1从路由器R1的路由行为验证代理模块接收RE,将RE构造成一个路由证据验证提案(命名为REA),将REA发送到与RT1-1有连接关系的一个背书节点(令为BS1)。REA的结构与当前各类区块链平台(如Fabric)上提案结构相同,REA构造方法采用当前各类区块链平台(如Fabric)上提案构造方法。
第十步,背书节点BS1监测是否从RT1-1接收到REA,若接收到REA,检查REA的完整性,若REA完整,根据背书策略将REA发送到背书策略规定的另外K个与BS1相连的背书节点,K为正整数,转第十一步。若REA不完整,转第十步继续等待。
第十一步,接收到REA的K个背书节点对REA并行进行验证:从REA提取路由证据,调用路由证据验证链码验证路由证据,得到K个路由证据验证提案结果,K个背书节点对REA进行验证的方法相同,以K个背书节点中的任意一个背书节点(令为BSi)来说明,方法是:
11.1 BSi从REA中提取出路由证据RE,提取路由证据的方法采用当前各类区块链平台(如Fabric)从提案里提取数据的方法。
11.2 BSi执行路由证据验证链码,对RE进行验证,方法如下:
11.2.1检查RE的路由基本信息,方法是:
11.2.1.1检查路由验证区块链中是否存在RE里面包含的前向路由证据PRP,若不存在,丢弃RE,转11.5;若存在,判定路由验证区块链中包含的PRP中的路由发送时间戳是否比RE中的路由发送时间戳要早,若早,转11.2.1.2;若不早,则丢弃RE,转11.5。
11.2.1.2检查RE中的路由前缀地址是否与路由验证区块链中包含的PRP中的路由前缀地址相同,若相同,转11.2.1.3;若不相同,丢弃RE,转11.5。
11.2.1.3检查RE中的路由分类信息是否与路由验证区块链中包含的PRP中的路由分类信息一致,若一致,转11.2.2;若不一致,丢弃RE,转11.5。
11.2.2检查RE的签名,方法是:
11.2.2.1使用RE的路由发送者公钥检查路由发送者的签名是否正确,若正确,转11.2.2.2;若不正确,丢弃RE,转11.5。使用RE的路由发送者公钥检查路由发送者的签名是否正确的方法是:使用路由发送者公钥,对RE内容进行哈希操作,比对哈希操作的结果与RE的路由发送者签名是否一致。
11.2.2.2使用RE的路由接收者公钥检查路由接收者的签名是否正确。若正确,转11.2.3;若不正确,丢弃RE,转11.5。
11.2.3检查RE对应的路由信息是否是最佳路由,方法是:
搜索路由验证区块链,推断R1(此时是路由发送者)是否已经接收到比当前要验证的路由(即RE对应的路由信息中的路由)更好的路由,方法是
使用R1的ID、路由前缀地址作为索引,在路由验证区块链进行检索,查找是否存在满足索引条件的路由证据:
11.2.3.1如果在路由验证区块链找到一个路由证据RE’,满足RE’的路由分类信息优于RE的路由分类信息(即RE’对应路由信息的路径长度小于RE对应路由信息的路径长度),证明有路由器曾经给R1发送过更好的路由,但R1没有把这个路由信息发送给路由接收者T,即RE对应的路由信息不是最优路由,将RE丢弃,转11.5;
11.2.3.2如果在路由验证区块链没有找到满足索引条件的路由证据,则说明路由发送者R1发送给路由接收者T的路由信息是最优路由,则RE通过最优路由验证,转11.3。
11.3 BSi为路由证据验证提案REA进行背书,生成路由证据验证提案结果,背书方法采用当前各类区块链平台(如Fabric)背书的方法,路由证据验证提案结果的内容为路由证据验证提案REA和背书节点BSi签名。
11.4 BSi将带有BSi签名的路由证据验证提案结果(此时说明路由证据验证提案通过了验证)发送给路由行为验证终端RT1-1,转第十二步。
11.5 BSi生成背书节点签名字段为空的路由证据验证提案结果(说明路由证据验证提案未通过验证),并将该路由证据验证提案结果发送给路由行为验证终端RT1-1,转第十二步。
第十二步,路由行为验证终端RT1-1陆续接收来自于K个背书节点的路由证据验证提案结果,判断从K个背书节点陆续收到的路由证据验证提案结果中通过验证的路由证据验证提案是否满足背书策略,方法是:
12.1检查陆续收到的K个路由证据验证提案结果中带有背书节点签名字段的路由证据验证提案结果数是否大于等于K1(K1是在背书策略中规定的,即至少有K1个背书节点签名的路由证据,才可以向排序节点提交路由证据交易,1≤K1≤K)。如满足,转12.2;如果不满足,则表示没有K1个背书节点为路由证据验证提案进行背书签名,不满足背书策略,表示此轮域间路由证据无法存入区块链,转第二十一步。
12.2路由行为验证终端RT1-1将K1个路由证据验证提案结果打包成一个路由证据交易(路由证据交易结构与Fabric平台一样,只是路由证据交易结构中交易内容存放的是路由证据及各背书节点签名),采用当前各类区块链平台(如Fabric)打包交易的方法。将路由证据交易发送给与RT1-1通信的任意一个排序节点(命名为PX1),转第十三步。
第十三步,排序节点PX1判断是否从RT1-1接收到路由证据交易,若接收到路由证据交易,转13.1;若未接收到,转第十三步等待。
13.1检查交易内容是否符合背书策略(检查签名背书节点数量),如果不符合,转13.5。如果符合,转13.2。
13.2排序节点PX1将路由证据交易发送到路由验证区块链***中其它所有的排序节点。
13.3路由验证区块链***中所有排序节点(包括PX1)对接收到的路由证据交易进行共识排序(采用区块链Fabric所公布的共识算法PBFT)。如果达成共识,转13.4;如果没有达成共识,则转13.5。
13.4路由验证区块链***中所有排序节点采用区块生成方法,将路由证据交易生成新的区块,N个排序节点生成的区块相同。生成区块采用当前各类区块链平台(如Fabric)生成区块方法,将该区块广播到路由验证区块链***中所有提交节点,转第十四步。
13.5路由验证区块链***中所有排序节点丢弃路由证据交易,转第二十一步。
第十四步,路由验证区块链***中所有提交节点从与之相连的排序节点接收新的区块,将区块加入到路由证据验证区块链中,检查区块里的交易是否有效(验证交易的签名是否有效、交易是否满足背书策略)。如果检查有效,说明该交易是经背书节点签名背书过的,路由验证区块链***中所有提交节点将区块加入本地路由验证区块链中,转第二十一步。如果检查无效,则丢弃该区块,转第二十一步。
第十五步,路由器T验证路由信息RI,方法如下:
15.1路由器T的路由行为验证代理模块构造验证路由请求,并将验证路由请求发送给T所属自治域(令为AS2)的路由行为验证终端,方法如下:
15.1.1路由行为验证代理模块从RI中提取路由基本信息。
15.1.2路由行为验证代理模块构造RI的验证路由请求报文RIQB。RIQB的内容包括RI的路由基本信息、路由器T公钥、路由器T对RI的路由基本信息的签名。
15.1.3路由行为验证代理模块将RIQB发送给AS2的路由行为验证终端(令为RT2-1)。
第十六步,AS2的路由行为验证终端RT2-1收到来自路由器T的RIQB,检查RIQB的签名是否正确,判断签名的方法是:使用路由器T的公钥,对RIQB内容进行哈希操作,比对哈希操作的结果与RIQB的路由器T签名是否一致。如果签名一致,说明正确,将RIQB发送给路由验证区块链***的与RT2-1相连的背书节点,转第十八步;如果签名不一致,说明不正确,转第十七步。
第十七步,丢弃验证路由请求报文RIQB,转第二十一步。
第十八步,路由验证区块链***的与RT2-1相连的任意一个背书节点接收RIQB,对RIQB进行验证:
18.1检查RIQB的签名是否正确,如果签名正确,转18.2;如果签名不正确,转第十七步。
18.2从RIQB中提取路由信息标识IDR。
18.3在路由证据区块链中检索IDR,如果在路由证据区块链中找到一个与IDR相同的匹配项,则验证通过,转18.4;否则,验证失败,转18.6。
18.4构造一个路由信息验证成功报文RIYC,即在RIQB尾部加上验证成功标记、背书节点签名,将RIYC反馈给路由行为验证终端RT2-1。
18.5 RT2-1将RIYC转发给路由器T,转第十九步。
18.6构造一个路由信息验证失败报文RIYS,即在RIQB尾部加上验证失败标记、背书节点签名,将路由信息验证失败报文反馈给路由行为验证终端RT2-1。
18.7 RT2-1将RIYS转发给路由器T,转第二十步。
第十九步,路由器T接收RIYC,认为路由信息RI符合路由策略,则从RI学习到新的路由,将新的路由添加到路由表中。学习路由和添加路由表的方法,与公知的路由学习和添加路由方法相同,转第二十一步。
第二十步,路由器T接收RIYS,认为路由信息RI违反路由策略,丢弃RI,转第二十一步。
第二十一步,转第四步。

Claims (11)

1.一种基于区块链的可验证域间路由验证方法,其特征在于包括以下步骤:
第一步,构建基于区块链的可验证域间路由***,基于区块链的可验证域间路由***由可验证域间路由子***和路由行为验证子***组成,它们之间通过网络相连;
可验证域间路由子***由多个自治域组成,每个自治域中有多个路由器,在域间路由器路由软件***中增加路由行为验证代理模块,路由行为验证代理模块与路由软件***的其他模块通过进程间调用通信;路由行为验证代理模块与路由行为验证子***的路由行为验证终端通过网络相连,路由行为验证代理模块根据路由软件***发送的路由信息构造路由基本信息和路由证据,生成路由验证请求信息,将路由证据、路由验证请求信息发送到路由行为验证终端;路由证据由路由基本信息、前向路由证据PRP、路由信息标识IDR、路由接收者签名和公钥、路由发送者签名和公钥这五部分组成,前向路由证据PRP指向已存储在路由证据区块链中的一个路由证据;路由信息标识IDR是路由信息的唯一标识,在路由验证过程中代替路由信息;路由接收者签名指路由接收者收到路由信息时的签名,路由接收者公钥指用来进行非对称加密的公钥;路由发送者签名指路由发送者发送路由证据时的签名,路由发送者公钥指用来进行非对称加密的公钥;路由证据签名指路由发送者对路由信息进行的签名;路由验证请求信息包括待验证的路由基本信息;
路由行为验证子***由路由行为验证终端和路由验证区块链***组成;路由行为验证终端部署在自治域内,路由行为验证终端与路由行为验证代理模块、路由验证区块链***相连,路由行为验证终端从路由行为验证代理模块接收路由证据和路由验证请求信息,根据路由证据构造路由证据验证提案,将路由证据验证提案、路由证据交易和路由验证请求信息发送给路由验证区块链***,所述路由证据交易内容包括路由证据及各背书节点签名;路由行为验证终端由路由证据处理模块、路由验证请求处理模块组成;
路由验证区块链***接收并处理路由证据验证提案,验证路由证据是否正确;接收并处理路由证据交易,将交易打包成区块,将区块存入路由证据区块链;验证路由验证请求信息并将验证结果反馈给路由行为验证代理模块;
路由验证区块链***与路由行为验证终端相连,由背书节点、排序节点、提交节点、路由证据区块链、配置文件组成;
背书节点上安装路由证据验证链码,从路由行为验证终端接收路由证据验证提案和路由验证请求信息,路由证据验证链码是验证路由证据的程序,它检查路由证据的路由基本信息、路由证据签名是否正确,检查路由证据对应的路由信息是否是最佳路由,为通过验证的路由证据进行背书;排序节点接收从路由行为验证终端发送来的路由证据交易;排序节点对路由证据交易进行共识操作,共识完成后构造区块、将区块发给提交节点;提交节点从排序节点接收区块并将区块放到路由证据区块链中;路由证据区块链由区块组成,一个区块分为两大部分:区块头和区块体,区块头里面存储着区块的头信息,包含区块大小、上一区块的哈希值,本区块体的哈希值,区块ID以及时间戳,区块体存储交易计数和交易,交易中存放路由证据;配置文件存储在每个节点上,配置文件存放路由验证区块链***的配置信息,配置文件包含背书节点、排序节点、提交节点的数量,以及这些节点的网络拓扑信息,网络拓扑信息包括节点的地址、节点之间的连接关系;
第二步,启动路由行为验证子***,方法是:
2.1启动路由验证区块链***:
2.1.1根据路由验证区块链***中的配置文件,启动配置文件指定数量的背书节点、提交节点、排序节点;
2.1.2背书节点、提交节点和排序节点根据配置文件中网络拓扑信息里的地址信息,自动配置地址,并根据配置文件中网络拓扑信息建立通信连接;
2.1.3路由证据区块链中的所有背书节点设置背书策略;
2.1.4初始化路由证据区块链为空;
2.1.5排序节点根据配置文件指定的网络拓扑信息构建共识网络,共识网络中的所有排序节点等待从背书节点发来的路由证据交易;
2.1.6提交节点等待接收排序节点发来的区块;
2.2启动可验证域间路由子***所有自治域中的所有路由行为验证终端,任意一台路由行为验证终端Tp的启动过程是:
2.2.1路由行为验证终端Tp初始化,包括设置自治域编号、设置路由验证区块链***中将与Tp相连的背书节点地址、设置路由验证区块链***中将与Tp相连的排序节点地址;
2.2.2根据2.2.1设置的与Tp相连的背书节点地址,Tp向该背书节点进行身份认证,如果身份认证通过,向该背书节点发送连接申请,转2.2.3;如果身份认证未通过,则启动失败,转2.2.5;
2.2.3背书节点向Tp发送“同意建立连接”消息;
2.2.4Tp从背书节点接收“同意建立连接”消息,启动工作完成,转第三步;
2.2.5Tp启动失败,转2.2.1;
第三步,令可验证域间路由子***中任意一个自治域AS1内的所有成功启动的路由行为验证终端为n1个,n1个成功启动的路由行为验证终端侦听来自可验证域间路由子***的信息,确认是否与其路由行为验证代理模块建立连接,n1≤n,n为AS1中的路由行为验证终端的个数,n为正整数;
3.1令可验证域间路由子***中有M台域间路由器,M台域间路由器启动路由软件***启动路由软件***,M为正整数;
3.2可验证域间路由子***中所有域间路由器启动路由行为验证代理模块,M台域间路由器并行向路由行为验证终端发送自治域信息、路由器信息,任意一个自治域AS1中任意一台域间路由器R1向路由行为验证终端发送自治域信息、路由器信息的方法是:
3.2.1R1的路由行为验证代理模块进行初始化,包括设置路由行为验证代理模块所在路由器即R1、所属自治域AS1信息即AS1的自治域编号、设置路由器R1的ID、设置AS1内的n个路由行为验证终端的IP地址;
3.2.2路由行为验证代理模块将自治域AS1信息、路由器R1信息发送给AS1内的n1个成功启动的路由行为验证终端,申请与AS1内的任意一个成功启动的路由行为验证终端RT1-1建立连接,将自治域AS1信息及路由器R1信息发送给路由行为验证终端RT1-1;
3.3RT1-1的路由验证请求处理模块侦听来自AS1的消息;
3.4RT1-1的路由验证请求处理模块通过从AS1收到的自治域信息及路由器R1信息判定路由器R1是否属于AS1,若属于AS1,则记录路由器R1信息,同意与R1的路由行为验证代理模块建立连接,转第四步;如果不属于,则拒绝与R1的路由行为验证代理模块建立连接,转3.3;
第四步,自治域AS1中的任意一台路由器R1向自治域AS2中的一台路由器T发送路由信息RI;
第五步,路由器T接收来自R1的路由信息RI,根据情况,发送路由信息确认报文,方法如下:
5.1路由器T检查RI的正确性,如果检查正确,转5.2;如果检查有错误,则丢弃RI,转第六步;
5.2路由器T构造路由信息确认报文RIQ并将RIQ发送给路由器R1,转第六步;
第六步,R1等待从路由器T接收RIQ,如果R1收到从路由器T发来的RIQ,转第七步;如果在设置的时间阈值δ内仍未收到路由信息确认报文RIQ,转第四步;
第七步,R1、AS1的路由行为验证终端RT1-1、路由验证区块链***相互配合按第八步~第十四步的流程构造路由证据、构造路由证据验证提案、对路由证据验证提案进行验证、对路由证据验证提案进行背书、判断有背书节点签名的路由证据验证提案是否满足背书策略、生成路由证据交易、对路由证据交易进行共识排序、生成区块并更新路由验证区块链;同时路由器T、AS2的路由行为验证终端RT2-1、路由验证区块链***相互配合按第十五步~第二十步的流程构造验证路由请求报文、检查验证路由请求报文是否正确、在路由验证区块链检索是否存在路由请求对应的路由证据、向路由器T反馈路由信息的验证结果;
第八步,R1的路由行为验证代理模块根据RI构造路由证据,将路由证据发送给路由行为验证子***,方法是:
8.1R1的路由行为验证代理模块从路由信息RI中提取相关内容,构造路由证据RE,方法是将路由基本信息、前向路由证据PRP、路由信息标识IDR、路由接收者签名和公钥、路由发送者签名和公钥组合成RE;
8.2路由器R1的路由行为验证代理模块将路由证据RE发送给路由行为验证终端RT1-1;
第九步,路由行为验证终端RT1-1从路由器R1的路由行为验证代理模块接收RE,将RE构造成一个路由证据验证提案REA,将REA发送到与RT1-1有连接关系的一个背书节点BS1;
第十步,背书节点BS1监测是否从RT1-1接收到REA,若接收到REA,检查REA的完整性,若REA完整,根据背书策略将REA发送到背书策略规定的另外K个与BS1相连的背书节点,K为正整数,转第十一步;若REA不完整,转第十步继续等待;
第十一步,接收到REA的K个背书节点对REA并行进行验证:从REA提取路由证据,调用路由证据验证链码验证路由证据,得到K个路由证据验证提案结果,K个背书节点对REA进行验证的方法相同,K个背书节点中的任意一个背书节点BSi对REA进行验证的方法是:
11.1BSi从REA中提取出路由证据RE;
11.2BSi执行路由证据验证链码,对RE进行验证,方法如下:
11.2.1检查RE的路由基本信息,方法是:
11.2.1.1检查路由验证区块链中是否存在RE里面包含的前向路由证据PRP,若不存在,丢弃RE,转11.5;若存在,判定路由验证区块链中包含的PRP中的路由发送时间戳是否比RE中的路由发送时间戳要早,若早,转11.2.1.2;若不早,则丢弃RE,转11.5;
11.2.1.2检查RE中的路由前缀地址是否与路由验证区块链中包含的PRP中的路由前缀地址相同,若相同,转11.2.1.3;若不相同,丢弃RE,转11.5;
11.2.1.3检查RE中的路由分类信息是否与路由验证区块链中包含的PRP中的路由分类信息一致,若一致,转11.2.2;若不一致,丢弃RE,转11.5;
11.2.2检查RE的签名,方法是:
11.2.2.1使用RE的路由发送者公钥检查路由发送者的签名是否正确,若正确,转11.2.2.2;若不正确,丢弃RE,转11.5;
11.2.2.2使用RE的路由接收者公钥检查路由接收者的签名是否正确,若正确,转11.2.3;若不正确,丢弃RE,转11.5;
11.2.3检查RE对应的路由信息是否是最佳路由,方法是使用R1的ID、路由前缀地址作为索引,在路由验证区块链进行检索,查找是否存在满足索引条件的路由证据:若RE对应的路由信息不是最优路由,将RE丢弃,转11.5;若RE通过最优路由验证,转11.3;
11.3BSi为路由证据验证提案REA进行背书,生成路由证据验证提案结果,背书方法采用当前各类区块链平台背书的方法,路由证据验证提案结果的内容为路由证据验证提案REA和背书节点BSi签名;
11.4BSi将带有BSi签名的路由证据验证提案结果发送给路由行为验证终端RT1-1,转第十二步;
11.5BSi生成背书节点签名字段为空的路由证据验证提案结果,并将该路由证据验证提案结果发送给路由行为验证终端RT1-1,转第十二步;
第十二步,路由行为验证终端RT1-1陆续接收来自于K个背书节点的路由证据验证提案结果,判断从K个背书节点陆续收到的路由证据验证提案结果中通过验证的路由证据验证提案是否满足背书策略,方法是:
12.1检查陆续收到的K个路由证据验证提案结果中带有背书节点签名字段的路由证据验证提案结果数是否大于等于K1,如满足,转12.2;如果不满足,则表示没有K1个背书节点为路由证据验证提案进行背书签名,不满足背书策略,表示此轮域间路由证据无法存入区块链,转第二十一步;K1由背书策略中规定,即至少有K1个背书节点签名的路由证据,才可以向排序节点提交路由证据交易,1≤K1≤K;
12.2路由行为验证终端RT1-1将K1个路由证据验证提案结果打包成一个路由证据交易路由证据交易结构中交易内容存放路由证据及各背书节点签名,将路由证据交易发送给与RT1-1通信的任意一个排序节点PX1,转第十三步;
第十三步,排序节点PX1判断是否从RT1-1接收到路由证据交易,若接收到路由证据交易,转13.1;若未接收到,转第十三步等待;
13.1检查交易内容是否符合背书策略,如果不符合,转13.5;如果符合,转13.2;
13.2排序节点PX1将路由证据交易发送到路由验证区块链***中其它所有的排序节点;
13.3路由验证区块链***中所有排序节点对接收到的路由证据交易进行共识排序;如果达成共识,转13.4;如果没有达成共识,则转13.5;
13.4路由验证区块链***中所有排序节点采用区块生成方法,将路由证据交易生成新的区块,N个排序节点生成的区块相同,将该区块广播到路由验证区块链***中所有提交节点,转第十四步;
13.5路由验证区块链***中所有排序节点丢弃路由证据交易,转第二十一步;
第十四步,路由验证区块链***中所有提交节点从与之相连的排序节点接收新的区块,将区块加入到路由证据验证区块链中,检查区块里的交易是否有效即验证交易的签名是否有效、交易是否满足背书策略;如果检查有效,说明该交易是经背书节点签名背书过的,路由验证区块链***中所有提交节点将区块加入本地路由验证区块链中,转第二十一步;如果检查无效,则丢弃该区块,转第二十一步;
第十五步,路由器T验证路由信息RI,方法如下:
15.1路由器T的路由行为验证代理模块构造验证路由请求,并将验证路由请求发送给T所属自治域AS2的路由行为验证终端,方法如下:
15.1.1路由行为验证代理模块从RI中提取路由基本信息;
15.1.2路由行为验证代理模块构造RI的验证路由请求报文RIQB,RIQB的内容包括RI的路由基本信息、路由器T公钥、路由器T对RI的路由基本信息的签名;
15.1.3路由行为验证代理模块将RIQB发送给AS2的路由行为验证终端RT2-1;
第十六步,AS2的路由行为验证终端RT2-1收到来自路由器T的RIQB,检查RIQB的签名是否正确,如果正确,则将RIQB发送给路由验证区块链***的与RT2-1相连的背书节点,转第十八步;如果签名不正确,转第十七步;
第十七步,丢弃验证路由请求报文RIQB,转第二十一步;
第十八步,路由验证区块链***的与RT2-1相连的任意一个背书节点接收RIQB,对RIQB进行验证:
18.1检查RIQB的签名是否正确,如果签名正确,转18.2;如果签名不正确,转第十七步;
18.2从RIQB中提取路由信息标识IDR;
18.3在路由证据区块链中检索IDR,如果在路由证据区块链中找到一个与IDR相同的匹配项,则验证通过,转18.4;否则,验证失败,转18.6;
18.4构造一个路由信息验证成功报文RIYC,即在RIQB尾部加上验证成功标记、背书节点签名,将RIYC反馈给路由行为验证终端RT2-1;
18.5RT2-1将RIYC转发给路由器T,转第十九步;
18.6构造一个路由信息验证失败报文RIYS,即在RIQB尾部加上验证失败标记、背书节点签名,将路由信息验证失败报文反馈给路由行为验证终端RT2-1;
18.7RT2-1将RIYS转发给路由器T,转第二十步;
第十九步,路由器T接收RIYC,认为路由信息RI符合路由策略,从RI学习到新的路由,将新的路由添加到路由表中,转第二十一步;
第二十步,路由器T接收RIYS,认为路由信息RI违反路由策略,丢弃RI,转第二十一步;
第二十一步,转第四步。
2.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于所述路由信息指路由器之间传输的路由报文,由源AS号、目的AS号、时间戳、路由前缀、路由操作组成;所述路由基本信息包含路由发送者ID,路由接收者ID,路由发送时间戳,路由前缀地址,路由操作,路由分类信息。
3.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于所路由验证区块链***基于Fabric区块链平台实现;所述REA的结构与Fabric区块链平台提案结构相同,REA构造方法采用Fabric区块链平台提案构造方法;所述提取路由证据的方法采用Fabric区块链平台从提案里提取数据的方法;所述路由证据交易与Fabric区块链平台的路由证据交易结构相同;所述共识排序采用Fabric区块链平台所公布的共识算法PBFT。
4.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于2.2.2步所述Tp向背书节点进行身份认证采用基于口令的认证方式。
5.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于5.1步所述路由器T对RI进行检查的方法为BGP路由协议检查路由信息的方法。
6.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于5.2步所述路由器T构造路由信息确认报文RIQ并将RIQ发送给路由器R1的方法是:
5.2.1从RI中提取出路由基本信息;
5.2.2路由器T根据RI构造路由信息确认报文RIQ,方法是:在RI后面,加上路由器T的公钥及签名;获取路由器T签名的方法是:使用路由器T的私钥,对RI的路由基本信息进行签名,得到路由器T对于RI的路由基本信息的签名;
5.2.3路由器T将RIQ发送给路由器R1。
7.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于第六步所述时间阈值δ设置为10秒钟。
8.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于第8.1步所述构造路由证据RE的方法是:
8.1.1构建路由基本信息,路由发送者ID由路由信息的源AS号进行哈希得到;路由接收者ID由路由信息的目的AS号进行哈希得到;路由发送时间戳由路由信息的时间戳得到,路由前缀地址由路由信息的路由前缀字段得到;路由操作设置由路由信息的路由操作字段得到;路由分类信息根据路由信息的路径长度生成,以16位二进制表示,假设路径长度是nn,则路由分类信息的第nn位二进制设置为1,其他位设置为0,nn为正整数;
8.1.2构建前向路由证据PRP,指向已存储在路由证据区块链中的一个路由证据,假设PRP所指向的路由证据对应路由信息RI’,路由信息RI’是路由器R1收到的来自其他路由器的路由信息,R1在RI’后加上自身信息,即得到路由信息RI;
8.1.3构建路由信息标识IDR,即将路由发送者ID、路由接收者ID、路由发送时间戳、路由前缀地址、路由操作、路由分类信息的哈希值组合成IDR。
8.1.4将路由接收者收到路由信息时的签名作为路由接收者签名,将路由接收者自身的公钥作为路由接收者公钥;
8.1.5将路由发送者发送路由证据时的签名作为路由发送者签名,将路由发送者自身的公钥作为路由发送者公钥。
9.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于第11.2.2.1步所述使用RE的路由发送者公钥检查路由发送者的签名是否正确的方法是:使用路由发送者公钥,对RE内容进行哈希操作,比对哈希操作的结果与RE的路由发送者签名是否一致。
10.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于第11.2.3步所述检查RE对应的路由信息是否是最佳路由的具体方法是:
11.2.3.1如果在路由验证区块链找到一个路由证据RE’,满足RE’的路由分类信息优于RE的路由分类信息,即RE’对应路由信息的路径长度小于RE对应路由信息的路径长度,证明有路由器曾经给R1发送过更好的路由,但R1没有把这个路由信息发送给路由接收者T,即RE对应的路由信息不是最优路由;
11.2.3.2如果在路由验证区块链没有找到满足索引条件的路由证据,则说明路由发送者R1发送给路由接收者T的路由信息是最优路由,则RE通过最优路由验证。
11.如权利要求1所述的一种基于区块链的可验证域间路由验证方法,其特征在于第十六步所述AS2的路由行为验证终端RT2-检查RIQB的签名是否正确的方法是:使用路由器T的公钥,对RIQB内容进行哈希操作,比对哈希操作的结果与RIQB的路由器T签名是否一致;如果签名一致,说明正确;如果签名不一致,说明不正确。
CN201911154492.9A 2019-11-22 2019-11-22 一种基于区块链的可验证域间路由验证方法 Active CN110855565B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911154492.9A CN110855565B (zh) 2019-11-22 2019-11-22 一种基于区块链的可验证域间路由验证方法
US17/100,804 US11206127B2 (en) 2019-11-22 2020-11-20 Blockchain-based verifiable inter-domain routing validation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911154492.9A CN110855565B (zh) 2019-11-22 2019-11-22 一种基于区块链的可验证域间路由验证方法

Publications (2)

Publication Number Publication Date
CN110855565A true CN110855565A (zh) 2020-02-28
CN110855565B CN110855565B (zh) 2021-07-20

Family

ID=69603794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911154492.9A Active CN110855565B (zh) 2019-11-22 2019-11-22 一种基于区块链的可验证域间路由验证方法

Country Status (2)

Country Link
US (1) US11206127B2 (zh)
CN (1) CN110855565B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111563744A (zh) * 2020-04-21 2020-08-21 杭州趣链科技有限公司 一种对Fabric复杂背书策略在跨链中验证的方法
CN111585984A (zh) * 2020-04-24 2020-08-25 清华大学 面向分组全生存周期的去中心化安全保障方法及装置
CN111884926A (zh) * 2020-06-18 2020-11-03 北京邮电大学 一种基于区块链的域间路由安全扩展方法及***
CN112583953A (zh) * 2021-02-25 2021-03-30 布比(北京)网络技术有限公司 一种基于区块链对域间路由进行保护的方法及***
US20210367877A1 (en) * 2019-12-04 2021-11-25 T-Mobile Innovations Llc File control for data packet routers using consensus and inter-planetary file system (ipfs)
CN113726665A (zh) * 2021-08-27 2021-11-30 四川启睿克科技有限公司 基于区块链的边界网关路由的更新方法
CN113872857A (zh) * 2021-09-02 2021-12-31 咪咕文化科技有限公司 跨机房数据转发方法、设备及计算机程序产品
US11233849B2 (en) 2020-09-25 2022-01-25 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
CN114079632A (zh) * 2021-10-09 2022-02-22 中国互联网络信息中心 一种基于区块链的可信域间路由方法及***

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113098984B (zh) * 2021-06-02 2021-08-31 支付宝(杭州)信息技术有限公司 基于注册机制形成多层区块链***的方法和区块链***
CN113965566B (zh) * 2021-10-11 2024-05-14 浪潮云信息技术股份公司 一种基于Header-Sig流的BFT共识算法实现方法及***
CN113904869B (zh) * 2021-11-10 2024-04-19 深圳前海微众银行股份有限公司 一种区块链中恶意节点的检测方法及区块链
CN114448697B (zh) * 2022-01-27 2022-10-11 上海交通大学 基于路由证据的路由节点恶意行为检测方法与***
CN115514691B (zh) * 2022-09-05 2023-06-27 郑州工程技术学院 基于区块链的sdn域间协同转发控制***及方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170366347A1 (en) * 2016-06-20 2017-12-21 Ned M. Smith Technologies for data broker assisted transfer of device ownership
WO2018026727A1 (en) * 2016-08-01 2018-02-08 Cryptowerk Corp. Computer-implemented method and system of tamper-evident recording of a plurality of service data items
CN108376368A (zh) * 2018-03-07 2018-08-07 物数(上海)信息科技有限公司 背书策略确定方法、装置、电子设备、存储介质
CN108540536A (zh) * 2018-03-16 2018-09-14 深圳前海微众银行股份有限公司 基于区块链的网络海量业务处理方法、设备及存储介质
CN109327528A (zh) * 2018-10-31 2019-02-12 阿里巴巴集团控股有限公司 一种基于区块链的节点管理方法和装置
CN109447643A (zh) * 2018-10-31 2019-03-08 ***股份有限公司 一种基于区块链的数据共享***及数据共享方法
CN110324174A (zh) * 2019-05-23 2019-10-11 深圳壹账通智能科技有限公司 区块链环境检测方法、设备、装置及存储介质
CN110335043A (zh) * 2019-07-03 2019-10-15 中国银行股份有限公司 一种基于区块链***的交易隐私保护方法、设备以及***

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751791B2 (en) 2008-09-17 2014-06-10 Motorola Solutions, Inc. Method and device for confirming authenticity of a public key infrastructure (PKI) transaction event
US8353034B2 (en) * 2008-11-25 2013-01-08 At&T Intellectual Property I, L.P. System and method to locate a prefix hijacker within a one-hop neighborhood
CN102035663B (zh) 2009-09-27 2012-11-14 中兴通讯股份有限公司 一种多域域间路由维护方法和***
US9736055B2 (en) 2013-05-31 2017-08-15 Metanoia Communications Inc. Inter-medium bridging with inter-domain routing and multi-medium domain coordination
KR20150136184A (ko) 2014-05-26 2015-12-07 한국전자통신연구원 As 구조 기반 인터-도메인 라우팅을 위한 방법 및 장치
US20200186458A1 (en) * 2018-12-06 2020-06-11 T-Mobile Usa, Inc. Autonomous system route validation via blockchain
US10893022B1 (en) * 2018-12-20 2021-01-12 Equinix, Inc. Routing protocol security using a distributed ledger
CN110602096B (zh) * 2019-09-12 2021-07-13 腾讯科技(深圳)有限公司 区块链网络中的数据处理方法、装置、存储介质和设备
US11115312B1 (en) * 2019-12-04 2021-09-07 Sprint Communications Company L.P. File control for data packet routers using consensus and inter-planetary file system (IPFS)
CN111200500B (zh) 2019-12-19 2022-07-01 广西大学 基于区块链及物理不可克隆函数的卫星管理方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170366347A1 (en) * 2016-06-20 2017-12-21 Ned M. Smith Technologies for data broker assisted transfer of device ownership
WO2018026727A1 (en) * 2016-08-01 2018-02-08 Cryptowerk Corp. Computer-implemented method and system of tamper-evident recording of a plurality of service data items
CN108376368A (zh) * 2018-03-07 2018-08-07 物数(上海)信息科技有限公司 背书策略确定方法、装置、电子设备、存储介质
CN108540536A (zh) * 2018-03-16 2018-09-14 深圳前海微众银行股份有限公司 基于区块链的网络海量业务处理方法、设备及存储介质
CN109327528A (zh) * 2018-10-31 2019-02-12 阿里巴巴集团控股有限公司 一种基于区块链的节点管理方法和装置
CN109447643A (zh) * 2018-10-31 2019-03-08 ***股份有限公司 一种基于区块链的数据共享***及数据共享方法
CN110324174A (zh) * 2019-05-23 2019-10-11 深圳壹账通智能科技有限公司 区块链环境检测方法、设备、装置及存储介质
CN110335043A (zh) * 2019-07-03 2019-10-15 中国银行股份有限公司 一种基于区块链***的交易隐私保护方法、设备以及***

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
DMITRI TSUMAK: "《Securing BGP using blockchain technology》", 12 November 2018 *
LI-DER CHOU 等: "《Blockchain-Based Traffic Event Validation and Trust Verification for VANETs》", 《IEEE》 *
丁平: "《基于去中心化的物联网安全的研究与应用》", 《中国优秀硕士学位论文全文数据库》 *
刘冰洋 等: "《去中心化 互联网基础设施》", 《2018中国信息通信大会》 *
彭素芳 等: "《基于区块链的RPKI中CA资源异常分配检测技术》", 《网络空间安全》 *
陈迪 等: "《区块链技术在域间路由安全领域的应用研究》", 《软件学报》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11595293B2 (en) * 2019-12-04 2023-02-28 T-Mobile Innovations Llc File control for data packet routers using consensus and inter-planetary file system (IPFS)
US20210367877A1 (en) * 2019-12-04 2021-11-25 T-Mobile Innovations Llc File control for data packet routers using consensus and inter-planetary file system (ipfs)
CN111563744A (zh) * 2020-04-21 2020-08-21 杭州趣链科技有限公司 一种对Fabric复杂背书策略在跨链中验证的方法
CN111563744B (zh) * 2020-04-21 2023-05-26 杭州趣链科技有限公司 一种对Fabric复杂背书策略在跨链中验证的方法
CN111585984A (zh) * 2020-04-24 2020-08-25 清华大学 面向分组全生存周期的去中心化安全保障方法及装置
CN111585984B (zh) * 2020-04-24 2021-10-26 清华大学 面向分组全生存周期的去中心化安全保障方法及装置
CN111884926A (zh) * 2020-06-18 2020-11-03 北京邮电大学 一种基于区块链的域间路由安全扩展方法及***
US11233849B2 (en) 2020-09-25 2022-01-25 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
EP3975505A1 (en) * 2020-09-25 2022-03-30 Alipay (Hangzhou) Information Technology Co., Ltd. Message transmission methods and apparatuses
CN112583953B (zh) * 2021-02-25 2021-05-14 布比(北京)网络技术有限公司 一种基于区块链对域间路由进行保护的方法及***
CN112583953A (zh) * 2021-02-25 2021-03-30 布比(北京)网络技术有限公司 一种基于区块链对域间路由进行保护的方法及***
CN113726665A (zh) * 2021-08-27 2021-11-30 四川启睿克科技有限公司 基于区块链的边界网关路由的更新方法
CN113726665B (zh) * 2021-08-27 2022-10-18 四川启睿克科技有限公司 基于区块链的边界网关路由的更新方法
CN113872857A (zh) * 2021-09-02 2021-12-31 咪咕文化科技有限公司 跨机房数据转发方法、设备及计算机程序产品
CN114079632A (zh) * 2021-10-09 2022-02-22 中国互联网络信息中心 一种基于区块链的可信域间路由方法及***

Also Published As

Publication number Publication date
US11206127B2 (en) 2021-12-21
US20210160171A1 (en) 2021-05-27
CN110855565B (zh) 2021-07-20

Similar Documents

Publication Publication Date Title
CN110855565B (zh) 一种基于区块链的可验证域间路由验证方法
US10862959B2 (en) Consensus system and method for adding data to a blockchain
US11907174B2 (en) Systems and methods for managing data generation, storage, and verification in a distributed system having a committee of validator nodes
US11694195B2 (en) System and method employing virtual ledger with non-fungible token (NFT) generation
CN106060014B (zh) 一种同时解决前缀劫持、路径劫持及路由泄露攻击的方法
CN113328997B (zh) 联盟链跨链***及方法
US6425004B1 (en) Detecting and locating a misbehaving device in a network domain
CN115378604B (zh) 一种基于信誉值机制的边缘计算终端设备的身份认证方法
US20110060902A1 (en) Vpn connection system and vpn connection method
CN105847034A (zh) 源验证和路径认证方法及装置
CN112398741B (zh) 学习路由的方法、转发报文的方法、设备和存储介质
CN113055176B (zh) 终端认证方法和***、终端设备、p2p验证平台和介质
US11362836B2 (en) Consensus protocol for permissioned ledgers
Jalalzai et al. Window based BFT blockchain consensus
Ahmed et al. Privacy‐preserving blockchain‐based authentication and trust management in VANETs
CN114389835A (zh) 一种IPv6选项显式源地址加密安全验证网关及验证方法
CN113905012B (zh) 一种通信方法、装置、设备及介质
CN108075895B (zh) 一种基于区块链的节点许可方法和***
CN114830572A (zh) 一种数据传输方法、装置、设备、***及存储介质
CN103546439B (zh) 内容请求的处理方法及装置
Lembke et al. Secure and reliable network updates
JP7372527B2 (ja) 通信中継プログラム、中継装置、及び通信中継方法
CN112367365A (zh) 一种数据定向推送的方法和***
Kamel et al. Improved approach of address propagation for f2f networks
Duan et al. Byzantine reliable broadcast in sparse networks

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