面向武器装备信息溯源的区块链设计与优化

2023-07-31 11:40凌振国侯麒麟王佳丽刘冬冬陈俊霖
火力与指挥控制 2023年6期
关键词:双链哈希检索

凌振国,侯麒麟,王佳丽,刘冬冬,陈俊霖

(北方自动控制技术研究所,太原 030006)

0 引言

武器装备信息溯源是指在武器装备使用过程中对装备位置、行为等信息记录,达到对武器装备相关信息顺向追踪和逆向回溯目的。目前我国武器装备信息来源广泛,且强制要求使用方按照规范录入溯源信息,导致可信溯源实现代价大、保障数据安全性的成本高。区块链去中心化的分布式结构、可溯源、不可篡改和集体维护的特性使其在溯源方面具备较大的优势[1]。区块链技术的适用性分析如下:

区块链系统的可扩展性强。区块链技术被誉为21 世纪足以改变世界的技术之一,是信息基础技术的巨大创新。区块链作为底层数据库,还具有极强的扩展性,与物联网、大数据等技术具有较好的兼容性,利于推进信息技术融合发展[2]。

区块链可提高军事装备信息溯源系统的安全性。武器装备信息数据的存储与传输等过程都必须保证安全,链上数据采用非对称加密技术和共识机制,可确保数据的可用可信可靠[3]。

区块链可降低系统维护成本。区块链基于共识机制由节点按照统一的规则收敛到一致[4],某一节点的作恶或瘫痪对系统运行不会造成影响,系统由所有节点共同维护。

因此,在武器装备信息溯源中应用区块链,节点通过P2P 对等网络连接,达成高效共识,建立安全可靠的武器装备信息溯源系统,以智能合约作为对外接口[5],保证了武器装备信息的可信溯源并提供良好的可扩展性,这无疑为装备信息溯源的需求提供了更好的解决方案。

1 区块链简述

区块链技术并非全新的技术,而是一种多学科融合的技术[6]。区块链采用分布式架构,每个节点平等交互,体现了去中心化的特征;去信任化体现在区块链网络通过共识机制达成共识收敛到一致,不需要第三方的参与,所有交易数据都公开透明[7];不可篡改是指区块链上每个区块上链之后覆盖上个区块并迅速向邻节点传递,而每个节点以最长链替代短链,区块被覆盖并确认出块,时间和空间上都体现了不可篡改[8];可溯源体现在所有区块公开透明,所有人可查询交易数据。

区块链本质上是一个去中心化的账本数据库[9],核心技术总结为数据结构与共识机制。链上数据以Merkle 树的结构存储,采用非对称加密技术进行哈希运算,哈希指针指向数据存储地址,将数据块链接生成区块的Merkle 根,再通过哈希指针将区块链接构成区块链。基于这样的数据结构,作恶节点企图篡改链上数据会导致此数据块的哈希值产生变化,进而使得整条链的哈希指针改变,因此,作恶节点的攻击无效且易于监测。共识机制是链上节点通过投票对一个事务达成一致的规则或机制,以确保区块链的扩展性并防止恶意攻击。常见的共识机制有工作量证明机制、权益证明机制、股份授权证明机制和实用拜占庭算法。

区块链封装了存储区块的链式结构、非对称加密及时间戳等技术[10]。区块链中每个单位都是节点,收到的数据向邻节点传递;共识层共识算法决定了记账的权利[11],各节点通过共识机制达成一致,避免了第三方的参与,实现了点对点交易。激励层[12]封装了激励矿工通过大量算力获取区块即记账的奖励机制;合约层封装了链码,提供灵活可编程平台,促进了人机交互。应用层封装了区块链应用场景[13]。

2 区块链设计

区块链可溯源与不可篡改的特性与武器装备信息溯源的需求十分契合,而传统区块链在性能和运行效率方面存在不足,导致军事应用受限。针对武器装备信息,本文设计了私有链+公有链的双链架构,将身份信息与装备信息分离存储,多通道部署智能合约,兼顾用户信息的安全性与装备信息的可靠性,显著提高区块链的性能和效率;采用了数据可信存证技术,将生成的数据指纹等信息嵌入得到存证证书,数据上链保证存证的不可篡改性;研究了数据安全监管技术,通过构建武器装备信息全生命周期监管模块,建设动态审计分析模块,保障数据的安全性;分析了武器装备信息溯源流程,对添加装备信息、添加用户信息和检索装备信息模块流程进行阐述。

2.1 双链区块链架构

武器装备需要大量的数据记录使用情况,本文设计了装备信息链和身份认证链分离、双链独立存在、数据分层存储的双链架构,架构如图1 所示。身份信息是用户身份等对内的敏感数据,装备信息是装备型号等相关信息。系统功能通过调用智能合约的接口实现,数据加密通过Gossip 协议广播到全网,得到认可后上链。

