CN109274643A - 一种基于libevent架构的新能源厂站发电单元终端接入管理系统 - Google Patents

一种基于libevent架构的新能源厂站发电单元终端接入管理系统 Download PDF

Info

Publication number
CN109274643A
CN109274643A CN201810924809.1A CN201810924809A CN109274643A CN 109274643 A CN109274643 A CN 109274643A CN 201810924809 A CN201810924809 A CN 201810924809A CN 109274643 A CN109274643 A CN 109274643A
Authority
CN
China
Prior art keywords
terminal
module
management system
libevent
access
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.)
Pending
Application number
CN201810924809.1A
Other languages
English (en)
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.)
State Grid Corp of China SGCC
North China Electric Power University
State Grid Gansu Electric Power Co Ltd
Electric Power Research Institute of State Grid Gansu Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
North China Electric Power University
State Grid Gansu Electric Power Co Ltd
Electric Power Research Institute of State Grid Gansu Electric Power 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 State Grid Corp of China SGCC, North China Electric Power University, State Grid Gansu Electric Power Co Ltd, Electric Power Research Institute of State Grid Gansu Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201810924809.1A priority Critical patent/CN109274643A/zh
Publication of CN109274643A publication Critical patent/CN109274643A/zh
Pending legal-status Critical Current

Links

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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • 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/0435Network 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 symmetric encryption, i.e. same key used for encryption and decryption
    • 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
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • 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/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种基于libevent架构的新能源厂站发电单元终端安全接入管理系统,通过Libevent网络和线程池结合的方法实现;包括主模块、密钥协商模块、密文通信模块、异常处理模块和管理系统接口模块。本发明基于libevent架构的新能源厂站发电单元终端安全接入管理系统从终端与安全接入系统的安全通信通道设计,通过实现终端安全接入系统的主模块、密钥协商模块、密文通信模块、异常处理模块和管理系统接口模块保证了终端与接入系统之间通信通道的安全性和传输过程中数据的不可篡改性以及完整性;通过libevent+线程池技术,实现终端的高并发接入,保证数据传输的低时延性,实时上报自身系统和终端的有关信息并处理管理系统下发的指令,实现系统的智能化管理。

Description

