CN115225414B - 基于ipsec的加密策略匹配方法、装置及通信系统 - Google Patents
基于ipsec的加密策略匹配方法、装置及通信系统 Download PDFInfo
- Publication number
- CN115225414B CN115225414B CN202211147189.8A CN202211147189A CN115225414B CN 115225414 B CN115225414 B CN 115225414B CN 202211147189 A CN202211147189 A CN 202211147189A CN 115225414 B CN115225414 B CN 115225414B
- Authority
- CN
- China
- Prior art keywords
- security
- information
- alliance
- ipsec
- pointer variable
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/166—Implementing security features at a particular protocol layer at the transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于IPSEC的加密策略匹配方法、装置及通信系统,涉及通信技术领域,该方法包括:利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;在确定当前赋值不为空的情况下,基于当前赋值,确定第一安全联盟信息。本发明提供的基于IPSEC的加密策略匹配方法、装置及通信系统,实现通过修改SP和外出SA的绑定关系,在成功查找SP后,就可以直接根据SP找到外出方向SA,减少一次SA的五元组匹配查找流程。能够减少外出方向外出SA链表的整体遍历以及每个SA的五元组匹配操作,减少报文处理流程消耗时间。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种基于IPSEC的加密策略匹配方法、装置及通信系统。
背景技术
网络设备之间传输报文时,为了保证报文传输的安全性,发送方网络设备可以采用加密技术(例如,因特网协议安全性(Internet Protocol Security,IPSec))对待发送报文加密。在对待发送报文加密之前,网络设备之间要协商加密算法、密钥交换方法等参数以确定加密策略。
现有的防火墙产品基础系统中IPSEC加密流程是先对普通报文的五元组进行安全策略(Security Policy,SP)链表遍历以及匹配,然后匹配中SP之后,再遍历外出方向安全联盟(Security Association,SA)链表进行五元组的匹配,找到SA之后再根据SA中的信息,进行报文对应的封装加密发送。这种处理方式会使同一个报文会先后两次进行五元组的匹配,且还需要对SP与SA的外出封装地址等进行匹配,保证匹配中的SA和SP是一一对应关系。在SP和外出SA配置较多时,会导致匹配操作耗时过长。尤其在隧道数明显增加的情况下,匹配次数和时间也随之增加,占用大量计算资源和能量,导致网略设备的性能和运行状态会被影响。
发明内容
本发明提供一种基于IPSEC的加密策略匹配方法、装置及通信系统,用以解决现有技术中同一个报文会先后两次进行五元组匹配所导致的占用大量计算资源的缺陷。
本发明提供一种基于IPSEC的加密策略匹配方法,包括:
利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;其中,所述安全策略信息包括第一指针变量的当前赋值;所述第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量;
在确定所述当前赋值不为空的情况下,基于所述当前赋值,确定第一安全联盟信息;
其中,所述第一安全联盟信息为外出方向对应的安全联盟信息。
根据本发明提供的一种基于IPSEC的加密策略匹配方法,在所述获取安全策略信息之后,还包括:
在确定所述当前赋值为空的情况下,将所述安全策略信息的第一索引值赋值给所述安全联盟结构体中的第二索引值,以在外出安全联盟链表中插入新的第一安全联盟信息;
利用所述新的第一安全联盟信息的第二索引值遍历所述安全策略链表,直至找出所述第一索引值与所述第二索引值相同的目标安全策略信息;
将所述目标安全策略信息赋值给第二指针变量,并将所述新的第一安全联盟信息赋值给第一指针变量进行赋值更新;
其中,所述第二指针变量为所述安全联盟结构体中指向所述安全策略结构体中安全策略信息的指针变量。
根据本发明提供的一种基于IPSEC的加密策略匹配方法,所述将所述安全策略信息的第一索引值赋值给所述安全联盟结构体中的第二索引值之后,还包括:
基于所述安全联盟结构体,获取方向标识信息;
在确定所述方向标识信息为外出方向的情况下,生成所述新的第一安全联盟信息。
根据本发明提供的一种基于IPSEC的加密策略匹配方法,所述获取方向标识信息之后,还包括:
在确定所述方向标识信息为进入方向的情况下,获取第二安全联盟信息;
利用所述第二安全联盟信息对IPSec加密报文进行解密;
其中,所述第二安全联盟信息为进入方向对应的安全联盟信息;所述IPSec加密报文是由对端经过IPSec进行加密转发的报文。
根据本发明提供的一种基于IPSEC的加密策略匹配方法,所述将所述目标安全策略信息赋值给第二指针变量,并将所述新的第一安全联盟信息赋值给第一指针变量进行赋值更新之后,还包括:
在确定所述目标安全策略信息从所述安全策略链表中释放,以及所述新的第一安全联盟信息从所述外出安全联盟链表中释放的情况下,将所述第一指针变量和所述第二指针变量重置为空。
根据本发明提供的一种基于IPSEC的加密策略匹配方法,所述确定第一安全联盟信息之后,还包括:
基于所述待匹配报文和所述第一安全联盟信息,生成目标报文;
通过目标接口将所述目标报文发送至目的地址;
其中,所述目标接口是根据所述目标报文确定的。
本发明还提供一种基于IPSEC的加密策略匹配装置,包括:
安全策略匹配模块,用于利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;其中,所述安全策略信息包括第一指针变量的当前赋值;所述第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量;
安全联盟获取模块,用于在确定所述当前赋值不为空的情况下,基于所述当前赋值,确定第一安全联盟信息;
其中,所述第一安全联盟信息为外出方向对应的安全联盟信息。
本发明还提供一种通信系统,所述通信系统包括第一网络设备和第二网络设备,所述第一网络设备用于执行如上所述的方法。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于IPSEC的加密策略匹配方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于IPSEC的加密策略匹配方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述基于IPSEC的加密策略匹配方法。
本发明提供的基于IPSEC的加密策略匹配方法、装置及通信系统,基于在SP结构体中设置第一指针变量,以对报文进行安全策略匹配时,通过匹配到的SP信息所携带的第一指针变量的当前赋值,决策在其值不为空时,通过当前赋值确定对应的第一SA信息。实现通过修改SP和外出SA的绑定关系,在成功查找SP后,就可以直接根据SP找到外出方向SA,减少一次SA的五元组匹配查找流程。能够减少外出方向外出SA链表的整体遍历以及每个SA的五元组匹配操作,减少报文处理流程消耗时间。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的基于IPSEC的加密策略匹配方法的流程示意图;
图2是本发明提供的基于IPSEC的加密策略匹配装置的结构示意图;
图3是本发明提供的通信系统的结构示意图;
图4是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。
应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
图1是本发明提供的基于IPSEC的加密策略匹配方法的流程示意图。如图1所示,本发明实施例提供的基于IPSEC的加密策略匹配方法,包括:步骤101、利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息。
其中,安全策略信息包括第一指针变量的当前赋值。第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量。
需要说明的是,本发明实施例提供的基于IPSEC的加密策略匹配方法的执行主体是基于IPSEC的加密策略匹配装置。
本发明实施例提供的基于IPSEC的加密策略匹配方法的应用场景为,对处于网络协议栈的报文进行相关的安全策略和安全联盟匹配。
需要说明的是,安全策略链表,是指接收端中存储安全策略SP的链表。
其中,链表中的每一组SP信息均由对应的SP结构体生成,SP结构体除了涉及到的原始变量,还新增一个第一指针变量,该变量的返回值为与SP信息所匹配的用于加密报文的外出方向的SA信息。
具体地,在步骤101中,基于IPSEC的加密策略匹配装置利用协议栈中的待匹配报文的五元组信息,在安全策略SP链表中进行匹配,获取匹配到的SP信息。
其中,SP信息包括第一指针变量的当前赋值和基本SP信息。
第一指针变量的当前赋值,用于指示当前匹配到的SP信息所对应的SA信息,以实现将SP信息和对应的SA信息进行单向绑定。
基本SP信息,是指某个安全区域内用于所有与安全相关活动的规则,其规则包括但不限于需要保护的本端和对端网络五元组信息、封装地址、封装类型、算法参数等。
封装类型,包括隧道模式和传输模式。
隧道模式,是指对整个IP数据包进行加密,封装新的IP头进行路由。
传输模式,是指只对IP协议的数据部分进行加密,使用原始IP头路由。
算法参数则为与加密算法、验证算法、安全协议、认证算法、封装模式等相关参数。
步骤102、在确定当前赋值不为空的情况下,基于当前赋值,确定第一安全联盟信息。
其中,第一安全联盟信息为外出方向对应的安全联盟信息。
具体地,在步骤102中,基于IPSEC的加密策略匹配装置根据第一指针变量的当前赋值判断步骤101匹配到的SP信息上是否绑定了对应的SA信息,若确定第一指针变量的当前赋值不为空,则认定SP和外出方向的SA之间存在绑定关系,即当前赋值则为SP信息在先匹配到的第一SA信息。
其中,第一SA信息,是指用于加密报文的外出方向SA信息。
而若确定第一指针变量的当前赋值为空,则可能为SP和SA不存在任何绑定关系,或者SP所对应的SA属于进入方向,无法直接进行报文加密。
本发明实施例基于在SP结构体中设置第一指针变量,以对报文进行安全策略匹配时,通过匹配到的SP信息所携带的第一指针变量的当前赋值,决策在其值不为空时,通过当前赋值确定对应的第一SA信息。实现通过修改SP和外出SA的绑定关系,在成功查找SP后,就可以直接根据SP找到外出方向SA,减少一次SA的五元组匹配查找流程。能够减少外出方向外出SA链表的整体遍历以及每个SA的五元组匹配操作,减少报文处理流程消耗时间。
在上述任一实施例的基础上,在获取安全策略信息之后,还包括:在确定当前赋值为空的情况下,将安全策略信息的第一索引值赋值给安全联盟结构体中的第二索引值,以在外出安全联盟链表中插入新的第一安全联盟信息。
需要说明的是,安全联盟外出SA链表,是指接收端中存储安全联盟SA的链表。
其中,链表中的每一组SA信息均由对应的SA结构体生成,SA结构体除了涉及到的原始变量,还新增一个第二索引值和一个第二指针变量。
第二索引值,与SP的第一索引值对应,以使得SP链表中与第一索引值对应的SP信息,和SA链表中与第二索引值对应的SA信息存在对应关系,为建立二者之间的绑定关系提供检索信息。
第二指针变量,通过SA的第二索引值和SP的第一索引值一致确定SP信息和SA信息匹配后,该变量的返回值为用于为待匹配报文加密的外出方向的SA信息所对应的SP信息。
具体地,在步骤101之后,基于IPSEC的加密策略匹配装置根据第一指针变量的当前赋值判断步骤101匹配到的SP信息上是否绑定了对应的SA信息,若确定第一指针变量的当前赋值为空,则认定还未建立起SP和外出方向的SA之间的绑定关系,则由配置层面为SP信息生成唯一的第一索引值,然后跟随五元组范围,算法参数以及其他参数等一块下发给协商程序,通过将预设的SA结构体中的第二索引值赋值为第一索引值,根据第二索引值在外出SA链表中的对应位置插入新创建的第一SA信息。
利用的新的第一安全联盟信息的第二索引值遍历安全策略链表,直至找出第一索引值与第二索引值相同的目标安全策略信息。
具体地,基于IPSEC的加密策略匹配装置利用第二索引值(其值与第一索引值相同),在SP链表中进行遍历,将第二索引值依次与SP链表中的存储的SP信息所对应的索引值进行比较,若两个索引值不相等,则将第二索引值与SP链表中的下一索引值进行如上比较,直至查找到与第二索引值相等的SP索引值,并将该SP索引值对应的SP信息作为与SA对应的目标SP信息。
将目标安全策略信息赋值给第二指针变量,并将新的第一安全联盟信息赋值给第一指针变量进行赋值更新。
其中,第二指针变量为安全联盟结构体中指向安全策略结构体中安全策略信息的指针变量。
具体地,基于IPSEC的加密策略匹配装置利用指针原理将目标SP信息赋值给第二指针变量的过程中,将于目标SP信息对应的第一SA信息传递到SP结构体中,将新创建的第一SA信息赋值给第一指针变量进行赋值更新,以实现将SP信息和对应的外出SA信息的双向绑定。
本发明实施例基于在SA结构体中设置第二指针变量和第二索引值,以对报文进行安全策略匹配时,通过匹配到的SP信息所携带的第一指针变量的当前赋值,决策在其值为空时,创建新的第一SA信息,同时遍历SP链表,找到与第二索引值一致的目标SP信息,通过目标SP信息为第二指针向量,以及通过新的第一SA信息为第一针向量分别更新赋值。实现SA与SP进行结构体的指针互相绑定,在后续的SP查找时,就可以直接根据SP找到外出方向SA,减少一次SA的五元组匹配查找流程。能够减少外出方向外出SA链表的整体遍历以及每个SA的五元组匹配操作,减少报文处理流程消耗时间。
在上述任一实施例的基础上,将安全策略信息的第一索引值赋值给安全联盟结构体中的第二索引值之后,还包括:基于安全联盟结构体,获取方向标识信息。
具体地,基于IPSEC的加密策略匹配装置在获取SA结构体中新增变量的第二索引值后,在待匹配报文的SP进行协商或者流量触发协商的过程中,对SA的方向加以区分,为该SA结构体中新设置的方向标识信息进行赋值。
其中,所确定的SA方向包括进入方向和外出方向,故在协商过程中外出方向SA信息和进入方向SA信息是成对生成的。
在确定方向标识信息为外出方向的情况下,生成新的第一安全联盟信息。
具体地,基于IPSEC的加密策略匹配装置若确定方向标识信息指示的方向为外出方向时,生成用于对报文加密的新的第一SA信息后,在外出SA链表中进行节点插入。
本发明实施例基于在SA结构体中设置方向标识信息,在决策新建SA时,将SP的第一索引值赋值到SA的第二索引值的同时,通过方向标识信息对进入和外出进行区分。实现外出SA与SP进行结构体的指针互相绑定,在后续的SP查找时,就可以直接根据SP找到外出方向SA,减少报文处理流程消耗时间。
在上述任一实施例的基础上,在确定方向标识信息为进入方向的情况下,获取第二安全联盟信息。
其中,第二安全联盟信息为进入方向对应的安全联盟信息。
具体地,基于IPSEC的加密策略匹配装置若确定方向标识信息指示的方向为进入方向时,利用IPSec加密报文的五元组进行匹配,对IPsec协议首部中的安全参数索引(Security Parameters Index,SPI)进行识别,利用识别出的SPI值在进入方向SA链表进行查找匹配。如果匹配成功,则将该链表中与SPI值相同的索引所对应的进入方向SA信息作为第二SA信息。反之,若匹配失败,则将该加密报文丢弃。
利用第二安全联盟信息对IPSec加密报文进行解密。IPSec加密报文是由对端经过IPSec进行加密转发的报文。
具体地,基于IPSEC的加密策略匹配装置利用第二SA信息对IPSec加密报文进行解密,获取该报文中的报文内容。
本发明实施例基于在SA结构体中设置方向标识信息,在通过方向标识信息为外出方向时,决策对加密报文进行处理。能够根据SPI值找到进入方向SA信息,进而实现利用进入方向SA信息对加密报文进行解密的目的。
在上述任一实施例的基础上,将目标安全策略信息赋值给第二指针变量,并将新的第一安全联盟信息赋值给第一指针变量进行赋值更新之后,还包括:在确定目标安全策略信息从安全策略链表中释放,以及新的第一安全联盟信息从外出安全联盟链表中释放的情况下,将第一指针变量和第二指针变量重置为空。
具体地,基于IPSEC的加密策略匹配装置在确定目标SP信息在SP链表中被删除,或者,新的第一SA信息在外出SA链表中被删除时,分别将第一指针变量由原来的赋值(即新的第一SA信息)更新为空,并将第二指针变量由原来的赋值(即目标SP信息)更新为空。
本发明实施例基于在SP链表或外出SA链表发生更改时,通过将对应的第一指针变量和第二指针变量重置为空,进行适配性的更新。实现在SP或SA释放时也添加对应解绑的流程处理,防止野指针的出现,提高报文处理的可靠性。
在上述任一实施例的基础上,确定第一安全联盟信息之后,还包括:基于待匹配报文和第一安全联盟信息,生成目标报文。
具体地,在步骤102之后,基于IPSEC的加密策略匹配装置在转发会话中利用第一安全联盟信息对待匹配报文进行加密封装后,生成封装后的目标报文。
通过目标接口将目标报文发送至目的地址。
其中,目标接口是根据目标报文确定的。
具体地,基于IPSEC的加密策略匹配装置利用目标报文解析出的目标接口,再次入栈,进入到新的转发会话,将封装好的目标报文通过目标接口发送至目的地址。
本发明实施例基于SP和外出SA的绑定关系直接根据SP找到外出方向SA后,通过确定的第一SA信息进行封装加密,对封装好的目标报文进行转发。能够减少外出方向外出SA链表的整体遍历以及每个SA的五元组匹配操作,减少封装报文处理流程消耗时间。
图2是本发明提供的基于IPSEC的加密策略匹配装置的结构示意图。在上述任一实施例的基础上,如图2所示,该装置包括:安全策略匹配模块210和安全联盟获取模块220,其中:
安全策略匹配模块210,用于利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息。其中,安全策略信息包括第一指针变量的当前赋值。第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量。
安全联盟获取模块220,用于在确定当前赋值不为空的情况下,基于当前赋值,确定第一安全联盟信息。
其中,第一安全联盟信息为外出方向对应的安全联盟信息。
具体地,安全策略匹配模块210和安全联盟获取模块220顺次电连接。
安全策略匹配模块210利用协议栈中的待匹配报文的五元组信息,在安全策略SP链表中进行匹配,获取匹配到的SP信息。
安全联盟获取模块220根据第一指针变量的当前赋值判断安全策略匹配模块210匹配到的SP信息上是否绑定了对应的SA信息,若确定第一指针变量的当前赋值不为空,则认定SP和外出方向的SA之间存在绑定关系,即当前赋值则为SP信息在先匹配到的第一SA信息。
其中,第一SA信息,是指用于加密报文的外出方向SA信息。
可选地,该装置还包括安全联盟创建模块、遍历SP模块和绑定模块,其中:
安全联盟创建模块,用于在确定当前赋值为空的情况下,将安全策略信息的第一索引值赋值给安全联盟结构体中的第二索引值,以在外出安全联盟链表中插入新的第一安全联盟信息。
遍历SP模块,用于利用的新的第一安全联盟信息的第二索引值遍历安全策略链表,直至找出第一索引值与第二索引值相同的目标安全策略信息。
绑定模块,将目标安全策略信息赋值给第二指针变量,并将新的第一安全联盟信息赋值给第一指针变量进行赋值更新。
其中,第二指针变量为安全联盟结构体中指向安全策略结构体中安全策略信息的指针变量。
可选地,安全联盟创建模块包括方向标识信息获取单元和外出SA获取单元,其中:
方向标识信息获取单元,用于基于安全联盟结构体,获取方向标识信息。
外出SA获取单元,用于在确定方向标识信息为外出方向的情况下,生成新的第一安全联盟信息。
可选地,安全联盟创建模块还包括进入SA获取单元和解密单元,其中:
进入SA获取单元,用于在确定方向标识信息为进入方向的情况下,获取第二安全联盟信息。
解密单元,用于利用第二安全联盟信息对IPSec加密报文进行解密。
其中,第二安全联盟信息为进入方向对应的安全联盟信息。IPSec加密报文是由对端经过IPSec进行加密转发的报文。
可选地,该装置还包括解绑模块,其中:
解绑模块,用于在确定目标安全策略信息从安全策略链表中释放,以及新的第一安全联盟信息从外出安全联盟链表中释放的情况下,将第一指针变量和第二指针变量重置为空。
可选地,该装置还包括封装模块和转发模块,其中:
封装模块,用于基于待匹配报文和第一安全联盟信息,生成目标报文。
转发模块,用于通过目标接口将目标报文发送至目的地址。
其中,目标接口是根据目标报文确定的。
本发明实施例提供的基于IPSEC的加密策略匹配装置,用于执行本发明上述基于IPSEC的加密策略匹配方法,其实施方式与本发明提供的基于IPSEC的加密策略匹配方法的实施方式一致,且可以达到相同的有益效果,此处不再赘述。
本发明实施例基于在SP结构体中设置第一指针变量,以对报文进行安全策略匹配时,通过匹配到的SP信息所携带的第一指针变量的当前赋值,决策在其值不为空时,通过当前赋值确定对应的第一SA信息。实现通过修改SP和外出SA的绑定关系,在成功查找SP后,就可以直接根据SP找到外出方向SA,减少一次SA的五元组匹配查找流程。能够减少外出方向外出SA链表的整体遍历以及每个SA的五元组匹配操作,减少报文处理流程消耗时间。
图3是本发明提供的通信系统的结构示意图。在上述任一实施例的基础上,如图3所示,通信系统包括第一网络设备310和第二网络设备320,第一网络设备310用于执行上述基于IPSEC的加密策略匹配。
具体地,通信系统由多个第一网络设备310,以多个受对应第一网络设备310分管的第二网络设备320构成,通过第一网络设备310和第二网络设备320之间利用网络传输报文。
其中,第一网络设备310可以作为报文发送方,利用如上所示的基于IPSEC的加密策略匹配方法对报文进行封装加密后转发至对应的第二网络设备320。
第一网络设备310可以作为报文接收方,利用如上所示的基于IPSEC的加密策略匹配方法接收对应的第二网络设备320发送的报文,进行解密。
本发明实施例基于在SP结构体中设置第一指针变量,以对报文进行安全策略匹配时,通过匹配到的SP信息所携带的第一指针变量的当前赋值,决策在其值不为空时,通过当前赋值确定对应的第一SA信息。实现通过修改SP和外出SA的绑定关系,在成功查找SP后,就可以直接根据SP找到外出方向SA,减少一次SA的五元组匹配查找流程。能够减少外出方向外出SA链表的整体遍历以及每个SA的五元组匹配操作,减少报文处理流程消耗时间。
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行基于IPSEC的加密策略匹配方法,该方法包括:利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;其中,安全策略信息包括第一指针变量的当前赋值;第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量;在确定当前赋值不为空的情况下,基于当前赋值,确定第一安全联盟信息;其中,第一安全联盟信息为外出方向对应的安全联盟信息。
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的基于IPSEC的加密策略匹配方法,该方法包括:利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;其中,安全策略信息包括第一指针变量的当前赋值;第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量;在确定当前赋值不为空的情况下,基于当前赋值,确定第一安全联盟信息;其中,第一安全联盟信息为外出方向对应的安全联盟信息。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的基于IPSEC的加密策略匹配方法,该方法包括:利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;其中,安全策略信息包括第一指针变量的当前赋值;第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量;在确定当前赋值不为空的情况下,基于当前赋值,确定第一安全联盟信息;其中,第一安全联盟信息为外出方向对应的安全联盟信息。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种基于IPSEC的加密策略匹配方法,其特征在于,包括:
利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;其中,所述安全策略信息包括第一指针变量的当前赋值;所述第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量;
在确定所述当前赋值不为空的情况下,基于所述当前赋值,确定第一安全联盟信息;
其中,所述第一安全联盟信息为外出方向对应的安全联盟信息;
在所述获取安全策略信息之后,还包括:
在确定所述当前赋值为空的情况下,将所述安全策略信息的第一索引值赋值给所述安全联盟结构体中的第二索引值,以在外出安全联盟链表中插入新的第一安全联盟信息;
利用所述新的第一安全联盟信息的第二索引值遍历所述安全策略链表,直至找出所述第一索引值与所述第二索引值相同的目标安全策略信息;
将所述目标安全策略信息赋值给第二指针变量,并将所述新的第一安全联盟信息赋值给第一指针变量进行赋值更新;
其中,所述第二指针变量为所述安全联盟结构体中指向所述安全策略结构体中安全策略信息的指针变量。
2.根据权利要求1所述的基于IPSEC的加密策略匹配方法,其特征在于,所述将所述安全策略信息的第一索引值赋值给所述安全联盟结构体中的第二索引值之后,还包括:
基于所述安全联盟结构体,获取方向标识信息;
在确定所述方向标识信息为外出方向的情况下,生成所述新的第一安全联盟信息。
3.根据权利要求2所述的基于IPSEC的加密策略匹配方法,其特征在于,所述获取方向标识信息之后,还包括:
在确定所述方向标识信息为进入方向的情况下,获取第二安全联盟信息;
利用所述第二安全联盟信息对IPSec加密报文进行解密;
其中,所述第二安全联盟信息为进入方向对应的安全联盟信息;所述IPSec加密报文是由对端经过IPSec进行加密转发的报文。
4.根据权利要求1所述的基于IPSEC的加密策略匹配方法,其特征在于,所述将所述目标安全策略信息赋值给第二指针变量,并将所述新的第一安全联盟信息赋值给第一指针变量进行赋值更新之后,还包括:
在确定所述目标安全策略信息从所述安全策略链表中释放,以及所述新的第一安全联盟信息从所述外出安全联盟链表中释放的情况下,将所述第一指针变量和所述第二指针变量重置为空。
5.根据权利要求1所述的基于IPSEC的加密策略匹配方法,其特征在于,所述确定第一安全联盟信息之后,还包括:
基于所述待匹配报文和所述第一安全联盟信息,生成目标报文;
通过目标接口将所述目标报文发送至目的地址;
其中,所述目标接口是根据所述目标报文确定的。
6.一种基于IPSEC的加密策略匹配装置,其特征在于,包括:
安全策略匹配模块,用于利用待匹配报文在安全策略链表中进行匹配,获取安全策略信息;其中,所述安全策略信息包括第一指针变量的当前赋值;所述第一指针变量为安全策略结构体中指向安全联盟结构体中与外出方向对应的安全联盟信息的指针变量;
安全联盟获取模块,用于在确定所述当前赋值不为空的情况下,基于所述当前赋值,确定第一安全联盟信息;
其中,所述第一安全联盟信息为外出方向对应的安全联盟信息;
所述装置还包括安全联盟创建模块、遍历SP模块和绑定模块;
所述安全联盟创建模块,用于在确定所述当前赋值为空的情况下,将所述安全策略信息的第一索引值赋值给所述安全联盟结构体中的第二索引值,以在外出安全联盟链表中插入新的第一安全联盟信息;
所述遍历SP模块,用于利用所述新的第一安全联盟信息的第二索引值遍历所述安全策略链表,直至找出所述第一索引值与所述第二索引值相同的目标安全策略信息;
所述绑定模块,用于将所述目标安全策略信息赋值给第二指针变量,并将所述新的第一安全联盟信息赋值给第一指针变量进行赋值更新;
其中,所述第二指针变量为所述安全联盟结构体中指向所述安全策略结构体中安全策略信息的指针变量。
7.一种通信系统,其特征在于,所述通信系统包括第一网络设备和第二网络设备,所述第一网络设备用于执行权利要求1-5任一项所述基于IPSEC的加密策略匹配方法。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述基于IPSEC的加密策略匹配方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述基于IPSEC的加密策略匹配方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147189.8A CN115225414B (zh) | 2022-09-21 | 2022-09-21 | 基于ipsec的加密策略匹配方法、装置及通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147189.8A CN115225414B (zh) | 2022-09-21 | 2022-09-21 | 基于ipsec的加密策略匹配方法、装置及通信系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115225414A CN115225414A (zh) | 2022-10-21 |
CN115225414B true CN115225414B (zh) | 2022-12-13 |
Family
ID=83617225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211147189.8A Active CN115225414B (zh) | 2022-09-21 | 2022-09-21 | 基于ipsec的加密策略匹配方法、装置及通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115225414B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115941290B (zh) * | 2022-11-15 | 2024-09-17 | 迈普通信技术股份有限公司 | 数据包处理方法、装置、中心节点及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529473A (zh) * | 2003-10-17 | 2004-09-15 | 中兴通讯股份有限公司 | 实现IPsec标准中不同安全终点的安全联盟嵌套方法 |
CN1791098A (zh) * | 2004-12-13 | 2006-06-21 | 华为技术有限公司 | 一种实现安全联盟同步的方法 |
CN106850672A (zh) * | 2017-03-08 | 2017-06-13 | 迈普通信技术股份有限公司 | IPSec隧道的安全联盟查找方法及装置 |
WO2021152349A1 (en) * | 2020-01-30 | 2021-08-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Ipsec privacy protection |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11102186B2 (en) * | 2018-04-26 | 2021-08-24 | Vmware, Inc. | Packet capture in software-defined networking (SDN) environments |
-
2022
- 2022-09-21 CN CN202211147189.8A patent/CN115225414B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529473A (zh) * | 2003-10-17 | 2004-09-15 | 中兴通讯股份有限公司 | 实现IPsec标准中不同安全终点的安全联盟嵌套方法 |
CN1791098A (zh) * | 2004-12-13 | 2006-06-21 | 华为技术有限公司 | 一种实现安全联盟同步的方法 |
CN106850672A (zh) * | 2017-03-08 | 2017-06-13 | 迈普通信技术股份有限公司 | IPSec隧道的安全联盟查找方法及装置 |
WO2021152349A1 (en) * | 2020-01-30 | 2021-08-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Ipsec privacy protection |
Also Published As
Publication number | Publication date |
---|---|
CN115225414A (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11283772B2 (en) | Method and system for sending a message through a secure connection | |
CN109450852B (zh) | 网络通信加密解密方法及电子设备 | |
CN109150688B (zh) | IPSec VPN数据传输方法及装置 | |
US9516061B2 (en) | Smart virtual private network | |
US20160380894A1 (en) | Path maximum transmission unit handling for virtual private networks | |
CN107104929B (zh) | 防御网络攻击的方法、装置和系统 | |
CN111786867B (zh) | 一种数据传输方法及服务器 | |
CN111786869B (zh) | 一种服务器之间的数据传输方法及服务器 | |
EP2609721A1 (en) | Methods and arrangements for secure communication over an ip network | |
CN103227742B (zh) | 一种IPSec隧道快速处理报文的方法 | |
CN115333859B (zh) | 一种基于芯片方案的IPsec协议报文加密及解密方法 | |
CN115225414B (zh) | 基于ipsec的加密策略匹配方法、装置及通信系统 | |
CN111786868B (zh) | 服务器之间的数据传输方法及strongswan服务器 | |
CN111786870B (zh) | 数据传输方法及strongswan服务器 | |
CN111835613B (zh) | 一种vpn服务器的数据传输方法及vpn服务器 | |
CN111416791B (zh) | 数据传输方法、设备与系统 | |
CN115733683A (zh) | 采用量子密钥分发的以太链路自组织加密隧道实现方法 | |
CN115242552B (zh) | 基于ipsec的报文转发方法及装置 | |
WO2023179174A1 (zh) | 一种报文传输方法及相关设备 | |
CN116232570A (zh) | 保护数据流转安全的方法以及数据管理系统 | |
CN112733175A (zh) | 一种基于esp协议的数据加密方法及设备 | |
CN116471345A (zh) | 一种数据通信方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |