一种源地址认证方法、系统及装置的制作方法

文档序号:7652800阅读:157来源:国知局
专利名称:一种源地址认证方法、系统及装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及源地址认证技术领域。
背景技术
lnternet网络是一个分散的系统,主要提供基于包的数据转发业务;在 转发处理中,设备(如路由器、交换机、网关等)是基于目的IP地址来转发 IP数据包的,而且在绝大部分情况下,是不检查源IP地址的;正是由于缺乏 源IP地址的检查,使得攻击者很容易伪造源地址,并以此发起许多已知的 Internet网络攻击,危害Internet网络的安全。
目前,有一种IPv6 (下一代互联网协议)源地址认证方法实现了一种端到 端E2E (End-to End)机制,可以解决源地址欺骗的问题,此方法为了实现对 源地址的合法性检验,需要在IP数据包中添加相应的数字签名,并将所述数 字签名以明文的形式放在I P数据包中。
具体过程为,当E2E联盟中一个自治域AS (Autonomous System)产生的 IP数据包向属于E2E联盟中另一个AS的目的IP地址发送时,源AS的边缘路由器 就会查找基于目的AS号的数字签名(通过查找自治域出方向AS-0ut签名 表),并把此数字签名添加到此IP数据包相应报头中;当一个IP数据包到达 一个属于E2E联盟的目的AS时,目的AS的边缘路由器就会判断此IP数据包的源 IP地址是否属于E2E联盟中的AS的IP地址(通过查找地址前缀-AS映射表,以 及E2E联盟成员列表),如果是的话,此边缘路由器就会查找基于源AS号的数 字签名(通过查找自治域入方向AS-In签名表),并和数据包中所带的数字签名进行校验处理,如果相同就去除此数据包中的数字签名字段并转发到目的 IP,若不相同的话,就丢弃此数据包。
攻击者还是很容易通过各种手段来获取AS之间链路的数据流,并从中获 取数字签名从而可以"合法"地进行源地址欺骗攻击,因此,所述这种机制 下的源地址认证方法仍然不能有效的保障网络的安全。

发明内容
鉴于上述现有技术所存在的问题,本发明实施例的目的是提供一种源地 址认证方法、系统及装置,通过将IP数据包的预定字段和共享密钥作为输 入,通过密码学算法进行计算,得到密文数字签名,并发送携带有所述密文 数字签名的I P数据包,有效地提高了源地址认证的安全性。
本发明实施例的目的是通过以下技术方案实现
本发明实施例提供了一种源地址认证方法,包括
将IP数据包的预定字段和共享密钥作为输入,通过密码学算法进行计 算,得到密文数字签名,并发送携带有所述密文数字签名的IP数据包;
接收到所述携带有密文数字签名的IP数据包后,将所述IP数据包的预定 字段和共享密钥通过所述密码学算法进行计算,得到计算结果;
将所述计算结果与接收到的IP数据包中的密文数字签名进行比较,当确 认所述计算结果与接收到的IP数据包中的密文数字签名相同时,源地址认证 成功。
本发明实施例还提供了一种源地址认证系统,包括
密文数字签名处理单元,用于将IP数据包的预定字段和共享密钥作为输 入,通过密码学算法进行计算,生成密文数字签名,并发送携带有所述密文 数字签名的IP数据包;计算结果生成单元,用于将接收到的携带有所述密文数字签名的IP数据
包中的预定字段和共享密钥,通过密码学算法进行计算,生成计算结果;
比较认证单元,将所述计算结果生成单元的计算结果与接收到的IP数据
包中的密文数字签名进行比较,当确认所述计算结果与接收到的I P数据包中
的密文数字签名相同时,源地址认证成功。
本发明实施例还提供了一种边缘路由器,包括
密文数字签名生成单元,用于将IP数据包的预定字段和共享密钥作为输 入,通过密码学算法进行计算,生成密文数字签名;
发送单元,用于发送携带有所述密文数字签名的IP数据包。
本发明实施例又提供了一种边缘路由器,包括
接收单元,用于接收携带有密文数字签名的IP数据包;
计算结果生成单元,用于将接收到的携带有所述密文数字签名的IP数据
包中的预定字段和共享密钥,通过与生成所述密文数字签名相同的密码学算 法进行计算,生成计算结果;
比较认证单元,将从所述计算结果生成单元得到的计算结果与接收到的 IP数据包中的密文数字签名进行比较。
由上述本发明实施例提供的技术方案可以看出,本发明实施例提供了 一 种源地址认证方法、系统及装置,通过将IP数据包的预定字段和共享密钥作 为输入,通过密码学算法进行计算,得到密文数字签名,并发送携带有所述 密文数字签名的IP数据包,有效地提高了源地址认证的安全性。


