CN114050921A - 一种fpga实现的基于udp的高速加密数据传输系统 - Google Patents

一种fpga实现的基于udp的高速加密数据传输系统 Download PDF

Info

Publication number
CN114050921A
CN114050921A CN202111307344.3A CN202111307344A CN114050921A CN 114050921 A CN114050921 A CN 114050921A CN 202111307344 A CN202111307344 A CN 202111307344A CN 114050921 A CN114050921 A CN 114050921A
Authority
CN
China
Prior art keywords
data packet
data
udp
network
tunnel
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.)
Granted
Application number
CN202111307344.3A
Other languages
English (en)
Other versions
CN114050921B (zh
Inventor
许广建
臧云利
张中方
赵长松
曹敏
刘守昌
张德瑞
李振
朱彤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Sanwei Xinan Information Technology Co ltd
Original Assignee
Shandong Sanwei Xinan Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong Sanwei Xinan Information Technology Co ltd filed Critical Shandong Sanwei Xinan Information Technology Co ltd
Publication of CN114050921A publication Critical patent/CN114050921A/zh
Application granted granted Critical
Publication of CN114050921B publication Critical patent/CN114050921B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种FPGA实现的基于UDP的高速加密数据传输系统,通过隧道建立及维持模块布置中心端和分支端,建立并维持专属的网络隧道;明文数据再封装及加密模块在网络隧道内从设备的明文网口筛选出原IP数据包,将原IP数据包的IP首部信息及数据部分作为新数据包的UDP数据部分,进行加密,打上预设标签后发送到外网;密文数据解封装及解密模块,筛选出系统加密后的数据包,解封装后送去解密模块解密,解密后得到原数据包发送到内网。本发明在通信双方建立起高穿透性的安全隧道,保证了数据传输路径的安全;在FPGA中实现对数据的处理和加解密,摆脱了对CPU性能的依赖,保证了数据在传输过程中的安全和传输速度的高性能。

Description

一种FPGA实现的基于UDP的高速加密数据传输系统
技术领域
本发明涉及网络安全通信领域,特别涉及一种FPGA实现的基于UDP的高速加密数据传输系统。
背景技术
在互联网高速发展的今天,实现异地网络的相互连通,对远程办公是非常关键的。虚拟专用网络(VPN)可以在通信的两端之间建立一条“隧道”,在不安全的互联网络中提供一个专用的安全路径,既实现了异地组网,也实现了安全的传输路径。对于很多企业来讲,使用VPN搭建远程办公系统虽然很高效,但是也同样带来了安全防护能力薄弱的问题。所以数据加密传输也成为实现安全远程办公的关键问题。建立加密的VPN通道是在互联网环境下实现安全通信的不二之选。
当前多数安全网关是具有构建隧道和加密传输功能的,如IPsec VPN或者 SSLVPN,都在构建隧道的基础上实现了通讯数据的加密。但IPSec VPN的网络穿透性不强,传输速度慢,虽然有发明提出通过IPSec网关加UDP封装的方式解决此问题,但此方式数据处理流程复杂,IPSec VPN已经将数据重新封装,还需要再次进行UDP封装,且此方式会进一步影响数据传输速度;SSL VPN也同样面临数据传输速度慢的问题。这类安全网关数据传输速率较低,是因为他们基于虚拟网卡或软件算法加解密的技术实现的,主流网关性能都是最高单网口400Mbps左右的速度,更高性能的设备几乎没有。这主要因为用软件实现加解密的过程,无法做到很高的性能。要提高性能,需配置高性能的CPU,设计成本会大幅提高,另外软件系统安全性也相对较低。
发明内容
本发明的主要目的在于提供一种FPGA实现的基于UDP的高速加密数据传输系统,可解决进行加密数据高速传输及构建穿透性强的安全隧道的问题。
为实现上述目的,本发明采取的技术方案为:
本发明实施例提供一种FPGA实现的基于UDP的高速加密数据传输系统,包括:
隧道建立及维持模块,用于布置中心端和至少一个分支端,所述中心端的外网IP和映射端口已知;由所述分支端以预设时间间隔向所述中心端发送 UDP格式的心跳包,在双方之间建立并维持专属的网络隧道;
明文数据再封装及加密模块,用于在所述网络隧道内从设备的明文网口筛选出原IP数据包,解析后重新封装为UDP数据包;根据配置信息和隧道信息生成IP首部信息,和UDP首部信息,并将原IP数据包的IP首部信息及数据部分作为新数据包的UDP数据部分,对新数据包UDP数据内容进行加密,将加密后数据包打上预设标签后发送到外网;
密文数据解封装及解密模块,用于根据自定义的预设标签内容筛选出系统加密后的数据包,将该数据包解封装后,送去解密模块解密,解密后得到原数据包,然后将该数据包发送到内网。
进一步地,所述隧道建立及维持模块,包括:
部署单元,用于布置中心端和至少一个分支端,所述中心端的外网IP和映射端口已知;并构建隧道表,所述隧道表包括:对端的外网IP,外网映射端口,对端内网网段,掩码位数和密钥存放指示;
注册单元,用于分支端在中心端注册,中心端向分支端下发隧道信息及分配给分支端的密钥信息;
配置单元,用于所述中心端与分支端系统中明文网口IP、密文网口IP、端口和网关的配置;
建立通讯单元,用于分支端根据所述隧道信息以预设时间间隔向所述中心端的外网IP及外网映射端口发送UDP格式的心跳包;所述心跳包包括分支端的内网网段以及掩码位数;所述中心端接收到所述心跳包,解析出内网网段以及掩码位数,并在所述隧道表中进行匹配,查找对应的隧道信息,将对端的外网IP及外网映射端口填入,完成通讯建立。
进一步地,所述明文数据再封装及加密模块,包括:
接收查询单元,用于接收明文网口的原IP数据包,解析后根据目的IP进行隧道表查询;
判断读取单元,用于根据查询结果判断所述目的IP所在的对端内网网段,并读取该网段对应的隧道信息;
再封装单元,用于根据所述隧道信息及配置信息构造新的IP头部信息及 UDP头部信息,将原IP数据包的IP头部信息和数据部分作为新数据包的数据部分,实现将原有通信IP进行隐藏;
判断单元,用于判断所述新数据包长度是否超过系统设置的MTU值,当超过时,则对该数据包进行分片处理;
加密发送单元,用于对所述新数据包UDP数据内容进行加密,将加密后数据包打上预设标签后发送到外网。
进一步地,所述加密发送单元,包括:
加密子单元,用于根据SM4算法对数据内容进行加密,再根据SM3算法进行校验和计算;或用于根据SM4-GCM算法对数据内容进行加密,并得到密文数据的哈希值;
发送子单元,用于对密文网口设置的网关进行ARP请求,建立密文口 ARP列表,根据密文网口以及网关MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,然后将密文数据包从密文网口发出。
进一步地,所述密文数据解封装及解密模块,包括:
接收筛选单元,用于从对端系统密文网口接收网络数据包,根据自定义的预设标签内容筛选出系统加密后的数据包,将该数据包的IP头部信息及 UDP头部信息剥除,将数据部分送去解密;
解密单元,用于进行SM3算法的验证,确定数据包的有效性;再根据SM4 算法进行数据解密,得到原IP数据包;或用于解密时根据SM4-GCM算法先验证哈希值,验证通过后,再进行数据解密,得到原IP数据包;
发送单元,用于根据目的IP进行ARP请求,得到内网主机的MAC地址,建立明文口ARP列表;根据明文网口的MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,通过明文口发送到内网中。
与现有技术相比,本发明具有优势如下:
本发明实施例提供的FPGA实现的基于UDP的高速加密数据传输系统,将原有IP协议的数据包重新封装为UDP协议,并通过UDP协议的心跳包进行隧道构建及保持,在通信双方建立起高穿透性的安全隧道,保证了数据传输路径的安全;另外在FPGA中实现对数据的处理和加解密,摆脱了对CPU 性能的依赖,保证了数据在传输过程中的安全和传输速度的高性能。本系统可以防止数据被第三方窃听或篡改,另外该系统通过UDP协议进行异地组网,构建隧道的穿透性强,且系统具备了硬件平台的高性能和高安全性,数据传输性能最高达到100MBps。
附图说明
图1为本发明实施例提供的FPGA实现的基于UDP的高速加密数据传输系统的框图;
图2为本发明实施例提供的隧道建立及维持模块的框图;
图3为本发明实施例提供的明文数据再封装及加密模块的框图;
图4为本发明实施例提供的密文数据解封装及解密模块的框图;
图5为本发明实施例提供的中心端与分支端建立隧道的工作流程图;
图6为本发明实施例提供的明文数据的重新封装和加密工作流程图;
图7为本发明实施例提供的密文数据解封装和解密的工作流程图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”“前端”、“后端”、“两端”、“一端”、“另一端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本发明利用FPGA的特性进行数据的高速加解密,保证数据的安全,然后将数据包重新封装为UDP数据包,顺利进行网络地址转换(Network Address Translation,NAT)穿透的同时构建安全虚拟专用网络。
本发明提供的一种FPGA实现的基于UDP的高速加密数据传输系统,参照图1所示,包括:
隧道建立及维持模块,用于布置中心端和至少一个分支端,所述中心端的外网IP和映射端口已知;由所述分支端以预设时间间隔向所述中心端发送 UDP格式的心跳包,在双方之间建立专属的网络隧道。该系统涉及两端,需要成对使用,并要求至少一端的外网IP和映射端口是已知的,布置在此侧的系统被称为中心端,另外一端被称为分支端。由分支端以固定时间间隔向中心端发送UDP格式的心跳包,中心端通过心跳包可以获得分支端的外网IP 地址及映射端口,通过该信息在双方之间建立专属的网络隧道。
明文数据再封装及加密模块,用于在网络隧道内从设备的明文网口筛选出原IP数据包,解析后重新封装为UDP数据包;根据配置信息和隧道信息生成IP首部信息,和UDP首部信息,并将原IP数据包的IP首部信息及数据部分作为新数据包的UDP数据部分,对新数据包UDP数据内容进行加密,将加密后数据包打上预设标签后发送到外网。预设标签比如用于存放厂商信息,设备ID,以及密钥更新时需要的部分参数(比如主要是密钥的有效性标志,以及新、旧密钥的选择参数)等信息,便于密文网口数据解析和初步识别。该模块中,算法加密相对独立,比如可采用SM3和SM4组合、或采用 SM4-GCM算法,当然也可以支持更换其他算法,解密时采用对应的解密算法即可,本公开实施例对此不做限定。
密文数据解封装及解密模块,用于根据自定义的预设标签内容筛选出系统加密后的数据包,将该数据包解封装后,送去解密模块解密,采用与加密时相对应的解密算法,解密后得到原数据包,然后将该数据包发送到内网。
其中,隧道建立及维持模块,参照图2所示,包括:
部署单元,用于布置中心端和至少一个分支端,所述中心端的外网IP和映射端口已知;并构建隧道表,所述隧道表包括:对端的外网IP,外网映射端口,对端内网网段,掩码位数和密钥存放指示;
注册单元,用于分支端在中心端注册,中心端向分支端下发隧道信息及分配给分支端的密钥信息;
配置单元,用于所述中心端与分支端系统中明文网口IP、密文网口IP、端口和网关的配置;建立通讯单元,用于分支端根据所述隧道信息以预设时间间隔向所述中心端的外网IP及外网映射端口发送UDP格式的心跳包;所述心跳包包括分支端的内网网段以及掩码位数;所述中心端接收到所述心跳包,解析出内网网段以及掩码位数,并在所述隧道表中进行匹配,查找对应的隧道信息,将对端的外网IP及外网映射端口填入,完成通讯建立。
明文数据再封装及加密模块,参照图3所示,包括:
接收查询单元,用于接收明文网口的原IP数据包,解析后根据目的IP进行隧道表查询;
判断读取单元,用于根据查询结果判断所述目的IP所在的对端内网网段,并读取该网段对应的隧道信息;
再封装单元,用于根据所述隧道信息及配置信息构造新的IP头部信息及 UDP头部信息,将原IP数据包的IP头部信息和数据部分作为新数据包的数据部分;
判断单元,用于判断所述新数据包长度是否超过系统设置的MTU值,当超过时,则对该数据包进行分片处理;
加密发送单元,用于对所述新数据包UDP数据内容进行加密,将加密后数据包打上预设标签后发送到外网。该加密发送单元,包括:
加密子单元,用于根据SM4算法对数据内容进行加密,再根据SM3算法进行校验和计算;或用于根据SM4-GCM算法对数据内容进行加密,并得到密文数据的哈希值;
发送子单元,用于对密文网口设置的网关进行ARP请求,建立密文口 ARP列表,根据密文网口以及网关MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,然后将密文数据包从密文网口发出。
本实施例中,预设标签内容只是用于数据的初步筛选,可采用多种加密方式。比如根据SM4算法对数据内容进行加密,再根据SM3算法进行校验和计算,真正起数据内容检查和防篡改作用的是SM3算法。即使偶尔有错误的网络数据包符合根据预设标签设置的过滤条件,但数据包不可能通过SM3算法的数据校验,所以错误的数据包不会访问到内网主机。
再比如:根据SM4-GCM算法对数据内容进行加密,在对数据加密的同时,也对数据做了哈希运算,解密时通过哈希值的验证,实现数据的防篡改。
密文数据解封装及解密模块,参照图4所示,包括:
接收筛选单元,用于从对端系统密文网口接收网络数据包,根据自定义的预设标签内容筛选出系统加密后的数据包;
解密单元,用于进行SM3算法的验证,确定数据包的有效性;再根据SM4 算法进行数据解密,得到原IP数据包;或解密时根据SM4-GCM算法先验证哈希值,验证通过后,再进行数据解密,得到原IP数据包;
发送单元,用于根据目的IP进行ARP请求,得到内网主机的MAC地址,建立明文口ARP列表;根据明文网口的MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,通过明文口发送到内网中。
下面通过具体实施例来详细描述本发明的技术方案:
参照图5所示,该系统涉及两端,需要成对使用,并要求至少一端的外网IP和映射端口是已知的,布置在已知外网IP与端口一端的系统被称为中心端,另外一端被称为分支端。支持多种部署场景,如一个中心端对应多个分支端,也可以进行分级部署,其中的中心端系统可以同时作为下级系统中心端与上级系统分支端。
构建的隧道表包括五个元素:对端的外网IP,外网映射端口,对端内网网段,掩码位数,密钥存放指示。前四个元素用于构造隧道,第五个元素用于查找对应密钥。因不同分支端的密钥信息是不同的,所以要根据密钥存放指示去密钥存储区拿取某一分支端所对应的密钥信息。
如图5所示,部署完成后,分支端需要在中心端进行注册,中心端向分支端下发隧道信息及密钥信息,注册时在中心端会将自己的外网IP,端口,及分配给分支端的密钥一并下发;然后分别进行中心端与分支端系统的配置,如明文、密文网口IP,端口,网关等信息。
分支端根据隧道信息,会按照固定时间间隔向中心端的外网IP及外网映射端口发送心跳包,心跳包中包含分支端的对端内网网段以及掩码位数。中心端收到数据包,筛选到该心跳包之后,解析出数据包携带信息,中心端在隧道表中根据对端内网网段和掩码位数进行查找。匹配到该条隧道信息之后,将外网IP及外网映射端口填入。这时中心端与分支端都有了完整的隧道信息,就可以建立通讯了。
另外,心跳包每隔固定时间间隔发送一次,可以保持分支端在外网的映射端口,从而起到维护隧道的作用。
以杂凑算法SM3以及分组密码算法SM4为例,明文重新封装及加密过程如图6所示,设备的明文网口,首先筛选出IP数据包,解析后根据目的IP进行隧道表查询,判断该IP是在哪个网段内,并将对应的隧道信息读取出来,根据隧道信息及配置信息构造新的IP头部信息及UDP头部信息,将原数据包的IP头部信息和数据部分作为新数据包的数据部分,判断新数据包长度是否超过系统设置的MTU值,如果超过,则对该数据包进行分片处理,然后对UDP数据内容进行加密,根据SM4算法对数据内容进行加密,再根据SM3 算法进行校验和计算,然后对密文网口设置的网关进行地址解析协议(Address Resolution Protocol,ARP)请求,得到回复后,建立密文口ARP列表,根据密文网口以及网关MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,然后将密文数据包从密文网口发出。
经过多层网络设备发送到对端所在的外网IP与端口,经过NAT穿透后到达对端系统。
同样,以杂凑算法SM3以及分组密码算法SM4为例,密文解封装及解密过程如图7所示,对端系统密文网口,收到数据包后,首先根据自定义字段进行数据包的过滤,筛选出需要的密文数据包,然后将该数据包进行解密,首先进行SM3算法的验证,确定数据包没有被篡改,然后再根据SM4算法进行数据解密,解密后得到原IP数据包,根据目的IP进行ARP请求,得到内网主机的MAC地址,建立明文口ARP列表,然后根据明文网口的MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,通过明文口发送到内网中。
本实施例中,上述加密的具体实施过程如下:
FPGA解析收到的以太网数据包,FPGA解析收到的以太网数据包后,根据目的IP去进行隧道表查询,获得对端的外网IP和映射端口,以便构造新的 IP首部和UDP首部信息,将原有数据的IP首部信息和数据部分进行加密。
对IP头部和数据区进行整体加密,加密前因为加密模块的要求,首先进行128位对齐,增加第一自定义字段,即对齐时补充的数据,每包数据的第一自定义字段长度不一;同时增加第二自定义字段,内容为原数据的真实长度和其他数据参数等信息,用于解密时校验数据有效性的一个判断依据。加密模块可采用杂凑算法SM3以及分组密码算法SM4;也可以采用SM4-GCM 算法,而算法加密模块相对独立,也可以支持更换其他算法,解密时采用对应的解密算法即可。
加密后的数据,增加第三自定义字段,当采用杂凑算法SM3以及分组密码算法SM4时,第三自定义字段内容为SM3之后算出的HMAC值,增加第四自定义字段,用于存放厂商信息,设备ID,以及密钥更新时需要的部分参数等信息,便于密文网口数据解析识别,同时作为一个数据有效性的判断依据和密钥更新时的验证信息。
密文数据加上各个自定义字段的数据,计算总长度,若超过MTU值(最大传输单元),则启动拆包模块,将数据包按照拆包规则进行分片处理,然后再将分片后的数据包依次进行加密处理,确保密文数据包长度不会超过当前网络的MTU值;将数据分成多个包进行发送。组包时根据配置信息和隧道信息生成新的IP头和UDP头部信息,将加密后的内容作为新数据包的UDP数据部分,然后根据密文口的ARP协议获得MAC列表,以及密文口的配置信息,生成新的MAC首部信息。将原有数据包完全加密处理,实现了对双方内网主机IP的隐藏,建立起安全的虚拟专用网络(VPN)。
密文数据解密过程:FPGA解析收到的以太网数据包,缓存第三自定义字段、第四自定义字段,通过对第四自定义字段初步过滤的密文数据,根据第四自定义字段进行初步筛选,然后将不合格数据包丢弃,将合格数据包的MAC 首部、IP首部、UDP首部剥除掉,将UDP数据部分进行解密处理;采用杂凑算法SM3计算,配合第三自定义字段的HMAC,进一步验证数据的正确性,同时采用分组密码算法SM4整体解密,得到第一自定义字段,第二自定义字段,验证各个字段数据的有效性;
通过有效性和正确性验证后的数据,就是原有数据包的IP首部信息和数据部分,然后根据明文口的ARP协议获得MAC列表,以及明文口的配置信息,生成新的MAC首部信息,组成完整数据包。将该数据组包后发送向内网主机。两端内网主机的IP在设备之间通信时被隐藏掉,只有设备后的可信网络环境中才能看到对端主机的IP,在双方主机之间建立了专属的虚拟网络 (VPN)保证了内网主机不被攻击。
以上显示和描述了本发明的基本原理和主要特征。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (5)

1.一种FPGA实现的基于UDP的高速加密数据传输系统,其特征在于,包括:
隧道建立及维持模块,用于布置中心端和至少一个分支端,所述中心端的外网IP和映射端口已知;由所述分支端以预设时间间隔向所述中心端发送UDP格式的心跳包,在双方之间建立并维持专属的网络隧道;
明文数据再封装及加密模块,用于在所述网络隧道内从设备的明文网口筛选出原IP数据包,解析后重新封装为UDP数据包;根据配置信息和隧道信息生成IP首部信息,和UDP首部信息,并将原IP数据包的IP首部信息及数据部分作为新数据包的UDP数据部分,对新数据包UDP数据内容进行加密,将加密后数据包打上预设标签后发送到外网;
密文数据解封装及解密模块,用于根据自定义的预设标签内容筛选出系统加密后的数据包,将该数据包解封装后,送去解密模块解密,解密后得到原数据包,然后将该数据包发送到内网。
2.根据权利要求1所述的一种FPGA实现的基于UDP的高速加密数据传输系统,其特征在于,所述隧道建立及维持模块,包括:
部署单元,用于布置中心端和至少一个分支端,所述中心端的外网IP和映射端口已知;并构建隧道表,所述隧道表包括:对端的外网IP,外网映射端口,对端内网网段,掩码位数和密钥存放指示;
注册单元,用于分支端在中心端注册,中心端向分支端下发隧道信息及分配给分支端的密钥信息;
配置单元,用于所述中心端与分支端系统中明文网口IP、密文网口IP、端口和网关的配置;
建立通讯单元,用于分支端根据所述隧道信息以预设时间间隔向所述中心端的外网IP及外网映射端口发送UDP格式的心跳包;所述心跳包包括分支端的内网网段以及掩码位数;所述中心端接收到所述心跳包,解析出内网网段以及掩码位数,并在所述隧道表中进行匹配,查找对应的隧道信息,将对端的外网IP及外网映射端口填入,完成通讯建立。
3.根据权利要求2所述的一种FPGA实现的基于UDP的高速加密数据传输系统,其特征在于,所述明文数据再封装及加密模块,包括:
接收查询单元,用于接收明文网口的原IP数据包,解析后根据目的IP进行隧道表查询;
判断读取单元,用于根据查询结果判断所述目的IP所在的对端内网网段,并读取该网段对应的隧道信息;
再封装单元,用于根据所述隧道信息及配置信息构造新的IP头部信息及UDP头部信息,将原IP数据包的IP头部信息和数据部分作为新数据包的数据部分,实现将原有通信IP进行隐藏;
判断单元,用于判断所述新数据包长度是否超过系统设置的MTU值,当超过时,则对该数据包进行分片处理;
加密发送单元,用于对所述新数据包UDP数据内容进行加密,将加密后数据包打上预设标签后发送到外网。
4.根据权利要求3所述的一种FPGA实现的基于UDP的高速加密数据传输系统,其特征在于,所述加密发送单元,包括:
加密子单元,用于根据SM4算法对数据内容进行加密,再根据SM3算法进行校验和计算;或用于根据SM4-GCM算法对数据内容进行加密,并得到密文数据的哈希值;
发送子单元,用于对密文网口设置的网关进行ARP请求,建立密文口ARP列表,根据密文网口以及网关MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,然后将密文数据包从密文网口发出。
5.根据权利要求4所述的一种FPGA实现的基于UDP的高速加密数据传输系统,其特征在于,所述密文数据解封装及解密模块,包括:
接收筛选单元,用于从对端系统密文网口接收网络数据包,根据自定义的预设标签内容筛选出系统加密后的数据包,将该数据包的IP头部信息及UDP头部信息剥除,将数据部分送去解密;
解密单元,用于进行SM3算法的验证,确定数据包的有效性;再根据SM4算法进行数据解密,得到原IP数据包;或用于解密时根据SM4-GCM算法先验证哈希值,验证通过后,再进行数据解密,得到原IP数据包;
发送单元,用于根据目的IP进行ARP请求,得到内网主机的MAC地址,建立明文口ARP列表;根据明文网口的MAC地址,重新生成新的MAC首部,形成标准的以太网数据包,通过明文口发送到内网中。
CN202111307344.3A 2021-10-29 2021-11-05 一种fpga实现的基于udp的高速加密数据传输系统 Active CN114050921B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111269934 2021-10-29
CN2021112699341 2021-10-29

Publications (2)

Publication Number Publication Date
CN114050921A true CN114050921A (zh) 2022-02-15
CN114050921B CN114050921B (zh) 2023-07-25

Family

ID=80207676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111307344.3A Active CN114050921B (zh) 2021-10-29 2021-11-05 一种fpga实现的基于udp的高速加密数据传输系统

Country Status (1)

Country Link
CN (1) CN114050921B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225331A (zh) * 2022-06-22 2022-10-21 中国科学院信息工程研究所 一种数据加密通信的方法
CN116319105A (zh) * 2023-05-22 2023-06-23 北京中鼎昊硕科技有限责任公司 一种基于多路安全隧道的高可靠数据传输管理系统
WO2023197925A1 (zh) * 2022-04-12 2023-10-19 支付宝(杭州)信息技术有限公司 处理报文的方法及装置
CN117176435A (zh) * 2023-09-08 2023-12-05 南京金阵微电子技术有限公司 以太网报文加解密系统

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001156841A (ja) * 1999-11-26 2001-06-08 Mitsubishi Electric Corp 暗号装置、暗号化器および復号器
US20060174108A1 (en) * 2005-02-01 2006-08-03 3Com Corporation Deciphering encapsulated and enciphered UDP datagrams
US20080076419A1 (en) * 2006-09-22 2008-03-27 Amit Khetawat Method and apparatus for discovery
US7606191B1 (en) * 2006-05-01 2009-10-20 Sprint Spectrum L.P. Methods and systems for secure mobile-IP traffic traversing network address translation
CN102123002A (zh) * 2011-03-07 2011-07-13 上海华为技术有限公司 一种基于IPsec的频率同步方法和相关设备
US8316226B1 (en) * 2005-09-14 2012-11-20 Juniper Networks, Inc. Adaptive transition between layer three and layer four network tunnels
US20140056130A1 (en) * 2012-08-21 2014-02-27 Cisco Technology, Inc. Providing integrated end-to-end architecture that includes quality of service transport for tunneled traffic
CN103888334A (zh) * 2012-12-20 2014-06-25 兴唐通信科技有限公司 IP分组网中VoIP多层加密方法及系统
US20150304427A1 (en) * 2014-04-22 2015-10-22 Alcatel-Lucent Canada, Inc. Efficient internet protocol security and network address translation
US20160269285A1 (en) * 2015-03-13 2016-09-15 Oracle International Corporation Concealed datagram-based tunnel for real-time communications
WO2016177149A1 (zh) * 2015-08-21 2016-11-10 中兴通讯股份有限公司 隧道的优先级设置方法及装置
JP2019118156A (ja) * 2019-04-26 2019-07-18 Necプラットフォームズ株式会社 通信システム、通信装置およびvpn構築方法
WO2020027378A1 (ko) * 2018-07-30 2020-02-06 포항공과대학교 산학협력단 소프트웨어 정의 네트워크 기반의 sdn 컨트롤러, 그리고 이를 이용한 트래픽 엔지니어링 시스템 및 트래픽 엔지니어링 방법
US20200366578A1 (en) * 2019-05-16 2020-11-19 Arista Networks, Inc. Method and network device for tagging network traffic flows
CN112910729A (zh) * 2021-01-27 2021-06-04 江苏农林职业技术学院 一种支持IPSec VPN数据监控的方法
CN113037706A (zh) * 2021-01-22 2021-06-25 深圳可信计算技术有限公司 摄像头和服务器的数据加解密传送方法及数据传输系统

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001156841A (ja) * 1999-11-26 2001-06-08 Mitsubishi Electric Corp 暗号装置、暗号化器および復号器
US20060174108A1 (en) * 2005-02-01 2006-08-03 3Com Corporation Deciphering encapsulated and enciphered UDP datagrams
US8316226B1 (en) * 2005-09-14 2012-11-20 Juniper Networks, Inc. Adaptive transition between layer three and layer four network tunnels
US7606191B1 (en) * 2006-05-01 2009-10-20 Sprint Spectrum L.P. Methods and systems for secure mobile-IP traffic traversing network address translation
US20080076419A1 (en) * 2006-09-22 2008-03-27 Amit Khetawat Method and apparatus for discovery
CN102123002A (zh) * 2011-03-07 2011-07-13 上海华为技术有限公司 一种基于IPsec的频率同步方法和相关设备
US20140056130A1 (en) * 2012-08-21 2014-02-27 Cisco Technology, Inc. Providing integrated end-to-end architecture that includes quality of service transport for tunneled traffic
CN103888334A (zh) * 2012-12-20 2014-06-25 兴唐通信科技有限公司 IP分组网中VoIP多层加密方法及系统
US20150304427A1 (en) * 2014-04-22 2015-10-22 Alcatel-Lucent Canada, Inc. Efficient internet protocol security and network address translation
US20160269285A1 (en) * 2015-03-13 2016-09-15 Oracle International Corporation Concealed datagram-based tunnel for real-time communications
WO2016177149A1 (zh) * 2015-08-21 2016-11-10 中兴通讯股份有限公司 隧道的优先级设置方法及装置
WO2020027378A1 (ko) * 2018-07-30 2020-02-06 포항공과대학교 산학협력단 소프트웨어 정의 네트워크 기반의 sdn 컨트롤러, 그리고 이를 이용한 트래픽 엔지니어링 시스템 및 트래픽 엔지니어링 방법
JP2019118156A (ja) * 2019-04-26 2019-07-18 Necプラットフォームズ株式会社 通信システム、通信装置およびvpn構築方法
US20200366578A1 (en) * 2019-05-16 2020-11-19 Arista Networks, Inc. Method and network device for tagging network traffic flows
CN113037706A (zh) * 2021-01-22 2021-06-25 深圳可信计算技术有限公司 摄像头和服务器的数据加解密传送方法及数据传输系统
CN112910729A (zh) * 2021-01-27 2021-06-04 江苏农林职业技术学院 一种支持IPSec VPN数据监控的方法

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
孙伟峰;张琳;林少锋;杨燕;陶波;: "一种增强型VPN安全隔离网关设计与实现", 中国电子科学研究院学报, no. 06 *
张戈;: "基于隧道技术的网络跨越访问研究", 计算机安全, no. 11 *
彭钟;: "VPN技术的应用", 新疆电力, no. 04 *
杨玲;: "试析不同应用场景下IPSec与NAT共存的实现", 电脑编程技巧与维护, no. 12 *
温舒雅;谭振江;周伟;杨茁;: "基于IPV6的ISATAP隧道分析", 智能城市, no. 18 *
邹县芳;宋杰;陈蕴;: "基于L2TP/IPSec的VPN技术在校园网中的研究和应用", 阜阳师范学院学报(自然科学版), no. 03 *
高国奇;周波勇;: "基于IPSec技术的VPN安全实施", 中国金融电脑, no. 12 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023197925A1 (zh) * 2022-04-12 2023-10-19 支付宝(杭州)信息技术有限公司 处理报文的方法及装置
CN115225331A (zh) * 2022-06-22 2022-10-21 中国科学院信息工程研究所 一种数据加密通信的方法
CN116319105A (zh) * 2023-05-22 2023-06-23 北京中鼎昊硕科技有限责任公司 一种基于多路安全隧道的高可靠数据传输管理系统
CN116319105B (zh) * 2023-05-22 2023-08-15 北京中鼎昊硕科技有限责任公司 一种基于多路安全隧道的高可靠数据传输管理系统
CN117176435A (zh) * 2023-09-08 2023-12-05 南京金阵微电子技术有限公司 以太网报文加解密系统

Also Published As

Publication number Publication date
CN114050921B (zh) 2023-07-25

Similar Documents

Publication Publication Date Title
CN114050921B (zh) 一种fpga实现的基于udp的高速加密数据传输系统
US11870761B1 (en) Hardware security accelerator
US9015467B2 (en) Tagging mechanism for data path security processing
EP1698136B1 (en) Method and system for sending a message through a secure connection
US7509491B1 (en) System and method for dynamic secured group communication
US7434045B1 (en) Method and apparatus for indexing an inbound security association database
US9369550B2 (en) Protocol for layer two multiple network links tunnelling
US20020062344A1 (en) Method and arrangement for secure tunneling of data between virtual routers
CN107104929B (zh) 防御网络攻击的方法、装置和系统
US20070214502A1 (en) Technique for processing data packets in a communication network
US10044841B2 (en) Methods and systems for creating protocol header for embedded layer two packets
US20050220091A1 (en) Secure remote mirroring
Rajagopal et al. Fibre channel over tcp/ip (fcip)
CN107306198B (zh) 报文转发方法、设备和系统
CN114050920A (zh) 一种基于fpga的透明网络加密系统实现方法
US11297037B2 (en) Method and network device for overlay tunnel termination and mirroring spanning datacenters
Farinacci et al. Locator/ID separation protocol (LISP) data-plane confidentiality
US11818141B2 (en) Path validation checks for proof of security
WO2016165277A1 (zh) 一种实现IPsec分流的方法和装置
Perez Network security
US20140207958A1 (en) Virtual private network communication system, routing device and method thereof
KR100449809B1 (ko) 다중 보안 서비스를 제공하는 개선된 아이피 계층에서의패킷 보호 방법
Arora et al. Comparison of VPN protocols–IPSec, PPTP, and L2TP
CN115378705B (zh) 协议无关的多模态安全方法及装置
US11973700B2 (en) Trusted remote management unit

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