CN112910932A - 一种数据处理方法、装置及系统 - Google Patents

一种数据处理方法、装置及系统 Download PDF

Info

Publication number
CN112910932A
CN112910932A CN202110479777.0A CN202110479777A CN112910932A CN 112910932 A CN112910932 A CN 112910932A CN 202110479777 A CN202110479777 A CN 202110479777A CN 112910932 A CN112910932 A CN 112910932A
Authority
CN
China
Prior art keywords
module
algorithm
fpga module
network data
processing
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
CN202110479777.0A
Other languages
English (en)
Other versions
CN112910932B (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.)
Beijing Shudun Information Technology Co ltd
Original Assignee
Beijing Shudun 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 Beijing Shudun Information Technology Co ltd filed Critical Beijing Shudun Information Technology Co ltd
Priority to CN202110479777.0A priority Critical patent/CN112910932B/zh
Publication of CN112910932A publication Critical patent/CN112910932A/zh
Application granted granted Critical
Publication of CN112910932B publication Critical patent/CN112910932B/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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures

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)

Abstract

本发明提供一种数据处理方法、装置及系统,所述方法包括:接收网络数据报文;对所述网络数据报文进行解析,得到解析结果;若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。本发明的方案提高了中央处理器的运算能力,增大了系统的算法处理性能,保证了安全性。

Description

