CN105376098B - 一种路由源和路径双重验证方法 - Google Patents

一种路由源和路径双重验证方法 Download PDF

Info

Publication number
CN105376098B
CN105376098B CN201510856993.7A CN201510856993A CN105376098B CN 105376098 B CN105376098 B CN 105376098B CN 201510856993 A CN201510856993 A CN 201510856993A CN 105376098 B CN105376098 B CN 105376098B
Authority
CN
China
Prior art keywords
certificate
autonomous system
roa
aspolicycert
update message
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
CN201510856993.7A
Other languages
English (en)
Other versions
CN105376098A (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.)
China Internet Network Information Center
Original Assignee
China Internet Network Information Center
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 China Internet Network Information Center filed Critical China Internet Network Information Center
Priority to CN201510856993.7A priority Critical patent/CN105376098B/zh
Publication of CN105376098A publication Critical patent/CN105376098A/zh
Application granted granted Critical
Publication of CN105376098B publication Critical patent/CN105376098B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种路由源和路径双重验证方法。本方法为:1)源自治系统AS1将自己的ROA证书嵌入到BGP路由更新报文中发送给下一跳自治系统AS2;2)自治系统AS2验证AS1的ROA证书,验证出路由的源是AS1后,签发一证书ASPolicyCert并用私钥签名后嵌入到AS2的BGP路由更新报文中发送给下一跳自治系统ASi;3)每一自治系统ASi收到上一跳自治系统发出的更新报文后,从该更新报文中获取AS1的ROA证书,验证出路由的源是AS1以及路由路径正确后,签发一证书并签名;然后将其嵌入到ASi的BGP路由更新报文中发送给下一跳自治系统,直到目的自治系统AS。

Description

