首页> 中国专利> 同步IPsec SA的方法、组成员及组密钥服务器

同步IPsec SA的方法、组成员及组密钥服务器

摘要

本申请公开了一种同步因特网协议安全安全联盟(IPsec SA)的方法,该方法包括:任一GM在接收到的携带KD载荷的消息时,若KD载荷中的SPI与本地临时记录的SPI不一致时,向KS发送该KD载荷中的SPI无效的消息,获得IPsec SA。基于同样的发明构思,本发明还提出一组成员(GM)和组密钥服务器(KS),能够使GM同KS上的IPsec SA保持同步,保证业务的正常使用。

著录项

  • 公开/公告号CN102904901A

    专利类型发明专利

  • 公开/公告日2013-01-30

    原文格式PDF

  • 申请/专利权人 杭州华三通信技术有限公司;

    申请/专利号CN201210423078.5

  • 发明设计人 王占群;

    申请日2012-10-29

  • 分类号H04L29/06(20060101);

  • 代理机构11018 北京德琦知识产权代理有限公司;

  • 代理人谢安昆;宋志强

  • 地址 310053 浙江省杭州市高新技术产业开发区之江科技工业园六和路310号华为杭州生产基地

  • 入库时间 2024-02-19 17:33:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-10

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20121029

    专利权人的姓名或者名称、地址的变更

  • 2015-07-29

    授权

    授权

  • 2013-04-03

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20121029

    实质审查的生效

  • 2013-01-30

    公开

    公开

说明书

技术领域

本申请涉及通信技术领域,特别涉及一种同步因特网协议安全安全联盟(IPsec  SA)的方法、组成员及组密钥服务器。

背景技术

组加密传输虚拟私有网络(Group Encrypted Transport Virtual Private Network,GET  VPN)是一种实现密钥和安全策略集中管理的解决方案。传统的IPsec VPN是一种点 到点的隧道连接,而GET VPN是一种点到多点的无隧道连接。GET VPN的典型应用 体现为对组播流量的保护,例如音频、视频广播和组播文件的安全传输。

GET VPN提供了一种新的基于组的IPsec安全模型。组是一个安全策略的集合, 属于同一个组的所有成员共享相同的安全策略及密钥。GET VPN由密钥服务器(Key Server,KS)和组成员(Group Member,GM)组成,其中,KS通过划分不同的组来 管理不同的安全策略和密钥,GM通过加入相应的组,从KS获取安全策略及密钥, 并负责对数据流量加密和解密。

在GETVPN组网中,GM需要向KS注册,这个注册过程依次包括两个阶段的协 商:第一阶段的IKE协商:GM与KS进行协商,进行双方的身份认证,身份认证通 过后,生成用于保护二阶段GDOI协商的IKE SA;第二阶段的GDOI协商:由GDOI 协议定义其协商过程,这是一个GM从KS上“拉”策略的过程。

在第二协商阶段的第二条报中将SA策略下发给GM,在第四条报文中再把SA策 略使用的密钥通过KD载荷下发给GM,这样某些情况下GM收到的KD载荷中的安 全参数索引(SPI)可能和SA载荷中的SPI不一致,如交互过程中生成了新的SA策 略,或交互过程中老的SA策略删除了,此时GM无法正常的创建IPsec SA,GM和 KS的IPsec SA就不同步了,只能等待KS在Rekey时更新IPsec SA;GM在创建IPsec SA时,由于本地资源不足或其他原因创建失败;由于网络问题,GM无法正常接收 KS发送的Rekey消息;GM手工或非正常删除KS下发的IPsec SA后,无法正常接收 其他GM发送的报文等,都可能造成GM和KS的IPsec SA不同步,在KS在Rekey 更新IPsec SA之前,业务不能正常使用。

发明内容

有鉴于此,本申请提供一种同步IPsec SA的方法、组成员及组密钥服务器,能 够使GM同KS上的IPsec SA保持同步,保证业务的正常使用。

