舰船科学技术  2022, Vol. 44 Issue (10): 127-130    DOI: 10.3404/j.issn.1672-7649.2022.10.026   PDF    
基于区块链的舰船通信数据防篡改模式研究
任晓慧, 刘睿     
聊城大学 计算机学院,山东 聊城 252059
摘要: 现有舰船通信数据存储模式存在易被篡改等缺陷,结合具备防篡改特性的区块链技术设计通信数据防篡改模式,构建该模式中的舰船通信区块链结构,通过区块链共识机制由所构建的舰船通信区块链中选取最佳区块,以分层数字签名的方式向最佳区块内加密上传舰船通信数据,完成舰船通信数据的加密防篡改存储。结果表明,该模式在上传舰船通信数据过程中,可保持平稳的签名加密与最佳区块选取运算开销,并有效避免各类篡改攻击,具有较高的防篡改性能。最终存储的数组舰船通信数据中,最高被篡改与缺失数据量的占比仅为0.004%与0.02%,存储数据的整体安全性与完整性较为理想,可为舰船通信数据的安全存储提供保障。
关键词: 区块链     舰船通信数据     防篡改模式     数据存储模式     共识机制     数字签名    
Research on tamper-proof mode of ship communication data based on block chain
REN Xiao-hui, LIU Rui     
School of Computer Science, Liaocheng University, Liaocheng 252059, China
Abstract: Data storage model based on the analysis of the existing ship that communication is vulnerable to tampering with defects, such as the characteristic of combining with tamper-proof block chain tamper-proof technology design communication data model, built the model of ship communication block chain structure, through the chain block consensus mechanism by building a ship communicationsin the chain to select the best the block, To the best in the form of hierarchical digital signature block encryption communication data upload ships, in complete ship communication data encryption tamper-proof storage, the results show that the model in the process of communication data upload ships, can keep the stable signature encryption and best block selection operation costs, and effectively avoid all kinds of tampering attacks, has high tamper-proof performance, In the array ship communication data stored in the end, the highest amount of tampered and missing data accounts for only 0.004% and 0.02%. The overall security and integrity of stored data is relatively ideal, which can provide a guarantee for the safe storage of ship communication data.
Key words: block chain     ship communication data     tamper-proof mode     data storage mode     consensus mechanism     a digital signature    
0 引 言

当舰船航行过程中执行各类任务时,势必会产生与各类任务相关的诸多通信数据,通过此类通信数据能够将舰船执行任务时经历的事项与涉及的设备状况等呈现出来[1-2]。为了在完成任务之后有效评估任务的实际执行状况,便于及时改善舰船的相关任务执行能力,需通过回顾此类通信数据将舰船执行任务时的实际状况重现,如此便需要对任务执行时所产生的此类通信数据实施安全存储[3]

区块链技术属于一类较为新颖的信任机制,它采取去信任与去中心化等措施,将互信与多方合作等问题妥善解决,能够达到数据的共享写入以及全用户参与的目的,属于一种集体针对某个安全数据库实施维护的技术[4]。该技术集博弈理论、分布式网络以及密码学等诸多领域于一体,可通过其共识机制达到区块体内各交易的共享与实施更新,并通过密码学相关技术对交易的防篡改安全性提供保障[5-6]。其所具备的优点主要有数据防篡改性、数据可追溯及去中心化等,它不具备中心节点,所存储数据分布于各个节点上,无论任何节点发生故障,均能够继续保障数据的安全存储[7]。数字签名方法能够有效保障数据的无法替代性、私有性以及完整性,属于一种安全加密方法[8],应用到数据的上传过程中,可有效避免数据被篡改、攻击以及泄露等。

综上,本文结合区块链技术研究舰船通信数据的防篡改存储模式,安全完整地存储舰船通信数据,避免数据遭受攻击篡改与丢失,保障舰船通信数据的安全性与可追溯性。

