著录项信息
专利名称 | 基于边界网关协议报文的报文安全保护方法 |
申请号 | CN02129194.2 | 申请日期 | 2002-08-20 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2004-02-25 | 公开/公告号 | CN1477814 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | 暂无 | IPC分类号 | 暂无查看分类表>
|
申请人 | 华为技术有限公司 | 申请人地址 | 广东省深圳市科技园科发路华为用户服务中心大厦知识产权部
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 华为技术有限公司 | 当前权利人 | 华为技术有限公司 |
发明人 | 胡春哲;倪辉;邓秋林 |
代理机构 | 北京集佳知识产权代理有限公司 | 代理人 | 逯长明 |
摘要
本发明公开了一种基于边界网关协议报文的控制报文安全保护方法,该方法包括报文接收端和接收端之间验证机制和验证字的协商过程,如果验证协商成功,在报文发送时,首先建立BGP连接,然后报文发送端根据验证机制、验证字和要发送的报文内容确定的报文头中的前16字节的标记域并发送BGP报文,报文接收端对收到的BGP报文利用相同的验证机制、验证字和接收到的报文内容对BGP报文头16字节标记域进行验证,如果验证通过,接收该报文,否则抛弃该报文;采用上述方案能够隐藏BGP的报文头,并利用报文头来进行验证,加大了BGP报文被非法截获的难度,同时也易于发现被非法截获后的报文是否被篡改,从而可以有效保护BGP报文内容和网络的安全。
技术领域\n本发明涉及网络系统中报文的安全保护方法。\n背景技术\n互联网(Internet)中的数据安全问题是一个重要的研究课题,对于 Internet网的核心协议----边界网关协议(BGP协议,Border Gateway Protocol)来说,由于在域间传送大量路由,保证路由的安全性以及BGP连 接的安全性成为重要的问题。具体说,就是要防止对BGP报文截获后的篡 改,实现对BGP连接的保护。按照BGP协议,现有的BGP报文由16字节的 全一加上BGP具体的报文内容构成,这样如果截获传输控制协议(TCP协 议)连接,根据16字节的全1的报文头,只要分析出全1的域,就可以轻易 地获取BGP报文内容,这样不但报文没有安全保障,也使整个网络系统失 去安全保障。例如,根据BGP报文获取路由信息,根据路由信息进行破 坏;在获取BGP信息时,将路由信息更改后重新放入TCP数据发送流,如 果重放一个错误的路由,则会造成路由黑洞,增加某台路由器的流量,将 路由器攻击直至重启或死机。因此,现有基于BGP协议的数据局报文的传 输机制存在安全隐患。\n发明内容\n本发明的目的在于提供一种有利于互联网数据报文安全和网络安全的 基于边界网关协议报文的报文安全保护方法。 为达到上述目的,本发明提供的基于边界网关协议报文的报文安全保 护方法,包括:\na.报文接收端向报文发送端发送包括验证机制和验证字的连接 协商报文(OPEN报文);\nb.报文发送端根据接收到的连接协商报文和本端的验证能力确 定是否支持连接协商报文中的验证机制和验证字,如果支持,向报文 接收端反馈支持报文,双方协商成功,否则反馈不支持报文;\nc.当报文发送端和报文接收端双方协商成功后,在发送报文 时,建立基于边界网关协议的连接,然后报文发送端根据验证机制和 验证字确定的报文头发送边界网关协议报文;\nd.报文接收端对收到的边界网关协议报文利用报文发送端和报 文接收端协商成功的验证机制和验证字对报文进行验证,如果验证通 过,接收该报文,否则抛弃该报文。\n所述方法还包括:\n确定基于信息摘要算法5(MD5,Message Oigest.A:gorithm 5) 的验证机制。\n确定验证字为16字节的随机数验证字。\n所述根据验证机制和验证字确定验证报文发送端发出报文的边 界网关协议(BGP协议)报文头按照下述公式完成:\nMD5的输入参数为OPEN类型+密码+16字节随机数+报文信息;\n上述密码是报文发送端和报文接收端配置的UD5密码,16字节 随机数为验证字,最后的报文信息为不带报文头,即不带16字节的 报文头标记的报文全文。\n由于本发明根据报文接收端和报文发送端之间的验证机制和相互之间 交换的连接协商报文(OPEN报文)来对BGP报文头的标记域进行加密,即 使非法截取到BGP报文,由于不能轻易获得BGP报文的头标志,因此很难 获得BGP报文内容,使得根据BGP报文内容获得对整个网络攻击的机会大 大减少;同时,在利用报文头验证时,将报文的内容作为验证参数之一, 即使将报文非法截获后篡改,报文接收端通过对收到的报文根据其内容进 行的验证,可以发现上述篡改,从而可以及时将被篡改的报文抛弃;可 见,采用本发明可以配合TCP数据流保护报文接收端和报文发送端之间的 BGP连接,从而保护BGP报文内容和网络的安全。\n附图说明\n图1是本发明所述方法的实施例流程图;\n图2是图1所述实施例采用的OPEN报文结构图;\n图3是图2所述OPEN报文结构图的可选参数字段图。\n具体实施方式\n本发明的实现就是在建立BGP连接时,BGP报文的发送端和接收端双 方通过OPEN报文交换验证字,这样通过对报文验证的能力协商后,改变 基于BGP协议的报文头前16字节的标记域,即利用BGP报文头标记域对报 文进行动态验证,从而实现对整个BGP报文的保护,并以此来保护BGP连 接。使得非法者虽然可以从TCP报文流截获BGP报文,但因为不知道 BGP的头,报文没有办法同步,因此不能获得BGP的报文具体内容。\n下面结合附图对本发明作进一步详细的描述。\n图1是本发明所述方法的实施例流程图。按照图1,首先在步骤1报文 接收端向报文发送端发送包括验证机制和验证字的连接协商报文(OPEN报 文)。所述OPEN报文实际中可以根据协商的需要确定内容,本例中采用的 OPEN报文的格式参考图2。图2所述的OPEN报文是用来建立BGP连接的,从 图2看出该报文包括很多参数,本发明利用该报文进行验证机制和验证字 的能力协商,利用了该报文的最后一个参数,即可选参数。所述可选参数 的格式参考图3,其中验证码用于标识或约定采用的验证机制,16字节的 随机数用于作为验证字。OPEN报文的作用在于携带协商的具体内容,即协 商验证机制和验证字。本例中验证码值为1,定义为基于MD5验证算法的 报文验证机制,随后跟随的16字节是由BGP报文接收端 产生的作为验证字的随机数。需要说明,采用的加密算法实际中也可以是 其他可能的验证算法,并不局限于MD5算法。\n报文发送端在步骤2接收到OPEN报文后,根据OPEN报文和本端的验证能 力确定是否支持OPEN报文中的验证机制和验证字,如果支持,向报文接收 端反馈支持报文,表明报文发送端和报文接收端双方协商成功,否则反馈 不支持报文。报文接收端在步骤3接收到报文发送端反馈的报文,根据反 馈报文判断与报文发送端的协商是否成功,即是否支持协商的内容,如果 接收到的报文是支持报文,则认为协商成功,继续步骤4,否则协商失 败,结束协商。\n当报文发送端在步骤4发送报文时,建立BGP连接,然后报文发送端根 据验证机制和验证字确定的报文头发送BGP报文;最后在步骤5,报文接收 端对收到的BGP报文利用协商确定的验证机制和验证字对BGP报文头进行验 证,如果验证通过,接收该报文,否则抛弃该报文。也就是说,报文发送 端在BGP连接建立后,发送所有的报文都需要用新的报文头代替BGP 协议规定的16字节的全1。报文接收端在收到BGP报文后先验证报 文头是否一致,如果不一致,则将该报文丢弃。\n上述步骤4和步骤5中,报文接收端和报文发送端都要根据验 证机制和验证字确定BGP报文头的内容,报文接收端用该内容验证接 收到的BGP报文是否是发送给自己的,报文发送端用该内容发送BGP 报文。具体的确定方法按照MD5算法的规定进行,参考下述命令:\nMD5的输入参数为OPEN类型+密码+16字节随机数+报文信息;\n上述密码是报文发送端和报文接收端配置的MD5密码,16字节 随机数为验证字,最后的报文信息为不带报文头(16字节的报文头标 记)的报文全文。由上述命令可知,报文发送端用要发送的BGP报文 作为参数确定报文头,报文接收端也用接收到的BGP(不带报文头)报 文作为参数确定报文头,因此,当接收到的报文被篡改时,能够被及 时发现,从而将被篡改的报文抛弃。\n上述步骤中,步骤1到步骤3是协商的过程,在报文发送端和报 文接收端之间的BGP连接建立前只需执行一次,而在双方协商成功 BGP连接建立后,在报文发送端和报文接收端之间报文发送和接收需 要重复执行。\n需要说明的是,报文发送端和报文接收端是相对的,无论网络中 的哪个节点作为报文接收端,每次与报文发送端协商采用的验证机制 和验证字可能是不同的。另外,协商的具体过程也可以由报文发送端 发起。
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |