基于无人机的数据交互方法、地面控制端、服务器及系统与流程

文档序号:16363592发布日期:2018-12-22 08:18阅读:316来源:国知局
基于无人机的数据交互方法、地面控制端、服务器及系统与流程

本发明涉及无人机技术,尤其涉及一种基于无人机的数据交互方法、地面控制端、服务器及系统。

背景技术

随着无人机技术的不断发展,无人机在越来越多的领域被应用。其中,农业无人机的出现,农业生产领域的劳动力得到了进一步地解放。

如今的农业无人机,可以在农业领域执行农药、化肥喷洒,可以监测农田信息、灾害勘察等。农业无人机的使用过程中,终端上安装的无人机应用程序(application,简称app)会与后台服务器交互无人机采集的数据。

现有技术中,终端和后台服务器通过明文交互无人机采集的数据,这些数据容易遭受第三方攻击,从而存在被盗取、篡改等风险。



技术实现要素:

本发明提供一种基于无人机的数据交互方法、地面控制端、服务器及系统,用于解决现有技术中数据容易被第三方攻击的问题。

第一方面,本发明提供一种基于无人机的数据交互方法,所述无人机由地面控制端控制,所述方法包括:

所述地面控制端根据第一随机数和第二随机数生成对称密钥,其中,所述第一随机数由所述地面控制端生成、所述第二随机数由服务器生成;

所述地面控制端采用所述对称密钥加密无人机数据,得到加密后的无人机数据,所述地面控制端向所述服务器或无人机发送所述加密后的无人机数据;或者,

所述地面控制端接收所述无人机或服务器发送的加密后的数据,使用所述对称密钥解密接收到的数据。

第二方面,本发明提供一种基于无人机的数据交互方法,所述无人机由地面控制端控制,所述方法包括:

服务器根据第一随机数和第二随机数生成对称密钥,其中,所述第一随机数由所述地面控制端生成、所述第二随机数由所述服务器生成;

所述服务器接收所述地面控制端采用所述对称密钥加密的无人机数据,并采用所述对称密钥解密所述对称密钥加密的无人机数据,得到所述无人机数据;或者,

所述服务器通过所述对称密钥加密数据,并将加密后的数据发送给所述无人机或地面控制端。

第三方面,本发明提供一种基于无人机的数据交互方法,包括:

地面控制端、服务器均根据第一随机数和第二随机数生成对称密钥,其中,所述第一随机数由所述地面控制端生成、所述第二随机数由服务器生成;

所述地面控制端采用所述对称密钥加密无人机数据,得到加密后的无人机数据,所述地面控制端向所述服务器或无人机发送所述加密后的无人机数据;或者,

所述服务器采用所述对称密钥加密无人机数据,得到加密后的无人机数据,所述服务器向所述地面控制端发送所述加密后的无人机数据。

第四方面,本发明提供一种地面控制端,包括:存储器、处理器和显示器;

所述存储器用于存储指令,所述处理器用于调用所述存储器中的指令,执行下述方法:

根据第一随机数和第二随机数生成对称密钥,其中,所述第一随机数由所述地面控制端生成、所述第二随机数由服务器生成;采用所述对称密钥加密无人机数据,得到加密后的无人机数据,所述地面控制端向所述服务器或无人机发送所述加密后的无人机数据;或者,接收所述无人机或服务器发送的加密后的数据,使用所述对称密钥解密接收到的数据。

第五方面,本发明提供一种服务器,包括:存储器和处理器;

所述存储器用于存储指令,所述处理器用于调用所述存储器中的指令,执行下述方法:

根据第一随机数和第二随机数生成对称密钥,其中,所述第一随机数由所述地面控制端生成、所述第二随机数由服务器生成;接收所述地面控制端采用所述对称密钥加密的无人机数据,并采用所述对称密钥解密所述对称密钥加密的无人机数据,得到所述无人机数据;或者,通过所述对称密钥加密数据,并将加密后的数据发送给所述无人机或地面控制端。

第六方面,本发明提供一种基于无人机的数据交互系统,包括:无人机、地面控制端、服务器;

所述地面控制端用于控制所述无人机;