一种数据处理方法、装置及系统
技术领域
本发明涉及计算机技术领域,特别是指一种数据处理方法、装置及系统。
背景技术
常见的密码整机类设备包括:服务器密码机、签名验签服务器、金融数据密码机、IPSec VPN(Internet协议安全性虚拟专用网)安全网关、数据链路安全网关等。
现有技术中,这些密码整机类设备大多采用通用型或定制型服务器主板、CPU(中央处理器)模块、外接PCI-e密码卡形式组成。服务器主板提供网络接口、CPU模块负责收发网络数据并对其进行解析,PCI-e密码卡对网络数据进行加解密或者签名验签运算。CPU模块收发网络数据包会消耗大量CPU和系统中断资源,尤其在使用万兆网卡的情况下,万兆网卡满速运行需要至少4核心以上CPU,并且消耗20%左右的CPU资源。CPU调用PCI-e密码卡进行加解密运算,也需要消耗大量CPU资源,进一步加重CPU的运行负担。并且现有的PCI-e密码卡的加解密和签名验签能力普遍不是很高,能达到10Gbps加解密速率和30万次/秒签名速率的产品屈指可数,无法满足日益增大的网络加解密及签名验签需求。
发明内容
本发明要解决的技术问题是如何提供一种数据处理方法、装置及系统。解决了现有技术中中央处理器运算能力受限的问题。
为解决上述技术问题,本发明的技术方案如下:
本发明提供了一种数据处理方法,应用于接口现场可编程门阵列FPGA模块,所述接口FPGA模块与中央处理器CPU以及与算法FPGA模块通信连接;所述方法包括:
接收网络数据报文;
对所述网络数据报文进行解析,得到解析结果;
若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;
若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。
可选的,所述接口FPGA模块通过中转FPGA模块与所述CPU通信连接;
所述接口FPGA模块将所述控制数据通过所述中转FPGA模块发送至所述CPU处理和/或接收所述CPU发送的配置信息。
可选的,对所述网络数据进行解析,得到解析结果,包括:
对所述网络数据进行解析,获得数据报文的字段信息;所述字段信息包括以下至少一项:前导码字段、MAC字段、IP地址、报文类型头、净荷以及校验字段,所述MAC字段包括源MAC以及目的MAC,所述IP地址包括源IP以及目的IP。
可选的,若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,包括:
若所述网络数据报文是IP报文,且所述网络数据报文的目的IP地址不是本端口IP地址时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理。
可选的,接收所述算法FPGA模块返回的运算结果,包括:
接收所述算法FPGA模块对所述网络数据报文采用预设安全算法进行加密和/或解密的运算结果。
可选的,所述安全算法包括以下至少一种算法:SM1算法;SM2算法;SM3算法;SM4算法;其中,所述SM3算法的IP核集群与所述SM4算法的IP核集群相互独立。
本发明提供一种数据处理装置,应用于接口现场可编程门阵列FPGA模块,所述接口FPGA模块与中央处理器CPU以及与算法FPGA模块通信连接;所述装置包括:
收发模块,用于接收网络数据报文;
处理模块,用于对所述网络数据报文进行解析,得到解析结果;
所述收发模块还用于在所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果。
本发明提供了一种数据处理系统,包括:中央处理器CPU,接口现场可编程门阵列FPGA模块以及算法FPGA模块;所述CPU与所述接口FPGA模块通信连接;所述接口FPGA模块与所述算法FPGA模块通信连接;
所述接口FPGA模块接收网络数据报文;对所述网络数据报文进行解析,得到解析结果;若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;
若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。
可选的,所述接口FPGA模块还与以下至少一种模块通信连接:
中转FPGA模块;数据安全模块;所述接口FPGA模块通过所述中转FPGA模块接收所述CPU发送的配置信息;
所述接口FPGA模块接收所述CPU发送的用户和/或密钥管理指令,并发送给所述数据安全模块。
本发明提供了一种计算机可读存储介质,存储指令,当所述指令在计算机上运行时,使得计算机执行如上述的方法。
本发明的上述方案至少包括以下有益效果:
通过接收网络数据报文;对所述网络数据报文进行解析,得到解析结果;若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。不再需要CPU模块去处理网络数据包的收发和解析工作,使CPU的运算能力得到了极大的释放;基于CPU和FPGA异步架构的平台,可以扩展出多个千兆网口和万兆网口,可以适应不同的网络环境要求,并且网络数据的收发和解析、算法运算等工作都是由接口FPGA模块和算法FPGA模块完成,这些过程均不需要CPU模块进行参与,所有逻辑都是FPGA内部的固化电路完成,极大了增大了系统的算法处理性能。基于CPU和FPGA异步架构的平台内部的所有敏感安全数据都是由数据安全模块进行处理并存储,无论从内部还是外部都无法获取或者修改这些数据,从而保证了整个设备的安全性。
附图说明
图1是本发明实施例的数据处理方法的流程示意图;
图2是本发明实施例的数据处理方法中系统的结构示意图;
图3是本发明实施例的数据处理方法中算法FPGA模块的结构示意图;
图4是本发明实施例的数据处理方法中接口FPGA模块的结构示意图;
图5是本发明实施例的接口FPGA对网络数据报文处理的流程示意图;
图6是本发明实施例的数据处理装置的模块示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,本发明的实施例提供一种数据处理方法,应用于接口现场可编程门阵列FPGA模块,所述接口FPGA模块与中央处理器CPU以及与算法FPGA模块通信连接;所述方法包括:
步骤11,接收网络数据报文;
步骤12,对所述网络数据报文进行解析,得到解析结果;
步骤13,若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;
步骤14,若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。
该实施例是由CPU(Central Processing Unit,中央处理器)与FPGA(FieldProgrammable Gate Array,现场可编程逻辑门阵列)协同合作的数据处理方法;通过接口FPGA模块进行收发和/或解析网络数据报文,不再需要CPU模块去处理网络数据包的收发和解析工作,使CPU的运算能力得到了极大的释放,解决了对CPU过分依赖的问题,有效提高了CPU的运算效率。
如图2所示,本发明一可选的实施例中,所述接口FPGA模块通过中转FPGA模块与所述CPU通信连接;所述接口FPGA模块将所述控制数据通过所述中转FPGA模块发送至所述CPU处理和/或接收所述CPU发送的配置信息。
该实施例中,CPU模块通过PCI-e总线与中转FPGA模块相连,可以通过中转FPGA模块将配置和管理信息发送到接口FPGA模块,也可以通过中转FPGA模块获取系统检测模块的状态。
中转FPGA模块,通过PCI-e总线与CPU模块相连,通过UART(UniversalAsynchronous Receiver/Transmitter,通用异步收发传输器)总线与系统检测模块相连,通过RGMII(Reduced Gigabit Media Independent Interface,精简吉比特介质独立接口)总线与接口FPGA相连。中转FPGA模块进行数据的转发,目的是将CPU模块、系统检测模块、接口FPGA模块联系起来,数据可以相互传输。中转FPGA模块实现了将CPU模块、系统检测模块、接口FPGA模块相互联系起来,起到了数据的中转转发的作用,使得数据可以进行交互传输;
需要说明的是,CPU模块为软件运行提供了计算平台,CPU中的软件可以通过中转FPGA模块将配置信息发送到接口FPGA模块,还可以通过中转FPGA模块获取系统检测模块的状态;系统监测模块在具体的实施例中可以用于检测服务器的电源状态、温度等状态,并根据相关状态控制风扇转速、电源通断等,同时外接RTC(Real_Time Clock,实时时钟)时钟芯片以提供时钟相关信息。
接口FPGA模块,通过RGMII总线与物理网口连接,可以同时提供千兆网络接口和万兆网络接口;通过RGMII总线与中转FPGA模块连接,实现与CPU模块的通信;通过SRAM总线与数据安全模块连接,转发CPU模块用户管理、密钥管理的指令给数据安全模块;通过内部高速总线连接算法FPGA模块,两片FPGA之间的通信速率可达40Gbps。接口FPGA模块的主要作用是网络数据的收发、协议的解析和封装。
接口FPGA模块的工作流程是从网络接口接收数据,进行网络协议解析,如数据需要算法运算则将数据送到算法FPGA模块,并将运算结果进行封装,将封装后的数据从网络接口发送出去;如数据是不需要算法运算的配置数据和管理数据,接口FPGA模块会转发到CPU模块进行处理。
算法FPGA模块内部设有SM3/SM4算法IP核集群,通过GPIO(General-purposeinput/output,通用型的输入输出)分别连接SM1/SM2算法协处理器和随机数芯片;算法FPGA模块提供的国密算法可供接口FPGA模块调用,也可供CPU模块调用,具有很大的灵活性,提供了高速的SM3/SM4算法与高速的SM1和SM2算法和真随机数功能,起到了提供随机数和国密SM1/SM2/SM3/SM4算法服务,其中,SM1算法和SM2算法由外部的专用算法芯片提供,可同时挂载多片专用算法芯片以提高SM1和SM2算法的速率,SM1算法最高速率可达9Gbps,SM2算法签名运算最高可达36万次/秒,SM3和SM4算法的速率可达10Gbps以上;另外,需要说明的是,SM3/SM4算法IP核集群是由多个算法IP核组成的,所有的算法IP核相互独立,可以同时运行,提供了极高的SM3/SM4算法速率。
如图3所示,一个具体的实施例1中,算法FPGA模块通过PCI-e总线进行DMA(直接存储访问)的IP Core(Intellectual Property core,中断优先寄存器核,即IP核)与主机交互,通过AXI Stream总线利用软件AXI Stream Interconnect分别连接SM3算法池、SM4算法池以及ARM(Acorn RISC Machine,ARM处理器)的访问接口,最终通过EMC(External MemoryController,外部存储器控制器)与板载ARM交互,这里IP核集群包括多个IP核。
接口FPGA模块通过RGMII总线物理网口,该物理网口优选的可以提供千兆网络接口和万兆网络接口,通过RGMII总线与中转FPGA模块连接,通过SRAM(Static Random-Access Memory,静态随机存取存储器)与数据安全模块连接,通过内部高速Data Bus(数据总线)与算法FPGA模块连接,其通信速率可达40Gbps;实现了接口FPGA模块与CPU之间的通信,还可以转发CPU模块的指令给数据安全模块,数据安全模块由符合规范的安全芯片组成,提供了对敏感数据的安全存储,实现与CPU模块配合完成管理操作,该管理操作包括密钥体系的管理和系统用户的管理;同时还实现了对网络数据报文的收发和/或解析,对网络数据报文的解析可以解析到IP层(网络层)和/或TCP/UDP层(Transmission ControlProtocol/User Datagram Protocol, 传输控制协议/用户数据报协议),其对网络数据报文的收发和/或解析的整个过程都不需要CPU参与,减小了CPU运算负担,提高了CPU的运算效率;
如图4所示,一个具体的实施例2中,接口FPGA模块内部进行数据的收发,其核心部分是AXIS_stream_Switch(AXIS总线流交换机)模块,用于接收网络数据报文,并对网络数据报文进行解析,并进一步对数据进行高速转发,其外部挂载comE RGMII接口、WX1860RGMII接口、HSMD 1接口、HSMD2-H2接口、HSH3接口、MCU(Microcontroller Unit,微控制单元)接口、Config Data Operate(配置数据操作)、RGMII接口以及若干ETH Data Depart(以太网数据部),用于AXIS stream格式转换;其中安全密码芯片ACH512通过MCU接口与AXIS_stream_Switch模块连接,DDR Control(Double Data Rate Control,双倍速率控制)通过Config Data Operate与AXIS_stream_Switch模块连接,ALG FPGA 10G base(万兆以太网的应用层可编程逻辑门器件)通过GMII(Gigabit Medium Independent Interface,千兆媒体独立接口)与RGMII接口连接,ETH PHY #0(以太网物理层#0)和ETH PHY#1(以太网物理层#1)通过ETH Data Depart与AXIS_stream_Switch模块连接,实现了对网络数据报文的转发。
本实施例的硬件组成部分由中转FPGA模块、接口FPGA模块、算法FPGA模块以及CPU模块以及其他功能性模块共同组成,其中主要由接口FPGA和算法FPGA完成,基本不需要CPU模块参与;接口FPGA模块接收到网络数据报文后进行协议解析,如果是需要进行安全处理的业务数据,接口FPGA模块会直接把网络数据报文发送到算法FPGA模块进行安全运算处理,运算完毕后算法FPGA模块会把结果发送到接口FPGA模块进行协议封装,接口FPGA模块将封装好的网络数据报文从外网发送出去,整个过程不需要CPU模块的参与,仅有少量管理数据或者协商数据需要由接口FPGA模块传递给CPU模块进行处理。这种仅需CPU模块进行少量参与的业务处理方式,隔绝了业务数据和操作系统的联系,很大程度上也隔绝了系统被攻击的可能性,保障了安全性。
本发明一可选的实施例中,步骤12包括:
对所述网络数据进行解析,获得数据报文的字段信息;所述字段信息包括以下至少一项:前导码字段、MAC字段、IP地址、报文类型头、净荷以及校验字段,所述MAC字段包括源MAC以及目的MAC,所述IP地址包括源IP以及目的IP。本实施例中数据报文的字段信息格式如表1所示:
Figure DEST_PATH_IMAGE002AA
表1
其中,Preamble是前导码字段,MAC是MAC字段,IP Header是IP地址包括IPV4或者IPV6,TCP/UDP header是报文类型头,Payload是净荷,CRC是校验字段。
如图5所示,本发明一可选的实施例中,步骤13中,若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,包括:
若所述网络数据报文是IP报文,且所述网络数据报文的目的IP地址不是本端口IP地址时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理;
相应的,步骤13中接收所述算法FPGA模块返回的运算结果,包括:
接收所述算法FPGA模块对所述网络数据报文采用预设安全算法进行加密和/或解密的运算结果;
其中,安全算法包括以下至少一种算法:SM1算法;SM2算法;SM3算法;SM4算法;其中,所述SM3算法的IP核集群与所述SM4算法的IP核集群相互独立。
本实施例中,在接口FPGA模块对网络数据报文进行处理,网络数据报文收发的接口有两种,一种是电口物理PHY模块,在FPGA转换成RGMII接口,另一种是SFP+光模块,其中电口物理PHY模块优选的是1Gbps的电口物理PHY模块,SFP+光模块优选的是10Gbps的SFP+光模块;网络数据报文的传输有两个方向,分别是由内网到外网的方向以及由外网到内网的方向,下面分别从网络数据报文的传输的两个方向进行说明;
1)从内网到外网:
1.1内网的网络数据报文通过ETH Deframer(以太网帧解析)模块对网络数据报文进行解析,其中解析的过程包括:判断网络数据报文的字段信息中的MAC字段是否是本端口的MAC字段;判断网络数据报文是否是IP报文,其中IP报文具体的包括IPV4或IPV6报文,如果是,解析出该网络数据报文的源IP地址和目的IP地址;判断网络数据报文是否是TCP报文或UDP报文,如果是,解析出源端口地址和目的端口地址;最终根据网络数据报文的解析结果,对网络数据报文进行分类,若目的IP地址是本端口的IP地址,则将网络数据报文送入CPU data Fifo(中央处理器数据先进先出)模块,再经由RGMII送入CPU模块进行处理,若目的IP地址不是本端口的IP地址,则将网络数据报文送入process data fifo(数据处理先进先出)模块,由算法FPGA模块进行处理;
1.2网络数据报文还需要经过Gen process command(Gen过程命令)模块根据网络数据报文的五元组信息与Config Data Operate(配置数据操作)模块和DDR接口进行查表决定对本报文的处理方式,并将处理方式协议送入至process data fifo模块中缓存;
1.3在网络数据报文的目的IP地址不是本端口的IP地址的情况下,通过eccryption process(加密处理)模块对数据进行加密的模块,需要说明的是,该模块仅提供接口,具体功能由算法FPGA模块完成;
1.4加密完成后的数据由package framer(封装帧)模块进行组帧,通过Send Datafifo(数据发送先进先出)模块发送到电口物理PHY模块或SFP+光模块,输出到外网,完成对网络数据报文的处理。
2)从外网到内网:
2.1外网的网络数据报文通过ETH Deframer(解析帧)模块对网络数据报文进行解析,若目的IP地址是本端口的IP地址,则将网络数据报文送入CPU data Fifo(CPU数据先进先出)模块,再经由RGMII送入CPU模块进行处理,若目的IP地址不是本端口的IP地址,则将网络数据报文送入process data fifo(处理数据先进先出)模块,由算法FPGA模块进行处理;
2.2在网络数据报文的目的IP地址不是本端口的IP地址的情况下,通过Deccrytion process(解密处理)模块对数据进行加密的模块,需要说明的是,该模块仅提供接口,具体功能由算法FPGA模块完成;
2.3加密完成后的数据由package framer模块进行组帧,发送到电口物理PHY模块或SFP+光模块,输出到内网,完成对网络数据报文的处理。
通过上述网络数据报文经接口FPGA模块进行传输的两个方向,可以实现接口FPGA模块把网络数据报文发送到算法FPGA模块进行安全运算处理的过程;
网络数据报文的收发、解析以及安全处理都由硬件模块提供,为了实现CPU模块专注于管理服务,进一步减轻CPU模块的运行压力,本实施例还需要运行在CPU模块上的软件模块用于软件与硬件之间的数据通信、系统参数配置、用户管理以及密钥管理等工作。
CPU模块、接口FPGA模块以及算法FPGA模块之间的交互包括系统参数配置、用户管理、密钥管理以及数据通信,其中,
1)系统参数配置用于配置密码服务平台相关的参数,其参数包括接口FPGA模块的外网MAC地址、接口FPGA模块的外网IP地址、源MAC地址、源IP地址、日志级别以及日志存储位置,参数配置完,由CPU模块下发到对应模块进行处理;
2)用户管理用于密码服务平台上各种不同权限用户的操作,其操作包括用户创建、用户删除、用户登录以及用户登出。按照国家密码局的相关规范,需要设置不同权限的用户以执行不同的操作,权限的分割保证了数据和业务的安全性,用户信息等敏感数据信息将由CPU模块发送到数据安全模块进行安全的存储和保护,即使设备被破坏也不会丢失,以保证了安全性;
3)密钥管理用于对称密钥和非对称密钥操作,其操作包括密钥生成、密钥删除、密钥导入、密钥导出、密钥备份以及密钥恢复。密钥的使用和存储的安全性是至关重要的,密钥管理功能由CPU模块和数据安全模块两部分共同完成,CPU模块负责发送密钥管理指令,数据安全模块负责密钥的安全存储和使用,确保在密钥在整个生命周期内都是安全的,任何人都无法窃取或者破坏密钥数据;
4)数据通信用于软件和硬件之间的数据通信,其通信线路有5条:
a.CPU模块至中转FPGA模块至系统监测模块;
b.CPU模块至中转FPGA模块至接口FPGA模块;
c.CPU模块至中转FPGA模块至接口FPGA模块至千兆/万兆网口;
d.CPU模块至中转FPGA模块至接口FPGA模块至数据安全模块;
e.CPU模块至中转FPGA模块至接口FPGA模块至算法FPGA模块;
其中,a线路是由CPU模块获取系统监测模块状态的数据通路,b线路是由CPU模块进行配置接口FPGA参数的数据通路,c线路是由CPU模块获取不需要算法运算数据包的网络数据报文通路,d线路是由CPU模块传递用户管理和密钥管理指令到数据安全模块的数据通路,e线路是由CPU模块调用算法FPGA模块所提供的算法的数据通路;
需要说明的是,所有通信线路的数据通信都需要遵循内部定义的通信协议,每个数据包的前16字节为通信协议头,数据包通过源ID和目的ID来完成寻址和路由,其中,通信协议头的格式如表2所示:
Figure DEST_PATH_IMAGE004AAA
表2
本发明的上述实施例,通过接收网络数据报文;对所述网络数据报文进行解析,得到解析结果; 若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。解决了现有技术中过分依赖中央处理器和无法提供高速加解密和签名验签能力的问题,提高了中央处理器的运算能力,提高安全性和快速响应能力,同时可以适应不同网络环境要求,增大了系统的算法处理性能,保证了安全性。
如图6所示,本发明的实施例还提供一种数据处理装置60,应用于接口现场可编程门阵列FPGA模块,所述接口FPGA模块与中央处理器CPU以及与算法FPGA模块通信连接;所述装置60包括:
收发模块61,用于接收网络数据报文;
处理模块62,用于对所述网络数据报文进行解析,得到解析结果;
所述收发模块61还用于在所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果。
可选的,所述接口FPGA模块通过中转FPGA模块与所述CPU通信连接;
所述接口FPGA模块将所述控制数据通过所述中转FPGA模块发送至所述CPU处理和/或接收所述CPU发送的配置信息。
可选的,对所述网络数据进行解析,得到解析结果,包括:
对所述网络数据进行解析,获得数据报文的字段信息;所述字段信息包括以下至少一项:前导码字段、MAC字段、IP地址、报文类型头、净荷以及校验字段,所述MAC字段包括源MAC以及目的MAC,所述IP地址包括源IP以及目的IP。
可选的,若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,包括:
若所述网络数据报文是IP报文,且所述网络数据报文的目的IP地址不是本端口IP地址时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理。
可选的,接收所述算法FPGA模块返回的运算结果,包括:接收所述算法FPGA模块对所述网络数据报文采用预设安全算法进行加密和/或解密的运算结果。
可选的,所述安全算法包括以下至少一种算法:SM1算法;SM2算法;SM3算法;SM4算法;其中,所述SM3算法的IP核集群与所述SM4算法的IP核集群相互独立。
需要说明的是,该装置是与上述接口现场可编程门阵列FPGA模块侧的方法对应的装置,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。本发明的实施例还提供一种数据处理系统,包括如上所述的数据处理装置。
再如图2所示,本发明的实施例还提供一种数据处理系统,包括:中央处理器CPU,接口现场可编程门阵列FPGA模块以及算法FPGA模块;所述CPU与所述接口FPGA模块通信连接;所述接口FPGA模块与所述算法FPGA模块通信连接;
所述接口FPGA模块接收网络数据报文;对所述网络数据报文进行解析,得到解析结果;若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;
若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。
可选的,所述接口FPGA模块还与以下至少一种模块通信连接:中转FPGA模块;数据安全模块;
所述接口FPGA模块通过所述中转FPGA模块接收所述CPU发送的配置信息;
所述接口FPGA模块接收所述CPU发送的用户和/或密钥管理指令,并发送给所述数据安全模块。
可选的,所述接口FPGA模块通过中转FPGA模块与所述CPU通信连接;
所述接口FPGA模块将所述控制数据通过所述中转FPGA模块发送至所述CPU处理和/或接收所述CPU发送的配置信息。
可选的,对所述网络数据进行解析,得到解析结果,包括:对所述网络数据进行解析,获得数据报文的字段信息;所述字段信息包括以下至少一项:前导码字段、MAC字段、IP地址、报文类型头、净荷以及校验字段,所述MAC字段包括源MAC以及目的MAC,所述IP地址包括源IP以及目的IP。
可选的,若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,包括:
若所述网络数据报文是IP报文,且所述网络数据报文的目的IP地址不是本端口IP地址时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理。
可选的,接收所述算法FPGA模块返回的运算结果,包括:接收所述算法FPGA模块对所述网络数据报文采用预设安全算法进行加密和/或解密的运算结果。
可选的,所述安全算法包括以下至少一种算法:SM1算法;SM2算法;SM3算法;SM4算法;其中,所述SM3算法的IP核集群与所述SM4算法的IP核集群相互独立。
需要说明的是,该系统是与上述接口现场可编程门阵列FPGA模块侧的方法对应的系统,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
本发明的实施例还提供一种计算机可读存储介质,存储指令,当所述指令在计算机上运行时,使得计算机执行如上所述的方法。上述各方法实施例中的所有实现方式均适用于该实施例中,也能达到相同的技术效果。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
此外,需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行,某些步骤可以并行或彼此独立地执行。对本领域的普通技术人员而言,能够理解本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算装置(包括处理器、存储介质等)或者计算装置的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的。
因此,本发明的目的还可以通过在任何计算装置上运行一个程序或者一组程序来实现。所述计算装置可以是公知的通用装置。因此,本发明的目的也可 以仅仅通过提供包含实现所述方法或者装置的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质。还需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种数据处理方法,其特征在于,应用于接口现场可编程门阵列FPGA模块,所述接口FPGA模块与中央处理器CPU以及与算法FPGA模块通信连接;所述方法包括:
接收网络数据报文;
对所述网络数据报文进行解析,得到解析结果;
若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;
若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。
2.根据权利要求1所述的数据处理方法,其特征在于,所述接口FPGA模块通过中转FPGA模块与所述CPU通信连接;
所述接口FPGA模块将所述控制数据通过所述中转FPGA模块发送至所述CPU处理和/或接收所述CPU发送的配置信息。
3.根据权利要求1所述的数据处理方法,其特征在于,对所述网络数据进行解析,得到解析结果,包括:
对所述网络数据进行解析,获得数据报文的字段信息;所述字段信息包括以下至少一项:前导码字段、MAC字段、IP地址、报文类型头、净荷以及校验字段,所述MAC字段包括源MAC以及目的MAC,所述IP地址包括源IP以及目的IP。
4.根据权利要求3所述的数据处理方法,其特征在于,若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,包括:
若所述网络数据报文是IP报文,且所述网络数据报文的目的IP地址不是本端口IP地址时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理。
5.根据权利要求1所述的数据处理方法,其特征在于,接收所述算法FPGA模块返回的运算结果,包括:
接收所述算法FPGA模块对所述网络数据报文采用预设安全算法进行加密和/或解密的运算结果。
6.根据权利要求5所述的数据处理方法,其特征在于,所述安全算法包括以下至少一种算法:SM1算法;SM2算法;SM3算法;SM4算法;其中,所述SM3算法的IP核集群与所述SM4算法的IP核集群相互独立。
7.一种数据处理装置,其特征在于,应用于接口现场可编程门阵列FPGA模块,所述接口FPGA模块与中央处理器CPU以及与算法FPGA模块通信连接;所述装置包括:
收发模块,用于接收网络数据报文;
处理模块,用于对所述网络数据报文进行解析,得到解析结果;
所述收发模块还用于在所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据时,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果。
8.一种数据处理系统,其特征在于,包括:中央处理器CPU,接口现场可编程门阵列FPGA模块以及算法FPGA模块;所述CPU与所述接口FPGA模块通信连接;所述接口FPGA模块与所述算法FPGA模块通信连接;
所述接口FPGA模块接收网络数据报文;对所述网络数据报文进行解析,得到解析结果;若所述解析结果表示所述网络数据报文是需要进行安全处理的业务数据,将所述网络数据报文发送至所述算法FPGA模块进行安全运算处理,并接收所述算法FPGA模块返回的运算结果;
若所述解析结果表示所述网络数据报文是不需要进行安全处理的控制数据,将所述控制数据发送至所述CPU处理。
9.根据权利要求8所述的数据处理系统,其特征在于,所述接口FPGA模块还与以下至少一种模块通信连接:
中转FPGA模块;
数据安全模块;
所述接口FPGA模块通过所述中转FPGA模块接收所述CPU发送的配置信息;
所述接口FPGA模块接收所述CPU发送的用户和/或密钥管理指令,并发送给所述数据安全模块。
10.一种计算机可读存储介质,其特征在于,存储指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至6任一项所述的方法。
CN202110479777.0A 2021-04-30 2021-04-30 一种数据处理方法、装置及系统 Active CN112910932B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110479777.0A CN112910932B (zh) 2021-04-30 2021-04-30 一种数据处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110479777.0A CN112910932B (zh) 2021-04-30 2021-04-30 一种数据处理方法、装置及系统

