CN113807700B - 基于区块链的飞机在翼指挥调度发布、接收方法及系统 - Google Patents
基于区块链的飞机在翼指挥调度发布、接收方法及系统 Download PDFInfo
- Publication number
- CN113807700B CN113807700B CN202111097145.4A CN202111097145A CN113807700B CN 113807700 B CN113807700 B CN 113807700B CN 202111097145 A CN202111097145 A CN 202111097145A CN 113807700 B CN113807700 B CN 113807700B
- Authority
- CN
- China
- Prior art keywords
- instruction
- blockchain
- command
- chain code
- end node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000012544 monitoring process Methods 0.000 claims description 22
- 230000008520 organization Effects 0.000 claims description 22
- 238000012795 verification Methods 0.000 claims description 17
- 238000011217 control strategy Methods 0.000 claims description 12
- 230000000977 initiatory effect Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 abstract description 13
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000004891 communication Methods 0.000 description 6
- 239000004744 fabric Substances 0.000 description 6
- 238000013461 design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000010006 flight Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- Health & Medical Sciences (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Bioethics (AREA)
- Quality & Reliability (AREA)
- Primary Health Care (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于区块链的飞机在翼指挥调度发布、接收方法及系统。在本发明中首先结合智能合约一旦满足条件就会完整执行的特点和传统权限控制模型的优势设计基于链码的指令调度权限控制模型,对指令元数据进行权限认证;其次在区块链数字签名技术保障指令数据传输安全的同时,利用接收端节点链码事件监听器保证指令的有效传达,并将相关指令存于区块链网络从而保证指令的可追溯性。本发明利用区块链技术进一步提高了指挥调度指令传输的安全性和可追溯性,有效解决远程指令的认证、安全存储和调度责任认定的问题。
Description
技术领域
本发明涉及区块链技术和民航地空通信领域,特别是涉及一种基于区块链的飞机在翼指挥调度发布、接收方法及系统。
背景技术
当前对于如何高效合理的调度机场地面服务的各种资源、保障地面站与航空飞机间的通信安全以及确保调度指令传输有效性等问题受到广泛讨论,这些都对地面各运营部门指挥调度系统的建设提出了更高的要求。现有的指挥调度系统大多采用专有通讯频道或限制指挥端、接收端网络节点的方式,将指令元数据以特定格式和通讯协议进行传输,以此保障指令信息的真实性;然而在空管、机场和航空公司等多组织间数据通信更加紧密的背景下,由于对电信运营商提供的基础设施依赖度过高,这种方式仍然存在着匿名攻击和网络窃听的风险。此外,中心化系统下指挥调度的历史数据存在着被内部人员恶意篡改的可能,通讯协议和加密手段的泄露也会带来极大的风险。
因此,如何设计一种能够提高指挥调度指令传输的安全性和可追溯性的飞机在翼指挥调度发布、接收方法及系统,成为本领域当前要解决的问题。
发明内容
本发明的目的是提供一种基于区块链的飞机在翼指挥调度发布、接收方法及系统,以解决现有技术下的指挥调度指令传输安全性低,以及不可追溯的问题。保证复杂网络拓扑中相关调度指令发起的有效性、流转过程中指令的有效传达和历史数据的可追溯性。
为实现上述目的,本发明提供了如下方案:
一种基于区块链的飞机在翼指挥调度发布方法,该发布包括:
获取身份认证通过后的指挥端节点所在区块链客户端发起的调度请求所产生的指令元数据;所述指挥端节点为飞机在翼指挥场景中调度员对应的客户端;
从链码的共享账本中获取权限控制策略,通过所述权限控制策略对所述指令元数据进行权限识别;
将权限识别通过后的所述指令元数据上链并发布对应的链码事件;所述指令元数据存储于所述共享账本中,所述链码事件为调度请求中需要相应接收端节点执行的相关事件。
可选的,所述调度请求的认证过程包括:
通过MSP服务对发起调度请求的用户身份和节点身份进行验证;其中,所述用户身份和节点身份为在区块链网络搭建时给各用户和节点分配的公私钥和证书后的身份;或通过指挥端节点所在区块链客户端动态的向区块链网络中指挥端的中间CA节点注册的身份。
可选的,所述指令元数据的产生方法包括:
将所述调度请求进行封装签名,得到所述指令元数据。
可选的,所述从链码的共享账本中获取权限控制策略,通过所述权限控制策略对所述指令元数据进行权限识别具体包括:
获取用户对应的权限和属性策略,将所述指令元数据包含的信息与所述权限和属性策略进行比对,得到验证结果;
将所述验证结果返回所述指挥端节点所在的区块链客户端;
若所述调度员对其他接收端的接收端节点发起指令请求,则验证无法通过,所述调度员需要进一步提交权限申请,并将所述验证结果返回所述指挥端节点所在的区块链客户端。
可选的,所述存储于共享账本中的指令元数据还用于监察端节点所在区块链客户端发起的查询,所述监察端节点为飞机在翼指挥场景中监察端对应的客户端。
本发明还提供了一种基于区块链的飞机在翼指挥调度接收方法,该接收方法包括:
通过链码事件监听器监听由接收端节点所在区块链客户端获取的链码事件;所述链码事件为基于区块链的飞机在翼指挥调度发布方法发布的链码事件;
对所述链码事件进行解析,得到指令信息;
将所述指令信息发送至接收端节点,使所述接收端节点完成相应的指令;所述接收端节点为飞机在翼指挥场景中飞机对应的客户端。
可选的,在将所述指令信息发送至接收端节点,使所述接收端节点完成相应的指令步骤后,还包括:
生成指令反馈数据,并将所述指令反馈数据发送给接收端的区块链客户端;
通过所述接收端的区块链客户端将所述指令反馈数据发送至所述区块链网络进行存储。
可选的,所述通过链码事件监听器监听由接收端节点所在区块链客户端获取的链码事件具体包括:
获取加入当前区块链网络的接收端节点身份信息;
根据所述接收端节点身份信息获取指定的交易通道;
向所述交易通道中添加本组织的排序节点和同步节点的实例化对象;
根据所述实例化对象实例化链码事件监听器类并重写事件处理器,得到实例化后的监听器;
向所述交易通道注册所述实例化后的监听器;
根据所述实例化后的监听器不断获取消息队列中的最新链码事件,并判断是否产生针对该接收端节点的新的指令;
若否,则返回步骤“根据所述实例化后的监听器不断获取消息队列中的最新链码事件”;
若是,则将所述新的指令交由接收端节点等待指令执行。
本发明还提供了一种基于区块链的飞机在翼指挥调度系统,该调度系统包括:指挥端、区块链网络和接收端;
所述指挥端用于发起调度请求,对所述调度请求进行封装签名,得到指令元数据,并将所述指令元数据发送至所述区块链网络;
所述区块链网络用于对发起调度请求的用户身份和节点身份进行验证、对所述指令元数据进行权限识别、存储所述指令元数据并发布对应的链码事件和存储指令反馈数据;
接收端用于监听所述链码事件,识别所述链码事件中包含的指令信息,根据所述指令信息执行相应的指令,并生成指令反馈数据,将所述指令反馈数据发送至所述区块链网络进行存储。
可选的,还包括:监察端;
所述监察端用于发起查询指令,将所述查询指令发送至所述所述区块链网络,检查所述区块链网络中所有的历史调度记录,完成调度责任的认定。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供了一种基于区块链的飞机在翼指挥调度发布、接收方法及系统,本发明中所有指令的发送都需要经过权限认证,只有在用户身份合法前提下满足接收端节点访问权限和属性策略的过滤后才会通过权限认证,进而发送有效的远程调度指令。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种基于区块链的飞机在翼指挥调度发布方法流程图;
图2为本发明实验场景设计图;
图3为本发明权限控制模型图;
图4为本发明基于链码的权限控制模型业务流程图;
图5为本发明实施例2提供的一种基于区块链的飞机在翼指挥调度接收方法流程图;
图6为接收端节点链码事件监听器执行流程图;
图7为本发明实施例3提供的一种基于区块链的飞机在翼指挥调度系统的结构示意图;
图8为本发明调度指令流转的流程图;
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
区块链作为一种融合了加密算法、共识机制和智能合约的创新技术,其防篡改、可追溯等特性已在数字金融、智慧物流等多个领域得到验证;而联盟链作为区块链的一种,其介于公有链和私有链之间,具有严格的身份管理机制,任何节点的参与或用户数据的交易都需要经过身份认证,网络由组织指定的多个权威节点控制,可以看成局部的中心化和整体的去中心化。
针对现有的中心化指挥调度系统面临的数据安全问题,本发明提出一种借助于超级账本Fabric联盟链的飞机在翼指挥调度方案,旨在探索利用区块链技术进一步提高指挥调度指令传输的安全性和可追溯性,实现远程指令的认证、安全存储和调度责任的认定。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1:
请参阅图1,本发明提供了一种基于区块链的飞机在翼指挥调度发布方法,该发布包括:
S1:获取身份认证通过后的指挥端节点所在区块链客户端发起的调度请求所产生的指令元数据;所述指挥端节点为飞机在翼指挥场景中调度员对应的客户端;
S2:从链码的共享账本中获取权限控制策略,通过所述权限控制策略对所述指令元数据进行权限识别;
S3:将权限识别通过后的所述指令元数据上链并发布对应的链码事件;所述指令元数据存储于所述共享账本中,所述链码事件为调度请求中需要相应接收端节点执行的相关事件。
在步骤S1中,所述调度请求的认证过程包括:
通过管理服务提供商(MSP)服务对发起调度请求的用户身份和节点身份进行验证;其中,所述用户身份和节点身份为在区块链网络搭建时给各用户和节点分配的公私钥和证书后的身份;或通过指挥端节点所在区块链客户端动态的向区块链网络中指挥端的中间CA节点注册的身份。在本发明中,所有组织节点和用户身份信息均建立在公钥基础设施(PKI)体系之上,Fabric实现了通过MSP来对网络中不同机构成员进行身份识别与管理,任何网络外的恶意节点均无法通过身份认证。
在步骤S1中,所述指令元数据的产生方法包括:
将所述调度请求进行封装签名,得到所述指令元数据。这里的封装签名是使用区块链的数字签名技术保证数据在区块链网络中传输的正确性。数字签名技术使得第三方在不拥有签名方核心权限的前提下即可验证签名方是否对数据对象表达了确认,保证调度指令由特定发送方发起和传输过程中没有被篡改,即为有效性和完整性。指挥端节点所在区块链客户端会将封装签名后得到的指令元数据发送交易提案至背书节点。运行于背书节点的链码逻辑根据存储于权限控制列表和权限控制策略对指令元数据进行权限识别(在invoke函数中逻辑程序),若识别通过,则会将指令元数据存储于区块链中并发布对应的链码事件,若不通过则会拒绝该交易提案。
在步骤S2中,所述从链码的共享账本中获取权限控制策略,通过所述权限控制策略对所述指令元数据进行权限识别具体包括:
S21:获取用户对应的权限和属性策略,将所述指令元数据包含的信息与所述权限和属性策略进行比对,得到验证结果;
S22:将所述验证结果返回所述指挥端节点所在的区块链客户端;
S23:若所述调度员对其他接收端的接收端节点发起指令请求,则验证无法通过,所述调度员需要进一步提交权限申请,并将所述验证结果返回所述指挥端节点所在的区块链客户端。
所述存储于共享账本中的指令元数据还用于监察端节点所在区块链客户端发起的查询,能够实现调度指令的追溯。所述监察端节点为飞机在翼指挥场景中监察端对应的客户端。
在本实施例中,指挥调度方案建立在各组织间搭建的Fabric联盟链基础之上,如图2所示,本发明设置如下场景,有机场服务org1、空管org2和飞机节点org3三个组织,各组织下设置有三个Peer节点,其中org3的三个Peer节点代表不同飞行航班,采用Kafka提供数据排序服务。
以org1的调度员对org3的飞行航班发送数字调度指令为例,调度指令由调度员在指挥端节点peer0.org1通过区块链客户端发起,org3的各飞行航班为接收端节点,分别运行链码事件监听器,持续监听网络中发布的对应链码事件,接收端节点根据远程指令执行相关操作并将指令执行反馈数据上链,由共享账本同步至整个区块链网络所有节点。
指挥端为指令流转的初始阶段,其生成的指令元数据信息(IMD)由用户信息、指挥端信息、接收端信息和具体操作指令四部分组成,格式为{user:[{name:用户名,org:用户所属组织}],com:[{node:指挥端节点名称,addr:节点IP地址}],acc:[{node:接收端节点名称}],oper:[{req:请求类型,cmd:操作指令}]}。
各调度员发起调度请求时都需由本组织下MSP对该节点和调度员身份信息进行验证,若合法,则执行后续步骤,即将IMD通过发起交易提案与通道用户链码进行交互,若不合法则直接拒绝交易。在交易提案中需要指定对应的链码名称和数据写入函数。
另外,结合指挥调度基本业务场景和涉及的人员角色,利用基于角色的访问控制模型(RBAC)和基于属性的访问控制模型(ABAC)构建权限控制模型。
本发明设计的方案中涉及有调度员、监察员、组织管理员三类用户角色,其中调度员即为交通指挥员,负责根据当前各航班运行情况发送远程指令,为保障各航班正常飞行提供服务;监察员负责监察指定调度员的历史调度记录和指令执行情况完成调度责任认定;组织管理员负责组织下用户身份的管理和对应资源权限策略的上传与修改。方案中角色与权限具有严格对应关系以及权限授予规则的不变性,结合RBAC模型将用户角色、权限等信息存储于区块链网络中,并将RBAC模型在链码中完成并安装到各节点上,利用区块链中数据记录的不可篡改性以及链码的公开性保障指令数据传输和记录的安全性。
本发明为进一步防止因用户身份信息的丢失或泄密导致网络中远程指令被恶意篡改采用限制指令发送的指挥端节点信息,这时需要考虑到远程指令数据的环境因素,因此在RBAC模型的基础上引入ABAC模型的实体属性元素。所述权限控制模型如图3所示,即用户发起会话时首先根据用户属性从区块链的共享账本中获取所属角色。根据角色进一步获取不同资源的基本权限,但具体环境下的权限还需进一步确认、增减,于是进行下一步操作。根据设定的策略来决策其对资源进行操作的权限范围,即利用资源、环境和操作等属性进一步过滤掉不符合要求的操作权限。
本发明中权限控制模型在基于链码的实现过程中,依据上述设计,可以划分为四个子模块,分别为权限管理模块、权限决策模块、权限授予模块和权限请求模块。具体的权限控制业务流程如图4所示:
组织管理员发起权限设置请求,在经权限决策模块认证通过后,通过权限管理模块设置系统权限控制列表,即用户与角色、角色与权限的基本关联信息,同时上传本组织下接收端节点的信息及其权限控制策略;
调度员在指挥端节点的客户端对某接收端节点发起远程指令,权限请求模块拦截和识别指令元数据信息封装后发送给权限决策模块。
权限决策模块通过指令元数据信息从权限管理模块获取用户对应的权限和属性策略,并将指令元数据包含的信息与所属权限和各属性策略进行比对,将验证结果返回给权限请求模块,然后通过权限请求将所述验证结果返回所述指挥端节点所在的区块链客户端。即权限决策模块先判断角色权限是否合法,指令请求是否可行,再将结果返回给权限请求模块,权限请求模块将结果返回到指挥端节点所在的区块链客户端,指令是否有效指挥端都要知晓。
若所述调度员对其他接收端的接收端节点发起指令请求,则验证无法通过,所述调度员需要进一步提交权限申请,并将所述验证结果返回所述指挥端节点所在的区块链客户端。
然后,提取指令元数据IMD包含的各属性值,依据各属性值在链码中的权限控制模型完成权限认证。具体包括:
a)提取IMD中user字段的name和org属性值,将两者利用链码函数createCompositeKey()组合成的值为key,使用getStringState()在区块链账本获取其最新角色信息,若为非调度员角色则直接拒绝该交易提案。
b)再由获取的角色信息利用同样的方式获取该角色对哪些飞机接收端节点具有操作权限以及具体的操作属性,若不包含对IMD中acc字段的node值所代表节点操作权限则直接拒绝该交易提案。
c)进一步提取IMD中com、acc和oper等代表环境、资源和操作等属性值与各组织下组织管理员设置并存储在区块链中的权限控制策略一一对比,若匹配成功则执行下一步,否则直接拒绝该交易提案。
最后,用户身份认证和指令权限认证通过后封装的指令元数据在交易提案中完成上链并发布事件。具体包括:
(1)提取指令元数据中acc字段数据,并以该字段中node值为key查询步骤二存储的对应的接收端节点信息,包括接收端节点的IP和当前状态值,若获取的状态值为close则表示部署在对应飞机接收端节点的链码事件监听器处于关闭状态,此时直接拒绝交易提案。
(2)指挥端节点发起的指令元数据通过区块链网络的MSP完成身份认证和链码中权限控制模型的权限认证后被认为是有效指令,此时在链码逻辑中会将接收端节点IP地址、状态值和时间戳添加进去,进一步封装该指令元数据(EIMD)。
(3)发起的交易提案中通过在链码的数据写入函数中使用putStringState()将EIMD上链存储并利用SetEvent()发布事件,其中SetEvent()中传入的key为接收端节点名称和IP通过createCompositeKey()组合成的值,value值则为EIMD。
实施例2:
请参阅图5,本发明提供了一种基于区块链的飞机在翼指挥调度接收方法,该接收方法包括:
M1:通过链码事件监听器监听由接收端节点所在区块链客户端获取的链码事件;所述链码事件为基于区块链的飞机在翼指挥调度发布方法发布的链码事件;
M2:对所述链码事件进行解析,得到指令信息;
M3:将所述指令信息发送至接收端节点,使所述接收端节点完成相应的指令;所述接收端节点为飞机在翼指挥场景中飞机对应的客户端。
在步骤M3之后,还包括:
M4:生成指令反馈数据,并将所述指令反馈数据发送给接收端的区块链客户端;
M5:通过所述接收端的区块链客户端将所述指令反馈数据发送至所述区块链网络进行存储。
如图6所示,在步骤M1中,通过链码事件监听器监听由接收端节点所在区块链客户端获取的链码事件具体包括:
M11:获取加入当前区块链网络的接收端节点身份信息;
M12:根据所述接收端节点身份信息获取指定的交易通道channel;
M13:向所述交易通道channel中添加本组织的排序节点Orderer和同步节点Peer的实例化对象;
M14:根据所述实例化对象实例化链码事件监听器类并重写事件处理器,得到实例化后的监听器;在该处理器中将接收到的链码事件转发给接收端节点并反馈数据上链存储;
M15:向所述交易通道channel注册所述实例化后的监听器;需要传入监听的链码名称chaincodeId、匹配的事件eventName和已实例化的监听器,其中chaincodeId和eventName需要与实施例1中利用SetEvent()发布链码事件时传入的信息一致;
M16:根据所述实例化后的监听器不断获取消息队列中的最新链码事件,并判断是否产生针对该接收端节点的新的指令;
若否,则返回步骤M16;
若是,则将所述新的指令交由接收端节点等待指令执行,并将指令执行的反馈数据封装后通过交易上链存储。此外,若收到取消监听注册的消息则将该将监听器停止运行,并在停止运行前通过区块链客户端将该状态值写入区块链。
在本实施例中,每一个加入当前区块链网络中的飞机节点既是作为一个可以同步所有业务数据的对等Peer节点,同时又是作为接收相关指令调度的接收端节点;
每一个飞机接收端节点上都要部署对应的链码事件监听器,用于持续监听区块链网络中发布的针对该接收端节点的链码事件;
被确定为有效指令的指令元数据会通过向区块链网络发起一笔交易完成上链存储,而交易是当前唯一可以发出Event的操作,并且每一笔交易最多只能发出一个Event事件,从而保证EIMD在上链时能够被接受端节点监听器监听并识别。
接收端节点通过实例化后的监听器监测到对应事件并提取相关指令后,无论是否成功执行相关操作都需要将执行的反馈数据通过区块链客户端与链码交互上链,其中链码中执行逻辑为先获取已封装的指令元数据,然后再将反馈数据(IFD)追加进去,从而完成指令反馈数据的封装并上链。
实施例3:
请参阅图7,本发明还提供了一种基于区块链的飞机在翼指挥调度系统,该调度系统包括:指挥端、区块链网络和接收端;
所述指挥端用于发起调度请求,对所述调度请求进行封装签名,得到指令元数据,并将所述指令元数据发送至所述区块链网络;
所述区块链网络用于对发起调度请求的用户身份和节点身份进行验证、对所述指令元数据进行权限识别、存储所述指令元数据并发布对应的链码事件和和存储指令反馈数据;
接收端用于监听所述链码事件,识别所述链码事件中包含的指令信息,根据所述指令信息执行相应的指令,并生成指令反馈数据,将所述指令反馈数据发送至所述区块链网络进行存储。
具体的,所述调度系统还包括:监察端;
所述监察端用于发起查询指令,将所述查询指令发送至所述所述区块链网络,检查所述区块链网络中所有的历史调度记录,完成调度责任的认定。
其中,区块链网络利用超级账本Fabric搭建多组织间协作数据共享平台,主要提供以下服务:
第一,由不同组织的中间CA提供对应组织节点和用户身份认证的MSP服务,使得即使某一组织下身份认证私钥泄露也只会影响该组织的身份认证服务;
第二,提供在多组织间数据共享的分布式账本,指挥调度过程中的指令元数据IMD、指令反馈数据FID都存储在这里,以及用于权限控制的用户、角色、权限三者关系的信息(即权限控制列表)和权限控制策略也存储在这里;
第三,提供用于处理指令流转的用户链码,方案中设计的权限控制模型(在具体实现过程中分为权限管理、权限决策、权限请求和权限授予四个子模块,都是在invoke函数的分支逻辑中实现)在该用户链码逻辑中实现,而处于区块链网络中的每个组织下的Peer节点容器中都会运行该链码。(Peer节点即为超级账本Fabric区块链平台中用于背书(模拟交易)和同步存储所有数据的节点)(这里的链码也就是智能合约的含义,超级账本Fabric这个区块链平台中将其称为链码)
指挥端进程主要包含利用Fabric SDK建立的区块链客户端。调度员可以在本组织下的指挥端节点(即该组织下的被赋予发起调度请求权限的Peer节点)通过该区块链客户端发起调度请求,即产生指令元数据IMD,此时区块链客户端会向区块链网络发起交易提案至作为背书角色的Peer节点。运行于区块链网络中的用户链码为各节点用户与共享账本交互的媒介,其包含的权限控制模型可以对指挥端发起的调度指令元数据进行权限识别,保证远程指令的有效性。
接收端进程包括区块链客户端和链码事件监听器,每个作为接收端角色的Peer节点都需要安装对应的区块链客户端和链码事件监听器。链码事件监听器用于持续监听(Listener)区块链网络中所发布的链码事件(当指令元数据验证通过会在链码逻辑中使用SetEvent()发布对应链码事件,并将对应指令信息传递到该事件中),并将接收到的链码事件中的指令信息转发至该接收端节点,当该接收端节点执行完链码事件中对应的指令后再将指令反馈数据通过区块链客户端上链存储。(上链存储同样是采用发起交易提案的方式,即通过触发链码中invoke函数,俗称Invoke合约)。
监察端进程主要是为完成指令追溯的功能。监察员可通过部署于作为监察端角色的Peer节点的区块链客户端发起查询指定调度员的历史调度指令的请求(是通过触发链码中query函数)。
如图8所示,调度系统的整体工作流程为:
首先,调度员在指挥端节点的客户端界面发起调度请求产生指令元数据,并通过区块链客户端与组织下MSP交互完成调度员身份验证。
然后,部署于链码中的权限控制模型从共享账本中获取对应的权限控制策略,与用户的角色、权限和指令元数据内容进行比对完成权限认证。
其次,用户身份认证和指令权限认证通过后封装的指令元数据在交易提案中完成上链并发布链码事件。
最后,部署于接收端节点的链码事件监听器监听到网络中相关链码事件并解析后转发给接收端节点完成指令请求,并将指令执行反馈数据通过区块链客户端完成上链存储。
综上,在本发明中首先结合智能合约一旦满足条件就会完整执行的特点和传统权限控制模型的优势设计基于链码的指令调度权限控制模型,对指令元数据进行权限认证;其次在区块链数字签名技术保障指令数据传输安全的同时,利用接收端节点链码事件监听器保证指令的有效传达,并将相关指令存于区块链网络从而保证指令的可追溯性。本发明利用区块链技术进一步提高了指挥调度指令传输的安全性和可追溯性,有效解决远程指令的认证、安全存储和调度责任认定的问题。而且去中心化机制避免了单点故障的问题,提高了系统可用性。即使某个组织下节点发生故障或遭遇分布式拒绝服务(DDoS)攻击,也不会导致整个系统中身份认证服务和权限控制服务的瘫痪;此外,所有节点存储了相同了账本副本,也不会带来数据的丢失,实现调度指令的追溯。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于区块链的飞机在翼指挥调度发布方法,其特征在于,包括:
获取身份认证通过后的指挥端节点所在区块链客户端发起的调度请求所产生的指令元数据;所述指挥端节点为飞机在翼指挥场景中调度员对应的客户端;
从链码的共享账本中获取权限控制策略,通过所述权限控制策略对所述指令元数据进行权限识别;
将权限识别通过后的所述指令元数据上链并发布对应的链码事件;所述指令元数据存储于所述共享账本中,所述链码事件为调度请求中需要相应接收端节点执行的相关事件。
2.根据权利要求1所述的基于区块链的飞机在翼指挥调度发布方法,其特征在于,所述调度请求的认证过程包括:
通过MSP服务对发起调度请求的用户身份和节点身份进行验证;其中,所述用户身份和节点身份为在区块链网络搭建时给各用户和节点分配的公私钥和证书后的身份;或通过指挥端节点所在区块链客户端动态的向区块链网络中指挥端的中间CA节点注册的身份。
3.根据权利要求1所述的基于区块链的飞机在翼指挥调度发布方法,其特征在于,所述指令元数据的产生方法包括:
将所述调度请求进行封装签名,得到所述指令元数据。
4.根据权利要求1所述的基于区块链的飞机在翼指挥调度发布方法,其特征在于,所述从链码的共享账本中获取权限控制策略,通过所述权限控制策略对所述指令元数据进行权限识别具体包括:
获取用户对应的权限和属性策略,将所述指令元数据包含的信息与所述权限和属性策略进行比对,得到验证结果;
将所述验证结果返回所述指挥端节点所在的区块链客户端;
若所述调度员对其他接收端的接收端节点发起指令请求,则验证无法通过,所述调度员需要进一步提交权限申请,并将所述验证结果返回所述指挥端节点所在的区块链客户端。
5.根据权利要求1所述的基于区块链的飞机在翼指挥调度发布方法,其特征在于,所述存储于共享账本中的指令元数据还用于监察端节点所在区块链客户端发起的查询,所述监察端节点为飞机在翼指挥场景中监察端对应的客户端。
6.一种基于区块链的飞机在翼指挥调度接收方法,其特征在于,包括:
通过链码事件监听器监听由接收端节点所在区块链客户端获取的链码事件;所述链码事件为权利要求1发布的链码事件;
对所述链码事件进行解析,得到指令信息;
将所述指令信息发送至接收端节点,使所述接收端节点完成相应的指令;所述接收端节点为飞机在翼指挥场景中飞机对应的客户端。
7.根据权利要求6所述的基于区块链的飞机在翼指挥调度接收方法,其特征在于,在将所述指令信息发送至接收端节点,使所述接收端节点完成相应的指令步骤后,还包括:
生成指令反馈数据,并将所述指令反馈数据发送给接收端的区块链客户端;
通过所述接收端的区块链客户端将所述指令反馈数据发送至所述区块链网络进行存储。
8.根据权利要求7所述的基于区块链的飞机在翼指挥调度接收方法,其特征在于,所述通过链码事件监听器监听由接收端节点所在区块链客户端获取的链码事件具体包括:
获取加入当前区块链网络的接收端节点身份信息;
根据所述接收端节点身份信息获取指定的交易通道;
向所述交易通道中添加本组织的排序节点和同步节点的实例化对象;
根据所述实例化对象实例化链码事件监听器类并重写事件处理器,得到实例化后的监听器;
向所述交易通道注册所述实例化后的监听器;
根据所述实例化后的监听器不断获取消息队列中的最新链码事件,并判断是否产生针对该接收端节点的新的指令;
若否,则返回步骤“根据所述实例化后的监听器不断获取消息队列中的最新链码事件”;
若是,则将所述新的指令交由接收端节点等待指令执行。
9.一种基于区块链的飞机在翼指挥调度系统,其特征在于,包括:指挥端、区块链网络和接收端;
所述指挥端用于发起调度请求,对所述调度请求进行封装签名,得到指令元数据,并将所述指令元数据发送至所述区块链网络;
所述区块链网络用于对发起调度请求的用户身份和节点身份进行验证、对所述指令元数据进行权限识别、存储所述指令元数据并发布对应的链码事件和存储指令反馈数据;
接收端用于监听所述链码事件,识别所述链码事件中包含的指令信息,根据所述指令信息执行相应的指令,并生成指令反馈数据,将所述指令反馈数据发送至所述区块链网络进行存储。
10.根据权利要求9所述的基于区块链的飞机在翼指挥调度系统,其特征在于,还包括:监察端;
所述监察端用于发起查询指令,将所述查询指令发送至所述所述区块链网络,检查所述区块链网络中所有的历史调度记录,完成调度责任的认定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111097145.4A CN113807700B (zh) | 2021-09-18 | 2021-09-18 | 基于区块链的飞机在翼指挥调度发布、接收方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111097145.4A CN113807700B (zh) | 2021-09-18 | 2021-09-18 | 基于区块链的飞机在翼指挥调度发布、接收方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113807700A CN113807700A (zh) | 2021-12-17 |
CN113807700B true CN113807700B (zh) | 2023-10-27 |
Family
ID=78939523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111097145.4A Active CN113807700B (zh) | 2021-09-18 | 2021-09-18 | 基于区块链的飞机在翼指挥调度发布、接收方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113807700B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277059B (zh) * | 2022-06-10 | 2023-05-12 | 广州大学 | 一种基于区块链的飞机档案权限管理的控制方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108829860A (zh) * | 2018-06-22 | 2018-11-16 | 四川华翼共享区块链科技有限公司 | 一种机场用预订民航坐席智能引导系统 |
CN109327312A (zh) * | 2018-10-26 | 2019-02-12 | 阿里巴巴集团控股有限公司 | 认证方法及装置、电子设备 |
DE102019133268A1 (de) * | 2018-12-06 | 2020-06-10 | Ford Global Technologies, Llc | Auslöserbasierte boni mit blockchain für fahrzeugflotte |
CN111984327A (zh) * | 2020-09-14 | 2020-11-24 | 江苏小微云链金融科技有限公司 | 一种跨区块链指令调度的方法 |
CN112214797A (zh) * | 2020-05-22 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、设备、区块链系统及存储介质 |
CN112308367A (zh) * | 2019-07-30 | 2021-02-02 | 霍尼韦尔国际公司 | 用于使用共享账本数据库自动分配空侧空位的系统和方法 |
CN113284370A (zh) * | 2021-05-17 | 2021-08-20 | 湖北沃可智能科技有限公司 | 基于区块链技术的城市共享无人机智能管理系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200184739A1 (en) * | 2018-12-10 | 2020-06-11 | Honeywell International Inc. | Block chain based system and method for improving aircraft maintenance services |
-
2021
- 2021-09-18 CN CN202111097145.4A patent/CN113807700B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108829860A (zh) * | 2018-06-22 | 2018-11-16 | 四川华翼共享区块链科技有限公司 | 一种机场用预订民航坐席智能引导系统 |
CN109327312A (zh) * | 2018-10-26 | 2019-02-12 | 阿里巴巴集团控股有限公司 | 认证方法及装置、电子设备 |
DE102019133268A1 (de) * | 2018-12-06 | 2020-06-10 | Ford Global Technologies, Llc | Auslöserbasierte boni mit blockchain für fahrzeugflotte |
CN112308367A (zh) * | 2019-07-30 | 2021-02-02 | 霍尼韦尔国际公司 | 用于使用共享账本数据库自动分配空侧空位的系统和方法 |
CN112214797A (zh) * | 2020-05-22 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、设备、区块链系统及存储介质 |
CN111984327A (zh) * | 2020-09-14 | 2020-11-24 | 江苏小微云链金融科技有限公司 | 一种跨区块链指令调度的方法 |
CN113284370A (zh) * | 2021-05-17 | 2021-08-20 | 湖北沃可智能科技有限公司 | 基于区块链技术的城市共享无人机智能管理系统 |
Non-Patent Citations (1)
Title |
---|
一体化指挥调度场景应用研究(上);刘玉超;马文学;赵志强;;数字通信世界(第09期);38-43 * |
Also Published As
Publication number | Publication date |
---|---|
CN113807700A (zh) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109918878B (zh) | 一种基于区块链的工业物联网设备身份认证及安全交互方法 | |
US11070591B2 (en) | Distributed network application security policy enforcement | |
US8756423B2 (en) | System and method for establishing a secure group of entities in a computer network | |
CN112688927B (zh) | 一种基于区块链的分布式访问控制方法 | |
CN101986599B (zh) | 基于云服务的网络安全控制方法和云安全网关 | |
CN114531305B (zh) | 一种面向以链治链的区块链跨链监管方法 | |
CN101931613B (zh) | 集中认证方法和集中认证系统 | |
CN105247529A (zh) | 在目录服务之间同步凭证散列 | |
JPH05274266A (ja) | 遠隔システム管理のための機密保護機能を提供するための方法 | |
CN111447234A (zh) | 一种适用于边缘计算的区块链架构 | |
CN106685955B (zh) | 一种基于Radius的视频监控平台安全认证方法 | |
US10192262B2 (en) | System for periodically updating backings for resource requests | |
CN115996122A (zh) | 访问控制方法、装置及系统 | |
CN113807700B (zh) | 基于区块链的飞机在翼指挥调度发布、接收方法及系统 | |
US10013237B2 (en) | Automated approval | |
CN109150290B (zh) | 一种卫星轻量化数据传输保护方法及地面安全服务系统 | |
CN113992406A (zh) | 一种用于联盟链跨链的权限访问控制方法 | |
CN116260656B (zh) | 基于区块链的零信任网络中主体可信认证方法和系统 | |
CN112837023A (zh) | 机构的业务协同平台、方法、装置及电子设备 | |
Shibly et al. | Personalized federated learning for automotive intrusion detection systems | |
CN115412348A (zh) | 一种基于白名单机制实现api零信任的方法 | |
CN112235368B (zh) | 一种基于联盟区块链的rfid装备管理系统 | |
CN114491442A (zh) | 一种基于区块链技术架构的uam飞行器ads-b系统 | |
Adil et al. | Auto-CIoV: Autonomous Connected Internet of Vehicles Security Requirements, Open Challenges with Future Research Directions | |
KR20150066401A (ko) | M2m 환경에서의 데이터 적용기술 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |