一种基于IPSEC的多会话设计系统及操作方法与流程

文档序号:39172840发布日期:2024-08-27 18:40阅读:13来源:国知局
一种基于IPSEC的多会话设计系统及操作方法与流程

本发明涉及控制领域,具体涉及一种基于ipsec的多会话设计系统及操作方法。


背景技术:

1、ipsec 协议(internet protocol security)是一组基于网络层的,应用密码学的安全通信协议族, 是在ipv4和ipv6环境中为网络层流量提供灵活的安全服务。ipsec协议是基于ipsec协议族构建的在ip层实现的安全虚拟专用网。通过在数据包中插入一个预定义头部的方式,来保障osi上层协议数据的安全,主要用于保护tcp、udp、icmp和隧道的ip数据包。

2、目前,随着越来越多的设备以高速率接入应用系统,此时要求网络能够针对不同的ip报文进行更细致的分类,需要能够支持更多的会话和更高的带宽。原ipsec设计中通过spd表单用来存放ipsec的流量规则,这些规则用来指示哪些流量需要走ipsec。使用源目的ip、源目的port号和协议种类来区分报文的种类。原ipsec的sad表单用于存放加解密的算法种类和密钥、验证算法的种类和密钥、协议种类等参数,sad表单以spi值作为索引,此spi值大部分是通信双方产生的随机值。由于spi值是随机的,这就造成没有办法根据特定的规则进行多会话的独立处理。

3、同时由于现有的ipsec数据传输技术大部分使用软件来实现,带宽速率较低,本发明使用fpga来实现,大大增加了ipsec通信的带宽。进一步的检索中尚未发现针对ipsec的多会话设计的文献报道。


技术实现思路

1、针对现有技术的不足,为了解决现有的ipsec数据传输存在无法对不同的会话进行独立处理,本发明提出一种基于ipsec的多会话设计系统及操作方法。

2、本发明的技术方案如下:

3、本发明的第一方面:一种基于ipsec的多会话设计系统,该系统包括:表单模块、封装模块、解封装模块、加密模块、解密模块、验证模块、杂包处理模块和仲裁模块:

4、所述表单模块用于调整ipsec报文的读写速率和查询表单得到sa相关信息;

5、所述封装模块用于对接收到的ip报文封装成ipsec报文格式;

6、所述解封装模块用于对接收到ipsec报文进行解封装成正常的ip报文;

7、所述加密模块用于将报文数据加密成乱码传送;

8、所述解密模块用于将乱码数据恢复成正常报文;

9、所述验证模块用于防止数据被篡改;

10、所述杂包处理模块用于直接透传非ip报文;

11、所述仲裁模块用于将加密部分的数据、解密部分的数据和杂包模块的数据,

12、且均衡仲裁出数据并将数据传输出去。

13、进一步地,所述ipsec报文的格式共有6个域段,第一个域段有14个字节为mac头部,用于指示源目的mac地址和type,第二个域段有20字节为新增的ip头部,用于指示此报文的源目的ip信息,第三个域段有8个字节为esp头部,其中4个字节为spi值,4个字节为序列号,第四个域段为数据域段,为数据传输的具体信息;第五个域段为esp尾,由两部分组成分别是填充长度和下一个头,第六个域段为验证数据,用于防止数据遭到篡改。

14、进一步地,所述表单模块包括发送端spd表单、发送端sad表单、接收端spd表单、接收端sad表单和会话号表单;所述发送端spd表单索引是源ip、目的ip和协议号,表单内容为协议操作模式、会话号、包处理方法、安全协议种类、spi值和目的ip地址;所述发送端sad表单索引是spi,表单内容为sa生存期、ipsec协议操作模式、加密算法、密钥、初始化向量、验证算法、密钥和路径最大传输单元pmtu;所述接收端spd表单索引是源ip、目的ip和协议号,表单内容为协议操作模式、会话号、包处理方法、安全协议种类、spi值和目的ip地址;所述接收端sad表单索引是spi,表单内容为sa生存期、ipsec协议操作模式、加密算法、密钥、初始化向量、验证算法、密钥和路径最大传输单元pmtu;所述会话号表单索引是会话号,表单内容为初始化spi值、更新spi值和序列号值;由于多会话设计支持多个不同的源目的ip的单独会话,会话号表单索引为会话号,表单内容为初始spi、更新的spi值和序列号,会话号的不同其初始spi值和序列号也不相同。

15、进一步地,所述封装模块是用于对原始ip报文进行封装成ipsec的报文,当接收到ip报文时,将报文存储到fifo中,再对ip报文进行checksum校验通过校验的报文再根据安全协议的不同产生新的ah头、esp头和esp尾,未通过校验的报文直接丢弃,最后将加密完的报文与ah头或esp头、esp尾和验证数据进行封装完成后发送到下一模块;所述封装模块包括四种封装模式:ah协议传输模式、ah协议隧道模式、esp协议传输模式和esp协议隧道模式。