一种路由源和路径双重验证方法
技术领域
本发明涉及一种实现路由源认证和路径验证双重验证的方法,属于网络技术领域。
背景技术
作为保证互联网互联互通的重要基础设施,域间路由系统对互联网的安全稳定有着至关重要的影响。由于传统的域间路由系统所采用的BGP协议缺乏对路由通告内容真实性的验证,黑客的蓄意攻击以及错误的网络参数配置都可能导致路由劫持现象的发生。路由劫持对互联网的正常运行影响极大,可能导致大面积的网络瘫痪。见诸报端的典型路由劫持事件有:1997年4月的AS 7007事件、2004年的12月土耳其TTNet路由劫持事件、2006年1月Con-Edison路由劫持事件以及2008年巴基斯坦电信劫持YouTube流量事件等。
同时除了路由源认证的问题,BGP路由器还会受到中间人攻击的威胁,为了解决这一问题,需要对BGP(边界网关协议)路由的路径加以验证。
为了解决路由源认证的问题,RPKI的解决思路是构建一个PKI(公钥证书体系)来完成对INR(InternetNumber Resource,互联网码号资源;包括IP地址前缀和AS(自治系统)号)的所有权(分配关系)和使用权(路由起源通告)的认证,并以此“认证信息”来指导边界路由器,帮助其检验BGP消息的真实性,从而避免域间路由劫持。
RPKI是一种用于保障互联网基础码号资源(包含IP地址、AS号)安全使用的公钥证书体系。通过对X.509公钥证书进行扩展,RPKI依托资源证书实现了对互联网基础码号资源使用授权的认证,并以ROA(Route OriginAuthorization,路由源声明)的形式帮助域间路由系统,验证某个AS针对特定IP地址前缀的路由通告是否合法。
RPKI包括三大基本组件:CA(Certificate Authority,认证权威)、RP(RelyingParty,依赖方)和repository(资料库)。这三大组件通过签发、传送、存储、验证各种数字对象(包括各种签名对象和证书)来彼此协作,共同完成RPKI的功能。
三大组件的功能如下:
CA通过签发ROA(Route OriginAuthorization,路由起源声明)来授权将特定的IP地址前缀授权给某个AS进行路由通告。
repository负责存储这些承载了INR分配/授权信息的证书/ROA等数字对象,供全球的RP下载。
RP负责从repository中爬取这些数字对象,并将其处理成IP地址块与AS号的真实授权关系,用于指导BGP路由。
同时还包括两个证书:EE证书和ROA证书
EE证书:
EE证书由INR持有者签发,专门用于签发“签名对象(signed object)”。EE证书并不以独立文件的形式存在,而总是与一个签名对象封装在一起。这样的设计是为了方便对签名对象的管理工作。
由于每个签名对象都是与一个相应的EE证书封装在一起的,其合法性就由相应的EE证书来确认。因此,签名对象的生存期即是EE证书的生存期;当发生意外情况,导致必须在签名对象过期之前就将其撤销时,直接撤销对应的EE证书即可,无需再设计一套专门的机制。
此外,由于EE证书与签名对象之间存在一一对应的关系,EE证书所载公钥对应的私钥仅需使用一次,用完即可销毁,免去了管理密钥的开销。
ROA证书
RC(资源证书)中所表达的INR分配关系并不能直接用于指导BGP路由。
BGP路由起源通告的内容可以理解为一条“<IP-prefix,AS号>”的映射,即“xxx地址块,在AS号为xxx的自治域内”。该通告的真实性的判断标准为:发出这条BGP路由起源通告的AS,是否已经从该IP地址块的持有者那里获得了“IP地址使用权许可”。这种“授权”关系可以通过ROA(Route OriginAuthorization,路由起源声明)来表达。
ROA的内容为:一个AS号和若干个IP地址块,表示该IP地址块的持有者授权该AS为其发起BGP路由通告。
当某个INR持有者需要授权某个AS为其所持有的某个IP地址前缀发起BGP路由起源通告时,它需要签发一条ROA记录来确认上述授权行为。如图1所示,具体步骤为:
1)INR持有者首先确认自己已经从上游CA获得了相应的IP地址块,确认无误后,签发一张包含该IP地址前缀的EE证书
2)INR持有者确定AS号以及其授权的IP地址块信息
3)使用该EE证书对应的私钥签发包含指定IP地址前缀和AS号的ROA对象
4)用CMS格式将EE证书和ROA封装成单个文件,供后续发布到repository,然后供RP下载查看。RP在收集到全部ROA、RC之后,尝试构建一条从ROA到信任锚点的信任链。如果构建成功,则证明该ROA是可信的。
上述INR路由授权验证机制可以解决BGP路由源验证的问题;但这一机制针对BGP中间人攻击问题,却无能为力。为此,专家们又提出了BGPSEC技术;该技术通过对BGP路由的每个环节加以签名来保障整条BGP路由的安全来完成路由的路径验证。即BGP路由器在收到的BGP消息后,如果要向下一跳传递,就需要附上自己的签名。这样,就可以实现BGP完整转发路径的验证。
然而,由于分别同时执行INR路由授权验证机制与BGPSEC技术的话会对网络设备的改动和网络性能压力很大,因此目前没有一种方案能够同时进行BGP路由源验证和BGP路由的路径验证。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种实现路由源认证和路径验证双重验证的方法。
本发明的技术方案为:
一种路由源和路径双重验证方法,其步骤为:
1)源自治系统AS1从证书依赖方RP处获取到自己的ROA证书,并将此证书嵌入到该源自治系统AS1的BGP路由更新报文中,然后将该更新报文发送给下一跳自治系统AS2
2)自治系统AS2收到上一跳自治系统AS1发出的更新报文后,用上一跳自治系统AS1的ROA证书中的公钥验证该自治系统AS1的ROA证书,验证出路由的源是该自治系统AS1后,签发一证书ASPolicyCert并用自己的私钥进行签名,然后将此证书ASPolicyCert嵌入到该自治系统AS2的BGP路由更新报文中发送给下一跳自治系统ASi;否则丢弃该更新报文;
3)每一自治系统ASi收到上一跳自治系统发出的更新报文后,从该更新报文中获取该自治系统AS1的ROA证书,验证出路由的源是该自治系统AS1以及路由路径正确后,签发一证书ASPolicyCert并用自己的私钥进行签名;然后将此证书ASPolicyCert嵌入到该自治系统ASi的BGP路由更新报文中发送给下一跳自治系统,直到目的自治系统AS;其中,证书ASPolicyCert中包含有与自己直连的自治系统AS号。
一种路由源和路径双重验证方法,其步骤为:
1)源自治系统AS1从证书依赖方RP处获取到自己的ROA证书,并将此证书嵌入到该源自治系统AS1的BGP路由更新报文中,然后将该更新报文发送给下一跳自治系统AS2
2)自治系统AS2收到上一跳自治系统AS1发出的更新报文后,用上一跳自治系统AS1的ROA证书中的公钥验证该自治系统AS1的ROA证书,验证出路由的源是该自治系统AS1后,签发一证书ASPolicyCert并用自己的私钥进行签名,然后将此证书ASPolicyCert嵌入到该自治系统AS2的BGP路由更新报文中发送给下一跳自治系统ASi;否则丢弃该更新报文;
3)每一自治系统ASi收到上一跳自治系统发出的更新报文后,从该更新报文中获取上一跳的ASPolicyCert证书,验证出路由的路由路径正确后,签发一证书ASPolicyCert并用自己的私钥进行签名;然后将此证书ASPolicyCert嵌入到该自治系统ASi的BGP路由更新报文中发送给下一跳自治系统,直到目的自治系统AS;其中,证书ASPolicyCert中包含有与自己直连的自治系统AS号。
进一步的,所述更新报文的网络层可达信息后面添加一选项,用于存放ROA证书。
进一步的,所述更新报文的字段包括:不可用路由长度、撤销路由、总的路径属性长度、路径属性。
进一步的,所述路径属性包括:公认必遵类、公认自决类、可选传递类、可选非传递类。
进一步的,所述ROA证书放置在所述路径属性的公认必遵类内。
与现有技术相比,本发明的优点:
本发明通过将ROA证书嵌入到BGP UPDATE报文中,从而能够使得BGP边界路由器进行路由源认证和路径认证。同时改进了BGPSEC的方案,使得在路径验证过程中使用密钥技术验证过程大大减少,有效的提高了BGP UPDATE报文的处理流程和效率。
附图说明
图1为ROA证书的签发过程;
图2为本发明的原理图。
具体实施方式
下面结合附图对本发明进行进一步详细描述:
本发明提出了一种能够同时进行BGP路由源认证和BGP路由的路径验证,将公钥证书体系RPKI中的ROA证书嵌入到BGP消息的UPDATE报文中,同时改进了BGPSEC的方案,使得在路径验证过程中使用密钥技术验证过程大大减少,有效的提高了BGP UPDATE报文的处理流程和效率。
本发明的基本原理如图2所示:AS001从RP处获取到自己的ROA证书ROA1,并将此证书嵌入到其BGP路由的UPDATE报文中(BGP路由的更新报文),宣称该BGP路由的源是AS001,AS002收到AS001发出的BGP UPDATE报文后(BGP更新报文里面有源地址和目的地址,源地址是AS001,目的地址是AS002),用ROA1证书里面自己携带的公钥验证ROA1的真实性,从而验证出该路由的源是AS001。同时AS002签发一张证书ASPolicyCert,该证书中包含与自己直连的AS号(AS001,AS003)(此处原理和SoBGP相同),并用自己的私钥进行签名,最后将此证书嵌入到该BGP UPDATE报文中。
AS003收到该BGP UPDATE报文后首先可以通过AS002的公钥验证该BGP的路径是由AS001到AS002再到AS003,同时还可以根据ROA1(ROA1嵌入在BGP更新报文中,获得了BGP更新报文,就获得了ROA1)验证出该路由的源来自于AS001(AS002签发的ASPolicyCert证书中会携带AS002的公钥,所以AS003收到AS002发来的BGP更新报文后,从报文中取出ASPolicyCert证书,然后根据公钥验证证书的真实性,证书里有AS002的直连AS号信息:AS001、AS003,可以查出BGP的路径是从AS001到AS002到AS003)。同理,AS004接收到AS003发来的BGP UPDATE报文后,可以验证出该路由的路径是经过AS001到AS002到AS003最后到AS004。同时根据该报文中的ROA1可以验证出该路由的源是AS001。上述处理过程中,可选的,AS002,AS003等后续自治系统生成的更新报文也可以不包含有ROA1,此情况后续自治系统直接从该更新报文中获取上一跳的ASPolicyCert证书,根据获取的ASPolicyCert证书向上追溯验证出路由的路由路径正确(比如AS003追溯到它的上一跳AS002,才知道源是AS001)后,签发一证书ASPolicyCert并用自己的私钥进行签名;然后将此证书ASPolicyCert嵌入到该自治系统ASi的BGP路由更新报文中发送给下一跳自治系统,直到目的自治系统AS。
BGP报文的格式
1)BGP包头的格式
Maker(16字节)-------全为1,否则,标记的值要使用认证机制来计算(认证机制是通过认证信息的一部分来指定的)。标记可以用来探测BGP对端的同步丢失,认证进入的BGP消息。
Length(2字节)-------BGP包全长,长度的值必须最少19字节最大4096字节。
Type(1字节)---1-OPEN
2-UPDATE
3-NOTIFICATION
4–KEEPALIVE
2)UPDATE报文格式
Unfeasible Routes Length(不可用路由长度)----2字节,指示了撤销路由的字节总长度。0说明没有撤销路由,UPDATE消息内部没有撤销路由。
Withdrawn Routes(撤销路由)----如果没有撤销路由则无此字段,如果有撤销路由,此字段列出所撤销的路由条目。
Total PathAttribute Length(总的路径属性长度)----2字节,0代表在UPDATE消息中没有网络层可达信息域。
PathAttributes(路径属性):在每一个UPDATE消息中有可能有多个路径属性对。每一个路径属性对包括Attribute Flags、Attribute type code、Attribute Data Length三个字段。Attribute Flags、Attribute type code各占位1个字节。
路径属性
1、well-known mandatory:公认必遵类
2、well-known discretionary:公认自决类
3、optional transitive:可选传递类
4、optional nontrasitive:可选非传递类
对于可选属性,不要求所有的BGP路由器都支持。
如果是不支持的可选传递属性,路由器将原封不动的传递给其他路由器。
如果是不支持的可选非传递属性,路由器必须将其删除,不再继续传递下去。
由于ROA的值会影响路由选择,所以将其放置在公认必遵类里面。
Network Layer Reachability Information(网络层可达信息):
实施例1:可以将ROA的值嵌入到路径属性里。
实施例2:可以扩展BGP报文,在网络层可达信息后面添加一个新的选项,用于存放ROA的值,具体格式如下所示:
1)起源的路由器发送update+roa;
2)第二跳用ROA验证UPDATE;
Y:转发update,不需要ROA,加上policycert;
N:丢弃;
3)下一跳路由器直接信任上一跳;
路径验证基于policycert。

