CN111901363B - 一种基于FPGA的5G—Profibus-DP数据加密传输装置 - Google Patents

一种基于FPGA的5G—Profibus-DP数据加密传输装置 Download PDF

Info

Publication number
CN111901363B
CN111901363B CN202010809173.3A CN202010809173A CN111901363B CN 111901363 B CN111901363 B CN 111901363B CN 202010809173 A CN202010809173 A CN 202010809173A CN 111901363 B CN111901363 B CN 111901363B
Authority
CN
China
Prior art keywords
module
data
profibus
key
ciphertext
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
Application number
CN202010809173.3A
Other languages
English (en)
Other versions
CN111901363A (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.)
Jilin University
Original Assignee
Jilin University
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 Jilin University filed Critical Jilin University
Priority to CN202010809173.3A priority Critical patent/CN111901363B/zh
Publication of CN111901363A publication Critical patent/CN111901363A/zh
Application granted granted Critical
Publication of CN111901363B publication Critical patent/CN111901363B/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
    • H04L63/045Network 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 wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40221Profibus
    • 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
    • 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
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

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)
  • Storage Device Security (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种基于FPGA的5G—Profibus‑DP数据加密传输装置,主要包括FPGA模块、复位电路模块、电源电路模块、JTAG模块、RS485接口电路模块、UART接口电路模块、5G模块以及外部存储器模块。其中FPGA模块内部集成有本发明自行设计的Profibus‑DP协议处理模块、密钥模块以及数据加密模块,可以在其余模块的配合下实现Profibus‑DP总线向5G网络实时传输数据,并保障数据的机密性与完整性。FPGA模块内部通过硬件加密实现了由SM4算法、SM2算法以及SHA256算法构成的混合加密方案,具有安全性高、加密速度快的优势,可以满足工业现场对数据传输的实时性与安全性的要求,在工业领域具有强烈的市场需求与广阔的应用前景。

Description

一种基于FPGA的5G—Profibus-DP数据加密传输装置
技术领域
本发明属于工业互联网及工业互联网安全相关领域,涉及5G技术、Profibus-DP现场总线技术、数据加密技术,特别涉及一种实现Profibus-DP总线向5G网络传输工业数据的加密传输装置。
背景技术
随着5G的快速发展及应用,利用5G有效监管和控制工业生产过程,对工业现场设备进行远程监控、维护,已经成为研究热点。
Profibus-DP总线位于工业互联网现场级,是一种高速廉价、国际通用的工业现场总线。Profibus-DP总线广泛应用于工业现场数据的传输,利用工业网关可以实现Profibus-DP总线与5G网络的数据交互,实现5G与Profibus-DP总线的融合应用(例如:利用5G终端远程操作、监控Profibus-DP总线上的设备)。
然而Profibus-DP总线与5G的融合应用给工业现场带来巨大便利的同时,也打破了传统工业现场相对封闭可信的环境,对工业数据的安全传输提出了严峻挑战。在Profibus-DP总线接入5G开放的网络环境后,如何保障工业数据的安全传输具有重要意义:可以防止敏感的工业数据被非法获取,避免因工业数据泄露造成损失与安全风险,更有利于5G在工业领域更好应用与发展。
同时,工业现场的数据传输过程往往对实时性与可靠性具有很高要求,相比于软件加密,基于硬件的加密方法安全性更高,加、解密速度更快,更适合工业数据的加密。
为了实现Profibus-DP总线向5G网络安全、有效地传输工业数据,发明了一种基于FPGA的数据加密传输装置。
发明内容
本发明为保障Profibus-DP总线向5G安全、有效地传输工业数据提供一种基于FPGA的数据加密传输装置,该装置可以保证传输数据的机密性、完整性与实时性,避免因敏感数据内容泄露造成损失企业损失。
为实现本发明的目的,采取的技术方案如下:
一种基于FPGA的5G—Profibus-DP数据加密传输装置,包含以下模块:FPGA模块、复位电路模块、电源电路模块、JTAG模块、RS485接口电路模块、UART接口电路模块、5G模块以及外部存储器模块。所述复位电路模块负责将数据加密传输装置恢复成初始状态;所述的电源电路模块为数据加密装置供电;所述JTAG模块负责下载和调试程序;所述FPGA模块通过所述RS485接口电路模块连接Profibus-DP现场总线;所述FPGA模块通过所述UART模块连接所述5G模块,所述5G模块可以匹配中国5G网络;所述的外部存储器模块由EEPROM和FLASH组成,负责保存加密装置运行的程序。
进一步,所述FPGA模块选用Cyclone IV系列的EP4CE115F29C7N芯片作为数据加密装置的主控制模块,负责数据流与控制指令的接收与发送并与其他所述模块进行电气连接。
进一步,所述FPGA模块内部集成有本发明自行设计的Profibus-DP协议处理模块、密钥模块、数据加密模块。所述Profibus-DP协议处理模块依据Profibus-DP的协议结构进行设计,可以将来自Profibus-DP总线的报文解析得到数据部分,然后将数据部分传送给所述数据加密模块。
进一步,所述密钥模块由随机数生成器模块、密钥分发模块及SM2算法模块组成。所述随机数生成器模块随机生成128bit的数据作为加密密钥;所述密钥分发模块负责将密钥传递给所述数据加密模块与所述SM2算法模块;所述SM2算法模块用接收方的公钥加密随机生成的密钥。
进一步,所述数据加密模块包含SM4算法模块与SHA256算法模块。所述SM4算法模块利用随机生成的密钥加密所述Profibus-DP协议处理模块传送来的数据,生成密文,以此来保证数据的机密性;所述SHA256算法模块对生成的密文进行哈希运算,生成密文的哈希值,以此来保证数据的完整性。
与现有技术相比,本发明的有益效果是:
(1)本发明内部通过硬件加密的方法实现了由SM4算法、SM2算法及SHA256算法组成的混合数据加密方案,富有创新性的同时兼顾了硬件加密安全性高、加密速度快的优势,可以满足工业现场对数据加密传输过程的实时性与安全性的要求。
(2)本发明的随机数生成器模块配合密钥分发模块,可以实现加密密钥的动态、随机生成,相比于一般的硬件加密将密钥固定保存在内存中的做法提高了灵活性与安全性。
附图说明
在附图中:
图1是本发明的硬件结构示意图;
图2是本发明的Profibus-DP协议处理模块解析Profibus-DP报文的流程图;
图3是本发明的数据加密模块加密数据明文、生成密文哈希值的流程图;
图4是本发明的FPGA模块内部各子模块协同工作,完成密钥生成与加密、密钥分发、数据加密传输的流程图。
其中:1、FPGA模块;2、复位电路模块;3、电源电路模块;4、JTAG模块;5、RS485接口电路模块;6、UART接口电路模块;7、5G模块;8、FLASH;9、EEPROM。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明,应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
图1是本发明的硬件结构示意图,主要包括以下模块:FPGA模块1、复位电路模块2、电源电路模块3、JTAG模块4、RS485接口电路模块5、UART接口电路模块6、5G模块7以及外部存储器模块(FLASH 8与EEPROM 9)。
所述复位电路模块2负责将数据加密装置恢复到初始状态;所述电源电路模块3负责提供所述FPGA模块1内各种逻辑电路正常运行及I/O引脚正常工作所需的电压;所述JTAG模块4是下载配置电路,主要用于程序的下载调试;所述RS485接口电路模块5用于连接Profibus-DP现场总线,接收来自Profibus-DP总线的数据报文;所述的UART接口电路模块6负责连接所述FPGA模块1与所述5G模块7,所述5G模块7可以匹配中国5G网络;所述外部存储器模块由FLASH 8与EEPROM 9组成,负责存储系统配置文件和系统程序。上述模块均与所述FPGA模块进行电气连接,配合所述FPGA模块实现Profibus-DP总线向5G网络加密传输工业数据。
所述FPGA模块内部包含以下子模块:Profibus-DP协议处理模块、密钥模块以及数据加密模块。所述Profibus-DP协议处理模块接收来自Profibus-DP总线的数据报文,将报文解析后得到的数据传送给数据加密模块。
所述密钥模块由随机数生成器模块、密钥分发模块及SM2算法模块构成。所述随机数生成器模块负责生成密钥,随机生成128bit的数据作为数据加密模块的密钥;所述密钥分发模块负责暂时保存随机生成的密钥,并向所述数据加密模块与所述SM2算法模块传递密钥;所述SM2算法模块负责加密密钥,利用接收方公钥加密随机生成的密钥,保证密钥的安全性。
所述数据加密模块包括SM4算法模块和SHA256算法模块。所述SM4算法模块利用所述密钥分发模块传递的密钥对所述Profibus-DP协议处理模块输出的数据进行加密;所述SHA256算法模块接收所述SM4算法模块输出的密文,对密文进行哈希运算后输出哈希值。所述FPGA模块最终将加密后的密钥、密文及密文哈希值合成后,通过5G网络发送给接收方。
图2是本发明的Profibus-DP协议处理模块解析Profibus-DP报文的流程图。
表1是Profibus-DP报文各个字段的符号及含义,本领域技术人员应当理解的是表1仅仅是用于说明Profibus-DP报文的结构,配合图2说明解析Profibus-DP报文的具体过程,并非用于限定本发明。
表1
报文字段 含义
SD SD=68H,报文的数据长度可变,SD=A2H,报文的数据长度固定
LE 标识DA、SA、FC、DATA这四个字段的总长度
LEr 内容与LE相同
DA 目的地址,1个字节
SA 源地址,1个字节
FC 功能码字符,用于说明报文性质、站点类型、站点状态
DATA Profibus-DP报文的数据字段(长度可变:1~246B)(长度固定:8B)
FCS 帧校验字符,用于校验数据的正确性
ED 终止字符,值为16H
本发明的Profibus-DP协议处理模块负责解析Profibus-DP报文,包含以下步骤:
S100,启动所述Profibus-DP协议处理模块,检测到不少于33bit的高电平后,进行SD字符检测(Profibus-DP总线在进行一次数据传输前,至少有33bit的高电平做空闲同步标识);
S101、S101',检测SD字符,根据SD字符的值判断Profibus-DP报文的类型。如果是数据长度可变的报文(SD=68H),则进入LE、LEr字符检测;如果是数据长度固定的报文(SD=A2H),则进入DA、SA、FC字符检测;
S102,检测数据长度固定的报文的DA、SA、FC字符,并取出这三个字符放入所述Profibus-DP协议处理模块的缓存寄存器;
S103,检测数据字段,将数据字段取出存入本模块的缓存寄存器中,等待判断数据是否正确传输;
S104,检测帧校验字符FCS,对缓存寄存器中的DA、SA、FC字符以及数据字段求算数和,若FCS的值等于该算数和,则数据传输无误,校验通过;
S105,将传输无误的数据字段送入数据输出寄存器,准备向所述数据加密模块传递数据字段;
S106,当检测到ED终止字符,此次数据传输过程结束,否则直接进入检测SD字符的步骤。
其中,在步骤S102之前还可能包括以下步骤:
S101',检测SD字符的值是否等于68H,若等于则进入LE、LEr字符检测,若不等于可能数据传输出错,结束进程;
S102',检测LE、LEr字符,LE、LEr字符的值等于DA、SA、FC及DU这4个数据域的长度,用于标识数据长度可变的报文帧的数据域长度,起统计作用;
S103',检测LE、LEr字符是否相等,若相等则数据传输无误,否则判定数据传输出现错误,结束进程;
S104',取出LE、LEr字符,方便后续字符处理;
S105',第二次SD字符检测,判断SD是否等于68H,若结果为真进入步骤S102。
图3是本发明的数据加密模块加密数据明文、生成密文哈希值的流程图,包含以下步骤:
S200,所述SM4算法模块读取所述Profibus-DP协议处理模块的数据输出寄存器,将其中的数据字段作为明文输入,所述SM4模块读取所述密钥分发模块的缓存寄存器,得到密钥;
S201,判断明文的总长度与128bit的大小关系,若明文长度刚好等于128bit,则直接进入加密步骤S202,若明文长度不等于128bit,需要做后续处理;
在步骤S202之前,若明文长度不等于128bit,还包括以下步骤:
S201',判断明文长度是否大于128bit,若结果为真,则进入分组处理步骤S202'否则进入步骤S203';
S202',将明文分组,使得前几组明文分组长度等于128bit,最后一组的明文长度不大于128bit,分组处理后进入步骤S204';
S203',将数据明文填充至128bit,填充完成后进入加密明文步骤S202;
S204',若最后一组明文长度等于128bit,则不再进行任何处理进入加密步骤S202,若最后一组明文长度小于128bit,则填充至128bit后进入步骤S202;
S202,所述SM4算法模块利用密钥加密明文,生成密文后进入步骤S203;
S203,所述SM4算法模块将生成的密文存入本模块的缓存寄存器中,等待后续处理;
S204,所述SHA256算法模块读取所述SM4算法模块生成的密文,并将密文长度对512取模,判断取模结果是否等于448,若结果为真进入步骤S205,否则进入步骤S205';
S205,给密文附加512bit的填充,填充是这样进行的:先补一个1,然后都补0;
S205',给密文附加填充,直到密文长度满足对512取模结果为448;
S206,用一个64bit的数据来表示原始密文(附加填充前的密文)的长度值,并将这个长度值附加在已经进行了填充操作的密文后面;
S207,所述SHA256算法模块对预处理(附加填充、附加长度值)后的密文进行哈希运算,求得哈希值;
S208,所述SHA256算法模块将密文的哈希值存入本模块的缓存寄存器中,等待后续处理。
图4是本发明的FPGA模块内部各子模块协同工作,完成密钥生成与加密、密钥分发、数据加密传输的流程图,包含以下步骤:
S300,初始化FPGA内部各个子模块:Profibus-DP协议处理模块、密钥模块以及数据加密模块;
S301,启动所述Profibus-DP协议处理模块;
S302,所述Profibus-DP协议处理模块接收、解析来自Profibus-DP总线的数据报文,将解析得到的数据字段送入本模块的数据输出寄存器中,等待向所述数据加密模块传递;
S303,启动所述密钥模块,所述密钥模块由随机数生成器模块、密钥分发模块以及SM2算法模块组成;
S304,所述随机数生成器模块生成128bit随机数,作为所述数据加密模块的密钥;
S305,所述密钥分发模块将随机生成的128bit密钥存入本模块的缓存寄存器中等待后续处理;
S306,所述SM2算法模块读取所述密钥分发模块的缓存寄存器中存储的密钥,利用接收方公钥对密钥进行SM2算法加密,并将加密后的密钥存入该模块的缓存寄存器等待后续处理;
S307,启动所述数据加密模块,该模块包括:SM4算法模块与SHA256算法模块;
S308,所述SM4算法模块读取所述Profibus-DP协议处理模块的数据输出寄存器,得到其中的数据字段后进行加密前的预处理;
S309,所述SM4算法模块读取所述密钥分发模块的缓存寄存器中存储的密钥;
S310,所述SM4算法模块利用密钥对预处理后的数据字段进行SM4算法加密,将生成的密文存入本模块的缓存寄存器中等待后续处理;
S311,所述SHA256算法模块读取所述SM4算法模块生成的密文,对密文进行哈希运算,并将密文的哈希值存入本模块的缓存寄存器中;
S312,所述FPGA模块读取所述SM2算法模块、所述SM4算法模块及所述SHA256算法模块的缓存寄存器,得到加密后的密钥、密文以及密文的哈希值;将三者送入输出寄存器合成后等待输出;
S313,所述FPGA模块将输出寄存器的值通过5G模块发送到5G网络上,完成了数据从Profibus-DP总线到5G网络的加密传输,保证了数据的机密性与完整性。

Claims (1)

1.一种基于FPGA的5G—Profibus-DP数据加密传输装置,其特征在于:该数据加密传输装置包括FPGA模块、复位电路模块、电源电路模块、JTAG模块、RS485接口电路模块、UART接口电路模块、5G模块以及外部存储器模块;
所述FPGA模块内部集成有Profibus-DP协议处理模块、密钥模块以及数据加密模块;所述Profibus-DP协议处理模块依据Profibus-DP的协议结构进行设计,接收、解析Profibus-DP报文得到数据部分,并将数据部分传递给所述数据加密模块;
所述密钥模块由随机数生成器模块、密钥分发模块以及SM2算法模块组成;所述随机数生成器模块生成128bit的随机数作为加密密钥,所述密钥分发模块将密钥传递给数据加密模块与所述SM2算法模块,所述SM2算法模块利用接收方的公钥加密所述随机数生成器模块生成的密钥;
所述数据加密模块包含SM4算法模块与SHA256算法模块;所述SM4算法模块利用所述密钥分发模块传递的密钥对所述Profibus-DP协议处理模块传送来的数据部分进行加密;所述SHA256算法模块对所述SM4算法模块生成的密文进行哈希运算,生成密文的哈希值;
FPGA模块内部各子模块协同工作,完成密钥生成与加密、密钥分发、数据加密传输,包含以下步骤:
S300, 初始化FPGA内部各个子模块:Profibus-DP协议处理模块、密钥模块以及数据加密模块;
S301,启动所述Profibus-DP协议处理模块;
S302,所述Profibus-DP协议处理模块接收、解析来自Profibus-DP总线的数据报文,将解析得到的数据字段送入本模块的数据输出寄存器中,等待向所述数据加密模块传递;
S303,启动所述密钥模块;
S304,所述随机数生成器模块生成128bit随机数,作为数据加密模块的密钥;
S305,所述密钥分发模块将随机生成的128bit密钥存入本模块的缓存寄存器中等待后续处理;
S306,所述SM2算法模块读取密钥分发模块的缓存寄存器中存储的密钥,利用接收方公钥对密钥进行SM2算法加密,并将加密后的密钥存入该模块的缓存寄存器等待后续处理;
S307,启动所述数据加密模块;
S308, SM4算法模块读取Profibus-DP协议处理模块的数据输出寄存器,得到其中的数据字段后进行加密前的预处理;
S309,所述SM4算法模块读取密钥分发模块的缓存寄存器中存储的密钥;
S310,所述SM4算法模块利用密钥对预处理后的数据字段进行SM4算法加密,将生成的密文存入本模块的缓存寄存器中等待后续处理;
S311,所述SHA256算法模块读取SM4算法模块生成的密文,对密文进行哈希运算,并将密文的哈希值存入本模块的缓存寄存器中;
S312,所述FPGA模块读取SM2算法模块、SM4算法模块及SHA256算法模块的缓存寄存器,得到加密后的密钥、密文以及密文的哈希值;将三者送入输出寄存器合成后等待输出;
S313,所述FPGA模块将输出寄存器的值通过5G模块发送到5G网络上,完成了数据从Profibus-DP总线到5G网络的加密传输,保证了数据的机密性与完整性;
S302步骤中,Profibus-DP协议处理模块解析Profibus-DP报文步骤如下:
S100,启动所述Profibus-DP协议处理模块,检测到不少于33bit的高电平后,进行SD字符检测;
S101,检测SD字符,根据SD字符的值判断Profibus-DP报文的类型,如果是数据长度可变的报文,则进入LE、LEr字符检测;否则进入S101';
S102,检测数据长度固定的报文的DA、SA、FC字符,并取出这三个字符放入所述Profibus-DP协议处理模块的缓存寄存器;
S103,检测数据字段,将数据字段取出存入本模块的缓存寄存器中,等待判断数据是否正确传输;
S104,检测帧校验字符FCS,对缓存寄存器中的DA、SA、FC字符以及数据字段求算数和,若FCS的值等于该算数和,则数据传输无误,校验通过;
S105,将传输无误的数据字段送入数据输出寄存器,准备向所述数据加密模块传递数据字段;
S106,当检测到ED终止字符,此次数据传输过程结束,否则直接进入检测SD字符的步骤;
S101',检测SD字符的值是否等于68H,若等于则进入LE、LEr字符检测,若不等于,结束进程;
S102',检测LE、LEr字符,LE、LEr字符的值等于DA、SA、FC及DU这4个数据域的长度,用于标识数据长度可变的报文帧的数据域长度,起统计作用;
S103',检测LE、LEr字符是否相等,若相等则数据传输无误,否则判定数据传输出现错误,结束进程;
S104',取出LE、LEr字符,方便后续字符处理;
S105',第二次SD字符检测,判断SD是否等于68H,若结果为真进入步骤S102;
S307数据加密模块加密数据明文、生成密文哈希值的步骤如下:
S200,所述SM4算法模块读取所述Profibus-DP协议处理模块的数据输出寄存器,将其中的数据字段作为明文输入,所述SM4模块读取所述密钥分发模块的缓存寄存器,得到密钥;
S201,判断明文的总长度与128bit的大小关系,若明文长度刚好等于128bit,则直接进入加密步骤S202,若明文长度不等于128bit,则进入S201':
S201',判断明文长度是否大于128bit,若结果为真,则进入分组处理步骤S202'否则进入步骤S203';
S202',将明文分组,使得前几组明文分组长度等于128bit,最后一组的明文长度不大于128bit,分组处理后进入步骤S204';
S203',将数据明文填充至128bit,填充完成后进入加密明文步骤S202;
S204',若最后一组明文长度等于128bit,则不再进行任何处理进入加密步骤S202,若最后一组明文长度小于128bit,则填充至128bit后进入步骤S202;
S202,所述SM4算法模块利用密钥加密明文,生成密文后进入步骤S203;
S203,所述SM4算法模块将生成的密文存入本模块的缓存寄存器中,等待后续处理;
S204,所述SHA256算法模块读取所述SM4算法模块生成的密文,并将密文长度对512取模,判断取模结果是否等于448,若结果为真进入步骤S205,否则进入步骤S205';
S205,给密文附加512bit的填充,填充是这样进行的:先补一个1,然后都补0;
S205',给密文附加填充,直到密文长度满足对512取模结果为448;
S206,用一个64bit的数据来表示原始密文的长度值,并将这个长度值附加在已经进行了填充操作的密文后面;
S207,所述SHA256算法模块对预处理后的密文进行哈希运算,求得哈希值;
S208,所述SHA256算法模块将密文的哈希值存入本模块的缓存寄存器中,等待后续处理。
CN202010809173.3A 2020-08-12 2020-08-12 一种基于FPGA的5G—Profibus-DP数据加密传输装置 Active CN111901363B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010809173.3A CN111901363B (zh) 2020-08-12 2020-08-12 一种基于FPGA的5G—Profibus-DP数据加密传输装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010809173.3A CN111901363B (zh) 2020-08-12 2020-08-12 一种基于FPGA的5G—Profibus-DP数据加密传输装置

Publications (2)

Publication Number Publication Date
CN111901363A CN111901363A (zh) 2020-11-06
CN111901363B true CN111901363B (zh) 2022-05-17

Family

ID=73229550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010809173.3A Active CN111901363B (zh) 2020-08-12 2020-08-12 一种基于FPGA的5G—Profibus-DP数据加密传输装置

Country Status (1)

Country Link
CN (1) CN111901363B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977112A (zh) * 2010-11-04 2011-02-16 厦门大学 一种基于神经网络混沌吸引子的公钥密码加密和解密方法
CN102546157A (zh) * 2011-12-14 2012-07-04 北京航空航天大学 一种抵抗能量分析的随机混合加密系统及其实现方法
CN105550605A (zh) * 2015-12-16 2016-05-04 北京华虹集成电路设计有限责任公司 一种加/解密引擎及其实现方法
CN106130721A (zh) * 2016-08-14 2016-11-16 北京数盾信息科技有限公司 一种高速网络存贮加密机
CN107124358A (zh) * 2017-07-11 2017-09-01 吉林大学 一种基于fpga的4g‑profibus嵌入式系统网关设备
CN107612679A (zh) * 2017-09-05 2018-01-19 北京天芯微鸿科技有限公司 一种基于国密算法的安全以太网桥加扰终端
CN111083046A (zh) * 2019-12-12 2020-04-28 吉林大学 一种面向工业现场的5G—Profibus-DP网关

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112018073991A2 (pt) * 2016-08-09 2019-02-26 Huawei Technologies Co., Ltd. sistema em chip e dispositivo de processamento
CN107147488A (zh) * 2017-03-24 2017-09-08 广东工业大学 一种基于sm2加解密算法的签名验签系统和方法
CN108600277A (zh) * 2018-07-04 2018-09-28 吉林大学 一种基于FPGA的车载FlexRay数据加密传输装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977112A (zh) * 2010-11-04 2011-02-16 厦门大学 一种基于神经网络混沌吸引子的公钥密码加密和解密方法
CN102546157A (zh) * 2011-12-14 2012-07-04 北京航空航天大学 一种抵抗能量分析的随机混合加密系统及其实现方法
CN105550605A (zh) * 2015-12-16 2016-05-04 北京华虹集成电路设计有限责任公司 一种加/解密引擎及其实现方法
CN106130721A (zh) * 2016-08-14 2016-11-16 北京数盾信息科技有限公司 一种高速网络存贮加密机
CN107124358A (zh) * 2017-07-11 2017-09-01 吉林大学 一种基于fpga的4g‑profibus嵌入式系统网关设备
CN107612679A (zh) * 2017-09-05 2018-01-19 北京天芯微鸿科技有限公司 一种基于国密算法的安全以太网桥加扰终端
CN111083046A (zh) * 2019-12-12 2020-04-28 吉林大学 一种面向工业现场的5G—Profibus-DP网关

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于FPGA的4G与PROFIBUS嵌入式网关研究与实现;李晓坤;《中国优秀硕士学位论文全文数据库 信息科技辑》;20171215(第15期);第37-47页 *

Also Published As

Publication number Publication date
CN111901363A (zh) 2020-11-06

Similar Documents

Publication Publication Date Title
CN103888444B (zh) 一种配电安全认证装置及其方法
Majdalawieh et al. DNPSec: Distributed network protocol version 3 (DNP3) security framework
CN111131278B (zh) 数据处理方法及装置、计算机存储介质、电子设备
CN109039591B (zh) 基于fpga的物联网络信息加密系统的实现方法
CN103746962B (zh) 一种goose电力实时报文加解密方法
CN109194491B (zh) 一种密码评测试验系统及密码评测试验方法
CN113194097B (zh) 一种安全网关的数据处理方法、装置及安全网关
CN107888381A (zh) 一种密钥导入的实现方法、装置及系统
CN103888292A (zh) 一种用于配电终端的运维工具及运维方法
CN105227298B (zh) 基于改进型gcm的智能变电站报文安全传输实现方法
Al-Dalky et al. A Modbus traffic generator for evaluating the security of SCADA systems
CN109918211A (zh) 一种自动填写验证码的方法、装置
CN112995208A (zh) 一种智能锁的故障预警测试方法,系统及存储介质
Hong et al. Implementation of secure sampled value (SeSV) messages in substation automation system
CN111800277A (zh) 一种二进制文件穿透反向隔离装置的序列化方法
CN106203188B (zh) 一种基于双cpu加mac的单向数据传输系统及其方法
CN111901363B (zh) 一种基于FPGA的5G—Profibus-DP数据加密传输装置
CN111294359B (zh) 压力测试方法、装置、计算机设备和存储介质
CN113259121A (zh) 一种电容器组监测数据安全传输方法、装置及设备
Jolfaei et al. A lightweight integrity protection scheme for fast communications in smart grid
CN109104401B (zh) 安全的基于实时的数据传输
CN105721139B (zh) 一种适用于有限io资源的fpga的aes加解密方法及电路
CN112910646B (zh) 一种服务器密码机的数据处理方法、装置及服务器密码机
Zhou et al. Design of the embedded gateway for 4G and PROFIBUS-DP based on FPGA
Rasheed et al. Using authenticated encryption for securing controller area networks in autonomous mobile platforms

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