掌桥专利:专业的专利平台
掌桥专利
首页

基于区块链的ADS-B安全身份认证方法

文献发布时间:2024-04-18 19:58:21


基于区块链的ADS-B安全身份认证方法

技术领域

本发明属于ADS-B系统技术领域,具体涉及一种基于区块链的ADS-B安全身份认证方法。

背景技术

随着经济社会的发展,飞机成为旅客出行和货物运输的重要交通工具。美国联邦航空管理局(Federal Aviation Administration,FAA)预测到2033年,商业航空的旅客数量将增长到11.5亿,美国联邦航空管理局和欧盟启动了下一代航空运输系统(NextGen)项目和单一欧洲天空空中交通管理研究(SESAR)项目以应对日益增加的空中交通流量。广播式自动相关监视(ADS-B)与传统的一次雷达和二次雷达监视技术相比,监视技术具有高精度和低成本的特点。因此NextGen和SESAR将ADS-B视为下一代空中交通监视系统的主要组成部分。ADS-B使用全球卫星导航系统(GNSS)和惯性导航的数据融合来确定飞机的位置并定期广播,由地面接收器接收位置信息。但随着无线电广播技术和信息技术的快速发展以及ADS-B的开放性,ADS-B监视系统遭受射频干扰攻击和网络攻击的可能性不断增加。识别ADS-B系统的异常和漏洞有利于提高监视系统的准确性、完整性、连续性和可用性;减小飞机之间所需安全间隔,提高避免碰撞威胁的能力;规避恶劣天气影响,辅助飞行员和管制员做出正确战略决策。

针对ADS-B的系统安全问题,国内外主要从安全广播认证和安全位置认证两方面进行研究。安全广播认证是一种添加了身份验证的ADS-B数据链的安全强化方法,通过传输设备内嵌密钥、加入身份识别码、指纹识别等加密认证或非加密技术实现。安全位置验证是一种信号分析的方式,采用几何建模、概率分析等对航空器的位置信息的真实性进行验证,在验证信息准确性的同时也提供了更多的定位数据,导航系统出现故障时可作为应急替代方案。包括多点定位、卡尔曼滤波、距离边界、数据融合等方法。

安全广播身份认证技术中基于加密的思想能取得一定的效果,但加密手段涉及密钥管理问题,集中性的管理易受到单点故障的影响,同时不可避免的需要改变现有的消息传输协议,可行性上有一定难度,当今及未来民航空域的开放性、国际航线的丰富性等也大大增加了加密方案的实施难度。而非加密方案中仅对每个信号采用扩跳频、指纹识别等技术,敌对方可通过无源侦收方式获取大量的数据,对信号进行模拟,也可对系统造成威胁。安全位置验证技术中多点定位方式可获取目标真实位置,有效分辨恶意干扰造成的虚假信息,但在实际应用中,TDOA测量的精度和准确度会随着距离/覆盖范围的增大急剧恶化或下降,同时对部署的ADS-B IN基站的数量和空间布局要求很高。距离边界方式通过询问应答方式获取应答目标的真实位置,有效分辨恶意干扰造成的虚假信息,但主要依靠询问信号与应答信号之间的延时进行计算距离,若对敌对方目标进行询问,敌对方可修改应答延时来使询问方定位出错。卡尔曼滤波可对航迹变化进行预测,但是可能会被煮蛙效应攻击误导,将伪装轨迹误判为真实目标轨迹。组验证可通过空中多机系统获取目标真实位置,有效分辨恶意干扰造成的虚假信息,但在民航空域布置空中飞机阵型的难度较大。

发明内容

有鉴于此,本发明的目的在于针对ADS-B系统中ADS-B通过开放和未加密的信道广播信息,容易受到各种蓄意入侵和攻击,存在很大的安全隐患问题,提供一种基于区块链的ADS-B安全身份认证方法。

为达到上述目的,本发明提供如下技术方案:

一种基于区块链的ADS-B安全身份认证方法,包括以下步骤:

S1:区块链系统设置阶段,ADS-B地面站形成联盟链,地面站作为链上全功能节点,具有创块和验证功能;航空管理局(Civil Aviation Administration,CAA)产生创世区块,布置智能合约和设置系统的PBFT共识算法;