1 基于区块链技术的舰船通信数据防篡改模式 1.1 舰船通信数据的现有存储模式分析

当前舰船通信数据常用的存储模式主要有云计算存储模式与分布式存储模式2种[9],二者的基本结构如图1所示。2种存储模式的存储方式与缺陷概述为:①云计算存储模式通过抽象不同种类舰船通信数据为资源池的方式,并透明化呈现给具备权限的用户,为用户应用舰船通信数据提供便利[10]。然而此种存储模式易因软硬件故障、各类系统攻击与操作失误等问题造成存储安全机制失效,不能保障舰船通信数据存储的安全性。②分布式存储模式所运用的大多为主从模式,也就是以中心节点为主,多个分布式存储节点为辅的一种存储模式[11]。当应用此种存储模式时,舰船通信所产生的数据会默认优先向中心节点内存储,然后向其他各个分布式存储节点内分配。此种存储模式对中心节点的压力较大,易导致中心节点出现宕机或者故障等问题,若发生此类问题,会导致所存储的舰船通信数据不能有效读取,且对舰船通信数据的完整性存在一定程度的影响[12]。虽然融入备份节点能够适度减轻中心节点的压力,降低其发生此类问题的概率,但会影响到各节点之间的切换效率与同步性,并且当中心节点同备份节点实现共识,备份节点内所存储的舰船通信数据易发生被篡改的风险,无法保证舰船通信数据的安全性。

图 1 舰船通信数据的现有存储模式 Fig. 1 Existing storage modes for ship communication data
1.2 基于区块链的舰船通信数据防篡改存储模式

基于当前舰船通信数据主要存储模式的分析,得知舰船通信数据存储中所存在的安全隐患问题,针对此问题研究一种基于区块链的舰船通信数据防篡改存储模式,避免舰船通信数据遭受攻击与篡改,提升通信数据的整体安全性。

1.2.1 舰船通信区块链结构设计

舰船通信区块链主要由区块头、区块体及时间戳构成,其中区块体与区块头共同构成区块结构。区块头中具备之前区块的地址、时间戳以及Merkle根,其中区块地址的关键作用是连接之前区块和现有区块,Merkle根是通过构建区块时的交易记录以Merkle树哈希产生的,时间戳主要是指对应区块的构建时间;区块体中包含了交易与交易的数目,其中交易由舰船通信内容、通信时间、通信设备类别、处理节点与其签名等构成。

1.2.2 舰船通信数据签名加密上传

在所构建的舰船通信区块链基础上,为达到舰船通信数据防篡改的目的,通过签名加密的方式将舰船通信数据上传至所构建的舰船通信区块链内,提升数据的安全性。在舰船通信数据流内通信数据的状态与通信数据的处理过程保持同步,主要数据状态有通信元数据、签名后通信元数据、通信完成反馈数据、可追溯的通信完成反馈数据等。由于舰船通信数据流属于一种具备传输及追溯性质的动态数据流通过程,因而,可通过分层的方式实现舰船通信数据向区块链内的签名加密上传,整个上传过程详如图2所示。在舰船通信数据的签名加密上传过程图内,根据舰船通信生命周期不同阶段时序,划分此上传过程为3个层次,分别为区块链层、接收层及通信层,依据此上传过程图,为舰船通信数据实施签名加密上传的过程描述为:①通过通信层中的舰船通信端编码舰船通信数据为电子数据,获得舰船通信元数据。当处于单通信场景下时,通过通信端为此类元数据实施数字签名,签完之后封装成签名后通信数据,并广播到整个舰船通信网络;当处于多通信场景下时,需各个通信端为舰船通信元数据实施完联合签名,并封装成签名后通信数据后,方可传输至整个舰船通信网络。②通过接收层中的接收端将签名后舰船通信数据接收之后,经由通信端公钥与舰船通信时戳校验通信数据,完成校验并结果正确后可实施传输;接收端可向签名后通信数据内追加舰船通信的执行结果反馈数据与日志,并通过接收端私钥为此类追加数据与舰船通信时戳实施签名,对签名后此类数据实施封装,获得通信完成反馈数据。③通过区块链层对舰船通信数据与通信完成反馈数据实施逻辑归档,经由区块链共识机制将接收端的节点签名与通信完成反馈数据向各个最佳区块内打包存入,完成舰船通信数据向区块链的签名加密上传过程。

