APP下载

基于区块链+北斗的铁路装备可信数字身份服务方法

2023-09-27樊玉明咸晓雨

导航定位与授时 2023年4期
关键词:时空分布式身份

樊玉明, 刘 琦, 咸晓雨, 王 剑

(1. 北京交通大学电子信息工程学院, 北京 100044;2. 中车工业研究院, 北京 100160;3. 北京交通大学软件学院, 北京 100044;4. 北京航空航天大学交通科学与工程学院, 北京 100191)

0 引言

随着我国“一带一路”倡议以及“交通强国”“新基建”等国家战略的制定和实施,轨道交通作为核心基础设施得到了前所未有的巨大发展机遇,而信息化、智能化的铁路装备是铁路系统提升其运营效率和运营安全的核心载体。新兴技术如物联网、5G、大数据、人工智能及边缘计算等被逐步应用到铁路装备中,使“安全可靠、便捷舒适、经济高效、绿色节能”的智能化铁路有了实现基础。而铁路装备智能化落地应用带来大量复杂的数据交互共享的需求与场景,同时也带来很多安全隐患,亟需提供一套可信的身份服务体系来保障智能装备系统的通信安全[1-2]。智能铁路装备是一个典型的物联系统,其中的交互兼具集中式和分布式特征,大量数据与信令运行其中,装备及其产生的数据信令在系统中的可信数字身份标识是其重要安全基础[3],也是要解决的一个关键问题,对此业界多有研究。

区块链技术作为一种新兴的分布式网络数据管理技术,在解决交互可信化问题方面有其独有的优势和应用空间。利用区块链机制进行安全交互设计、身份认证设计和授权机制设计,可以有效提升物联网安全管理能力。W3C主导研制了一套通过去中心化的分布式身份标识(decentralized identifier,DID)来进行用户身份自主管理的方案[4]。Faísca等[5]提出一种基于区块链的身份认证方案,进行去中心化身份管理,用区块链来实现用户的标识和权属。焦英楠等[6]从物联网的三层体系结构和系统整体架构入手,采用区块链去中心化、信任机制、数据加密和时间序列等特点解决物联网存在的数据安全、隐私泄露及中心化等问题。Rana[7]等针对应用区块链进行身份证明的安全化隐私化进行了研究。通过区块链技术提取装备或消息信令的独特特征构建身份标识,并纳入区块链管理,建立数字身份体系,可以应用于全链条可信追溯、信息信任流转及设备可信访问。

北斗三号全球卫星导航系统(BDS-3)2020年建成并投入使用,是我国完全自主可控的全球时空服务基础设施,也是国家综合定位导航与授时(positioning,navigation,and timing,PNT)体系的重要组成部分[8],为不同物理域的各类用户提供满足需求的高精度时空信息服务。目前铁路装备正在逐步应用北斗替代GPS系统,可有效解决PNT系统自主可控问题,但是应用场景仍较单一,需要进一步释放“+北斗”的赋能空间。BDS-3可以提供的公共服务包括水平10 m、高程10 m、计时精度20 ns的高精度时空信息[9-10],且具有如下特征:1)服务泛在,全球可用能够普及;2)基准统一,单点单次结果唯一;3)时空自洽,序贯逻辑可验证推理;4)秩序严谨,单向信息不可逆转[11-12]。利用此信息能够为铁路装备提供具有时空可信性的标签,将其作为装备主体或其产生及流转的消息信令当前时刻和生命周期流转过程的重要特征,结合区块链的去中心化安全存储、传输和加密功能与特性,可以生成更可靠的数字身份标识,具有自主性、规范性、时空关联性、唯一性及可认证性的特性优势。

本文结合北斗三号全球卫星导航系统PNT技术与基于区块链方案的DID技术,提出了基于区块链+北斗的可信数字身份服务,并将其应用于铁路装备身份标识(railway DID,RDID)。该方法采用合理的设计架构,可以有效提升装备及其产生的数据信令的规范安全性,保证标识身份全局唯一、可追溯认证,从而提高智能装备系统通信与数据的完整性与可靠性。

