内嵌SM2算法的内河船机排放数据加密通信装置设计

2023-10-29 02:05黎洪亮金华标庞启君赵钊
农业装备与车辆工程 2023年10期
关键词:岸基公钥加密

黎洪亮,金华标,庞启君,赵钊

(1.430063 湖北省 武汉市 武汉理工大学 船海与能源动力工程学院;2.430022 湖北省 武汉市 中国船级社武汉分社)

0 引言

随着国家对内河船机排放监管的力度加大,开展对内河船机排放的实时监测数据进行加密传输以保证排放数据真实性的研究,可为未来愈加严格的排放监管提供便利[1-2]。传统的船机排放监测系统将采集的排放数据通过无线网络发送至岸基平台,并未对数据传输采取相应的安全防护机制[3-4]。当船舶排放的重要数据资料被不法分子篡改,会造成排放监管失去严谨性,因此,进行船舶排放数据的加密传输具有较强的现实意义[5-7]。

在同等安全强度下对比如今广泛应用的RSA(RSA algorithm)算法和基于椭圆曲线密码学的ECC(Elliptic Curves Cryptography)算法的私钥长度发现,ECC 比RSA 私钥更短,使得其存储空间、传输带宽和功耗需求更低,更适合应用于低功耗的嵌入式设备[8]。为防止ECC 算法可能存在陷阱后门等安全隐患,国家密码管理局在ECC 算法的基础上借鉴其优点开发出了SM2 国密算法,此算法主要包括数字签名算法、密钥交换协议和公钥加密算法3 部分,并都以椭圆曲线标量乘为核心[9-12],具有更高的灵活性、安全性。

目前中国人民银行采用SM2 算法以增强金融IC 卡应用的安全性[8],我国研究人员已将SM2 密码体系应用于电网信息安全开发[13-14],在移动互联网也采用SM2 算法进行身份认证,保障数据传输安全[15]。基于上述背景,本文在传统船机排放监测系统的基础上采用内嵌SM2 国密算法的加密芯片对船舶排放数据加密,并结合控制器软硬件设计与4G 通讯技术,在利用SM2 数字签名算法认证了船端与岸基平台的双向身份后,进行数据加密传输。

1 总体方案设计

内河船机排放数据加密通信装置由主控MCU(STM32F407)、加密模块(集成LKT4305加密芯片)、无线通信模块、岸基平台4 部分组成,如图1 所示。

图1 总体方案设计Fig.1 Whole scheme design

船舶排放数据通过CAN 总线传输到主控MCU,MCU 与加密模块以SPI 方式通信,并调用其内部SM2 加密算法进行数据加密和数字签名认证[16-17],与通信模块以串口通信完成数据无线传输,在排放数据加密传输前,船端主控装置先与岸基平台通过4G 无线通信模块进行公钥交换、私钥验签操作;双方身份验证成功后,对排放数据进行SM2 加密;然后利用无线通信模块将加密后数据传送至岸基平台,平台将所接收到的船舶排放加密数据按照对应密钥和协议进行解密并解析。

2 装置加密通信模块设计

本文采用加密芯片对排放数据进行加密,并通过无线通信模块将数据发送至岸基平台进行解析,完成此功能需进行加密模块硬件设计、加密芯片COS 操作系统设计和通信策略设计。

2.1 加密模块硬件设计

本文使用以32 位高安全等级ARM SC000 安全处理器为基准的LKT4305-GM 加密芯片,其拥有40 余种防破解及防剖片技术,具备高速通讯端口SPI,拥有32 k RAM,64 k 字节文件密钥区,支持SM2 非对称加密算法,具有高性能低功耗的特点。采用加密芯片对排放数据进行加密的方式,提高了数据的私密性,加密芯片接口原理图如图2 所示。

图2 加密芯片接口设计原理图Fig.2 Design schematic diagram of encryption chip interface

需加密传输数据包括:船机ECU 相关参数、排气管温度、排气管烟气参数、排气管NOX浓度等,以上数据通过CAN通信方式与MCU进行信息交互,完成解析后传输至加密芯片实现数据加密。

2.2 加密芯片COS 操作系统设计

LKT 系列加密芯片内置COS 系统,数据加密前需进行COS 系统设计。其系统设计流程如图3所示,通过调用操作指令,首先在加密芯片内部建立主控文件,再建立专用文件,随即在文件内建立2 个安全基础文件。当文件建立完成后,调用SM2算法生成公、私钥,并写入安全基本文件中,然后将船端公钥与岸基平台公钥交换,实现公钥互换,最后再次调用SM2 算法,进行验签及加、解密操作。

图3 COS 系统加密设计流程图Fig.3 COS system encryption design flowchart

2.3 无线通信模块硬件设计

目前内河航运水域基本实现4G 网络覆盖,无线通信技术为船岸数据交互提供了便利,本文采用EC20-R2.1 嵌入式4G 无线数据通信模块进行开发。MCU 将加密模块返回的加密数据进行整理打包并通过4G 网络传输至岸基平台。EC20 需外接GPS天线和4G 天线,其作用分别为通过其内置接收机获取实时定位数据与通过TCP/IP 协议将加密数据打包发送至岸基,EC20 无线通信模块接口原理图如图4 所示。

