APP下载

基于专有网络的国产关重信息传输处理系统实现

2021-11-03袁铭王敬平马冬冬周方

电子技术与软件工程 2021年18期
关键词:调用报文加密

袁铭 王敬平 马冬冬 周方

(中国电子科技集团公司第三十二研究所 上海市 201808)

随着计算机、网络通讯、数字加密等信息技术不断发展和完善,信息的安全传输与处理已成为社会各领域研究的热点[1]。由于我国之前国产软硬件基础水平较为薄弱,当时所建立的传输系统大多基于Intel 处理器、Windows 操作系统等外国软硬件产品。近年来,随着我国国力的不断增强,以美国为代表的西方反华势力加大了对华技术限制的力度与范围,对高科技产品零部件等采取更严格的出口管制措施。因此,研究与开发一款基于国产化平台、完全自主可控、安全高效的新一代关重信息系统成为了当前的迫切需要[2]。

1 系统架构设计

1.1 系统网络架构

基于专有网络的国产关重信息传输处理系统采用2 级部署方式,节点分为中心节点和分区节点。中心节点与分区节点的区别在于,中心节点具有关重报文的集中存储转发服务功能,并支持关重报文查询与下载服务,因此相较于分区节点,中心节点还需要中心服务器。

图中基于专有网络的国产关重信息传输处理系统的硬件环境由5 款国产化设备组成,各设备名称及功能如表 1 所示:

表1:基于专有网络的国产关重信息传输处理系统硬件环境组成表

表1 中的中心服务器、传输终端、接入终端都是采用基于飞腾FT2000 新四核处理器和银河麒麟操作系统的国产终端平台。

基于专有网络的国产关重信息传输处理系统在软件方面由中心服务软件、终端报文处理软件两个业务软件以及国产WPS 办公软件、文件传输软件、国产达梦数据库软件、开源数据库SQLite 等辅助软件组成。

1.2 软件架构设计

1.2.1 中心服务软件架构

中心服务软件的总体架构如图1 所示,在逻辑上可分为服务接口层、业务逻辑层、支撑层和数据层。

图1:中心服务软件总体架构图

1.2.2 报文处理软件的架构

在逻辑上可分为展示层、业务逻辑层、支撑层和数据层。

展示层是基于跨平台C++图形用户界面应用程序开发框架Qt开发的,通过Qt 的GUI 模块绘制了程序的窗口主界面以及各种子界面,为软件使用者提供美观、易用的图形用户界面。

业务逻辑层从业务需求出发实现了关重报文的编辑、发送、接收、存储、删除等报文全生命周期管理功能,并从安全性和可维护性角度出发实现了用户管理、日志管理、配置管理、安全运维管理、数据备份与恢复等其他功能。

支撑层对各种外部资源调用接口进行适配和封装,为业务逻辑层的功能实现提供了有效的支持,其中数据库调用模块针对SQLite数据库访问接口进行了二次封装,实现了报文信息、用户信息、日志信息的增、删、改、查操作;WPS 办公软件调用模块针对金山WPS Office 办公软件进行适配,提供了报文展示、报文编辑、报文要素编辑、报文打印等接口;加密卡调用模块对PCIE 加密卡的调用接口进行封装,实现了报文的加解密、报文签名的生成与验证、报文HASH 值计算、MAC 计算等接口调用;报文传输软件调用模块和数据交换控制器调用模块,分别对报文传输软件和数据交换控制器进行协议适配,实现了报文在不同节点之间的加密数据安全传递以及报文在传输终端与接入终端之间的数据单向传递;WebService 服务调用模块针对中心服务软件提供的WebService 接口进行适配,用以访问中心服务软件的报文状态信息上报、证书查询、签名验证等服务。

数据层包括用户本地存储的报文和附件文件、WPS 报文模板文件、用户收发报文信息数据库、用户操作日志数据库、地址信息数据库等,为业务逻辑层和展示层提供数据支撑,以供其进行数据处理和数据展示。

2 软件实现

2.1 报文收发

2.1.1 报文发送

用户打开发报界面时,在界面上编辑报文正文和要素,并选取附件后,触发发送指令,调用传输加密接口将报文和附件加密到指定目录下。根据报文要素信息生成报文xml 文件,并且对报文文件和附件进行循环冗余校验(Cyclic Redundancy Check,CRC)计算[3],向文件传输软件发送消息。得到文件传输软件反馈的发送成功响应后,将报文信息记入数据库,完成发送过程。

2.1.2 报文来报处理流程

报文处理软件使用UDP通讯的方式与文件传输软件进行交互。当文件传输软件收到报文后,将报文存在指定位置,然后通过UDP将报文路径信息发送给报文处理软件。报文处理软件根据UDP 报文获取报文正文位置、附件位置、CRC 校验值等信息。然后报文处理软件根据上述信息执行报文正文和附件文件的CRC 计算与校验,并解密报文正文将标题、关键字等要素信息存入数据库。最后在用户界面以文字或声音方式提示用户收到新报文。

2.2 报文加解密

2.2.1 报文加密设计