1 基于区块链的DID技术

区块链技术基于分布式系统,是一种综合运用密码学、数据库和计算机技术的数据记录管理技术,其核心在于在不完全可信的环境中构建分布式账本解决现有中心化系统存在的许多问题[13]。区块链中的数据具有开放性、透明性,数据源的透明度解决了信息不对称的问题。通过密码学的方法确保交易无法抵赖和破坏,并尽量保护用户信息和记录的隐私性,在分布式系统中设计共识机制与链式数据管理体系,通过所有节点共同存储、管理和监督数据,参与到系统上的节点可能不属于同一组织,彼此互不信任但地位相当,系统运行不受单一节点约束,使得整个系统具有数据信息不可伪造篡改、信息操作可追溯的特点。

以太坊是第二代区块链的代表和基础,其引入智能合约设计,可提供更灵活的合约功能,执行更为复杂的操作,从而超越了单纯数据记录的功能,实际上带有“普适计算”的功用[14]。智能合约通过具有图灵完备的语言编写代码,理论上可以解决任何可计算的问题。通过智能合约可以实现操作的去中心化可信,例如进行身份认证、协议签订等,降低分布式系统的信任成本。

简化的区块链基础模型如图1所示。

图1 简化区块链基础模型Fig.1 Simplified blockchain foundation model

利用区块链技术进行数字身份设计,通过密码学加密、分布式存储等特性,可以对主体的隐私、数据安全进行全方位的保护,简化身份管理流程。分布式信任是数字身份的基础,其核心是基于区块链去中心化、不可篡改的特性而创建的DID。然后,多方通过接入工具接入分布式信任网,以区块链为依据,建立不同身份标识之间的安全交互,为可验证声明(基于DID体系的一类证书)的流转建立前提,保证数字身份信息准确,防止伪造、冒用。DID技术基于区块链及智能合约构建标识,能够实现标识的自动生成和自分配。相对于传统的基于公钥基础设施(public key infrastructure,PKI)的身份体系,基于区块链建立的分布式数字身份系统具有保证数据真实可信、保护主体隐私安全和可移植性强等特征[15],其优势在于:1)去中心化,基于区块链,避免了身份数据被单一的中心化权威机构所控制;2)身份自主可控,基于分布式公钥基础设施(distributed public key infrastructure,DPKI),每个主体的身份不是由可信第三方控制,而是由其所有者控制,单元能自主管理拥有的身份;3)可信的数据交换,身份相关数据锚定在区块链上,认证的过程不需要依赖于提供身份的应用方。

主体的DID不是单一中心赋予的,而是主体根据规范的算法生成的且完全自主控制。生成DID的同时,也会生成对应的公私钥,公钥与DID的绑定关系会被发布在分布式存储上,私钥由主体保管,身份相关数据会被锚定在区块链上。应用方验证主体身份信息时,要根据分布式系统中形成共识的主体的公钥进行验证计算,验证用户的真实性。

DID技术框架如图2所示。

图2 DID技术框架Fig.2 DID architecture

2 可信数字身份服务架构

基于DID技术设计应用于铁路装备的可信数字身份服务RDID,应着重管理两类主体的身份:设备数字身份和虚拟对象数字身份。其中,虚拟对象特指整个通信体系中流转执行的消息、信令与操作历史。对于每个主体,根据服务准则可以自己产生身份,并更新身份特征,请求身份验证。服务主要包括身份生成与解析、身份共识与上链、身份特征声明及身份验证应用4个模块。

2.1 铁路装备分布式物联网络组成与特点

当前的铁路装备适应智能化发展,应用了大量的感知通信技术,在智能铁路的总体技术框架中[16],基础设施、智慧列车和智能运维三大系统建立了复杂的网络通信机制,构建成为铁路装备物联网(以下简称“铁路物联网”),用于进行数据交互与信息共享。每个大系统有自己的子系统,子系统后扩展终端节点,大系统和子系统均不是唯一孤立,而是呈分布式共存,同一类型系统存在多个地位对等的系统节点。