一种基于libevent架构的新能源厂站发电单元终端接入管理 系统
技术领域
本发明涉及一种基于libevent架构的新能源厂站发电单元终端安全接入管理系统,属于新能源厂站发电单元高性能网络开发领域。
背景技术
在一个国家的发展中,电力企业承担着重要的责任,各个行业的发展都离不开电力的支持,电力的安全关系到整个国家的安全,因而电力企业需要承担起更多的责任,要实现电力供应的可持续发展,为国家和人民提供更加安全的电力保障。因此,电力企业信息系统的安全要求比普通企业高的多。目前,电力企业内部已经通过远程接入实现了各业务终端、分支机构、移动人员和总部的连通,配电自动化、供电电压采集、安全生产、营销、财务、协同办公等多种业务应用统一在电力企业内部平台上运行,各种配电自动化终端、采集类终端、无线表计等设备和电力信息内网的数据交换越来越频繁,而且电力企业的对外服务也已经实现了与客户和合作伙伴、供应商之间的信息交流和共享。为了保证这种频繁多向互动的安全以及实现智能化管理这些业务终端,需要进一步提升终端、传输通道、接入层、应用层的安全防护等级,因此建立一个有机统一的安全接入管理系统的需求十分紧迫。
发明内容
本发明申请针对新能源厂站接入安全问题,开发了一种基于libevent架构的新能源厂站发电单元终端安全接入管理系统,保证了终端接入的安全性、可靠性和高并发要求。
为解决上述技术问题,本发明所采用的技术方案如下:
一种基于libevent架构的新能源厂站发电单元终端安全接入管理系统,通过libevent网络和线程池结合的方法实现。
安全接入系统作为电力终端安全接入管理系统的核心,对电力终端的接入起着关键性的作用。面对大规模终端同时接入时,需要保证每个终端业务能够及时完成;负责电力终端和电力内网数据的交换;负责接入终端的身份认证和安全通信通道的建立。通过安全通信协议对终端和内网业务系统之间的数据进行加解密,防止数据在链路上被破坏、截获以及恶意更改等攻击,保证接入终端和内网应用系统的安全性。
在终端接入至内网业务系统的过程中,安全接入网关首先判断终端身份,对终端和业务系统之间的通信数据进行加解密、解析过滤以及审查,将自身运行状态和终端状态汇总至后台管理模块,并针对各类特定状态进行报警或通告。同时为了满足接入终端的快速响应和数据的及时处理,需要在安全接入系统上实现一套高并发网络框架,选择libevent+线程池的技术来实现,如图1所示。
接入管理系统采用J2EE标准和SOA技术进行架构设计,采用构件/架构技术进行系统开发。系统的实现基于B/S的应用模式,采用简洁可靠的权限管理机制,可确保系统连续、安全、稳定运行。接入管理系统可提供接入系统设备、接入站点服务和接入终端基础信息的存储、展示和上报,以及终端身份安全检查等功能。
接入管理系统可对接入系统设备、接入站点服务和接入终端基础信息的存储、展示和上报,以及终端身份安全检查等功能。接入管理系统通过读取接入系统数据库内容通过网页形式展现出来并上传到内网的信息系统,并可以通过网页对安全接入系统的相关站点服务进行配置并通过socket下发到安全接入系统。
接入管理系统的实现主要采用C/S和B/S架构相结合的方式。其中B/S架构采用J2EE标准进行设计,采用构件/架构技术进行系统开发。系统主体功能的实现基于B/S模式,采用简洁可靠的权限管理机制和数据验证机制,可确保系统持续、安全、稳定运行。
上述基于libevent架构的新能源厂站发电单元终端安全接入管理系统,包括主模块、密钥协商模块、密文通信模块、异常处理模块和管理系统接口模块;主模块,即主线程的处理;密钥协商模块是建立安全通信通道的基础,只有完成了密钥协商的终端才允许建立安全信道;密文通信模块保证了数据在传输过程的可逆性和数据完整性;异常处理模块负责正常终端异常接入时的处理工作;管理系统接口模块负责将终端和接入系统组件的统计数据上报至管理系统,并处理管理系统下发的一些控制指令。
上述主模块的实现流程如下:
A、接入系统在主模块里首先通过TCP协议传统的bind和listen函数建立监听端口;
B、调用libevent API得到主线程的event_base结构体,将event_base结构体和监听的端口进行绑定得到主线程事件,主线程调用event_loop函数进行循环监听,当有事件发生时,调用主线程的回调函数进行处理即可;同时在主线程里需要创建线程池,线程池里线程的数量需要根据CPU的数目决定,在CPU*2+1个线程运行下,CPU的有效利用率会达到最高,在Linux下使用sysconf(_SC_NPROCESSORS_CONF)获取CPU的数量,并使用pthread_create函数循环建立CPU*2个工作线程,并为每个线程分配一个event_base;
C、当有终端申请连接时,从线程池为每个终端分配一个线程和一个session完成密钥协商和具体的业务工作。
安全通信通道是保证终端与内网业务系统之间数据正常传输的重要保证,通道的建立时需要TCP双方进行相应的密钥协商过程,密钥协商模块的实现过程如下:本申请利用基于商密算法的密钥协商协议,当TCP连接的发起者得到TCP连接已完成的通知时,便需要主动发起密钥协商过程,安全接入系统进行响应,双方进行三次协商过程后,完成整个的密钥协商过程,只有完成了密钥协商过程的终端,接入系统才允许其进行下一步操作,对于不满足密钥协商规范或未完成密钥协商的终端,接入系统将通知管理系统。
密钥协商的本质过程是双方按照制定好的通信协议进行密钥的交换,需要设计好双方交互的一些通信细节。密钥协商时,交换的是双方随机生成的随机数,并且这个随机数是和最终的对称密钥相关的,所以这一过程就需要确保通信的安全和可靠。包括如下三步:第一步、双方需要使用SM2算法和对方的公钥对自己的随机数进行签名,签名具有不可抵赖性;第二步、当对方收到签名进行验签时,就可以对对方进行身份认证;第三步、对协商结果进行确认,这一步也是很有必要的,缺少这一步,有可能导致协商未完成就开始发送密文数据了。
上述密钥协商模块的实现过程如下:
当安全接入系统和终端完成密钥协商的过程后,终端开始传输加密报文,安全接入系统收到报文后,首先使用密钥协商过程中生成的对称密钥DK和密文报文中的IV向量对密文数据进行解密,解密完成后需要根据填充规则去掉解密后的数据里面的填充位,随之发送给内网业务系统;当安全接入系统收到内网业务系统返回的控制指令或报文响应时,首先需要将明文报文填充成满足加密格式要求的报文并利用DK值和随机生成的IV向量对填充后的报文进行加密,将加密报文发送给对应的终端。由于使用SM1算法时,除了对称密钥DK外,还需要一个初始化向量IV参与运算,解密报文时,需要将报文中的第4到第20字节的IV提取出来。当加密内网业务的数据时,将安全接入系统参与SM1加密时用到的IV向量填充到密文报文中去。
由于SM1算法的加解密只能处理16字节整数倍的数据,所以加密内网应用数据之前,需要对其进行填充,将其的长度填充为16字节的整数倍。填充方法为:对不满足长度要求的报文,在其数据末尾先填充一个标志位0x80,若仍不满足长度要求,在末尾继续添加0x00,直到其长度满足16的倍数。如果原始报文的长度已经是16的倍数,则在报文后面填充一个0x80和15个0x00,这样做可以保证报文填充的一致性,方便终端解密。同样,在解密完终端发送给内网业务的数据之后,要将填充过的0x80和0x00去掉,然后才能发送给内网应用。
上述异常处理模块的实现过程如下:当终端和安全接入系统、安全接入系统和内网应用系统之间的连接出现异常的时候,安全接入系统需要将对应的错误码发送给对应的终端并关闭两端的连接,终端收到错误码后可根据自身的设计逻辑判采取对应的措施。
上述管理系统接口模块的实现过程为:安全接入系统主要是通过数据库和socket与管理系统进行交互。安全接入系统将设备的自身信息、终端信息和接入信息等信息类数据存放在自身的数据库里面,管理系统通过同步数据库的方式获取这些信息数据,当管理系统想要对安全接入系统和接入终端进行管控的时候,通过socket方式将命令发送到安全接入系统,安全接入系统完成相应的操作。
信息上报模块的实现:信息上报模块通过数据库将安全接入系统和接入管理系统连接起来,他们通过同步数据库完成数据的交互。当安全接入系统启动后,首先调用信息上报模块向数据库中写入网关的基本信息,并每5分钟统计一次网关流量并写入;当主模块监测到终端接入时,调用子线程的密钥协商模块记录终端信息并写入session结构体,同时通知信息上报模块通过调用MySql语句将信息写入数据库。终端信息主要包括终端ID、IP地址、证书ID、加密芯片ID以及流量信息等。
控制接口模块的实现:当管理系统通过数据分析得出某个终端存在安全隐患时,可以通过下发控制指令禁止该终端上线。当管理系统想要进行控制指令下发时,需要先与安全接入系统建立TCP连接并发送身份信息,安全接入系统进行身份验证并回复验证结果,如验证成功,则管理系统可发起后续数据请求,如验证失败,安全接入系统主动关闭连接即可。管理系统将终端ID以JSON数据报格式通过socket下发给安全接入系统的控制接口,控制接口通过查询session表,找到对应的终端关闭连接并将其加入黑名单。控制指令主要终端黑名单、终端白名单、业务启动、停止、修改等。
上述基于libevent架构的新能源厂站安全接入管理系统能够及时有效的处理高并发的网络连接,能够保证数据传输的稳定性,能够很好的满足电力企业对终端接入业务的需求。
本申请从网络框架和通信安全防护两个方面着手,研究并解决了终端安全接入过程的高并发接入和信息安全等问题。通过实现安全接入系统的主模块、密钥协商模块、密文通信模块、异常处理模块和管理系统接口模块,得到了基于libevent架构的终端安全接入管理系统。通过测试得知,当系统面对大并发量的终端接入时,安全稳定低时延。
安全接入管理系统的主要目的是用于解决目前电力接入终端接入过程中存在的问题,它能保证电力终端能够安全的访问电力内网,并且实现电力终端的智能化管理。
本发明未提及的技术均参照现有技术。
本发明基于libevent架构的新能源厂站发电单元终端安全接入管理系统从终端与安全接入系统的安全通信通道设计,通过实现终端安全接入系统的主模块、密钥协商模块、密文通信模块、异常处理模块和管理系统接口模块保证了终端与接入系统之间通信通道的安全性和传输过程中数据的不可篡改性以及完整性;通过libevent+线程池技术,实现终端的高并发接入,保证数据传输的低时延性,实时上报自身系统和终端的有关信息并处理管理系统下发的指令,实现系统的智能化管理;针对基于B/S模式的终端管理系统的设计,管理系统将终端和安全接入系统已可视化的网页形式展示出来,极大的方便了用户的操作,实现对终端和接入系统的集中监管。
附图说明
图1是本发明新能源厂站安全接入管理系统体系结构图;
图2是本发明新能源厂站安全接入管理系统网络框架设计图;
图3是本发明新能源厂站安全接入管理业务逻辑图;
图4是本发明新能源厂站安全接入管理系统运行界面;
具体实施方式
为了更好地理解本发明,下面结合实施例进一步阐明本发明的内容,但本发明的内容不仅仅局限于下面的实施例。
基于libevent架构的新能源厂站终端安全接入管理系统的实现包括主模块、密钥协商模块、密文通信模块、异常处理模块和管理系统接口模块的实现。
主模块的实现主要流程如下:
1.接入系统在主模块里首先通过TCP协议传统的bind和listen函数建立监听端口。
2.调用libevent API得到主线程的event_base结构体,将这个base和监听的端口进行绑定得到主线程事件,主线程调用event_loop函数进行循环监听,当有事件发生时,调用主线程的回调函数进行处理即可;同时在主线程里需要创建线程池,线程池里线程的数量需要根据CPU的数目决定,在CPU*2+1个线程运行下,CPU的有效利用率会达到最高。在Linux下使用sysconf(_SC_NPROCESSORS_CONF)获取CPU的数量,并使用pthread_create函数循环建立CPU*2个工作线程,并为每个线程分配一个event_base。
3.当有终端申请连接时,从线程池为每个终端分配一个线程和一个session完成密钥协商和具体的业务工作。
密钥协商模块的实现具体过程如下:
安全通信通道是保证终端与内网业务系统之间数据正常传输的重要保证,通道的建立时需要TCP双方进行相应的密钥协商过程,这里我们定义了一套基于商密算法的密钥协商协议。当TCP连接的发起者得到TCP连接已完成的通知时,便需要主动发起密钥协商过程,安全接入系统进行响应,双方进行三次协商过程后,完成整个的密钥协商过程。只有完成了密钥协商过程的终端,接入系统才允许其进行下一步操作,对于不满足密钥协商规范或未完成密钥协商的终端,接入系统将通知管理系统。
密钥协商的本质过程是双方按照制定好的通信协议进行密钥的交换,需要设计好双方交互的一些通信细节。在这里,我们交换的是双方随机生成的随机数,并且这个随机数是和最终的对称密钥相关的,所以这一过程就需要确保通信的安全和可靠。首先双方需要使用SM2算法和对方的公钥对自己的随机数进行签名,签名具有不可抵赖性。当对方收到签名进行验签时,就可以对对方进行身份认证。密钥协商的第三步是对协商结果进行确认,这一步也是很有必要的,缺少这一步,有可能导致协商未完成就开始发送密文数据了。
1.第一个密钥协商报文的处理
当安全接入系统收到报文时,首先解析报文的第一个字节,判断是密钥协商报文或是密文数据,再解析子类型,判断是第一次协商报文还是第三次协商报文。当判断出是第一次密钥协商报文时,安全接入系统读取报文中的证书,从证书中取出终端的公钥,然后读取R1的密文并用自身的私钥进行解密得到R1值,最后对报文的签名部分调用验签函数来判断终端身份的合法性。如果在上述过程中出现任何一个错误,例如无法获取公钥、无法解密等,都会向终端发送一个带有错误码的报文,并且关闭这个连接。
2.第二个密钥协商报文的处理
安全接入系统完成第一个协商报文的处理后,产生一个随机R2,并且与R1做计算得到DK值并存在在session结构体里,然后用对端公钥对R2做加密运算,并对加密的报文做杂凑运算,最后将报文头、R2的密文的签名结果发送给对应的终端。
3.第三个密钥协商报文的处理
安全接入系统根据类型和子类型的判断得到第三个密钥协商报文后,对第二步中保存的DK值做杂凑运算并对比报文中的杂凑结果,如果对比失败,则发送一个带有错误码的报文给对应的终端,如果对比成功,则密钥协商过程成功,安全接入系统开始连接内网业务系统。
密钥协商模块的实现具体过程如下:
当安全接入系统和终端完成密钥协商的过程后,终端开始传输加密报文,安全接入系统收到报文后,首先使用密钥协商过程中生成的对称密钥DK和密文报文中的IV向量对密文数据进行解密,解密完成后需要根据填充规则去掉解密后的数据里面的填充位,随之发送给内网业务系统;当安全接入系统收到内网业务系统返回的控制指令或报文响应时,首先需要将明文报文填充成满足加密格式要求的报文并利用DK值和随机生成的IV向量对填充后的报文进行加密,将加密报文发送给对应的终端。由于使用SM1算法时,除了对称密钥DK外,还需要一个初始化向量IV参与运算,解密报文时,需要将报文中的第4到第20字节的IV提取出来。当加密内网业务的数据时,将安全接入系统参与SM1加密时用到的IV向量填充到密文报文中去。
由于SM1算法的加解密只能处理16字节整数倍的数据,所以加密内网应用数据之前,需要对其进行填充,将其的长度填充为16字节的整数倍。填充方法为:对不满足长度要求的报文,在其数据末尾先填充一个标志位0x80,若仍不满足长度要求,在末尾继续添加0x00,直到其长度满足16的倍数。如果原始报文的长度已经是16的倍数,则在报文后面填充一个0x80和15个0x00,这样做可以保证报文填充的一致性,方便终端解密。同样,在解密完终端发送给内网业务的数据之后,要将填充过的0x80和0x00去掉,然后才能发送给内网应用。
异常处理模块的实现:
当终端和安全接入系统、安全接入系统和内网应用系统之间的连接出现异常的时候,安全接入系统需要将对应的错误码发送给对应的终端并关闭两端的连接。终端收到错误码后可根据自身的设计逻辑判采取对应的措施。
管理系统接口模块的实现:
安全接入系统主要是通过数据库和socket与管理系统进行交互。安全接入系统将设备的自身信息、终端信息和接入信息等信息类数据存放在自身的数据库里面,管理系统通过同步数据库的方式获取这些信息数据。当管理系统想要对安全接入系统和接入终端进行管控的时候,通过socket方式将命令发送到安全接入系统,安全接入系统完成相应的操作。
1.信息上报模块的实现
信息上报模块通过数据库将安全接入系统和接入管理系统连接起来,他们通过同步数据库完成数据的交互。
当安全接入系统启动后,首先调用信息上报模块向数据库中写入网关的基本信息,并每5分钟统计一次网关流量并写入;当主模块监测到终端接入时,调用子线程的密钥协商模块记录终端信息并写入session结构体,同时通知信息上报模块通过调用MySql语句将信息写入数据库。终端信息主要包括终端ID、IP地址、证书ID、加密芯片ID以及流量信息等。
2.控制接口模块的实现
当管理系统通过数据分析得出某个终端存在安全隐患时,可以通过下发控制指令禁止该终端上线。
当管理系统想要进行控制指令下发时,需要先与安全接入系统建立TCP连接并发送身份信息,安全接入系统进行身份验证并回复验证结果,如验证成功,则管理系统可发起后续数据请求,如验证失败,安全接入系统主动关闭连接即可。管理系统将终端ID以JSON数据报格式通过socket下发给安全接入系统的控制接口,控制接口通过查询session表,找到对应的终端关闭连接并将其加入黑名单。控制指令主要终端黑名单、终端白名单、业务启动、停止、修改等。
上述基于libevent架构的新能源厂站安全接入管理系统能够及时有效的处理高并发的网络连接,能够保证数据传输的稳定性,能够很好的满足电力企业对终端接入业务的需求。