中心服务软件的关重报文加密模块支持多线程操作,互斥地访问密码卡,“打开”函数中进行加锁操作,“关闭”函数进行解锁操作。当有加密需求时,先调用“打开”函数,再调用模块中的“加密接口”函数,加密完成后,调用“关闭函数”。

2.2.2 报文解密设计

中心服务软件的关重报文解密模块支持多线程操作,互斥地访问密码卡,“打开”函数中进行加锁操作,“关闭”函数进行解锁操作。当有解密需求时,先调用“打开”函数,再调用模块中的“解密接口”函数,解密完成后,调用“关闭函数”。

2.3 数据交换控制器单向导入导出

2.3.1 数据交换控制器单向导入

接入终端和传输终端上的报文处理软件通过数据交换控制器进行关重报文的单向导入。报文处理软件会首先建立单独线程与数据交换控制器服务建立连接,再通过约定的通信格式来获取交换控制器的状态,若是发送状态,则可以进行发送,其他状态则提示无法发送(需人工操作将控制器从接收状态或断开状态转换为发送状态);然后将报文和附件解密到虚拟盘,接着从虚拟盘中获取报文及附件,将报文和附件按照约定格式合并,最后调用数据交换控制器传输接口进行发送。

2.3.2 数据交换控制器单向导出

报文处理软件响应数据交换控制器的来报信息,按照约定格式将来报解析成正文及附件,存放到虚拟盘中,报文要素信息存入数据库,触发软件界面提示。

2.4 安全证书的上报、查询与验证

2.4.1 安全证书上报

报文处理软件在节点接入专网时,会将一个公钥文件上传至中心服务软件,该公钥文件(即安全证书)可供报文接收方下载,用以验证接收方所接收报文的发送者身份。

2.4.2 报文验证签名

报文处理软件在进行报文生成时,会在加密前使用秘钥为报文产生一串别人无法伪造的数字(即签名),并附加在报文文件结尾,用以作为对信息的发送者发送信息真实性的一个有效证明。接收端的报文处理软件在收到其他节点发来的关重报文后,使用该节点对应的安全证书与报文原文计算出摘要信息,与报文文件结尾的签名比较是否一致。若一致,则说明收到的信息是完整的,在传输过程中没有被篡改,否则说明信息被篡改过。

3 关键技术

3.1 报文综合认证技术

为保证关重报文在各个终端之间传输之后,最终收到的报文没有出现内容丢失或被恶意篡改,基于专有网络的国产关重信息传输处理系统综合采用了循环冗余校验(Cyclic Redundancy Check,CRC)技术与消息认证码(Message Authentication Codes,MAC)技术。报文XML 生成后,发报端根据报文内容和HmacMD5 算法,生成MAC 秘钥[4],并将MAC 秘钥附加在文件结尾,生成传输态报文文件。之后基于专有网络的国产关重信息传输处理系统软件使用循环冗余校验技术,根据传输态报文文件生成32位循环冗余校验码[5],然后将传输态报文文件与32位校验码一同交由传输软件进行传输。各中间终端或中心服务器收到传输态报文文件与32 位校验码后,都会对传输态报文文件进行完整性校验[6],一旦出现校验失败情况,则终止传输,并向上一终端反馈。最终收报终端在收到传输态报文文件与32 位校验码,并完成CRC 校验后,将传输态报文文件重新还原为报文XML 文件与MAC 秘钥。使用报文XML 文件和统一的MAC 算法,获得新的MAC 秘钥。比较两个MAC 秘钥是否一致,可判断报文文件是否一致。

3.2 嵌入式数据库SQLite安全加固技术

SQLite 作为一个开源的嵌入式数据库,具有系统开销小、检索效率高等特性。在基于专有网络的国产关重信息传输处理系统中SQLite 数据库用于存储终端的收发报记录。然而开源的SQLite数据库默认不提供用户登录限制,任何人都可以通过使用命令行工具或图形工具篡改数据库内容。为保证数据的安全性,需针对SQLite 进行了安全加固。我们使用SQLite 本身提供的sqlite3_key和sqlite3_rekey 的接口,实现了数据库文件的密码设置。

4 结束语

基于专有网络的国产关重信息传输处理系统实现了军队、党政部门或特种企业内部各部门、乃至各分区节点之间的关重信息安全、高效传递,提高了关重信息系统的信息化水平。平台采用全国产化软硬件,摆脱了对外国高科技产品的技术依赖,进一步增强了国产化信息系统的研发能力和自主可控水平。未来专有网络关重信息系统还将在增强信息安全水平、提高业务处理流程自动化等几个方面进一步完善,以满足我国在信息安全领域的新需求。

猜你喜欢

调用报文加密
基于J1939 协议多包报文的时序研究及应用
CTCS-2级报文数据管理需求分析和实现
核电项目物项调用管理的应用研究
浅析反驳类报文要点
一种基于熵的混沌加密小波变换水印算法
LabWindows/CVI下基于ActiveX技术的Excel调用
基于系统调用的恶意软件检测技术研究
ATS与列车通信报文分析
认证加密的研究进展
基于ECC加密的电子商务系统