Claims (6)

1.一种路由源和路径双重验证方法,其步骤为:
1)源自治系统AS1从证书依赖方RP处获取到自己的ROA证书,并将此证书嵌入到该源自治系统AS1的BGP路由更新报文中,然后将该更新报文发送给下一跳自治系统AS2
2)自治系统AS2收到上一跳自治系统AS1发出的更新报文后,用上一跳自治系统AS1的ROA证书中的公钥验证该自治系统AS1的ROA证书,验证出路由的源是该自治系统AS1后,签发一证书ASPolicyCert并用自己的私钥进行签名,然后将此证书ASPolicyCert嵌入到该自治系统AS2的BGP路由更新报文中发送给下一跳自治系统ASi;否则丢弃该更新报文;
3)每一自治系统ASi收到上一跳自治系统发出的更新报文后,从该更新报文中获取该自治系统AS1的ROA证书,验证出路由的源是该自治系统AS1以及路由路径正确后,签发一证书ASPolicyCert并用自己的私钥进行签名;然后将此证书ASPolicyCert嵌入到该自治系统ASi的BGP路由更新报文中发送给下一跳自治系统,直到目的自治系统AS;其中,证书ASPolicyCert中包含有与自己直连的自治系统AS号。
2.一种路由源和路径双重验证方法,其步骤为:
1)源自治系统AS1从证书依赖方RP处获取到自己的ROA证书,并将此证书嵌入到该源自治系统AS1的BGP路由更新报文中,然后将该更新报文发送给下一跳自治系统AS2
2)自治系统AS2收到上一跳自治系统AS1发出的更新报文后,用上一跳自治系统AS1的ROA证书中的公钥验证该自治系统AS1的ROA证书,验证出路由的源是该自治系统AS1后,签发一证书ASPolicyCert并用自己的私钥进行签名,然后将此证书ASPolicyCert嵌入到该自治系统AS2的BGP路由更新报文中发送给下一跳自治系统ASi;否则丢弃该更新报文;
3)每一自治系统ASi收到上一跳自治系统发出的更新报文后,从该更新报文中获取上一跳的ASPolicyCert证书,验证出路由的路由路径正确后,签发一证书ASPolicyCert并用自己的私钥进行签名;然后将此证书ASPolicyCert嵌入到该自治系统ASi的BGP路由更新报文中发送给下一跳自治系统,直到目的自治系统AS;其中,证书ASPolicyCert中包含有与自己直连的自治系统AS号。
3.如权利要求1或2所述的方法,其特征在于,所述更新报文的网络层可达信息后面添加一选项,用于存放ROA证书。
4.如权利要求1或2所述的方法,其特征在于,所述更新报文的字段包括:不可用路由长度、撤销路由、总的路径属性长度和路径属性。
5.如权利要求4所述的方法,其特征在于,所述路径属性包括:公认必遵类、公认自决类、可选传递类和可选非传递类。
6.如权利要求5所述的方法,其特征在于,所述ROA证书放置在所述路径属性的公认必遵类内。
CN201510856993.7A 2015-11-30 2015-11-30 一种路由源和路径双重验证方法 Active CN105376098B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510856993.7A CN105376098B (zh) 2015-11-30 2015-11-30 一种路由源和路径双重验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510856993.7A CN105376098B (zh) 2015-11-30 2015-11-30 一种路由源和路径双重验证方法