Claims (8)

1.一种基于libevent架构的新能源厂站发电单元终端安全接入管理系统,其特征在于:通过libevent网络和线程池结合的方法实现。
2.如权利要求1所述的基于libevent架构的新能源厂站发电单元终端安全接入管理系统,其特征在于:包括主模块、密钥协商模块、密文通信模块、异常处理模块和管理系统接口模块;主模块,即主线程的处理;密钥协商模块是建立安全通信通道的基础,只有完成了密钥协商的终端才允许建立安全信道;密文通信模块保证了数据在传输过程的可逆性和数据完整性;异常处理模块负责正常终端异常接入时的处理工作;管理系统接口模块负责将终端和接入系统组件的统计数据上报至管理系统,并处理管理系统下发的一些控制指令。
3.如权利要求2所述的基于libevent架构的新能源厂站发电单元终端安全接入管理系统,其特征在于:主模块的实现流程如下:
A、接入系统在主模块里首先通过TCP协议传统的bind和listen函数建立监听端口;
B、调用libeventAPI得到主线程的event_base结构体,将event_base结构体和监听的端口进行绑定得到主线程事件,主线程调用event_loop函数进行循环监听,当有事件发生时,调用主线程的回调函数进行处理即可;同时在主线程里需要创建线程池,线程池里线程的数量需要根据CPU的数目决定,在Linux下使用sysconf(_SC_NPROCESSORS_CONF)获取CPU的数量,并使用pthread_create函数循环建立CPU*2个工作线程,并为每个线程分配一个event_base;
C、当有终端申请连接时,从线程池为每个终端分配一个线程和一个session完成密钥协商和具体的业务工作。
4.如权利要求2或3所述的基于libevent架构的新能源厂站发电单元终端安全接入管理系统,其特征在于:密钥协商模块的实现过程如下:利用基于商密算法的密钥协商协议,当TCP连接的发起者得到TCP连接已完成的通知时,便需要主动发起密钥协商过程,安全接入系统进行响应,双方进行三次协商过程后,完成整个的密钥协商过程,只有完成了密钥协商过程的终端,接入系统才允许其进行下一步操作,对于不满足密钥协商规范或未完成密钥协商的终端,接入系统将通知管理系统。
5.如权利要求4所述的基于libevent架构的新能源厂站发电单元终端安全接入管理系统,其特征在于:密钥协商时,交换的是双方随机生成的随机数,包括如下三步:第一步、双方需要使用SM2算法和对方的公钥对自己的随机数进行签名,签名具有不可抵赖性;第二步、当对方收到签名进行验签时,就可以对对方进行身份认证;第三步、对协商结果进行确认。
6.如权利要求2或3所述的基于libevent架构的新能源厂站发电单元终端安全接入管理系统,其特征在于:密钥协商模块的实现过程如下:当安全接入系统和终端完成密钥协商的过程后,终端开始传输加密报文,安全接入系统收到报文后,首先使用密钥协商过程中生成的对称密钥DK和密文报文中的IV向量对密文数据进行解密,解密完成后需要根据填充规则去掉解密后的数据里面的填充位,随之发送给内网业务系统;当安全接入系统收到内网业务系统返回的控制指令或报文响应时,首先需要将明文报文填充成满足加密格式要求的报文并利用DK值和随机生成的IV向量对填充后的报文进行加密,将加密报文发送给对应的终端。由于使用SM1算法时,除了对称密钥DK外,还需要一个初始化向量IV参与运算,解密报文时,需要将报文中的第4到第20字节的IV提取出来。
7.如权利要求2或3所述的基于libevent架构的新能源厂站发电单元终端安全接入管理系统,其特征在于:异常处理模块的实现过程如下:当终端和安全接入系统、安全接入系统和内网应用系统之间的连接出现异常的时候,安全接入系统需要将对应的错误码发送给对应的终端并关闭两端的连接,终端收到错误码后可根据自身的设计逻辑判采取对应的措施。
8.如权利要求2或3所述的基于libevent架构的新能源厂站发电单元终端安全接入统,其特征在于:管理系统接口模块的实现过程如下:安全接入系统将信息类数据存放在自身的数据库里面,管理系统通过同步数据库的方式获取这些信息数据,当管理系统想要对安全接入系统和接入终端进行管控的时候,通过socket方式将命令发送到安全接入系统,安全接入系统完成相应的操作。
CN201810924809.1A 2018-08-14 2018-08-14 一种基于libevent架构的新能源厂站发电单元终端接入管理系统 Pending CN109274643A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810924809.1A CN109274643A (zh) 2018-08-14 2018-08-14 一种基于libevent架构的新能源厂站发电单元终端接入管理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810924809.1A CN109274643A (zh) 2018-08-14 2018-08-14 一种基于libevent架构的新能源厂站发电单元终端接入管理系统