图l本发明实施例所述方法的流程示意图2为本发明实施例所述系统的结构示意图3为本发明实施例所述边缘路由器的结构示意图;图4为本发明实施例所述另 一边缘路由器的结构示意图。
具体实施例方式
下面结合附图对本发明实施例所述方法进行详细说明。 如图l所示,本发明实施例所述方法具体包括以下步骤 步骤l、当E2E联盟的一个AS (源AS)需要发送IP数据包给另外一个AS (目的AS)时,源AER (AS Edge Router, AS边缘路由器)将所述IP数据包中 的预定字段和共享密钥通过密码学算法进行计算,得到密文数字签名。由于 E2E机制中,E2E联盟中的每个AS的ASC ( AS Control Server, AS控制服务 器)通过控制平面的相应控制协议与其它AS的ASC以及REG (Registration Server,注册服务器)进行交互来维护E2E机制中所需要的各种控制数据,所 以,在本发明实施例的具体实现过程中,可以将E2E耳关盟中源AS、目的AS中共 享的随机数作为双方共享密钥KEY,此KEY值、源AS中的AS-0ut (AS-出方向) 签名表中和目的AS所对应的签名,以及目的AS中的AS-In (AS-入方向)签名 表和源AS所对应的签名三者是相等的;所述预定字段可以是发送的IP数据包 中的某些字段组或所有非变化部分;所述密码学算法可以为轻量级的密码学 算法(比如,HASH算法MD5/SHA-l等),包括其它一些处理费用较小可被此 方案应用的处理算法,当然,也可以采用重量级的密码学算法(比如, HAVAL-128等)。
当采用密码学算法进行计算时, 一般计算得到的值会有三种情况大于 预定长度、等于预定长度和小于预定长度
大于预定长度,这是目前比较多的情况,这时,需要把运算得到的值按 照IP报文头中的预定的数字签名字段长度(目前一般为48bit)进行截断处 理,并把经过截断处理的结果值作为密文数字签名放入数字签名字段中;
当然,有时计算得到的值会低于预定长度,这时,需要对不足的部分进 行补位,使其达到预定的长度,并把经过补位处理的结果值作为密文数字签名放入数字签名字段;
另外,为了操作简便,也可以采用特殊的处理算法,使计算得到的值与 预定长度相等,这时直接将这个值作为密文数字签名就可以了 ;
由于截取或补位的处理过程为不可逆的过程,即,根据经过上述处理后 的密文数字签名,目的AS无法恢复出源AS计算时所使用的预定字段和共享密 钥,因此,对于源地址认证的安全性更高。
步骤2、将所述密文数字签名放到IP数据包的数字签名字段中,并发送携 带有所述密文数字签名的IP数据包;
步骤3、当目的AS的AER接收到所述携带有密文数字签名的IP数据包,将 IP数据包的预定字段和共享密钥通过与步骤1相同的密码学算法进行计算,得 到计算结果;由于E2E机制中,E2E联盟中的每个AS的ASC通过控制平面的相应
数据,所以,步骤1和步骤3中可以使用相同的密码学算法进行计算;
所述计算过程与步骤l中得到密文数字签名的计算步骤相同,计算得到的
值也会相应的有三种情况,此处不再赘述;
步骤4 、将所述步骤3中计算得到的值与接收到的IP数据包中的密文数字
签名进行比较,当确认所述计算结果的值与接收到的IP数据包中的密文数字
签名的值相等时,源地址认证成功,说明源地址是真实的;否则,源地址认
证失败,说明源地址是伪造的。
下面详细说明E2E联盟中的AER对传输IP数据包的处理步骤
情况一,如果所述IP数据包为AS入方向数据包,对于进入E2E联盟中AS的
每一个数据包,AER的处理过程具体为,
A、以数据包中的目的地址为索引检索本地前缀列表,如果检索到匹配项 (说明此数据包的目的地就是本AS),则进入下一步进行处理,否则,可以
作转发处理;B、 以数据包中的源地址为索引检索本地前缀列表,如果检索到匹配项 (说明此数据包是起源于本AS的),则丢弃此数据包;否则,进入下一步处
理;此处为举例说明,A、 B步骤不分先后;
C、 以数据包中的源地址为索引检索prefix-AS (地址前缀-AS )映射 表,如果源地址属于E2E联盟中的某一AS成员,则进入下一步进行处理;否 则,可以作转发处理,在转发前还需要检查此数据包是否含有E2E选项,如果 含有的话(这可能是由于源AS已变更了自己的本地前缀列表,但此信息还没 有到达本AS,造成了不同步的情况),AER在把此包转发进入本AS前需要去除 此E2E选项;
D、 对此数据包中的预定字段(如规定的某些字段组或所有非变化部 分),以及在本AS中的AS-In (AS-入方向)签名表中和此数据包所属源AS所 对应的签名作为输入,通过密码学算法进行运算;
E、 把运算得到的结果值按照IP数据包包头中的数字签名字段长度进行截 断处理;将此结果值和此IP数据包中的密文数字签名进行比较,如果相等, 说明源地址是真实的,则转发此数据包,否则丟弃此数据包,说明源地址是 伪造的。
情况二,如果所述IP数据包为AS出方向数据包,对于进入E2E联盟中AS的 每一个lt据包,AER的处理过程具体为,
a、 以数据包中的源地址为索引检索本地前缀列表,如果检索到匹配项 (说明此数据包是起源于本AS的)则进入下一步骤进行处理,否则可以作转
发处理;
b、 以数据包中的目的地址为索引;f企索prefix-AS (地址前缀-AS )映射 表,如果检索到匹配项(说明此数据包的目的地址是属于E2E联盟中某一AS成 员),则进入下一步骤进行处理;否则可以作转发处理;此处为举例说明, a、 b步骤不分先后;c、 对此数据包中的预定字段,以及在本AS中的AS-Out (AS-出方向)签 名表中和此数据包所属目的AS所对应的签名作为输入根据密码学算法进行计 算;并把运算得到的结果值按照IP报文头中的数字签名字段长度进行截断处 理,得到密文数字签名;
d、 创建一E2E选项,将c中所得的密文数字签名放入E2E选项的数字签名 字段中,最后把此E2E选项插入到数据包中并进行转发处理。
下面结合附图对本发明实施例所述的系统进行详细说明。 如图2所示,本发明实施例所述系统具体包括
密文数字签名处理单元,用于将IP数据包的预定字段和共享密钥作为输 入,通过密码学算法进行计算,生成密文数字签名;具体的说就是,当E2E联 盟的一个AS (源AS)需要发送IP数据包给另外一个AS (目的AS)时,源AER (AS边缘路由器)将所述IP数据包中的预定字段和共享密钥通过密码学算法 进行计算,得到密文数字签名,
计算结果生成单元,用于将接收到的携带有所述密文数字签名的IP数据 包中的预定字段和共享密钥,通过密码学算法进行计算,生成计算结果;具 体的说就是,当目的AS的AER接收到所述携带有密文数字签名的IP数据包,将 IP数据包的预定字段和共享密钥通过密码学算法进行计算,得到计算结果;
比较认证单元,将从所述计算结果生成单元得到的计算结果与接收到的 IP数据包中的密文数字签名进行比较,当确认所述计算结果与接收到的IP数 据包中的密文数字签名相同时,源地址认证成功,否则,源地址认证失败。
其中,所述密文数字签名处理单元具体包括
第一计算^^块,将IP数据包的预定字段和共享密钥作为输入,通过密码 学算法进行计算;
第一密文处理模块,用于将从第一计算模块得到的值按照预定的长度进 行处理,得到密文数字签名;所述处理过程可以为,截取处理或补位处理。发送模块,用于发送携带有所述密文数字签名的IP数据包; 所述计算结果生成单元具体包括
接收模块,用于接收到所述携带有密文数字签名的IP数据包; 第二计算模块,将IP数据包的预定字段和共享密钥作为输入,通过密码 学算法进行计算;
第二密文处理模块,用于将从第二计算模块得到的值按照预定的长度进 行处理,得到计算结果;所述处理过程与密文处理模块的处理过程相同,可 以为截取处理或补位处理。
本发明实施例还提供了 一种边缘路由器,所述边缘路由器可以为源AS边 缘路由器(源AER),如图3所示,具体包括
密文数字签名生成单元,用于将IP数据包的预定字段和共享密钥作为输 入,通过密码学算法进行计算,生成密文数字签名;具体的说就是,具体的 说就是,当E2E联盟的一个AS (源AS)需要发送IP数据包给另外一个AS (目的 AS)时,源AER (AS边缘路由器)的密文数字签名生成单元将所述IP数据包中
的预定字段和共享密钥通过密码学算法进行计算,得到密文数字签名;然 后,缘AER将所述密文数字签名放到I P数据包的数字签名字段中。
发送单元,用于发送所述携带有密文数字签名的IP数据包给目的AS的
AER。
本发明实施例还一种边缘路由器,所述边缘路由器可以为目的AS边缘路 由器,如图4所示,具体包括
接收单元,用于接收源AS发来的携带有密文数字签名的IP数据包;
计算结果生成单元,用于将接收到的携带有所述密文数字签名的IP数据 包中的预定字段和共享密钥,通过密码学算法进行计算,生成计算结果;
比较认证单元,将所述计算结果生成单元的计算结果与接收到的IP数据 包中的密文数字签名进行比较,当确认所述计算结果与接收到的IP数据包中的密文数字签名相同时,源地址认证成功,否则,认证失败。
对于上述两种边缘路由器的各个单元的具体实现过程,在本发明实施的 方法及系统已作详细说明,此处就不再赘述。
步骤是可以通过程序来指令相关的硬件来完成的,所述的程序可以存储于一
计算机可读取存储介质中,所述的存储介质,如R0M/RAM、磁盘、光盘等。
由上述本发明实施例提供的技术方案可以看出,本发明实施例提供了一 种源地址认证方法及系统,通过将IP数据包的预定字段和共享密钥作为输 入,通过密码学算法进行计算,并将计算得到的值进行处理(包括截取或补 位等)得到密文数字签名,此过程为不可逆过程,这样能够极大增强E2E机制 的防源地址欺骗方案的安全性和有效性。
以上所述,仅为本发明实施例较佳的具体实施方式
,但本发明实施例的 保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭 露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明实施例的保 护范围之内。因此,本发明实施例的保护范围应该以权利要求的保护范围为 准。
权利要求
1、一种源地址认证方法,其特征在于,包括将IP数据包的预定字段和共享密钥作为输入,通过密码学算法进行计算,得到密文数字签名,并发送携带有所述密文数字签名的IP数据包;接收到所述携带有密文数字签名的IP数据包后,将所述IP数据包的预定字段和共享密钥通过所述密码学算法进行计算,得到计算结果;将所述计算结果与接收到的IP数据包中的密文数字签名进行比较,当确认所述计算结果与接收到的IP数据包中的密文数字签名相同时,源地址认证成功。
2、 根据权利要求l所述的方法,其特征在于,所述得到密文数字签名的 步骤具体包括将IP数据包的预定字段和共享密钥作为输入,通过密码学算法进行计 算,将计算得到的值按照预定的长度进行处理,得到密文数字签名,并发送 携带有所述密文数字签名的IP数据包;所述得到计算结果的步骤具体包括接收到所述携带有密文数字签名的IP数据包后,将IP数据包的预定字段 和共享密钥作为输入,通过所述密码学算法进行计算,将计算得到的值按照 与生成密文数字签名相同的预定的长度进行处理,得到计算结果。
3、 根据权利要求2所述的方法,其特征在于,所述将计算得到的值按照 预定的长度进行处理的步骤具体包括将计算得到的值按照IP数据包中预定长度进行截取或者将计算得到的值 按照I P数据包中预定长度进行补位。
4、 根据权利要求1或2所述的方法,其特征在于,所述共享密钥包括 源自治域AS和目的AS共享的随机数。
5、 一种源地址认证系统,其特征在于,包括密文数字签名处理单元,用于将IP数据包的预定字段和共享密钥作为输 入,通过密码学算法进行计算,生成密文数字签名,并发送携带有所述密文 数字签名的IP数据包;计算结果生成单元,用于将接收到的携带有所述密文数字签名的IP数据 包中的预定字段和共享密钥,通过密码学算法进行计算,生成计算结果;比较认证单元,将所述计算结果生成单元的计算结果与接收到的IP数据 包中的密文数字签名进行比较,当确认所述计算结果与接收到的IP数据包中 的密文数字签名相同时,源地址认证成功。
6、 根据权利要求5所述的系统,其特征在于,所述密文数字签名处理单 元具体包括第一计算模块,将IP数据包的预定字段和共享密钥作为输入,通过密码 学算法进行计算;第一密文处理模块,用于将从第一计算模块得到的值按照预定的长度进 行处理,得到密文数字签名;发送模块,用于发送携带有所述密文数字签名的IP数据包。
7、 根据权利要求6所述的系统,其特征在于,所述计算结果生成单元具 体包括接收模块,用于接收所述携带有密文数字签名的IP数据包; 第二计算模块,将IP数据包的预定字段和共享密钥作为输入,通过与第一计算模块相同的密码学算法进行计算;第二密文处理模块,用于将从所述第二计算模块得到的值按照与第一密文处理模块相同的预定的长度进行处理,得到计算结果。
8、 一种边缘路由器,其特征在于,包括密文数字签名生成单元,用于将IP数据包的预定字段和共享密钥作为输入,通过密码学算法进行计算,生成密文数字签名;发送单元,用于发送携带有所述密文数字签名的IP数据包。
9、 一种边缘路由器,其特征在于,包括接收单元,用于接收携带有密文数字签名的IP数据包;计算结果生成单元,用于将接收到的携带有所述密文数字签名的IP数据包中的预定字段和共享密钥,通过与生成所述密文数字签名相同的密码学算法进行计算,生成计算结果;比较认证单元,将从所述计算结果生成单元得到的计算结果与接收到的I P数据包中的密文数字签名进行比较。
全文摘要
一种源地址认证方法、系统及装置,其中,所述方法包括将IP数据包的预定字段和共享密钥作为输入,通过密码学算法进行计算,得到密文数字签名,并发送携带有所述密文数字签名的IP数据包;接收到所述携带有密文数字签名的IP数据包后,将IP数据包的预定字段和共享密钥通过所述密码学算法进行计算,得到计算结果;将所述计算结果与接收到的IP数据包中的密文数字签名进行比较,当确认所述计算结果与接收到的IP数据包中的密文数字签名相同时,源地址认证成功。通过将IP数据包的预定字段和共享密钥作为输入,通过密码学算法进行计算,得到密文数字签名,并发送携带有所述密文数字签名的IP数据包,有效地提高了源地址认证的安全性。
文档编号H04L29/06GK101304407SQ20071010178
公开日2008年11月12日 申请日期2007年5月9日 优先权日2007年5月9日
发明者戴光明 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1