Publications (2)

Publication Number Publication Date
CN112910932A true CN112910932A (zh) 2021-06-04
CN112910932B CN112910932B (zh) 2021-07-20

Family

ID=76108950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110479777.0A Active CN112910932B (zh) 2021-04-30 2021-04-30 一种数据处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN112910932B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114430349A (zh) * 2022-02-17 2022-05-03 国网江苏省电力有限公司宿迁供电分公司 轻量化自主可控物联安全接入方法、终端及存储介质
CN114978950A (zh) * 2022-06-02 2022-08-30 江苏新质信息科技有限公司 基于fpga、cpu协同的网络算法调用方法及系统
CN115291898A (zh) * 2022-08-03 2022-11-04 江苏新质信息科技有限公司 一种多fpga从模式快速烧录方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233539A1 (en) * 2002-05-31 2003-12-18 Broadcom Corporation Methods and apparatus for accelerating secure session processing
CN101483649A (zh) * 2009-02-10 2009-07-15 浪潮电子信息产业股份有限公司 一种基于fpga的网络安全内容处理卡
WO2017095599A1 (en) * 2015-11-30 2017-06-08 Honeywell International Inc. Embedded security architecture for process control systems
CN206712810U (zh) * 2017-05-10 2017-12-05 北京数盾信息科技有限公司 一种基于pci‑e总线的高速密码卡
CN109255259A (zh) * 2018-09-11 2019-01-22 网御安全技术(深圳)有限公司 一种高安全加解密运算能力扩展方法及系统
CN110086752A (zh) * 2018-01-26 2019-08-02 北京数盾信息科技有限公司 一种基于多核网络处理fpga的硬件平台
CN110765064A (zh) * 2019-10-18 2020-02-07 山东浪潮人工智能研究院有限公司 一种异构计算架构的边缘端图像处理系统及方法
CN111262823A (zh) * 2018-12-03 2020-06-09 郑州信大捷安信息技术股份有限公司 一种安全网关及其数据处理方法
CN111597142A (zh) * 2020-05-15 2020-08-28 北京光润通科技发展有限公司 一种基于fpga的网络安全加速卡及加速方法
CN112187722A (zh) * 2020-09-02 2021-01-05 博依特(广州)工业互联网有限公司 一种基于fpga的安全隔离系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233539A1 (en) * 2002-05-31 2003-12-18 Broadcom Corporation Methods and apparatus for accelerating secure session processing
CN101483649A (zh) * 2009-02-10 2009-07-15 浪潮电子信息产业股份有限公司 一种基于fpga的网络安全内容处理卡
WO2017095599A1 (en) * 2015-11-30 2017-06-08 Honeywell International Inc. Embedded security architecture for process control systems
CN206712810U (zh) * 2017-05-10 2017-12-05 北京数盾信息科技有限公司 一种基于pci‑e总线的高速密码卡
CN110086752A (zh) * 2018-01-26 2019-08-02 北京数盾信息科技有限公司 一种基于多核网络处理fpga的硬件平台
CN109255259A (zh) * 2018-09-11 2019-01-22 网御安全技术(深圳)有限公司 一种高安全加解密运算能力扩展方法及系统
CN111262823A (zh) * 2018-12-03 2020-06-09 郑州信大捷安信息技术股份有限公司 一种安全网关及其数据处理方法
CN110765064A (zh) * 2019-10-18 2020-02-07 山东浪潮人工智能研究院有限公司 一种异构计算架构的边缘端图像处理系统及方法
CN111597142A (zh) * 2020-05-15 2020-08-28 北京光润通科技发展有限公司 一种基于fpga的网络安全加速卡及加速方法
CN112187722A (zh) * 2020-09-02 2021-01-05 博依特(广州)工业互联网有限公司 一种基于fpga的安全隔离系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114430349A (zh) * 2022-02-17 2022-05-03 国网江苏省电力有限公司宿迁供电分公司 轻量化自主可控物联安全接入方法、终端及存储介质
CN114978950A (zh) * 2022-06-02 2022-08-30 江苏新质信息科技有限公司 基于fpga、cpu协同的网络算法调用方法及系统
CN114978950B (zh) * 2022-06-02 2023-10-27 江苏新质信息科技有限公司 基于fpga、cpu协同的网络算法调用方法及系统
CN115291898A (zh) * 2022-08-03 2022-11-04 江苏新质信息科技有限公司 一种多fpga从模式快速烧录方法及装置
CN115291898B (zh) * 2022-08-03 2023-11-10 江苏新质信息科技有限公司 一种多fpga从模式快速烧录方法及装置