Publications (1)

Publication Number Publication Date
CN109274643A true CN109274643A (zh) 2019-01-25

Family

ID=65153394

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810924809.1A Pending CN109274643A (zh) 2018-08-14 2018-08-14 一种基于libevent架构的新能源厂站发电单元终端接入管理系统

Country Status (1)

Country Link
CN (1) CN109274643A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110233735A (zh) * 2019-06-14 2019-09-13 全球能源互联网研究院有限公司 一种并网电站工控系统综合安全防护方法及系统
CN112383917A (zh) * 2020-10-21 2021-02-19 华北电力大学 一种基于商密算法的北斗安全通信方法和系统
CN113904969A (zh) * 2021-09-28 2022-01-07 青岛海尔科技有限公司 物联设备的性能检测方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101982955A (zh) * 2010-11-19 2011-03-02 深圳华大基因科技有限公司 高性能文件传输系统及方法
CN105404556A (zh) * 2015-10-22 2016-03-16 江苏省电力公司扬州供电公司 基于l-qt-p多线程事件触发机制的通信系统及方法
CN106973056A (zh) * 2017-03-30 2017-07-21 中国电力科学研究院 一种面向对象的安全芯片及其加密方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101982955A (zh) * 2010-11-19 2011-03-02 深圳华大基因科技有限公司 高性能文件传输系统及方法
CN105404556A (zh) * 2015-10-22 2016-03-16 江苏省电力公司扬州供电公司 基于l-qt-p多线程事件触发机制的通信系统及方法
CN106973056A (zh) * 2017-03-30 2017-07-21 中国电力科学研究院 一种面向对象的安全芯片及其加密方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
程瑞: ""基于libevent架构的终端安全接入管理系统的研究与实现"", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110233735A (zh) * 2019-06-14 2019-09-13 全球能源互联网研究院有限公司 一种并网电站工控系统综合安全防护方法及系统
CN110233735B (zh) * 2019-06-14 2024-04-16 全球能源互联网研究院有限公司 一种并网电站工控系统综合安全防护方法及系统
CN112383917A (zh) * 2020-10-21 2021-02-19 华北电力大学 一种基于商密算法的北斗安全通信方法和系统
CN113904969A (zh) * 2021-09-28 2022-01-07 青岛海尔科技有限公司 物联设备的性能检测方法
CN113904969B (zh) * 2021-09-28 2023-09-15 青岛海尔科技有限公司 物联设备的性能检测方法