为解决上述技术问题,本发明的技术方案是这样实现的:

一种同步因特网协议安全安全联盟IPsec SA的方法,应用于组加密传输虚拟私有 网络GET VPN组网中,所述组网中包括多个组成员GM和一个组密钥服务器KS,任 一所述GM接收到所述KS发送的携带安全联盟SA载荷的消息,并验证所述SA载荷 中的SA策略成功时,在本地临时记录所述SA载荷中的安全参数索引SPI和SA策略, 包括:

该GM接收到KS发送的携带密钥下发KD载荷的消息时,确定所述KD载荷中 的SPI与本地临时记录的SPI是否一致,如果是,生成IPsec SA,并存储到安全联盟 数据库中,其中,所述IPsec SA包含所述KD载荷中的密钥信息,以及记录的SPI和 SA策略;否则,向所述KS发送所述KD载荷中的SPI无效的消息,使所述KS根据 所述无效的SPI获取对应的IPsec SA,并通过rekey消息下发;接收到所述KS发送的 rekey消息时,获得所述rekey消息中携带的IPsec SA,并存储到所述安全联盟数据库 中。

一种组成员GM,可应用于组加密传输虚拟私有网络GET VPN组网中,所述组网 中还包括其他GM和一个组密钥服务器KS,所述GM包括:接收单元、记录单元、 确定单元、存储单元和发送单元;

所述接收单元,用于接收所述KS发送的携带SA载荷的消息;接收所述KS发送 的携带密钥下发KD载荷的消息;接收所述KS发送的rekey消息;

所述记录单元,用于当所述接收单元接收到所述KS发送的携带SA载荷的消息, 且验证所述SA载荷中的SA策略成功时,在本地临时记录所述SA载荷中的安全参数 索引SPI和SA策略;

所述确定单元,用于当所述接收单元接收到所述KS发送的携带KD载荷的消息 时,确定所述KD载荷中的SPI与所述记录单元临时记录的SPI是否一致;

所述存储单元,用于当所述确定单元确定所述KD载荷中的SPI与所述记录单元 临时记录的SPI一致时,生成IPsec SA,并存储到安全联盟数据库中,其中,所述IPsec SA包含所述KD载荷中的密钥信息,以及记录的SPI和SA策略;当所述接收单元接 收到所述KS发送的rekey消息时,获得所述rekey消息中携带的IPsec SA,并存储到 所述安全联盟数据库中;

所述发送单元,用于当所述确定单元确定所述KD载荷中的SPI与所述记录单元 临时记录的SPI不一致时,向所述KS发送所述KD载荷中的SPI无效的消息,使所 述KS根据所述无效的SPI获取对应的IPsec SA,并通过rekey消息下发。

一种组密钥服务器KS,可应用于组加密传输虚拟私有网络GET VPN组网中,所 述组网中还包括多个组成员GM,所述KS包括:接收单元、查找单元和发送单元;

所述接收单元,用于接收所述任一所述GM发送的携带安全参数索引SPI无效的 消息;

所述查找单元,用于当所述接收单元接收到所述GM发送的携带SPI无效的消息 时,根据所述消息中的SPI查找对应的IPsec SA;

所述发送单元,用于将所述查找单元查找到的对应IPsec SA通过rekey消息发送 给所述GM。

综上所述,本申请通过在接收到的携带KD载荷的消息时,若KD载荷中的 SPI与本地临时记录的SPI不一致时,向所述KS发送该KD载荷中的SPI无效的 消息,获得IPsec SA,使GM同KS上的IPsec SA保持同步,保证业务的正常使 用。

附图说明

图1为本发明实施例中同步IPsec SA的方法的流程示意图;

图2为本发明具体实施例中应用于同步IPsec SA的GM的结构示意图;

图3为本发明具体实施例中可应用于同步IPsec SA的结构示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例, 对本发明所述方案作进一步地详细说明。

