同步IPsecSA的方法、组成员及组密钥服务器的利记博彩app

文档序号:7864127阅读:670来源:国知局
专利名称:同步IPsec SA的方法、组成员及组密钥服务器的利记博彩app
技术领域
本申请涉及通信技术领域,特别涉及一种同步因特网协议安全安全联盟(IPsecSA)的方法、组成员及组密钥服务器。
背景技术
组加密传输虚拟私有网络(GroupEncrypted Transport Virtual PrivateNetwork, GET VPN)是一种实现密钥和安全策略集中管理的解决方案。传统的IPsec VPN是一种点到点的隧道连接,而GET VPN是一种点到多点的无隧道连接。GET VPN的典型应用体现为对组播流量的保护,例如音频、视频广播和组播文件的安全传输。GET VPN提供了一种新的基于组的IPsec安全模型。组是一个安全策略的集合,属于同一个组的所有成员共享相同的安全策略及密钥。GET VPN由密钥服务器(KeyServer,KS)和组成员(Group Member,GM)组成,其中,KS通过划分不同的组来管理不同的安全策略和密钥,GM通过加入相应的组,从KS获取安全策略及密钥,并负责对数据流量加密和解密。在GETVPN组网中,GM需要向KS注册,这个注册过程依次包括两个阶段的协商第一阶段的IKE协商GM与KS进行协商,进行双方的身份认证,身份认证通过后,生成用于保护二阶段⑶OI协商的IKE SA ;第二阶段的⑶OI协商由⑶OI协议定义其协商过程,这是一个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在创建IPsecSA时,由于本地资源不足或其他原因创建失败;由于网络问题,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,并存储到安全联盟数据库中,其中,所述IPsecSA包含所述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无效的消息,获得IPsecSA,使GM同KS上的IPsec SA保持同步,保证业务的正常使用。