Publications (2)

Publication Number Publication Date
CN105376098A CN105376098A (zh) 2016-03-02
CN105376098B true CN105376098B (zh) 2019-06-14

Family

ID=55377925

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510856993.7A Active CN105376098B (zh) 2015-11-30 2015-11-30 一种路由源和路径双重验证方法

Country Status (1)

Country Link
CN (1) CN105376098B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105847034B (zh) * 2016-03-16 2019-02-05 清华大学 源验证和路径认证方法及装置
CN106060014B (zh) * 2016-05-18 2019-04-26 中国互联网络信息中心 一种同时解决前缀劫持、路径劫持及路由泄露攻击的方法
CN106254242A (zh) * 2016-08-04 2016-12-21 胡汉强 一种数据传输方法、集中控制器、转发面设备和本端通信装置
CN106453430A (zh) * 2016-12-16 2017-02-22 北京瑞卓喜投科技发展有限公司 验证加密数据传输路径的方法及装置
CN106411964A (zh) * 2016-12-16 2017-02-15 北京瑞卓喜投科技发展有限公司 可追溯的加密数据的传输方法及装置
CN106603534A (zh) * 2016-12-16 2017-04-26 北京瑞卓喜投科技发展有限公司 共享可追溯的加密数据的系统
CN114389993A (zh) * 2018-11-02 2022-04-22 华为技术有限公司 一种路由处理的方法和网络设备
CN111130766B (zh) * 2019-11-25 2022-11-04 广州大学 一种基于区块链的资源公钥基础设施双向授权的方法
CN111241549B (zh) * 2020-01-08 2022-11-15 广州中国科学院计算机网络信息中心 一种异构标识体系下的可信解析方法
EP4099631A4 (en) * 2020-02-27 2023-07-26 Huawei Technologies Co., Ltd. PERFORMANCE TEST INDICATION INFORMATION CONFIGURATION METHOD AND APPARATUS
CN111541696B (zh) * 2020-04-24 2021-10-01 清华大学 随机认证嵌入的快速源和路径验证方法
US20230054738A1 (en) * 2021-08-19 2023-02-23 Cisco Technology, Inc. Advertising bgp destination secure path requirement in global internet
CN114124411B (zh) * 2021-12-07 2024-01-09 牙木科技股份有限公司 信息注册方法、信息认证方法、dns服务器及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101588343A (zh) * 2008-05-20 2009-11-25 中国人民解放军信息工程大学 前缀与as映射关系的管理方法、报文处理方法和装置
CN102158469A (zh) * 2011-01-27 2011-08-17 电子科技大学 一种边界网关协议前缀劫持攻击防范方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101588343A (zh) * 2008-05-20 2009-11-25 中国人民解放军信息工程大学 前缀与as映射关系的管理方法、报文处理方法和装置
CN102158469A (zh) * 2011-01-27 2011-08-17 电子科技大学 一种边界网关协议前缀劫持攻击防范方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Border Gateway Protocol 4 (BGP-4);Y.Rekhter et al;《Network Working Group Request for Comments:4271》;20060301;第4.3节
基于公钥自证明路由通告验证的IP前缀劫持防范机制研究;杨波;《中国博士学位论文全文数据库》;20130503;第2.2.1节,图2-2