本发明实施例中提出一种同步IPsec SA的方法,该方法应用于GET VPN组网中, 该组网中包括多个GM和一个KS,任一所述GM向KS注册时,第一阶段IKE协商, 生成IKE SA,用于进行身份验证,为第二阶段的交换提供保护的过程同现有实现,在 第二阶段协商过程中,接收到KS发送的携带KD载荷的消息,确定所述KD载荷中 的SPI与接收到的SA载荷中的SPI是否一致,一致时,生成IPsec SA并存储到安全 联盟数据库中;不一致时,向KS发送KD载荷中的SPI无效的消息,重新获取IPsec SA,达到该GM同KS的IPsec SA一致,能够保证业务的正常使用。

参见图1,图1为本发明实施例中同步IPsec SA的方法的流程示意图。具体步骤 为:

步骤101,任一所述GM接收到所述KS发送的携带SA载荷的消息,并验证所述 SA载荷中的SA策略成功时,在本地临时记录所述SA载荷中的SPI和SA策略。

在具体实现时,接收到KS发送的携带SA载荷的消息时,获得SA载荷中的SA 策略,并在本地进行验证,如果该SA策略可接受,即安全协议和加密算法等该GM 支持,则验证成功,其中SA安全策略包括:保护的数据流信息、加密算法、认证算 法、封装模式等。此时,只是将SA载荷中的SPI和SA策略临时记录,并不直接存储 到安全联盟数据库中。

步骤102,该GM接收到KS发送的携带KD载荷的消息时,确定所述KD载荷中 的SPI与本地临时记录的SPI是否一致,如果是,执行步骤103;否则,执行步骤104。

步骤103,该GM生成IPsec SA,并存储到安全联盟数据库中,其中,所述IPsec  SA包含所述KD载荷中的密钥信息,以及记录的SPI和SA策略。

当KD载荷中的SPI同本地临时记录的SPI一致时,才能成功地生成IPsec SA, 该IPsec SA包含SPI、SA策略和密钥信息,并将成功生成的IPsec SA存储到安全联 盟数据库中。其中,密钥信息包含KEK和TEK。

步骤101中在本地临时记录所述SA载荷中的SPI和SA策略时,进一步记录SA 载荷中的老化时间。

本步骤中在该GM生成IPsec SA,并存储到安全联盟数据库中时,该方法进一步 包括:同时存储本地临时记录的老化时间,当所述老化时间到时,删除所述存储的IPsec  SA。

步骤101中临时记录的老化时间并不生效,只有存储到安全联盟数据库中时该老 化时间才生效。

步骤104,该GM向所述KS发送所述KD载荷中的SPI无效的消息,使所述KS 根据所述无效的SPI获取对应的IPsec SA,并通过rekey消息下发。

当KD载荷中的SPI同本地临时记录的SPI不一致时,此时生成IPsec SA失败, 但是本发明实施例中并不就此结束该流程,等待KS发送rekey消息来获得IPsec SA, 而是获得该KD载荷中的SPI,并向KS发送该获得的SPI无效的消息重新获得IPsec  SA。

KS接收到GM发送的SPI无效的消息时,根据该无效的SPI在本地获取对应的 IPsec SA,并通过rekey消息下发;如果根据无效SPI未获得对应的IPsec SA,则不处 理该SPI无效的消息。KS维护IPsec SA的生命周期,GM请求无效SPI对应的IPsec SA 时,在KS上可能已经老化,因此会有找不到对应的IPsec SA的情况发生。

GM在向KS发送的SPI无效的消息时,其中,无效的SPI通过INVALID-SPI的 消息类型实现,该INVALID-SPI的消息类型为在RFC2408中定义,这里不再详细赘 述。

步骤105,该GM接收到所述KS发送的rekey消息时,获得所述rekey消息中携 带的IPsec SA,并存储到所述安全联盟数据库中。