图I为本发明实施例中同步IPsec SA的方法的流程示意图;图2为本发明具体实施例中应用于同步IPsec SA的GM的结构示意图;图3为本发明具体实施例中可应用于同步IPsec SA的结构示意图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明实施例中提出一种同步IPsec SA的方法,该方法应用于GET VPN组网中,该组网中包括多个GM和一个KS,任一所述GM向KS注册时,第一阶段IKE协商,生成IKESA,用于进行身份验证,为第二阶段的交换提供保护的过程同现有实现,在第二阶段协商过程中,接收到KS发送的携带KD载荷的消息,确定所述KD载荷中的SPI与接收到的SA载荷中的SPI是否一致,一致时,生成IPsec SA并存储到安全联盟数据库中;不一致时,向KS发送KD载荷中的SPI无效的消息,重新获取IPsecSA,达到该GM同KS的IPsec SA 一致,能够保证业务的正常使用。参见图1,图I为本发明实施例中同步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消息中携带的老化时间刷新对应的IPsecSA,否则,进行存储。在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 SA0该方法进一步包括该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,可应用于GETVPN组网中,所述组网中还包括其他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为本发明具体实施例中可应用于同步IPsecSA的结构示意图。该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保持同步,保证业务的正常使用。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种同步因特网协议安全安全联盟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获取对应的IPsecSA,并通过rekey消息下发;接收到所述KS发送的rekey消息时,获得所述rekey消息中携带的IPsec SA,并存储到所述安全联盟数据库中。
2.根据权利要求I所述的方法,其特征在于,所述向所述KS发送所述KD载荷中的SPI无效的消息后,所述方法进一步包括在预设时间内,未接收到所述KS发送的rekey消息时,再次向所述KS发送所述KD载荷中的SPI无效的消息,直到接收到所述KS发送的rekey消息或达到预设次数,结束向所述KS发送KD载荷中的SPI无效的消息。
3.根据权利要求I所述的方法,所述方法进一步包括在本地临时记录所述SA载荷中的老化时间; 所述生成IPsec SA,并存储到安全联盟数据库中时,所述方法进一步包括同时存储所述临时记录的老化时间,当所述老化时间到时,删除所述存储的IPsec SA; 所述获得所述rekey消息中携带的IPsec SA,并存储到所述安全联盟数据库中时,所述方法进一步包括同时存储所述rekey消息中携带的所述IPsec SA的老化时间,当所述老化时间到时,删除所述存储的IPsec SA。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法进一步包括 该GM接收到其他GM发送的报文时,在所述安全联盟数据库中查找所述报文中携带的SPI,如果查找到,根据所述安全联盟数据库中所述SPI对应的IPsec SA处理所述报文;如果未查找到,向所述KS发送所述报文中携带的SPI无效的消息,重新获取IPsec SA。
5.一种组成员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消息下发。
6.根据权利要求5所述的GM,其特征在于,所述GM进一步包括设置单元; 所述设置单元,用于设置预设时间; 所述发送单元,用于向所述KS发送所述KD载荷中的SPI无效的消息后,在所述设置单元设置的预设时间内,所述接收单元未接收到所述KS发送的rekey消息时,再次向所述KS发送所述KD载荷中的SPI无效的消息,直到所述接收单元接收到所述KS发送的rekey消息或达到预设次数,结束向所述KS发送KD载荷中的SPI无效的消息。
7.根据权利要求5所述的GM,其特征在于, 所述记录单元,进一步用于在本地临时记录所述SA载荷中的老化时间; 所述存储单元,进一步用于在生成IPsec SA,并存储到安全联盟数据库中时,同时存储所述记录单元中临时记录的老化时间,当所述老化时间到时,删除所述存储的IPsec SA ;在获得所述rekey消息中携带的IPsec SA,并存储到所述安全联盟数据库中时,同时存储所述rekey消息中携带的所述IPsec SA的老化时间,当所述老化时间到时,删除所述存储的IPsec SA0
8.根据权利要求5-7任意一项所述的GM,其特征在于,该GM还进一步包括查找单元和处理单元; 所述接收单元,进一步用于接收其他GM发送的报文; 所述查找单元,用于当所述接收单元接收到其他GM发送的报文时,在所述安全联盟数据库中查找所述报文中携带的SPI ; 所述处理单元,用于当所述查找单元在所述安全联盟数据库中查找到所述报文中的SPI时,根据所述安全联盟数据库中所述SPI对应的IPsec SA处理所述报文; 所述发送单元,进一步用于当所述查找单元在所述安全联盟数据库中未查找到所述报文中的SPI时,向所述KS发送所述报文中携带的SPI无效的消息,重新获取IPsec SA。
9.一种组密钥服务器KS,可应用于组加密传输虚拟私有网络GET VPN组网中,所述组网中还包括多个组成员GM,其特征在于,所述KS包括接收单元、查找单元和发送单元; 所述接收单元,用于接收所述任一所述GM发送的携带安全参数索引S PI无效的消息;所述查找单元,用于当所述接收单元接收到所述GM发送的携带SPI无效的消息时,根据所述消息中的SPI查找对应的因特网协议安全安全联盟IPsec SA ; 所述发送单元,用于将所述查找单元查找到的对应IPsec SA通过rekey消息发送给所述GM。
全文摘要
本申请公开了一种同步因特网协议安全安全联盟(IPsec SA)的方法,该方法包括任一GM在接收到的携带KD载荷的消息时,若KD载荷中的SPI与本地临时记录的SPI不一致时,向KS发送该KD载荷中的SPI无效的消息,获得IPsec SA。基于同样的发明构思,本发明还提出一组成员(GM)和组密钥服务器(KS),能够使GM同KS上的IPsec SA保持同步,保证业务的正常使用。
文档编号H04L29/06GK102904901SQ201210423078
公开日2013年1月30日 申请日期2012年10月29日 优先权日2012年10月29日
发明者王占群 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1