从通信网络总的对象划分来讲,主要有车车通信、车路通信和车管通信,从网络角色划分来讲,可以分为状态感知层、数据传输层、技术应用层、智能管理层,而基础设施、智慧列车及智能运维又各自有各自的子网,进行系统内通信,系统抽象如图3。

总结来看,铁路物联网是一个完整的分布式应用环境,典型应用特点如下:

图3 子系统结构示意Fig.3 Schematic of subsystem structure

1)网络连接拓扑复杂,终端设备海量异构,而且整个网络具有地理分布式、架构分布式及业务分布式的特性,适合应用部署区块链基础设施。

2)规模庞大,节点众多,场景广泛,物理设备节点角色丰富,数字对象模态内容丰富,作为物联网结合大数据高效应用与协同共享,需要进行全局身份管理,建立全局唯一的统一标识并进行数字化映射。

3)面临众多安全挑战,如设备缺乏物理安全控制、受限于资源的安全能力不足、恶意节点攻击、后门漏洞、不安全的组件或接口、难以监管的用户等,而安全防护对策中最基础的信任建立条件就是要提供鲁棒的可信身份与访问控制方法,包括不可篡改可认证的身份标识、安全高效的认证机制。

作为广域交通设施所用的物联网,地理位置信息是其中网络、设备、虚拟对象的关键属性,是分布式实体身份标识全局唯一的重要信息构成。对于网络中的实体,按照位置信息来源可以分为有独立个体位置信息源的实体、可以获取相关位置信息的实体、没有位置信息的实体;按照位置信息动态可以分为长期固定位置的实体、可移动位置的实体。精确时间信息也是分布式网络的关键属性和应用资源,而且对安全应用、实时应用、同步应用以及数据的共享、记录与追溯具有重要的价值。将时空信息结合,可以有效辅助铁路物联网的可信身份服务应用。

根据实际网络的拓扑特性、实体在网络中的角色及信息数据地位对等性,结合可信数字身份应用环境需求,将铁路装备分布式物联网实体抽象见图4。

图4 铁路装备分布式物联网实体抽象Fig.4 Railway equipment distributed IoT entity abstraction

如图4所示,网络呈树状扩展,其中核心设备指在网络中处于关键信息交换位置的设备,运算与业务处理能力较强;子设备指核心设备的下属设备,负责单一业务,具有简单运算处理能力;终端特指最末端的设备,不具有运算处理能力,是信息的来源;主网指由核心设备组成的网络,系统间信息交互需要通过主网进行;子网指核心设备与其辖下的子设备共同组建的子系统内部网络,子系统内信息主要在子网内交互。核心设备既可以作为身份信息的生产者也可以作为身份信息的消费者,子设备主要作为身份的生产者,也可以作为消费者,终端通过子设备链接身份信息。需要注意的是,在不同的网络和业务层面,一个设备既可以是核心设备也可以是子设备。

2.2 服务架构设计

根据2.1节所述的网络拓扑抽象,RDID的服务架构如图5设计所示。

图5 RDID服务架构Fig.5 Service architecture of RDID

其中,服务共分为3层:

L1区块链层是RDID方案的基础设施,包括区块链和去中心化的分布式存储。其可以部署在现有的主网核心设备中,也可以作为独立业务与服务系统部署。分布式存储中保存的是整个系统完整的数字身份信息,即DID文档(DID Document)。在区块链上则锚定着这些数字身份信息的对应关系。