Also Published As

Publication number Publication date
CN112910932B (zh) 2021-07-20

Similar Documents

Publication Publication Date Title
CN113194097B (zh) 一种安全网关的数据处理方法、装置及安全网关
CN112910932B (zh) 一种数据处理方法、装置及系统
CN109842585B (zh) 面向工业嵌入式系统的网络信息安全防护单元和防护方法
US11153289B2 (en) Secure communication acceleration using a System-on-Chip (SoC) architecture
JP5074558B2 (ja) IPSecを用いたネットワーク処理
US7634650B1 (en) Virtualized shared security engine and creation of a protected zone
CN100358280C (zh) 一种网络安全装置及其实现方法
CN100594690C (zh) 一种安全网关中进行安全策略统一处理的方法及装置
EP3235166B1 (en) Security plugin for a system-on-a-chip platform
US20040143734A1 (en) Data path security processing
CN107612679B (zh) 一种基于国密算法的以太网桥加扰终端
CN111262823B (zh) 一种安全网关及其数据处理方法
CN112910646B (zh) 一种服务器密码机的数据处理方法、装置及服务器密码机
Bellows et al. GRIP: A reconfigurable architecture for host-based gigabit-rate packet processing
CN104468519B (zh) 一种嵌入式电力安全防护终端加密装置
CN106656484B (zh) 一种pci密码卡驱动系统及其实现方法
CN113094762B (zh) 一种数据处理方法、装置及签名验签服务器
Friend Making the gigabit IPsec VPN architecture secure
US11588798B1 (en) Protocol free encrypting device
CN110995726B (zh) 一种基于内嵌arm的fpga芯片的网络隔离系统
Luo et al. Routing and security mechanisms design for automotive tsn/can fd security gateway
CN210092965U (zh) 一种配电终端以及配电网系统
JP2023531034A (ja) サービス伝送方法、装置、ネットワーク機器及び記憶媒体
US11956160B2 (en) End-to-end flow control with intermediate media access control security devices
EP3832951A1 (en) An electronic system, corresponding method of operation and electronic device

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
CP02 Change in the address of a patent holder

Address after: 100000 901, Floor 9, Building 7, Yard 8, Auto Museum East Road, Fengtai District, Beijing

Patentee after: BEIJING SHUDUN INFORMATION TECHNOLOGY CO.,LTD.

Address before: 100094 room 101-502, 5th floor, building 10, yard 3, fengxiu Middle Road, Haidian District, Beijing

Patentee before: BEIJING SHUDUN INFORMATION TECHNOLOGY CO.,LTD.

CP02 Change in the address of a patent holder