所述地面控制端为第四方面所述的地面控制端;所述服务器为第五方面所述的服务器。

本发明提供的基于无人机的数据交互方法、地面控制端、服务器及系统中,地面控制端、服务器根据第一随机数和第二随机数生成对称密钥,进而地面控制端、无人机以及服务器之间数据交互过程中,采用对称密钥进行加密,保证数据传输过程的安全性,降低数据被第三方攻击的可能。

附图说明

图1为本发明提供的一种基于无人机的数据交互系统架构示意图;

图2为本发明一实施例提供的基于无人机的数据交互方法流程示意图;

图3为本发明另一实施例提供的基于无人机的数据交互方法流程示意图;

图4为本发明另一实施例提供的基于无人机的数据交互方法流程示意图;

图5为本发明一实施例提供的基于无人机的数据交互装置结构示意图;

图6为本发明另一实施例提供的基于无人机的数据交互装置结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。

下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

图1为本发明提供的一种基于无人机的数据交互系统架构示意图。如图1所示,该系统包括:无人机01、地面控制端02以及服务器03。

其中,地面控制端可以包括如下至少一种:头戴式显示眼镜(vr眼镜、vr头盔等)、手机、遥控器(如带显示屏的遥控器)、智能手环、平板电脑。本实施例以带显示屏的遥控器为例,说明地面控制端02与服务器03、无人机01之间的数据交互。

不同于现有的带显示屏的遥控器,本实施例提供的带显示屏的遥控器提供有用户界面。用户可通过该用户界面对无人机进行控制,遥控器根据用户对该用户界面的操作,确定用户输入的控制信息。

以上述无人机为农业无人机为例,该控制信息可以包括如下至少一种:喷洒流量控制信息,喷洒方向控制信息,飞行速度控制信息,飞行高度控制信息,喷头控制信息,航线间距控制信息,安全距离控制信息等。但本发明不以此为限。

无人机01在地面控制端02的控制下执行相关作业,并将作业中相关数据反馈到地面控制端02。地面控制端02将这些数据传输到服务器03,或者地面控制端02将处理后的数据传输到服务器03。

本发明提供一种基于无人机的数据交互方法,来保障无人机01、地面控制端02以及服务器03之间更安全的交互数据。

图2为本发明一实施例提供的基于无人机的数据交互方法流程示意图,如图2所示,该方法包括:

s201、地面控制端根据第一随机数和第二随机数生成对称密钥。其中,第一随机数由地面控制端生成,第二随机数由服务器生成。

第一随机数和第二随机数可以是一个数字,也可以是一段序列,例如16位的序列、或者64位的序列,本发明不作限制。

可选地,处于安全的考虑,可以规定该第一随机数和第二随机数的最小长度、最大长度,例如:最小长度为32位,最大长度为64位,小于最小长度或大于最大长度,均确定为连接失败,可以重新再生成新的随机数。

地面控制端和服务器生成随机数,交互后由地面控制端根据第一随机数和第二随机数生成对称密钥,在后续数据交互中使用。

需要说明的是,对称密钥即发送方和接收方使用同样的密钥加密和解密。

具体地,执行s202或203。

s202、地面控制端采用该对称密钥加密无人机数据,得到加密后的无人机数据,向服务器或无人机发送该加密后的无人机数据。

s203、地面控制端接收无人机或服务器发送的加密后的数据,使用该对称密钥解密接收到的数据。

需要说明的是,地面控制端、服务器都获取第一随机数和第二随机数,然后按照预设算法得到对称密钥,对要发送的数据进行加密。

地面控制端也可以向无人机发送第一随机数和第二随机数,无人机自己生成对称密钥。或者,地面控制端直接向无人机发送对称密钥。本申请不作限制。

本实施例中,地面控制端根据第一随机数和第二随机数生成对称密钥,进而地面控制端、无人机以及服务器之间数据交互过程中,采用对称密钥进行加密,保证数据传输过程的安全性,降低数据被第三方攻击的可能。

图3为本发明另一实施例提供的基于无人机的数据交互方法流程示意图,如图3所示,与图2所示的方法相对应,该方法包括:

s301、服务器根据第一随机数和第二随机数生成对称密钥。其中,第一随机数由地面控制端生成,第二随机数由服务器生成。