S2:区块链系统注册阶段,飞机或地面站用户本地生成公私钥对,将公钥和其身份信息发送给CAA,CAA对用户公钥设定有效期,将用户的身份信息、公钥、公钥有效期及相关签名发送回用户;CAA将一段时间的用户公钥信息组成注册列表及其签名发送给ADS-B地面站节点,地面站节点验证通过后,运行PBFT共识算法触发智能合约将公钥信息列表上链;

S3:区块链系统认证阶段,飞机起飞前注入同步地面站最新的公钥列表,在飞行过程中,包括:地面站对飞机认证,飞机对地面站认证以及飞机对飞机认证;认证过程是针对报文信息解析查询链上或本地存储的对应公钥进行哈希签名验证,验证成功则接收相应信息,否则进行丢弃;

S4:链上公钥更新阶段,用户在私钥丢失以及新成员加入系统时,本地生成新的公私钥对发送给CAA;CAA将一段时间更新的公钥列表发送给地面站节点,地面站节点对更新的公钥列表进行签名和共识验证成功后触发智能合约的公钥更新功能,将用户更新的公钥列表上链;

S5:链上公钥撤销阶段,CAA若检测到用户私钥丢失或用户公钥有效期失效会触发智能合约的公钥撤销功能将用户链上公钥信息进行删除;若检测到联盟链系统用户出现非法行为,则对该用户的非法行为进行累计,超限值则触发智能合约的公钥撤销功能。

进一步,步骤S1中,ADS-B地面站作为全功能节点组成一个联盟链,具有创块和验证功能,链上保存报文传输安全身份认证的有关公钥PK;航空管理局给每个ADS-B地面站区块节点创建一个区块链账户,并发起产生创世区块、布置智能合约和设置实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)共识方法;

(1)创世区块生成首先航空管理局生成消息并进行签名,将签名的消息通过安全通道传送给所有地面站节点,地面站节点收到CAA的签名消息后进行验证签名,验证通过后由见证节点在PBFT机制下写入新块,然后见证节点立即传播该区块,共识完成后将消息写入区块;如果签名验证未通过,节点发出有关CAA被黑客入侵或伪CAA攻击的警告消息,共识完后写入区块,通过人工干预来检查和恢复CAA,至此创世区块完成;

(2)智能合约布置:CAA设置智能合约内容并对合约进行签名,然后将合约通过P2P发送给每个节点,节点对合约内容进行验证,并运行PBFT共识协议,将合约写入区块并广播;合约布置成功后区块链自动创建合约地址;只有航空管理局和区块链的每个节点能发送交易触发智能合约的执行,智能合约具有注册、公钥列表更新、公钥列表撤销功能。

进一步,步骤S2中,飞机和地面站统称为用户,首先确认身份信息ID,并本地生成一个公私钥对,将其身份信息和公钥安全通道发给CAA,CAA查询身份信息若未被申请过则给该用户分配一个公钥有效期,然后进行签名后发送给用户。CAA可以将一段时间的用户公钥组成注册列表list

进一步,步骤S3中,飞机起飞前,飞机i先同步地面站的公钥列表信息,以备飞行过程中方便查询使用;在飞行过程中,系统认证包括地面站对飞机认证,飞机对地面站认证,飞机对飞机认证;

地面站对飞机认证:飞机将生成的当前时间戳、广播信息及对广播信息进行的签名嵌入ADS-B的报文ME字段里,身份信息嵌入AA字段里,然后进行报文广播;最早收到报文信息的ADS-B地面站解析报文信息,根据飞机的身份信息链上查询相应的公钥以及公钥有效期并对签名信息进行验证,PBFT共识通过后则接收飞机i的报文信息,否则进行丢弃;

飞机对地面站认证:ADS-B地面站若收到CAA更新的用户的公钥列表

飞机对飞机认证:飞机A将生成的当前时间戳、报文信息以及对报文信息的签名嵌入到ADS-B报文的ME字段里,将身份信息嵌入到AA字段里,然后进行报文广播;飞机B若收到飞机A的报文信息,解析报文根据飞机A的身份信息查询本地存储的公钥列表找到对应的公钥和公钥有效期;验证时间戳以及飞机A的签名,通过后则对飞机A的报文信息进行接收,否则判定飞机A为非法用户,对其信息进行丢弃。