图 2 舰船通信数据的签名加密上传过程图 Fig. 2 Ship communication data signature encryption upload process diagram

其中所运用的签名加密方法为数字签名方法,该方法通过构建一个防伪造且方便验证的算法模型,令不具备签名方核心权限的第三方可对签名方有否确认签名对象实施检验。此数字签名方法的签名加密过程为:①将密钥空间大小与任意数量种子输入到生成算法内,获得由私钥与公钥构成的一组密钥;②通过标识算法对签名方运用所生成私钥为给定的舰船通信日期数据签名实施准许,获得完成签名的舰船通信数据;③通过验证算法对第三方运用完成签名的舰船通信数据、给定日期数据及所生成公钥获得签名方是否已完成签名的结论予以准许。基于以上过程,任意一个不具备私钥的第三方均能够对签名方的签名行为实施验证,对匿名情况下的授权校验予以保障。此签名过程的表达式为:

$ \left\{ \begin{gathered} \left\langle {{k_1},{k_2}} \right\rangle = generate\left( {seed,size} \right),\hfill \\ \left\langle {{U_{data}}} \right\rangle = sign\left( {{k_2},data} \right),\hfill \\ \left\langle {{W_{data}}} \right\rangle = validate\left( {{k_1},data,{U_{data}}} \right)。\hfill \\ \end{gathered} \right. $ (1)

式中, $ {k_2} $ $ {k_1} $ 分别表示公钥和私钥; $ size $ 表示密钥空间大小; $ seed $ 表示任意数量种子; $ {U_{data}} $ 表示签名后舰船通信数据; $ data $ 表示给定的舰船通信日期数据; $ {W_{data}} $ 表示签名方是否完成签名的结论; $ generate $ $ sign $ $ validate $ 依次代表生成、标识及验证算法。

1.2.3 区块链共识机制的最佳上传区块选取

在舰船通信数据向区块链内各个区块打包上传过程中,需应用到区块链共识机制将每轮数据上传过程中的最佳区块选取出来,并向所选取的最佳区块内上传此轮数据,以此保障数据上传过程的安全性,避免上传过程中出现中间人攻击及篡改数据等行为。在此所用到的区块链共识机制可通过数学形式描述为:设舰船通信数据签名加密上传过程中的接收端集合通过 $ C = \left\{ {{C_1},{C_2}, \cdots ,{C_m}} \right\} $ 表示,其中第 $ j $ 个接收端 $ {C_j} $ 所获得数据上传的打包区块得到的其余接收端校验组合与其收益通过 $ {H_j} = \left\{ {{T_{j1}}, \cdots ,{T_{jm}}:{s_j}} \right\} $ 表示。在通过第 $ j $ 个接收端 $ {C_j} $ 打包的区块所构成的不同接收端校验组合 $ \left( {{T_{j1}}, \cdots ,{T_{jm}}} \right) $ 内,随机某个参与校验方 $ {C_i} $ 对接收端 $ {C_j} $ 上传区块的校验结果通过 $ {T_{ji}} $ 表示,此轮所获得的最佳区块包括3种情况:①在此轮运算时间没有终止的情况下, $ {C_j} $ 为最先出现的接收端,且 $ {C_j} \in C $ ,同时令 ${s_j} \left( {{T_{j1}}, \cdots ,{T_{ji}}, \cdots ,{T_{jm}}} \right) = m$ ,那么 $ {C_j} $ 上传的区块即为此轮的最佳区块,也就是选取最先经全部接收端校验后的区块;②在此轮运算时间终止的情况下,此时有 $ \exists {C_j},\forall {C_i} \in C $ ,同时令 $m > {s}_{j}\left({T}_{j1},\cdots ,{T}_{ji},\cdots ,{T}_{jm}\right)> {s}_{i}\left({T}_{i1},\cdots ,{T}_{ij},\cdots ,{T}_{im}\right)ght)$ ,那么此轮的最佳区块选取为 $ {C_j} $ 上传区块,也就是选取通过全部接收端校验后所得到的收益最高的区块;③在此轮运算时间终止的情况下,当 $ \exists {C_j},{C_i},\forall {C_k} \in C $ ,且 $m > {s}_{j}\left({T}_{j1},\cdots ,{T}_{ji},\cdots ,{T}_{jm}\right) = {s}_{i}\left({T}_{i1},\cdots ,{T}_{ij},\cdots ,{T}_{im}\right)> {s}_{k}\left({T}_{k1},\cdots ,{T}_{ki},\cdots ,{T}_{km}\right)$ ,那么最佳区块选取为 $ {C_j} $ $ {C_i} $ 二者中最先满足 $ {s_j} $ 实际值的区块,也就是选取最先通过全部接受端校验并达到最高收益的区块。