进而执行s302或s303。

s302、服务器接收地面控制端采用所述对称密钥加密的无人机数据,并采用所述对称密钥解密所述对称密钥加密的无人机数据,得到所述无人机数据。

s303、服务器通过所述对称密钥加密数据,并将加密后的数据发送给所述无人机或地面控制端。

本实施例中,服务器根据第一随机数和第二随机数生成对称密钥,进而地面控制端、无人机以及服务器之间数据交互过程中,采用对称密钥进行加密,保证数据传输过程的安全性,降低数据被第三方攻击的可能。

一实施例中,地面控制端根据第一随机数和第二随机数生成对称密钥之前,地面控制端生成第一随机数,并采用公钥加密该第一随机数,得到加密后的第一随机数,进而向服务器发送所述加密后的第一随机数。服务器通过私钥解密得到第一随机数后,生成第二随机数,并发送给地面控制端。

公钥和私钥为一对非对称密钥,服务器可以生成一对私钥和公钥,将公钥发送给地面控制端。

本实施例中,地面控制端和服务器之间通过非对称密钥交互随机数,更进一步地保障了数据交互的安全性。

具体实现时,地面控制端控制无人机作业前,在连网状态下,先通过无人机对应的应用程序(app)进行登录。

具体地,地面控制端向所述服务器发送登录信息,该登录信息可以包括无人机对应的账号、密码等信息。

可选地,第一随机数可以和无人机对应的账号、密码打包在登录信息中,也可以单独发送第一随机数,本申请不作限制。

服务器收到登录信息后,先对登录信息进行验证,服务器在验证登录信息通过后,会生成第二随机数。

相应地,服务器向地面控制端发送登录成功响应信息,服务器可以在登录成功响应信息中携带上述第二随机数。也可以单独向地面控制端发送第二随机数,本申请不作限制。

另外,一种实施例中,服务器还可以在验证登录信息通过后,向地面控制端发送公钥,以便地面控制端采用该公钥加密第一随机数。

需要说明的是,如果服务器验证登录信息失败,则向地面控制端发送登录失败响应信息,流程结束。具体地,登录失败可能是账号或密码错误,例如账号、密码不匹配,账号不存在等;也可能是其他异常情况被判断为登录失败,例如:短时间内登录过于频繁、未对用户所在区域开放当前系统等。本发明不作具体限定。

更进一步地,上述地面控制端根据第一随机数和第二随机数生成对称密钥,可以是,地面控制端采用预设加密算法,根据所述第一随机数和所述第二随机数生成对称密钥。

需要说明的是,该预设加密算法可以是安全散列算法(sha512)。假设第一随机数r1和第二随机数r2均为64位的序列,将r1和r2前后连续拼接为128位的序列,然后将这128位的序列作为安全散列算法的输入,得到对称密钥。可选地,安全散列算法输出64位的序列作为对称密钥。

进一步地,在对无人机数据加密时,还可以配合对称加密算法进行加密。可选地,配合高级加密标准(advancedencryptionstandard,简称aes)算法进行加密。

类似地,服务器根据第一随机数和第二随机数生成对称密钥,也可以为服务器采用预设加密算法,根据所述第一随机数和所述第二随机数生成对称密钥。

一种实现方式中,地面控制端可以向服务器发送一个算法选择列表,服务器在算法选择列表中选择预设加密算法。例如选择sha512算法。

具体地,地面控制端向服务器发送算法通知消息,该算法通知消息用于指示多个备选加密算法,即可以采用加密算法列表,携带多个备选加密算法的标识。服务器从多个备选加密算法中选择预设加密算法,进而服务器向地面控制端发送算法确定消息,该算法确定消息用于指示该预设加密算法。例如算法确定消息中携带预设加密算法的标识。

可选地,服务器向地面控制端发送第二随机数时,可以将算法确定消息和第二随机数打包在一起发送。在此不作限制,也可以单独发送算法确定消息。

类似地,地面控制端也可以向服务器发送对称加密算法的列表,由服务器选择对称加密算法。例如选择aes算法。

服务器选择完成后,向地面控制端通知选择的对称加密算法。