16、进一步地,所述解封装模块是用于将ipsec报文解封装为正常ip报文,当接收到ipsec报文后先用fifo进行存储,再使用抗重放设计对报文进行校验防止出现攻击报文,校验无误后通过查询表单得到新ip头、esp头、esp尾、ah头的位置,并最终将新ip头、esp头、esp尾、ah头剥离,得到新的ip报文,校验出错后则将报文直接丢弃,最后将ip报文传递给上层;所述解封装模块包括四种解封装模式:ah协议传输模式、ah协议隧道模式、esp协议传输模式和esp协议隧道模式。

17、进一步地,所述加密模块采用aes加密,将ip报文加密成乱码传输;所述解密模块采用aes解密,将接收到的加密数据解密恢复成正常的ip报文。

18、进一步地,所述的仲裁模块,将加密部分的数据、解密部分的数据和杂包模块的数据最终会汇总到仲裁模块,最终由仲裁模块均衡仲裁出数据并将数据传输出去。

19、进一步地,所述的验证模块采用md5验证算法,md5能将任意长度的“字节串”变换成一个128bit的大整数,并且为一个不可逆的字符串变换算法。

20、进一步地,所述的杂包处理模块,当接受到非ip包时,系统不做任何处理,直接传输报文。

21、一种基于ipsec的多会话设计系统的操作方法,该方法包括以下步骤:

22、(1)调整ipsec读写速率和查询表单查询获得报文sa相关信息;

23、(2)当进行ipsec加密,则查询会话号表单;

24、(3)当对报文进行ipsec加密时,需要对ip报文封装成ipsec报文格式;

25、(4)当对报文进行ipsec解密时,需要对报文解封装成正常的ip报文格式;当对报文进行ipsec加密时,将相应字段的报文进行加密;当对报文进行ipsec解密时,将相应字段的报文进行解密;

26、(5)当完成加解密后,汇总加密部分的数据、解密部分的数据和直接透传非ip报文的杂包处理数据,进行均衡仲裁出数据,并对数据进行验证,防止数据签名的数据被篡改;

27、所述加密和解密的具体如下过程:

28、s1:收到报文后,首先根据ip头中的源ip地址、目的ip地址和协议号来查spd表单,查询出所需要的包处理结果和封装的协议模式,查询包处理结果如果是0则丢包,1则透传,2则进行ipsec加解密;

29、s2:根据初始spi值和会话号查询更新后的spi值和序列号,并将其填入将要产生的esp头或ah头中;

30、s3:当通过查询得到ah协议传输模式时,产生ah头,查询sad表单得到验证算法和密钥,将ip头、ah头和数据进行验证得到验证数据,并填入到ah头中,最后拼接ip头、ah头和数据并传输出去;

31、s4:当查询得到是ah隧道协议模式时,产生新的ip头和ah头,查询sad表单得到验证算法和验证密钥,将新ip头、ah头、旧ip头和数据进行验证得到验证数据,最后将验证数据填入ah头中,将新ip头、ah头、旧ip头和数据发送出去;

32、s5:当查询是esp传输协议模式时,产生esp数据,即esp头;查询sad表单得到加密算法、加密密钥、加密初始向量、验证算法、验证密钥,将数据和esp尾进行加密,将esp头、加密数据和esp尾进行验证得到验证数据,最后将ip头、esp头、加密数据、esp尾和验证数据传输出去;

33、s6:当查询是esp隧道协议模式时,产生新的ip头、esp头和esp尾,查询sad表单得到加密算法、加密密钥、加密初始向量、验证算法、验证密钥,将ip头、数据和esp尾进行加密,将esp头、ip头、加密数据和esp尾进行验证得到验证结果,最后将新ip头、esp头、ip头、加密数据、esp尾和验证数据发送出去;

34、所述解密过程具体如下过程:

35、s7:接收到报文后,首先根据ip头中的源ip地址、目的ip地址和协议号来查spd表单,查询出所需要的包处理结果和封装的协议模式,查询包处理结果如果是0则丢包,1则透传,2则进行ipsec加解密;

36、s8:当通过查询得到ah协议传输模式时,得到ah头的位置,并提取出验证数据,查询sad表单,得到验证算法和验证密钥,数据经过验证后,与ah头中的验证数据进行对比,最后将ah头拆分,再将ip头和数据发送出去;

37、s9:当查询到ah协议隧道模式时,得到新ip头和ah头的位置,查询sad表单,得到验证算法和验证密钥,数据经过验证后,与ah头中的验证数据进行对比,最后将ip头和数据发送出去;

38、s10:当查询到esp协议传输模式时,得到esp头和esp尾的位置,查询sad表单得到加解密算法、加解密密钥、加解密初始化向量、验证算法和验证数据,将数据和esp尾进行解密,并将esp头和解密数据进行验证,并将验证数据与最后报文中的验证数据做对比,最终将ip头和数据发送出去;

39、s11:当查询到esp协议隧道模式时,得到新ip头、esp头、esp尾的位置,然后查询sad表单得到加解密算法、加解密密钥、加解密初始化向量、验证算法和验证数据,将ip头、数据和esp尾进行解密,将esp头、ip头、数据和esp尾进行验证,并将验证结果与报文中的验证结果做对比,最终将ip头和数据发送出去。

40、本发明的有益效果如下:

41、本发明的ipsec的多会话设计方法,支持多个源ip和目的ip之间的独立的加解密数据传输,保证数据传输的准确性、安全性和可靠性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1