该GM接收到携带IPsec SA的rekey消息时,将其中的IPsec SA存储到安全联盟 数据库中,同接收到更新IPsec SA的rekey消息处理方式一致,并将临时记录的SPI 和SA策略删除。在存储到安全联盟数据库中时,先确定IPsec SA包含的SPI在所述 安全联盟数据库中是否已存在,如果存在,则根据该rekey消息中携带的老化时间刷 新对应的IPsec SA,否则,进行存储。

在GET VPN组网中,KS维护IPsec SA的生命周期,在GM注册时创建IPsec SA 并下发给GM,在IPsec SA老化前通过rekey消息通知GM更新IPsec SA,以保持IPsec  SA的新鲜性。因此,KS发送rekey消息以及GM处理该消息无本质区别,只是触发 该消息的发送不一样,一种是KS主动发送保鲜并同步IPsec SA,该种情况同现有实 现处理过程一致;另一种情况就是通过GM发送SPI无效的消息,触发KS发送rekey 消息。

该GM向所述KS发送所述KD载荷中的SPI无效的消息后,该方法进一步包括: 在预设时间内,如果该GM未接收到所述KS发送的rekey消息,再次向所述KS发送 所述KD载荷中的SPI无效的消息,直到接收到所述KS发送的rekey消息或达到预设 次数,结束向所述KS发送KD载荷中的SPI无效的消息。默认发送KD载荷中的SPI 无效的消息的次数为3次,在具体应用中可以根据实际需要设置次数。

步骤105中在该GM获得所述rekey消息中携带的IPsec SA,并存储到所述安全 联盟数据库中时,该方法进一步包括:同时存储所述rekey消息中携带的所述IPsec SA 的老化时间,当所述老化时间到时,删除所述存储的IPsec SA。

该方法进一步包括:

该GM接收到其他GM发送的报文时,在所述安全联盟数据库中查找所述报文中 携带的SPI,如果查找到,根据所述安全联盟数据库中所述SPI对应的IPsec SA处理 所述报文;如果未查找到,向所述KS发送所述报文中携带的SPI无效的消息,重新 获取IPsec SA。

其中,向所述KS发送所述报文中携带的SPI无效的消息,重新获取IPsec SA的 过程为:该GM向所述KS发送所述KD载荷中的SPI无效的消息,使所述KS根据所 述无效的SPI获取对应的IPsec SA,并通过rekey消息下发;接收到所述KS发送的rekey 消息时,获得所述rekey消息中携带的IPsec SA,并存储到所述安全联盟数据库中。

本发明具体实施例中基于同样的发明构思,还提出一种GM,可应用于GET VPN组网中,所述组网中还包括其他GM和一个KS。参见图2,图2为本发明具体 实施例中应用于同步IPsec SA的GM的结构示意图。该GM包括:接收单元201、记 录单元202、确定单元203、存储单元204和发送单元205。

接收单元201,用于接收所述KS发送的携带SA载荷的消息;接收所述KS发送 的携带KD载荷的消息;接收所述KS发送的rekey消息。

记录单元202,用于当接收单元201接收到所述KS发送的携带SA载荷的消息, 且验证所述SA载荷中的SA策略成功时,在本地临时记录所述SA载荷中的SPI和 SA策略。

确定单元203,用于当接收单元201接收到所述KS发送的携带KD载荷的消息时, 确定所述KD载荷中的SPI与记录单元202临时记录的SPI是否一致。

存储单元204,用于当确定单元203确定所述KD载荷中的SPI与所述记录单元临 时记录的SPI一致时,生成IPsec SA,并存储到安全联盟数据库中,其中,所述IPsec  SA包含所述KD载荷中的密钥信息,以及记录的SPI和SA策略;当接收单元201接 收到所述KS发送的rekey消息时,获得所述rekey消息中携带的IPsec SA,并存储到 所述安全联盟数据库中。

发送单元205,用于当确定单元203确定所述KD载荷中的SPI与所述记录单元临 时记录的SPI不一致时,向所述KS发送所述KD载荷中的SPI无效的消息,使所述 KS根据所述无效的SPI获取对应的IPsec SA,并通过rekey消息下发。