2 实验结果与分析

由某舰船通信系统内随机选取10组通信数据作为实验对象,运用本文模式对其实施加密防篡改存储,检验所存储通信数据的安全性与完整性,分析本文模式的实际应用效果。所选取的10组舰船通信数据的数据量依次为100,500,1000,5000,10000,50000,100000,500000,1000000,5000000条。

以数据量最多的第9组与第10组实验舰船通信数据为例,检验本文模式上传数据过程中的签名加密开销与共识机制选取最佳区块开销,检验过程中2组数据各平均分成5轮上传,统计2组数据中每轮数据上传过程中的签名加密开销与最佳区块选取开销,所得统计结果如图3所示。可以看出,本文模式在上传第9组与第10组实验舰船通信数据过程中,2组数据中每轮数据的签名加密开销与最佳区块选取开销均十分接近,其中第9组数据中单轮数据的2种开销平均值分别为281.34 ms与255.61 ms,第10组数据中单轮数据的2种开销平均值分别为863.13 ms与692.86 ms,且第10组数据中每轮数据的签名加密开销与最佳区块选取开销均高于第9组数据,原因是第10组数据的数据量高于第9组,由此说明,本文模式在上传舰船通信数据过程中,对于相同数据量的每轮数据的签名加密与最佳区块选取2种开销均较为稳定,数据量对2种开销有着直接的影响作用,即数据量越高本文模式上传数据过程中的签名加密开销与最佳区块选取开销越高。

图 3 本文模式上传数据的签名加密开销与最佳区块选取开销 Fig. 3 Signature encryption overhead and optimal block selection overhead of data uploaded in this model

由10组实验舰船通信数据内任选第1,5,8组3组数据作为此轮实验对象,同时将各组数据平均分成5轮经由本文模式实施上传,期间选取4种篡改方式对本文模式上传的3组各轮数据实施篡改,检验并记录本文模式所上传数据被篡改情况,所得结果如表1所示。可知,在4种不同篡改攻击方式下,采用本文模式所上传的各组实验舰船通信数据中,仅有数量最高的第8组数据中第1轮与第3轮数据内存在篡改数据,其余每轮数据均未被篡改,可见,本文模式具有较高的防篡改性能,可有效避免舰船通信数据被各类攻击篡改,保障舰船通信数据的安全性。

表 1 本文模式上传数据防篡改检验结果 Tab.1 Tamper-proof test results of mode uploaded data in this paper