图1 双链架构Fig.1 Double-chain architecture

1)装备信息链用于存储、记录装备信息,数据内容有装备型号、名称、数量、性能、使用状态及位置等信息。武器装备信息是非公开的,系统根据身份认证链的权限对用户开放。

2)身份认证链用于存储、记录用户的身份、权限和证书等信息。身份证书上链保证了信息的不可篡改性,在用户对装备信息进行检索时根据装备信息对用户身份校验鉴权,根据权限认证获取用户权限,从而提高了系统的安全性。

本文采用双链区块链架构基于以下考虑:①双链独立存在,身份信息与装备信息分离,更利于武器装备信息管理的业务扩展,系统的抗毁性也更强,提高了数据可靠性;②数据经过非对称加密之后在区块链网络传递,根据身份认证链给予用户访问权限,更好地保护了武器装备数据;③智能合约根据数据积攒量动态调整权限,可以保证身份认证链数据安全性的同时,最大化装备信息链运行速率;④基于身份认证链构建去中心化的身份认证模块实现节点的准入验证机制,存储用户权限等信息,提高了数据的可信性;⑤身份认证链中记录的用户权限所能访问到的装备清单,包含武器装备信息指向的哈希值,用户检索信息时通过访问该装备清单快速定位装备信息所在区块,继而在目标区块内获取装备信息,通过缩小检索区间提高了检索效率。

双链存储结构采用Merkle Tree 存储结构,如图2 所示。

图2 链式存储结构Fig.2 Chain-type storage architecture

在区块链中,区块头记录上一区块的Hash 值,依次链接最终指向创世纪区块。采用Merkle Tree 对数据组合进行哈希运算,重复进行最终得到根哈希值记为区块头的Merkle 根,可快速归纳和检验数据的完整性。区块头不包含底层数据,减少了数据传输量与计算的复杂程度。区块的存储形式是[key,value,version]键值对[14],数据集合形式为Block,Block 链接构成区块链。

双链采用Merkle Tree 存储结构具有以下优势:区块头无需封装底层数据,大幅减少了数据传输量及哈希计算复杂度,提高了系统的运行效率;Merkle Tree 存储结构在区块链中的存储形式为键值对,可通过key 值检索对数据进行追溯,为智能合约检索模块提供接口[15]。

2.2 数据可信存证

针对溯源获取信息更加准确的定位,采用数据可信存证技术,为武器装备信息数据的记录存证提供保障。将武器装备信息数据哈希、数据所属和数据指纹3 部分内容组成存证证书,并将证书与武器装备信息数据捆绑上链保证存证证书不可篡改。

数据存证流程如图3 所示,用户采集或记录武器装备信息数据并将装备信息发送给后台服务器后,请求数据指纹生成。后台服务器采用不可逆计算的单向散列计算等相关算法生成数据指纹,数据指纹是遗传固定长度的字符串,是数据经不可逆计算生成的固定长度字符串。并将生成的指纹返回,采用嵌入机制完成数据指纹的嵌入,生成存证证书。存证证书拥有唯一且可溯源的定权哈希和符合《电子签名法》的时间戳,最后,区块链技术将存证证书上链即可保证证书有效性和不可篡改性。

图3 数据存证流程Fig.3 Data storage process

2.3 数据安全监管

为达到武器装备的数据安全监管的目的,基于可信溯源智能合约机制,对武器装备数据进行锚定,对数据挖掘分析、数据集构建、知识库构建等过程中涉及的模型、操作方、数据持有者、数据源的哈希、分析时间、数据挖掘分析后的哈希进行存储。构建数据全生命周期监管模块,将武器装备数据的上传、访问、存储、共享等行为进行记录,保障全流程行为记录的不可篡改、可信和可追溯性。

针对数据安全监管,本文从链上审计的角度出发。通过建设动态审计分析模块,实现对数据交互、执行服务及其结果进行有效的权限控制和监管,对终端服务提供可用于责任追踪的相关证据及审计管理支撑手段,具体流程如图4 所示。

图4 可信监管流程Fig.4 Credible supervision process

2.4 武器装备信息溯源系统流程设计

本系统功能模块设计分为添加用户信息、添加装备信息以及检索装备信息。装备信息包含装备型号等装备信息链上信息,用户信息包含身份权限等身份认证链上信息。

2.4.1 添加装备信息

添加装备信息流程如图5 所示,用户节点进入添加装备信息界面,输入装备信息后系统调用智能合约生成哈希值,广播到区块链网络由其余节点对装备信息进行哈希运算;另外本地对装备信息进行哈希运算,通过共识机制后将新区块广播到全网并更新数据库,节点认可度超过2/3 则重复此流程生成下一个区块,直到覆盖6 个区块后,该区块被称为正确区块,否则数据哈希重新生成新的区块,重复共识机制得到认可后添加到区块链。