较佳地,该GM进一步包括:设置单元206。

设置单元206,用于设置预设时间。

发送单元205,用于向所述KS发送所述KD载荷中的SPI无效的消息后,在设置 单元206设置的预设时间内,接收单元201未接收到所述KS发送的rekey消息时,再 次向所述KS发送所述KD载荷中的SPI无效的消息,直到所述接收单元接收到所述 KS发送的rekey消息或达到预设次数,结束向所述KS发送KD载荷中的SPI无效的 消息。

较佳地,

记录单元202,进一步用于在本地临时记录所述SA载荷中的老化时间。

所述存储单元,进一步用于在生成IPsec SA,并存储到安全联盟数据库中时,,存 储单元204,进一步用于在生成IPsec SA,并存储到安全联盟数据库中时,同时存储 所述记录单元中临时记录的老化时间,当所述老化时间到时,删除所述存储的IPsec  SA;在获得所述rekey消息中携带的IPsec SA,并存储到所述安全联盟数据库中时, 同时存储所述rekey消息中携带的所述IPsec SA的老化时间,当所述老化时间到时, 删除所述存储的IPsec SA。

较佳地,该GM进一步包括:查找单元207和处理单元208。

接收单元201,进一步用于接收其他GM发送的报文。

查找单元207,用于当接收单元201接收到其他GM发送的报文时,在所述安全 联盟数据库中查找所述报文中携带的SPI。

处理单元208,用于当查找单元207在所述安全联盟数据库中查找到所述报文中 的SPI时,根据所述安全联盟数据库中所述SPI对应的IPsec SA处理所述报文。

发送单元205,进一步用于当查找单元207在所述安全联盟数据库中未查找到所 述报文中的SPI时,向所述KS发送所述报文中携带的SPI无效的消息,重新获取IPsec  SA。

本发明具体实施例中基于同样的发明构思,还提出一种KS,可应用于GET VPN 组网中,所述组网中还包括多个GM,参见图3,图3为本发明具体实施例中可应用 于同步IPsec SA的结构示意图。该KS包括:接收单元301、查找单元302和发送单 元303。

接收单元301,用于接收所述任一所述GM发送的携带SPI无效的消息。

查找单元302,用于当接收单元301接收到所述GM发送的携带SPI无效的消息 时,根据所述消息中的SPI查找对应的IPsec SA。

发送单元303,用于将查找单元301查找到的对应IPsec SA通过rekey消息发送 给所述GM。

上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元, 也可以进一步拆分成多个子单元。

综上所述,在第二协商阶段的第二条报中将SA策略下发给GM,在第四条报文 中再把SA策略使用的密钥通过KD载荷下发给GM,这样某些情况下GM收到的KD 载荷中的安全参数索引(SPI)可能和SA载荷中的SPI不一致,如交互过程中生成了 新的SA策略,或交互过程中老的SA策略删除了,此时GM无法正常的创建IPsec SA, GM和KS的IPsec SA就不同步了,只能等待KS在Rekey时更新IPsec SA;GM在创 建IPsec SA时,由于本地资源不足或其他原因创建失败;由于网络问题,GM无法正 常接收KS发送的Rekey消息;GM手工或非正常删除KS下发的IPsec SA后,无法 正常接收其他GM发送的报文等,都可能造成GM和KS的IPsec SA不同步。本发明 具体实施例中通过在接收到的携带KD载荷的消息时,若KD载荷中的SPI与本地 临时记录的SPI不一致时,向所述KS发送该KD载荷中的SPI无效的消息,获得 IPsec SA,使GM同KS上的IPsec SA保持同步,保证业务的正常使用。

在本发明的具体实施例中还公开了在一个GM接收到其他GM发送的报文时, 如果在本地的安全联盟数据库中查找该报文中携带的SPI,未查找到时,向所述 KS发送该报文中的SPI无效的消息,获得IPsec SA,使GM同KS上的IPsec SA 保持同步,保证业务的正常使用。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。 凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含 在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号