进一步,步骤S4中,飞机或地面站用户私钥丢失时需要生成新的公私钥对(NewPK,NewSK),将身份信息和新的公钥通过安全通道发送给航空管理中心CAA,CAA根据身份信息查询对应的前公钥信息并将其删除,将新公钥信息进行本地存储;当新成员用户加入时,本地生成新的公私钥对(NewPK,NewSK),同样将身份信息和新公钥通过安全通道发送给CAA,CAA根据身份信息确认是否已申请,若未申请则将新公钥信息进行本地保存;CAA对新公钥设定新的有效期,将用户身份、对应新公钥、新公钥有效期以及相应签名通过安全通道发送给用户;

CAA将一段时间的公钥更新列表进行签名,将更新的公钥列表以及对应签名发送给地面站节点,地面站节点对签名进行验证,验证成功后运行共识协议触发智能合约的公钥更新功能,将用户新的公钥信息列表添加到区块链上。

进一步,步骤S5中,当用户的私钥丢失或者公钥有效期失效,若CAA查询到则触发区块链智能合约的公钥撤销功能,将用户链上对应公钥进行撤销;当任意的地面站检测到某个飞机有恶意行为,如果验证不是合法飞机则不进行通信,如果是系统里的合法用户则将飞机的恶意行为记录上链,飞机的链上恶意行为记录超过一定限值就会触发区块链的智能合约的公钥撤销功能,将该飞机的链上公钥进行撤销。

本发明的有益效果在于:本发明基于区块链自身分布式、透明性、可追溯、防篡改等安全特性,提出一种融合的联盟区块链架构方案,解决了ADS-B信息公开,容易受到截取、篡改等攻击问题,填补其隐私漏洞,保障了ADS-B系统网络可靠运行与各成员间通信安全。摆脱了ADS-B传统密钥管理方案对公钥基础设施(Public Key Infrastructure,PKI)的依赖,对单点故障具有更强的鲁棒性。采用智能合约技术,实现了用户公钥在区块链上自动注册、更新和撤销,提高了密钥管理效率。同时区块链架构里身份认证方式采用数字签名的方法,对消息进行签名来保证信息的完整性和认证性,保障了ADS-B系统成员之间的安全认证,避免非法用户作恶及加入,最终达到保证空中交通运营的安全与高效。

本发明的其他优点、目标和特征将在随后的说明书中进行阐述,并且在某种程度上对本领域技术人员而言是显而易见的,或者本领域技术人员可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。

附图说明

为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:

图1为基于区块链的ADS-B系统安全架构图;

图2为ADS-B报文数据块和修改图;

图3为系统认证阶段示意图。

具体实施方式

图1为本发明结合ADS-B系统高开放、高实时、多节点要求,设计的基于联盟区块链的ADS-B系统安全架构。区块链高性能共识算法技术和节点之间智能合约执行,为ADS-B系统基于区块链应用安全技术性能提供了保障。该架构包括5个部分:区块链系统设置阶段、区块链系统注册阶段、区块链系统认证阶段、链上公钥更新、链上公钥撤销。

步骤1:区块链系统设置阶段

区块链是一种按照时间顺序将数据区块以链条的方式组合而成的特定数据结构,并以密码学方式保证的不可篡改和不可伪造的去中心化共享总账。ADS-B系统的安全需求与区块链技术特征(去中心化、防篡改及可追溯性)不谋而合。系统中所有节点权利平等,并且有较好的容错能力。利用区块链技术在分布式节点间建立信任关系,能解决中心化低效率与数据不安全等问题。联盟链是介于公私链之间的一种区块链,由每个节点对应的各方实体组成的联盟共同维护。本发明为了加强ADS-B报文的安全传输,防止恶意欺骗的ADS-B报文信息,ADS-B地面站形成联盟链,链上地面站作为全功能节点,具有创块和验证功能。把区块链技术与ADS-B报文传输安全需求结合为一体,称之为ADS-B报文联盟链,为了实现飞机与地面站、飞机与飞机之间的实时安全传输,防止恶意用户干扰,开启报文传输安全身份认证的有关公钥PK由区块链技术实现。