图5 添加装备信息流程Fig.5 Add equipment information process

2.4.2 添加用户信息

添加用户信息流程如下页图6 所示,节点为用户生成身份信息(包含证书及密钥),对其非对称加密并广播到全网,通过共识机制身份信息得到认可后将生成的新区块广播到全网并上链,将最后的身份认证信息广播到全网。

图6 添加用户信息流程Fig.6 Add user information process

2.4.3 检索装备信息

检索装备信息流程如图7 所示,用户在查询页面输入装备型号,后台调用智能合约确认身份,在链上获取身份权限,在权限内区间获取信息。检索到之后运用私钥对数据解密获得,否则返回权限内不存在。此时可以选择是否继续查询,是则在权限外继续查询,查询到装备信息返回权限不足,否则为查询失败。

图7 检索装备信息流程Fig.7 Process of retrieving equipment information

3 测试实验

3.1 实验设计

区块链测试网络基于hyperledger fabric 设计,采用的docker 容器有fabric-cli、fabric-tools、fabricorderer、fabric-peer、fabric-ca 及fabric-couchdb。fabric配置如表1 所示,本系统在两个通道定义两个组织org1、org2,各包含2 个节点,设定1 个orderer 节点,由cryptogen 工具颁发并管理证书,节点数量满足共识算法对区块链测试网络的需求。在本实验中,测试区块链使用单节点通信模式。

表1 fabric 网络配置Table 1 Fabric network configuration

为验证双链架构在检索速率、读取延迟以及吞吐量方面的性能,实验工具采用hyperledger caliper进行测试实验。caliper 是hyperledger 提供的用户自定义区块链性能的测试工具,本实验针对测试性能设计智能合约,程序语言选择golang,在docker 容器的cli 终端中运行。在通道中部署智能合约,通过测试工具caliper 调用链码接口仿真,测试数据存储于HTML 格式文档中。

3.2 实验结果

3.2.1 吞吐量分析

武器装备型号多样、信息交错复杂,必然会产生大量的武器装备数据,因此,装备信息的吞吐量对系统的稳定性和处理速度有重大意义。本系统定义区块最大容量为1 MB,平均每2 s 会生成一个区块,为对比两种架构在吞吐量方面的差异,单双链吞吐量对比实验结果如图8 所示,本实验每秒增加300条数据量,开始时,数据处理量随着总量的增加缓慢增加,数据总量达到3 300 时,斜率即吞吐量达到最大值,数据处理量呈正比增加,单链架构吞吐量仅为约329 条/s,而双链吞吐量约为355 条/s,提升量达到7.9%。

图8 单双链吞吐量对比Fig.8 Comparison of throughput of single and double chains

3.2.2 响应延时

响应延时指终端输入指令后访问装备信息链及身份认证链,确认身份并获取数据并响应终端的耗时。本实验对进行了200 次查询操作,获取的响应延时如图9 所示,其中,延时在0.015 s 以上存在21 次,0.01 s 以上0.015 s 以下存在34 次,剩余均在0.01 s 之下,基本满足实际的延时查询需求。

3.2.3 查询效率分析

采用双链架构,根据链上权限信息中记录的装备清单检索出所需装备信息,相比于传统的单链区块链架构,大幅降低了计算的复杂度,提高了检索效率和系统的响应速度。为比较双链与传统单链在检索效率,本实验将单双链查询效率进行对比如图10 所示,随着数据总量的增加,查询所需装备信息耗时也随之增加,数据总量低时,单双链检索速度相近,但随着数据量的增加,双链响应速度明显高于单链,数据总量达到10 000 条时,双链耗时相比于单链降低了61%。

图10 单双链查询效率对比Fig.10 Comparison of single and double chain query efficiency

4 结论

针对武器装备信息可信溯源的目的,区块链特性十分契合武器装备管理系统。为提高区块链的性能,本文提出的基于双链架构的武器装备信息溯源系统,将装备信息与身份信息独立成链,提高了可扩展性与可靠性;为武器装备信息设计了存证证书,为信息源头提供了证书保证;在数据的可信监管方面,通过构建链上审计模块,保证了数据安全性。经过仿真实验证明,双链架构在吞吐量、检索效率及响应延时方面的确优于传统区块链,可很好地应用于武器装备管理。下一步将挖掘区块链在军事上的应用,针对数据数据安全与确权认证进行研究。

猜你喜欢
双链哈希检索
昆虫共生细菌活体制造双链RNA
2019年第4-6期便捷检索目录
高新区科技企业孵化网络“双层双链”结构研究
专利检索中“语义”的表现
基于OpenCV与均值哈希算法的人脸相似识别系统
基于维度分解的哈希多维快速流分类算法
基于同态哈希函数的云数据完整性验证算法
浅析TTT双链刮板输送机驱动运行与故障排除
一种基于Bigram二级哈希的中文索引结构
国际标准检索