L2是去中心化的二层网络,是由物理网络与设备构成,主要由网络中的核心设备和运行于其上的RDID节点(R-S)组织而成。由于RDID服务只是这些设备的一部分业务,且不是其主体目标业务,所以R-S设计为轻量化服务单元,节点间依赖底层区块链共识机制来保证其一致性。节点主要业务是处理其负责的子网主体RDID操作请求,并将操作数据同步至L1的分布式存储,并将同步信息、引用信息在LI创建交易上链,这一操作可以通过区块链的智能合约接口完成。通过加入RDID节点分开主网与子网业务,提升系统业务的整体处理性能。同时在L2上还提供统一的DID解析业务(DID Resolver),与W3C定义的DID Resolver兼容,能够根据RDID查询其对应的DID Document。

L3是可信交换层,是RDID系统中各个主体互相建立安全数字身份认证与数字身份信息的数据交换层。Holder是RDID的主体,其中RDID Agent是Holder使用的DID客户端,能够处理主体的RDID相关的业务,包括但不限于创建DID、提交可验证声明请求等。Identity Hub用于保存和管理用户的数据,严格在本地使用并使用安全加密机制。基于BDS-3的位置应用在L3会被RDID Agent调用,经过处理注入RDID中。Issuer是发证方,在L3中负责为主体签发可验证声明,为主体DID所包含的具体身份属性与信息背书;Verifier应用方是使用DID的第三方主体,如应用、数据中心等。

2.3 基于BDS-PNT信息的数字身份及生成方法

RDID是主体的数字身份表达,遵从W3C的DIDs V1.0标准。主体(Holder)分类中的设备指铁路物联网中存在的实体主体,虚拟对象是指铁路物联网中流转的数据主体, RDID由上文所述运行于设备本体、上一级设备或虚拟对象生产主体中的R-S服务调用DID Agent和BDS-PNT Service生成并赋予,其生成方法如下所述:

1)获取Holder的特征信息K,通过BDS-PNT Service得到BDS时空信息tp。

2)DID Agent生成私钥与对应的RDID,并将其注入Holder。

私钥通过改进的哈希函数H计算生成,函数基础算法为SM3,基于BDS时空信息进行优化。哈希函数的输入为特征信息K,将BDS时空信息tp进行如式(1)的处理,得到16个8位二进制串,按照图6的流程作为SM3消息扩展过程的添加因子,计算H(K,tp)得到第一私钥串,计算H(H(K,tp),tp)得到第二私钥串,进一步通过Secp256k1算法派生计算得到两个私钥对应的公钥key1与key2,应对不同的应用场景。

bin_str=

[MD5(tp)[i:i+8]foriinrange(0, 128, 8)]

(1)

RDID格式定义为did:rdid:,其中

=
ripemd160(MainID):SubID

(2)

MainID定义为主体的出生ID,生成式为

base58(sha256 ())

(3)

在base DID Document中需要包含key1,key2;SubID定义为主体的生命周期ID,包含其生命周期状态信息st和流转的BDS时空信息tp-update的摘要。

图6 SM3消息扩展因子添加流程Fig.6 SM3 message extension factor addition process

3)生成DID Document并上链。

结合初始和流转节点的BDS时空信息做摘要生成MD5(tp),MD5(tp-update),与RDID一起扩展base DID Document得到DID Document,并通过合约进行上链操作,将DID Document置入分布式存储。

4)适时更新RDID与DID Document。

在流转过程中如果有生命周期状态变化或者流转节点变更,需要更新RDID中的SubID和对应的DID Document。

RDID生成流程如图7所示,所有的生成过程都在主体框架内完成。实体的DID由Holder自主生成,虚拟对象的DID由虚拟对象的生产节点(子设备以上层级)生成,流转节点更新。主体采用北斗提供的PNT时空信息,在初始化和适时更新两个层面保障RDID的唯一性、追溯性。

图7 RDID生成流程Fig.7 Service architecture of RDID

2.4 身份验证流程

RDID的流转由用户、发证方和应用方共同参与,映射到实体系统,就是拥有标识的主体(即所有铁路物联网中的设备与设备产生的需要标识的信息流)、给主体的标识签发可验证声明的可信主体(铁路物联网系统内的核心设备,可以是主网设备,也可以是子网设备)、需要检验主体身份的环节(数据信息的应用设备,需要验证所收到的信息来源可信,需要验证接入的设备是合法设备)。