通过本文模式分别存储10组实验舰船通信数据,完成全部数据的存储后,统计各组数据内被篡改的数据量及缺失的数据量,依据实际统计结果分析本文模式的应用效果。本文模式存储后各组实验舰船通信数据内缺失与被篡改数据量统计结果详见表2。分析可知,前5组实验舰船通信数据经本文模式存储后,均未出现被篡改数据,缺失数据仅出现在第5组内;后5组实验舰船通信数据内均出现了被篡改数据与缺失数据,且随着数据量的增长被篡改与缺失数据量也出现微小幅度的增长,但整体被篡改与缺失数据量较低,被篡改与缺失数据量的最高占比分别仅为0.004%与0.02%,由此可见,本文模式在数据防篡改与防丢失方面均表现较好,经本文模式存储后的舰船通信数据具有较高的完整性与安全性,可有效保障舰船通信数据的实际安全应用。

表 2 本文模式存储后各组数据内缺失与被篡改数据量 Tab.2 Amount of missing and tampered data in each data group after schema storage in this paper
3 结 语

本文结合区块链的防篡改与去中心化等特点,研究一种基于区块链的舰船通信数据防篡改模式,运用所研究防篡改模式实现舰船通信数据的安全完整上传与存储,实验中应用本文所研究模式对某舰船的实际通信数据实施上传存储,实验检验结果表明,本文模式能够以平稳且较低的运算开销实现通信数据上传过程中的签名加密与最佳区块选取,在应对不同篡改攻击时,能够有效防止所上传通信数据遭受篡改,实际防篡改性能较高,最终存储的舰船通信数据在整体安全性与完整性方面均具有较好的表现,能够为舰船通信数据的实际安全上传与存储提供有效保障。

参考文献
[1]
刘磊, 蒋仲廉, 初秀民, 等. 船舶自动识别系统数据修复和预测算法研究[J]. 哈尔滨工程大学学报, 2019, 40(6): 1072-1077.
[2]
周毅, 李萌, 张海涛, 等. 船岸一体化数据管理系统的网络安全技术[J]. 船海工程, 2021, 50(3): 73-76. DOI:10.3963/j.issn.1671-7953.2021.03.018
[3]
吉斌, 昌力, 朱丽叶, 等. 区块链系统节点私钥泄露的电力数据防篡改方法与验证机制设计[J]. 电力自动化设备, 2021, 41(12): 87-94.
[4]
甘兴旺, 魏汉迪, 肖龙飞, 等. 基于视觉的船舶环境感知数据融合算法研究[J]. 中国造船, 2021, 62(2): 201-210. DOI:10.3969/j.issn.1000-4882.2021.02.018
[5]
谭海波, 周桐, 赵赫, 等. 基于区块链的档案数据保护与共享方法[J]. 软件学报, 2019, 30(9): 2620-2635.
[6]
焦通, 申德荣, 聂铁铮, 等. 区块链数据库: 一种可查询且防篡改的数据库[J]. 软件学报, 2019, 30(9): 2671-2685.
[7]
刘格昌, 李强. 基于可搜索加密的区块链数据隐私保护机制[J]. 计算机应用, 2019, 39(S2): 140-146.
[8]
王辉, 刘玉祥, 曹顺湘, 等. 融入区块链技术的医疗数据存储机制[J]. 计算机科学, 2020, 47(4): 285-291.
[9]
刘峰, 赵俊峰. 基于区块链的云存储数据完整性验证方案[J]. 应用科学学报, 2021, 39(1): 164-173. DOI:10.3969/j.issn.0255-8297.2021.01.014
[10]
李孟特, 顾春华, 温蜜. 基于区块链的充电交易数据安全存储平台设计[J]. 计算机工程与应用, 2020, 56(21): 79-84. DOI:10.3778/j.issn.1002-8331.1909-0372
[11]
葛琳, 季新生, 江涛, 等. 基于区块链技术的物联网信息共享安全机制[J]. 计算机应用, 2019, 39(2): 458-463.