航空管理局通过账户生成工具为每个地面站节点创建一个区块链账户(公钥信息是用户在区块链上的地址),CAA发起产生创世区块,然后CAA布置智能合约和设置PBFT共识算法,地面站创世区块形成方式和智能合约布置如下。

(1)创世区块生成:CAA生成一个消息m

(2)智能合约布置:为了运行ADS-B报文联盟链,CAA设置合约内容,为了确保合约的有效性,CAA对合约进行签名,然后将合约通过P2P发送给每个节点,节点对合约内容进行验证,并运行PBFT共识协议,将合约写入区块并广播。合约布置成功后区块链会自动创建合约地址,只有航空管理局和区块链的每个节点可以发送交易触发智能合约的执行,智能合约具有注册、公钥列表更新、公钥列表撤销等功能。

步骤2:区块链系统注册阶段

区块链普遍采用工作量证明(Proof of Work,POW)共识机制达成共识,不适合ADS-B系统实时快速认证的需求。本发明,ADS-B地面站组成联盟链网络,改用实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)算法共识机制,缩短出块时间以满足ADS-B系统快速达成共识的需求,同时可容忍小于1/3个无效或者恶意节点。

飞机和地面站(统称为用户U)首先确定身份信息ID,飞机的身份信息为国际民航组织(ICAO)分配给飞机的全球唯一24位地址。用户U本地生成一个公私钥对(PK

CAA将包含一段时间内的用户公钥PK

步骤3:区块链系统认证阶段

认证过程基于区块链的哈希函数的单向性、数字签名不可否认等性质将ADS-B系统报文等相关数据存储至区块链,若攻击者妄图篡改数据,不仅要修改当前区块的哈希值,还要修改所有区块的哈希值,极大增加了攻击难度和成本。

1飞机起飞前

飞机起飞前需要同步地面站最新的公钥列表获取list

2飞机飞行过程中

1)地面站对飞机的认证

飞机i生成当前时间戳t

最早收到报文的ADS-B地面站解析报文获取{ID

2)飞机对地面站的认证

ADS-B机载具有ADS-B IN和ADS-B OUT收发功能,目前ADS-B OUT功能完备,在实际使用中ADS-B IN功能在飞机与飞机之间得以验证,但在接收ADS-B地面站报文时还不够完善,但是IN功能已经在不断规划实现中,我们假设ADS-B IN功能是完备的,可以实现基于区块链的ADS-B架构中地面站给飞机传输信息,因而飞机可以获取架构中最新的用户公钥列表,提高了飞机对飞机的实时身份认证的效率,图3为本发明的系统认证框图。

ADS-B地面站若收到CAA更新的最新的用户(新增或撤销)公钥列表

3)飞机对飞机的认证

飞机A同样生成当前时间戳t

飞机B若收到报文信息,首先解析报文获取{ID

步骤4:链上公钥更新

由于公钥被区块链广播,容易被联盟链之外的用户掌握,为了防信息被盗用或攻击,用户U(飞机或地面站)在私钥丢失时,可重新生成新的公私钥对(NewPK

CAA将用户身份公钥更新列表l′的信息list

步骤5:链上公钥撤销

如果用户的私钥丢失或者被盗,或者区块链上的用户出现非法行为,需要及时撤销对应的公钥,可以保证系统通信的安全性。

如果合法用户的私钥丢失,或者VP失效,若CAA查询到,则CAA会触发区块链智能合约的revokePK,将用户的撤销交易r=

若任意地面站G检测到飞机i的恶意行为,如果是非法飞机则不进行通信,如果是系统里合法用户,则会发送飞机i恶意行为交易

飞机恶意行为包括:自毁、攻击、窃听、伪造、漏洞等情形,不同恶意行为可能会造成不同程度的后果,这些恶意行为可以根据造成的后果严重程度进行分类分级,大致可分为以下三级:第一级,破坏信息的完整性;第二级,破坏信息的有效性;第三级,破坏信息的私密性。对恶意行为进行分类分级,是便于对恶意行为进行有效管理和提前防范。

最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。

相关技术
  • 基于区块链的电力系统安全稳定控制终端身份认证方法
  • 一种基于区块链的工业物联网设备身份认证及安全交互方法
技术分类

06120116481717