图4为本发明另一实施例提供的基于无人机的数据交互方法流程示意图,在上述实施例的基础上,整个数据加密过程可以包括:

s401、地面控制端生成第一随机数,并采用公钥加密第一随机数。

s402、地面控制端向服务器发送加密后的第一随机数。

s403、服务器采用上述公钥对应的私钥解密上述加密后的第一随机数,得到第一随机数。

s404、服务器生成第二随机数。

s405、服务器向地面控制端发送第二随机数。

可选地,服务器采用非对称密钥加密第二随机数,地面控制端采用对应的非对称密钥解密获取第二随机数。

s406、地面控制端/服务器根据第一随机数和第二随机数生成对称密钥。

进而参见前述实施例,地面控制端、无人机以及服务器之间数据交互过程中,采用对称密钥进行加密,保证数据传输过程的安全性,降低数据被第三方攻击的可能。

图5为本发明一实施例提供的基于无人机的数据交互装置结构示意图,该装置可以集成于前述地面控制端。如图5所示,该地面控制端500可以包括:存储器501、处理器502和显示器503,其中:

存储器501,用于存储指令。处理器502用于调用所述存储器501中的指令,执行下述方法:

根据第一随机数和第二随机数生成对称密钥,其中,所述第一随机数由所述地面控制端生成、所述第二随机数由服务器生成;采用所述对称密钥加密无人机数据,得到加密后的无人机数据,所述地面控制端向所述服务器或无人机发送所述加密后的无人机数据;或者,接收所述无人机或服务器发送的加密后的数据,使用所述对称密钥解密接收到的数据。

显示器503,用于显示各种数据信息,并为用户提供操作界面等。

一实施例中,处理器502,用于生成第一随机数,并采用公钥加密所述第一随机数,得到加密后的所述第一随机数;向服务器发送所述加密后的第一随机数;接收所述服务器发送的第二随机数。

可选地,处理器502,还用于向所述服务器发送登录信息。

相应地,处理器502,具体用于接收所述服务器在验证通过所述登录信息后发送的所述第二随机数。

又一实施例中,处理器502,具体用于采用预设加密算法,根据所述第一随机数和所述第二随机数生成对称密钥。

可选地,处理器502,还用于向所述服务器发送算法通知消息,所述算法通知消息用于指示多个备选加密算法;接收所述服务器发送的算法确定消息,所述算法确定消息用于指示所述服务器根据所述多个备选加密算法选择的所述预设加密算法。

该装置用于执行前述方法实施例,其实现原理和技术效果类似,在此不再赘述。

图6为本发明另一实施例提供的基于无人机的数据交互装置结构示意图,该装置可以集成于前述服务器。如图6所示,该服务器600包括:存储器601和处理器602,其中:

存储器601,用于存储指令。

处理器602,用于调用存储器601中的指令,执行下述方法:

根据第一随机数和第二随机数生成对称密钥,其中,所述第一随机数由所述地面控制端生成、所述第二随机数由服务器生成;接收所述地面控制端采用所述对称密钥加密的无人机数据,并采用所述对称密钥解密所述对称密钥加密的无人机数据,得到所述无人机数据;或者,通过所述对称密钥加密数据,并将加密后的数据发送给所述无人机或地面控制端。

可选地,处理器602,还用于接收所述地面控制端发送的公钥加密后的所述第一随机数;采用所述公钥对应的私钥,解密所述公钥加密后的第一随机数;生成第二随机数,并向所述地面控制端发送所述第二随机数。

一种实施例中,处理器602,还用于接收所述地面控制端发送的登录信息。

相应地,处理器602,具体用于在验证所述登录信息通过后,生成所述第二随机数。

又一实施例中,处理器602,具体用于采用预设加密算法,根据所述第一随机数和所述第二随机数生成对称密钥。

可选地,处理器602,还用于接收所述地面控制端发送的算法通知消息,所述算法通知消息用于指示多个备选加密算法;从所述多个备选加密算法选择所述预设加密算法;向所述地面控制端发送算法确定消息,所述算法确定消息用于指示所述预设加密算法。

该装置用于执行前述方法实施例,其实现原理和技术效果类似,在此不再赘述。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1