发明内容
本发明实施例提供一种无人机身份认证方法、系统及终端,通过多重认证,解决无人机认证安全性差、监管不力的问题。
本发明实施例提供了一种无人机身份认证方法,包括:
当检测到有加密锁插入时,读取所述加密锁的认证信息和密钥信息;
将从云端获取的无人机授权信息与所述认证信息进行对比认证;
若通过对比认证,则根据所述密钥信息和预设规则,与无人机进行双向通信认证;
若通过双向通信认证,则确认通过所述无人机的身份认证。
本发明实施例还提供了一种终端,包括:
读取模块,用于当检测到有加密锁插入时,读取所述加密锁的认证信息和密钥信息;
第一认证模块,用于将从云端获取的无人机授权信息与所述认证信息进行对比认证;
第二认证模块,用于若通过对比认证,则根据所述密钥信息和预设规则,与无人机进行双向通信认证;
确认模块,用于若通过双向通信认证,则确认通过所述无人机的身份认证。
本发明实施例还提供了一种无人机身份认证系统,包括:
无人机、云端和前述终端;
所述无人机与所述终端进行双向通信认证,若通过双向通信认证,则确认所述无人机通过身份认证;
所述云端存储无人机授权信息,所述无人机授权信息用于与所述终端获得的加密锁的认证信息进行对比认证。
本发明实施例中,终端读取加密锁中存储的认证信息和密钥信息,将从云端获取的无人机授权信息与该认证信息进行对比认证,若通过对比认证,则根据该密钥信息和预设规则,终端与无人机进行双向通信认证,若通过双向通信认证,则确认通过该无人机的身份认证,经过上面多重身份认证,提高了基于无人机的飞行及控制系统的安全性、完整性和可靠性。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明一实施例提供的无人机身份认证方法的实现流程示意图,该方法可应用于终端中,终端可包括:智能手机、平板电脑等可在移动中使用的电子装置以及PC(personal computer)机等非移动中使用的电子装置。在该终端中,内置客户端,该客户端用于认证无人机身份,以及在无人机通过认证后管理无人机的飞行状态和飞行数据,如图1所示,该方法主要包括以下步骤:
S101、当检测到有加密锁插入时,读取该加密锁的认证信息和密钥信息;
当检测到终端的接口有加密锁插入时,终端通过该客户端读取该加密锁的认证信息和密钥信息。加密锁是一种插在计算机终端USB(Universal Serial Bus) 口上的软硬件结合的加密产品。该加密锁是与无人机配套使用的加密锁。
该密钥信息用于无人机和终端进行双向通信认证。在无人机出厂前生成该密钥信息,并使用烧写工具将该密钥信息烧写入该加密锁,并在该无人机的飞控系统中写入该密钥信息,该无人机的飞控系统中还写入该无人机的序列号。
用户将与该无人机配套的硬件加密锁插入终端接口,启动终端中的客户端,该客户端可以是一种无人机管家软件,该客户端读取该加密锁中的的该密钥信息和该认证信息。其中,该认证信息包括:加密锁类型(Type)(包括永久授权型或临时授权型)、加密锁序列号(dogID)和无人机序列号(sfmID),还可以包括无人机的型号(UAVType)。具体见下表:
数据类型 |
说明 |
Type |
加密锁类型 |
dogID |
加密锁序列号 |
sfmID |
无人机序列号 |
UAVType |
无人机的型号 |
S102、将从云端获取的无人机授权信息与该认证信息进行对比认证;
用户在使用该无人机之前,该用户信息与该无人机的授权信息绑定,并上传到云端,云端由多个服务器或服务器集群组成。该授权信息包括:无人机配套的加密锁类型(Type)(包括永久授权型或临时授权型)、加密锁序列号 (dogID)、无人机序列号(sfmID)、无人机的型号(UAVType)、授权飞行时长(包括授权飞行起始时间Ctime和授权飞行结束时间Etime)和授权飞行里程(包括授权可飞行里程Validity和授权起始里程Bm),其中,授权飞行时长和授权飞行里程可统称为授权飞行信息,具体见下表:
数据类型 |
说明 |
Type |
加密锁类型 |
Ctime |
授权飞行起始时间 |
Etime |
授权飞行结束时间 |
Validity |
授权可飞行里程 |
Bm |
授权起始里程 |
dogID |
配套加密锁序列号 |
sfmID |
无人机序列号 |
UAVType |
无人机的型号 |
在给用户授权试用该无人机时,按照授权飞行时长或飞行里程设置该用户的使用权限,到达该授权飞行时长或飞行里程时自动发送短信给用户预留的手机号,提醒该用户返厂或继续付费使用该无人机。当用户购买该无人机后,提供永久授权使用该无人机。在云端为用户和无人机授权,简单快速,不需要无人机返厂。用户使用时必须联网通过认证后才能使用,提高了系统使用的安全性,便于监管。
进一步地,终端从云端获取该无人机的信息,该信息中包括无人机授权信息,将从该无人机授权信息与该认证信息进行对比认证,具体地,判断加密锁的认证信息中的加密锁类型与该无人机授权信息中的加密锁类型是否相同,即,是否同为永久授权,或同为临时授权。
若相同,则进一步判断该认证信息中的加密锁类型与该无人机授权信息中的授权飞行信息是否相符,具体地,若该加密锁类型为永久授权,则确认相符;若该加密锁类型为临时授权,则确认临时授权给无人机的飞行里程是否大于该无人机授权信息中的授权飞行里程,以及,确认临时授权给无人机的飞行时长是否大于该无人机授权信息中的授权飞行时长,若临时授权给无人机的飞行里程小于等于该无人机授权信息中的授权飞行里程,以及,临时授权给无人机的飞行时长小于等于该无人机授权信息中的授权飞行时长,则确认相符;若临时授权给无人机的飞行里程大于该无人机授权信息中的授权飞行里程,或者,临时授权给无人机的飞行时长大于该无人机授权信息中的授权飞行时长,则确认不相符。
若相符,则对比该认证信息中的加密锁序列号和无人机序列号,是否分别与该无人机授权信息中的加密锁序列号和无人机序列号相同,若该认证信息中的加密锁序列号与该无人机授权信息中的加密锁序列号相同,且,该认证信息中的无人机序列号,与该无人机授权信息中的无人机序列号相同,则确认对比通过认证。
S103、若通过对比认证,则根据该密钥信息和预设规则,与无人机进行双向通信认证;
该预设规则包括加密规则和验证规则。密钥信息包括密钥(key)和加解密数据(data)。该密钥信息由该加密锁和该无人机共享,即该密钥信息既保存在该加密锁中,又保存在该无人机的加密芯片中。
具体地,终端通过该客户端产生第一随机码rc1,将该第一随机码rc1和从该加密锁中读取的该密钥信息,按照该加密规则得到第一输出数据,即,将该密钥信息中的密钥key和加解密数据data,通过DES(Data Encryption Standard) 算法得到第一中间数据data1,该第一中间数据data1和该第一随机码rc1,通过MD(Message-Digest)5算法得到第一结果数据data2,另一方面,将密钥 key和第一随机码rc1,通过DES算法得到第二结果数据Rc_out,第一结果数据data2和第二结果数据Rc_out组成第一输出数据。
进一步地,将该第一输出数据作为请求包发送给该无人机,该无人机接收到该请求包,将其自身存储的密钥信息和该第一输出数据,按照该验证规则得到第二输出数据,即,将从该第一输出数据中得到的第二结果数据Rc_out和加密芯片中存储的密钥信息中的密钥(key),通过DES算法得到验证随机码rcN,加密芯片中存储的密钥key与加密锁中存储的key相同,该验证随机码rcN是将Rc_out和key根据验证规则中的第一步使用DES算法得到的,理论上该验证随机码rcN应为rc1,将第一结果数据data2和加密芯片中存储的密钥信息中的密钥key,通过DES算法得到验证中间数据dataN,将验证中间数据dataN 和验证随机码rcN,通过MD5算法得到第二输出数据dataO,该无人机判断该第二输出数据dataO与该无人机中存储的密钥数据data是否匹配,若匹配,则确认该无人机通过认证,若不匹配,则确认该无人机未通过认证。具体地,判断该第二输出数据是否与该无人机中存储的密钥信息中的加解密数据data相同,若该第二输出数据即为data,则确认该第二输出数据与该无人机中存储的密钥信息匹配,即该无人机通过认证,该无人机开始启动进入正常工作状态,若该第二输出数据与data不同,则确认该第二输出数据与该无人机中存储的密钥信息匹配,该无人机未通过认证,处于待认证状态。
进一步地,该无人机通过认证后,产生第二随机码rc2,将该无人机中存储的密钥数据和该第二随机码rc2,按照该加密规则得到第三输出数据,具体方式与前述将该第一随机码和从该加密锁中读取的该密钥信息,按照所述加密规则得到第一输出数据的方式是相同的,此处不再赘述,并将该第三输出数据作为应答包发回该终端,该终端接收到该应答包,按照该验证规则得到第四输出数据,具体得到第四输出数据的方式与前述将存储的密钥信息和该第一输出数据,按照该验证规则得到该第二输出数据的方式相同,并判断该第四输出数据与该加密锁中的该密钥是否匹配,具体是判断该第四输出数据是否与无人机中存储的密钥信息中的加解密数据data是否相同,若相同,则确认该第四输出数据与该加密锁中的该密钥匹配,若匹配,则确认该终端通过认证,进入正常工作状态,至此,该终端与该无人机通过双向通信认证。若不匹配,则继续等待,超时后重新发送该请求包给无人机,继续下一轮双向通信认证。
上述双向通信认证过程中,当无人机认证通过后开始启动自检,给该终端发送飞行状态数据,并能够响应该终端指令,该终端认证通过后,能够给无人机发送控制指令。
S104、若通过双向通信认证,则确认通过该无人机的身份认证。
若该终端和该无人机通过了双向通信认证,则确认通过该无人机的身份认证,可以执行飞行任务。
本实施例中,终端读取加密锁中存储的认证信息和密钥信息,将从云端获取的无人机授权信息与该认证信息进行对比认证,若通过对比认证,则根据该密钥信息和预设规则,终端与无人机进行双向通信认证,若通过双向通信认证,则确认通过该无人机的身份认证,经过上面多重身份认证,提高了基于无人机的飞行及控制系统的安全性、完整性和可靠性。
请参阅图2,图2是本发明一实施例提供的终端结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图2示例的终端,是前述图1所示实施例提供的无人机身份认证方法中的终端。该终端主要包括:
读取 模块201、第一认证模块202、第二认证模块203和确认模块204;
其中,读取模块201,用于当检测到有加密锁插入时,读取该加密锁的认证信息和密钥信息;
第一认证模块202,用于将从云端获取的无人机授权信息与该认证信息进行对比认证;
第二认证模块203,用于若通过对比认证,则根据该密钥信息和预设规则,与无人机进行双向通信认证;
确认模块204,用于若通过双向通信认证,则确认通过该无人机的身份认证。
本实施例未尽之细节,请参阅前述图1所示实施例的描述,此处不再赘述。
需要说明的是,以上图2示例的终端的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成。本说明书提供的各个实施例都可应用上述描述原则,以下不再赘述。
本实施例中,终端读取加密锁中存储的认证信息和密钥信息,将从云端获取的无人机授权信息与该认证信息进行对比认证,若通过对比认证,则根据该密钥信息和预设规则,终端与无人机进行双向通信认证,若通过双向通信认证,则确认通过该无人机的身份认证,经过上面多重身份认证,提高了基于无人机的飞行及控制系统的安全性、完整性和可靠性。
请参阅图3,本发明实施例提供的无人机身份认证系统的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。该系统包括:
无人机301、云端302和终端303;
终端303为前述图2所示终端。
无人机301与终端303进行双向通信认证,若通过双向通信认证,则确认无人机301通过身份认证;
云端302存储无人机授权信息,该无人机授权信息用于与终端303获得的加密锁的认证信息进行对比认证。
终端303通过内置的客户端从云端上获取该无人机的授权信息信息,与该加密锁的认证信息对比认证。
本实施例未尽之细节,请参阅前述图1~图2所示实施例的描述,此处不再赘述。
本实施例中,终端读取加密锁中存储的认证信息和密钥信息,将从云端获取的无人机授权信息与该认证信息进行对比认证,若通过对比认证,则根据该密钥信息和预设规则,终端与无人机进行双向通信认证,若通过双向通信认证,则确认通过该无人机的身份认证,经过上面多重身份认证,提高了基于无人机的飞行及控制系统的安全性、完整性和可靠性。
进一步地,本实施例的终端的硬件结构包括:
存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时,实现前述图1所示实施例中描述的无人机身份认证方法。
进一步的,该电子装置还包括:
至少一个输入设备以及至少一个输出设备。
上述存储器、处理器、输入设备以及输出设备,通过总线连接。
其中,输入设备具体可为摄像头、触控面板、物理按键或者鼠标等等。输出设备具体可为显示屏。
存储器可以是高速随机存取记忆体(RAM,Random Access Memory)存储器,也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。存储器用于存储一组可执行程序代码,处理器与存储器耦合。
进一步的,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是前述实施例中的存储器。该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述图1所示实施例中描述的无人机身份认证方法。进一步的,该计算机可存储介质还可以是U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请所提供的多个实施例中,应该理解到,所揭露的方法、终端和系统,可以通过其它的方式实现。例如,以上所描述的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,模块的间接耦合或通信链接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的无人机身份认证方法、系统和终端的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。