在分布式信任的铁路物联网中,需要使用RDID验证授权的操作有两种(见图8):1)无需可验证声明即可承认授权的操作,例如一般状态信息流转;2)需要指定可验证声明才能承认授权的操作,例如进行安全相关的控制操作。在第一种情况中,应用方只需验证主体是RDID的拥有者即可。在第二种情况中,主体首先需要去向发证方比如数据中心,申请一个证明自己的操作有授权的声明,然后向应用方出示此声明才能完成RDID的验证。这里的可验证声明(verifiable claim)是一个 RDID 给另一个 RDID 的某些属性做背书而发出的描述性声明,并附加自己的数字签名,用以证明这些属性的真实性,可以认为是一种数字证书。可签发Claim的RDID必须具有公信力。因为可验证声明是RDID签发出来的,所以应用方只需要去链上获得此RDID的公钥即可验证声明的真伪。

图8 RDID流转Fig.8 RDID flow

身份验证过程中使用基于北斗时空信息的公私钥,执行挑战——响应机制,数据发送方或者身份验证方获取到接收方或者被验证方的RDID,在区块链检索获取到其DID Document,即可得到对应的公钥key和北斗时空信息的摘要MD5(tp-update),同时可通过北斗系统获取到当前时空信息的摘要MD5(tp-now),用公钥对MD5(tp-update) ⨁MD5(tp-now)进行加密,发送给接收方或者被验证方。接收方需要有正确的私钥与tp-update才能进行解密,并将解得的信息返回与MD5(tp-now) 比对,如果返回值正确,则表明接收方或者被验证方是RDID的合法持有者,实现身份的安全认证。时空信息是可以定时更新的,而且更新连续有规律,非法的第三方由于无法获取正确的时空信息和私钥,不能进行正确解密,也不能冒用身份。

3 应用模型与效能评估

以列车故障预测与健康管理 (prognostic and health management,PHM)系统为例,系统由列车子系统、地面子系统构成。列车子系统包括列车网控与车载PHM系统,负责收集车辆运行状态信息;地面子系统包括1)地面感知系统,负责收集地面数据;2)地面PHM系统,负责统筹PHM信息,进行数据分析,调度各系统;3)管理系统,根据获取到的车路态势提供决策功能。整个系统通过收集列车、地面设备等铁路装备的大量运行状态数据,结合模型分析,提出设备故障预测和全生命周期管理策略,所以数据的来源和安全性对于决策来说至关重要。系统如图9所示[17]。

图9 列车PHM系统Fig.9 PHM system of train

系统各部分的角色和获取时空信息的方式如下:

1)车载PHM系统、地面感知系统、地面PHM系统及管理系统是核心设备,构成主网,在主网上搭建区块链网络,分布式数据存储,负责管理存储RDID与DID Document,在核心设备上部署2.2节所定义的R-S节点,主网单元各自的北斗时空信息是其关键信息,会随区块链在网间同步;

2)配置地面PHM系统为发证方,地面PHM系统的时空信息从地面站系统的北斗接收机或等效信源获取,属于自主定位信源;

3)列车网控与车载PHM系统构成子网,列车网控角色为终端,配置车载PHM系统为应用方,子网的时空信息引用列车的车载北斗接收机的时空信息,属于共享定位信源,全车共享车辆的BDS信息;

4)地面感知系统构成子网,子网的时空信息引用地面感知系统北斗接收机或等效信源的时空信息,属于自主定位信源。

在此系统中:

1)各设备单元RDID依照2.3节定义的规则自主生成,且定期更新,由于列车为移动装备,其SubID对应的项会有随动变化。

2)消息的RDID由其生产者生成,例如由车载PHM系统收集而来的状态信息需要打包传送给地面PHM系统时,车载PHM系统负责利用当前时空信息生成消息包的RDID及DID Document,将消息的RDID与自身的RDID作为消息头一并打包发送,在数据流和数据存储中,此RDID就包含消息的追溯信息。