Similar Documents

Publication Publication Date Title
CN110535653A (zh) 一种安全的配电终端及其通讯方法
CN101409619B (zh) 闪存卡及虚拟专用网密钥交换的实现方法
CN102742250B (zh) 基于传输层安全的密钥传递方法、智能抄表终端及服务器
CN111209334A (zh) 基于区块链的电力终端数据安全管理方法
CN105610837B (zh) 用于scada系统主站与从站间身份认证的方法及系统
CN109274643A (zh) 一种基于libevent架构的新能源厂站发电单元终端接入管理系统
CN105490839B (zh) 一种网站数据安全的告警方法及装置
CN108965215A (zh) 一种多融合联动响应的动态安全方法与系统
CN103856345B (zh) 服务器账号密码管理方法、系统及服务器
CN109756579B (zh) 一种基于区块链的物联网信息安全传输系统及传输方法
CN107197041A (zh) 一种安全云计算系统
CN109302404A (zh) 一种广域运维系统的远程维护操作认证方法
CN110300108A (zh) 一种配电自动化报文加密传输方法、系统、终端及存储介质
CN105245329A (zh) 一种基于量子通信的可信工业控制网络实现方法
CN105471901A (zh) 一种工业信息安全认证系统
CN109982150A (zh) 智能电视终端的信任链建立方法和智能电视终端
CN106506182B (zh) 一种配置ptn业务的方法及系统
CN104639328B (zh) 一种goose报文认证方法及系统
CN108650096A (zh) 一种工业现场总线控制系统
WO2023108396A1 (zh) 一种电网智能量测方法
CN113672972A (zh) 一种基于中台的重要资产安全监控方法
CN205354119U (zh) 一种知识产权交易平台
CN105430345A (zh) 一种针对综合视频培训平台远程监控的方法
CN109150850A (zh) 一种基于私有区块链的电力企业非对称密钥分发管理工具
CN109195139A (zh) M2M管理平台与eSIM卡的数据传输方法、装置、平台及介质

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190125