图4 无线通信模块接口设计原理图Fig.4 Design schematic diagram of wireless communication module interface

2.4 通信策略设计

排放数据加密前,MCU 需通过串口向通信模块发送相关指令,完成对4G 网络的配置,使船端与岸基平台间建立可靠的4G 通信链路,等待成功后便可与岸基平台进行加密通信。装置的整体流程设计如图5 所示,主要由3 部分构成。

图5 数据加密通信整体流程设计图Fig.5 Design drawing of data encryption communication overall process

(1)首先使用CAN 通信,对船舶排放数据进行采集并解析后传输至加密模块;

(2)加密模块在加密前,与岸基平台进行协商,按照SM2 算法,分别生成公、私钥并交换公钥,然后进行船端与岸基平台验签,在成功确认通信对象后,采用岸基平台公钥对船舶排放数据进行加密。

由于加密及验签部分由加密芯片完成,因此MCU 需先在加密芯片内部创建主控文件及公、私钥文件,并存储船端私钥与交换后的岸基平台公钥,加密芯片接收到来自MCU 的加密数据后先对数据进行缓存,等待船端与岸基平台进行双方验签操作,验签成功后,使用岸基平台公钥对缓存数据进行加密,随后将加密数据返回至MCU;

(3)最后MCU 将返回的密文发送到岸基平台,岸基平台按照所生成的密钥,对其进行解密及按照自定义协议解析数据,并在平台界面显示。

3 装置加解密测试

为验证装置能否实现SM2 算法数据加密及双方身份认证功能,在试验室搭建功能调试平台对装置进行测验。通过CANTest 软件给装置发送指定ID 号的CAN 数据,装置对CAN 数据进行接收并解析为明文,将明文发送至加密芯片,经过加密操作及身份认证后,将密文上传至岸基平台,使用对应私钥进行解密验证数据的正确性,图6 为所设计的加密通信装置实物图。

图6 数据加密装置实物图Fig.6 Physical picture of data encryption device

测试中为模拟实船情况,遵循SAE J1939 协议,通过CANTest 模拟发送实船采集数据,测试数据发送时间为(21:46:45),CAN ID分别为(0x0cf00400、0x0cf00300、0x18feee00、0x18fef600),发送次数为1 000 次,每次发送4 帧数据,每次发送时间间隔为1 000 ms,模拟数据如表1 所示。

表1 模拟CAN 测试数据Tab.1 Simulating CAN test data

通过SAE J1939 协议可知,上述4 个CAN_ID包含有发动机转速、发动机扭矩、油门开度、冷却水温、燃油温度、机油温度、增压压力、进气温度数据,经过自定义协议解析后,获得11 字节数据包,即明文数据:2160009C757A636D2AE051。

MCU 将明文数据进行缓存,等待与岸基平台成功进行通信连接,然后发送签名数据,并交换双方所产生的公钥,利用交换的公钥对同一签名数据进行签名,再次将签名值交换,分别由船端与岸基平台的私钥验签,双方身份验签成功后,由船端发送加密后密文。在测试中船端装置与岸基平台信息交互数据如图7 所示。

图7 船端装置与岸基平台接发数据显示Fig.7 Data display of ship-end device and shore-based platform

岸基平台将解密的明文数据再次进行解析,并在平台界面显示,图8 为岸基显示界面。通过岸基平台显示与装置接收模拟数据对比可知,从CANTest 发出的模拟数据时间和岸基平台显示时间均为(21:46:45),说明在1 000 ms 内可完成验签、数据的加、解密工作并进行界面显示,且加解密前后数据一致,表明该装置达到了数据加、解密和无线通信的要求,能实现数据的加密以及岸基平台的解密与实时显示功能。

图8 岸基平台界面显示Fig.8 Shore-based platform interface display

4 结语

本文选用支持SM2 国密算法的LKT 系列加密芯片和EC20 无线通信模块,并对二者与MCU 的硬件电路和通信策略进行了设计,完成了数据加密通信装置的实物研制。通过对装置进行整体测试,能够实现装置与岸基平台间的双向身份认证和排放数据的加密传输,岸基平台在接收到密文后成功进行了数据的解密和解析,结果显示,本装置可与岸基平台进行数据加密通信应用,从而为后续船舶排放在线监测的数据加密传输研究提供借鉴。

猜你喜欢
岸基公钥加密
一种基于熵的混沌加密小波变换水印算法
一种基于混沌的公钥加密方案
基于有理函数模型的GNSS?R岸基海面风速反演算法
浅谈广东省海洋观测网体系建设
HES:一种更小公钥的同态加密算法
海底观测网岸基站供配电系统设计
认证加密的研究进展
SM2椭圆曲线公钥密码算法综述
基于ECC加密的电子商务系统
基于格的公钥加密与证书基加密