3)车载PHM系统收到地面感知系统来源的数据时,可向地面PHM系统申请身份验证,地面感知系统也可向地面PHM系统申请可验证声明附加在其数据包中,供车载PHM系统验证。

在实验室环境采用3台服务器(Ubuntu环境,16vCPU,32GB内存),1台工控机(Ubuntu环境,4vARM64CPU,8GB内存),6台RaspberryPi-CM4(Debian环境,4vARM64CPU,2GB内存)搭建了模拟验证环境如图10,其中服务器模拟管理系统、地面PHM系统和地面感知系统,工控机模拟车载PHM系统,树莓派模拟终端。采用以太坊Ethereum部署底层区块链网络,采用IPFS作为底层的分布式持久化存储文件系统,开发智能合约完成打包上链功能。BDS系统采用移远RM500Q提供的定位消息,部署在一台服务器和一台工控机上,从$GBGGA报文提取时空信息并以100ms周期间隔进行更新,由此产生和更新设备和消息的RDID。实测由于采用了L2分布式信任网络机制,RDID服务独立于业务运行,摘要上链的方法,系统开销较小,与不采用RDID的数据生成与传输模式没有可见的性能下降,如表1。

表1 RDID服务工作效率

图10 测试环境实景Fig.10 Test environment

在Ubuntu环境下基于Python编写模拟程序,引入基于声誉的信任度计算模型[18-19]构建仿真测试环境,对比具有BDS PNT信息的节点和没有该信息的节点。BDS PNT信息可以用于数据一致性校验和时空逻辑校验,从而增加直接信任值的信息维度和计算参数复杂度;推荐节点可基于BDS PNT信息生成相关系数作为推荐权重,动态调整推荐信任因子,以提高推荐信任值的可靠性。添加50个模拟节点,其中25个没有BDS信源、25个有BDS信源,并且两类节点中各有5个节点被设置为恶意节点,恶意节点会随机伪造BDS PNT信息,生成恶意随机数据。设定所有节点的初始信任值为0.5,按照每秒2次信息交互的速率,进行信任值迭代。统计如图11,可见加入BDS PNT信息的节点相对于没有此信息的节点,信任度能够更加迅速地响应调整,信任评估更加敏感,系统整体可信度提高。

图11 节点类平均信任值仿真Fig.11 Node average trust value simulation

由模拟试验和仿真可见,采用RDID服务的系统整体加解密机制运行良好,使用方可以通过RDID服务验证所收到的信息的所有者,验证响应的系统用时在100 ms以内,保障系统可信安全。

4 结论

1)本文创新性地利用区块链去中心化身份管理、信息不可篡改、可追溯和不可抵赖等特性结合DID技术设计了用于铁路物联网的可信数字身份服务RDID,以期利用铁路物联网本身的分布式特性为其信息安全防护提供重要工具。

2)本文根据W3C标准,结合实际应用需求设计了RDID的服务架构、生成流程、流转流程和验证流程,并结合BDS提供的时空信息优化了DID组成和验证方法,提高了RDID的可验证性和安全性。

3)后续研究会进一步优化拓展BDS的PNT时空信息在整个身份标识安全系统中的应用,包括短报文机制、精确授时和差分定位的应用。

面向铁路物联网应用对大体量设备进行分布式自主管理的需求,区块链具有的分布式计算和群体可信协作机制可以为物联网安全挑战提供有效解决方案,也可为在网设备和主体的身份认证与访问控制、全生命周期全链条的数据安全可信追溯等提供有效技术手段。

猜你喜欢

时空分布式身份
跨越时空的相遇
镜中的时空穿梭
玩一次时空大“穿越”
分布式光伏热钱汹涌
跟踪导练(三)(5)
分布式光伏:爆发还是徘徊
他们的另一个身份,你知道吗
时空之门
基于DDS的分布式三维协同仿真研究
互换身份