Also Published As

Publication number Publication date
CN105376098A (zh) 2016-03-02

Similar Documents

Publication Publication Date Title
CN105376098B (zh) 一种路由源和路径双重验证方法
CN106060014B (zh) 一种同时解决前缀劫持、路径劫持及路由泄露攻击的方法
Zapata et al. Securing ad hoc routing protocols
KR101527249B1 (ko) Ip 어드레스 위임
EP2329621B1 (en) Key distribution to a set of routers
Lebovitz et al. Keying and authentication for routing protocols (KARP) design guidelines
US20170201382A1 (en) Secure Endpoint Devices
WO2016082275A1 (zh) 一种基于逐跳监督的bgp路由验证方法
CN103701700A (zh) 一种通信网络中的节点发现方法及系统
WO2011110096A1 (zh) 通过路由器或交换机实现可信网络连接的方法和装置
JP4783340B2 (ja) 移動ネットワーク環境におけるデータトラフィックの保護方法
CN106453651A (zh) 一种rpki资料库及数据同步方法
US20230077053A1 (en) Authentication using a decentralized and/or hybrid dencentralized secure crypographic key storage method
Shibasaki et al. An AODV-based communication-efficient secure routing protocol for large scale ad-hoc networks
Bakkali et al. Security problems in BGP: An overview
CN115883088B (zh) 基于bgp路由的自治域安全参数更新方法
CN113542116B (zh) 基于aspa改进的路径验证方法
CN110855690B (zh) 一种基于ibc的安全bgp协议实现方法
Palmieri et al. Enhanced Security Strategies for MPLS Signaling.
Oti et al. Practical Security Approaches against Border Gateway Protocol (BGP) Session Hijacking Attacks between Autonomous Systems
CN116015670A (zh) 基于无证书有序聚合签名的防范bgp中间人攻击的方法
Guerrero Zapata Securing and enhancing routing protocols for mobile ad hoc networks
Palmieri et al. Securing the MPLS control plane
JP2006154125A (ja) ローカル認証システム、ローカル認証装置、ローカル認証方法
Raimagia et al. A novel approach for secure routing through BGP using symmetric key

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant