CN114063651B - 用户与多架无人机进行相互认证的方法、可存储介质 - Google Patents

用户与多架无人机进行相互认证的方法、可存储介质 Download PDF

Info

Publication number
CN114063651B
CN114063651B CN202111368944.0A CN202111368944A CN114063651B CN 114063651 B CN114063651 B CN 114063651B CN 202111368944 A CN202111368944 A CN 202111368944A CN 114063651 B CN114063651 B CN 114063651B
Authority
CN
China
Prior art keywords
user
unmanned aerial
server
hash value
random number
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
Application number
CN202111368944.0A
Other languages
English (en)
Other versions
CN114063651A (zh
Inventor
张媛媛
孟令哲
张明武
阮鸥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hubei University of Technology
Original Assignee
Hubei University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hubei University of Technology filed Critical Hubei University of Technology
Priority to CN202111368944.0A priority Critical patent/CN114063651B/zh
Publication of CN114063651A publication Critical patent/CN114063651A/zh
Application granted granted Critical
Publication of CN114063651B publication Critical patent/CN114063651B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft

Abstract

本发明提供用户与多架无人机进行相互认证的方法,包括:S1.对服务器的公共参数和服务器私钥进行初始化;S2.每架无人机向服务器发送无人机注册信息,根据所述无人机注册信息、公共参数和服务器私钥,生成无人机认证信息;S3.移动设备向服务器发送用户注册信息,根据所述用户注册信息、公共参数和服务器私钥,生成用户认证信息;S4.用户通过根据所述服务器私钥、无人机认证信息和用户认证信息,与多架无人机同时进行认证和密钥协商。本发明实施例使用户可以同时与这些无人机进行相互认证,确保认证的高效性,以及当无人机数量增多或者时,也不会对认证性能影响甚微,且物理不可克隆函数(PUF)嵌入在无人机中,有效抵御针对无人机的物理捕获攻击。

Description

用户与多架无人机进行相互认证的方法、可存储介质
技术领域
本发明涉及信息安全技术领域,特别是涉及一种用户与多架无人机进行相互认证的方法、计算设备、可存储介质。
背景技术
在现实生活中,无人机因其具有快速部署、覆盖范围广和机动性强的优势而受到广泛关注,它为工业生产和社会生活带来极大的便利,例如在探测森林火灾方面,配备遥感和数据通信设施的无人机能够较大范围地监测森林的状况,如果发生火情,无人机捕捉必要的图像数据,经过处理后及时传递回控制中心,以方便内部人员决策。
由于一架无人机涉及的大多数应用数据都是实时的,用户要求与该无人机直接通信,获取到它探测到的实时数据。用户与无人机在通信之前,需要根据认证和密钥协商方法使用内部的密钥来认证彼此的身份。
如今,随着数据采集越来越多样化和任务复杂性的增强,用户不再只面对一架无人机,而是根据任务需求来选择多架无人机,以控制这些无人机或者获取它们探测到的数据。然而,传统的认证和密钥协商方法大多针对用户与无人机的一对一的环境,如果用户同时与多架无人机认证,则将无法保证高效率。除此之外,无人机的物理安全性也应该受到关注,因为无人机极容易被攻击者捕获并窃取到内存中的数据。
发明内容
有鉴于此,本发明提供一种用户与多架无人机进行相互认证的方法及可存储介质,在保证效率与安全性的前提下,使得用户可以和多架无人机进行安全通信,并进行认证和密钥协商;同时避免无人机被捕获、窃取到内部数据,并确保认证和密钥协商方案的安全性。
为实现上述发明目的,本发明实施例提供一种用户与多架无人机进行相互认证的方法,所述方法包括:
S1.对服务器的公共参数和服务器私钥进行初始化;
S2.每架无人机向服务器发送无人机注册信息,根据所述无人机注册信息、公共参数和服务器私钥,生成无人机认证信息;
S3.移动设备向服务器发送用户注册信息,根据所述用户注册信息、公共参数和服务器私钥,生成用户认证信息;
S4.用户通过根据所述服务器私钥、无人机认证信息和用户认证信息,与多架无人机同时进行认证和密钥协商。
另一方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如前所述的用户与多架无人机进行相互认证的方法。
再一方面,另一方面,本发明实施例还提供了一种计算设备,所述计算设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如前所述的一种用户与多架无人机进行相互认证的方法。
本发明实施例提供的用户与多架无人机进行相互认证的方法以及计算设备、可存储介质,实现当多架无人机参与任务时,本发明实施例使用户可以同时与这些无人机进行相互认证和密钥协商,确保认证的高效性,以及当无人机数量增多或者时,也不会对认证性能影响甚微。除此之外,物理不可克隆函数(PUF)嵌入在无人机中,有效抵御针对无人机的物理捕获攻击。
附图说明
下面将结合附图说明对本发明的具体实施方式进行举例说明。
图1为本发明实施例无人机注册流程图;
图2为本发明实施例用户注册流程图;
图3为本发明实施例登录和认证流程图;
图4为本发明实施例用户通过移动设备更新密码和生物特征流程图;
图5为本发明实施例新的无人机添加流程图。
图6为本发明实施例提供的计算设备的结构框图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。为使图面简洁,各图中的只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。
为了解决本发明实施例的技术问题,本发明实施例提供了以下技术方案:
一种用户与多架无人机进行相互认证的方法,其特征在于,所述方法包括以下步骤:
S1.对服务器的公共参数和服务器私钥进行初始化;
S2.每架无人机向服务器发送无人机注册信息,根据所述无人机注册信息、公共参数和服务器私钥,生成无人机认证信息;
S3.移动设备向服务器发送用户注册信息,根据所述用户注册信息、公共参数和服务器私钥,生成用户认证信息;
S4.用户通过根据所述服务器私钥、无人机认证信息和用户认证信息,与多架无人机同时进行认证和密钥协商。
优选的,所述S1包括以下步骤:
S1.1:设GF(p)是有限域,p是一大素数,表示该有限域的大小,服务器在GF(p)上选择一个椭圆曲线Ep(α,β):y2=x3+αx+β(mod p),其中(α,β)∈GF(p),Q是Ep(α,β)上的一个基点;
S1.2:服务器选择两个哈希函数分别为h1(·)和h2(·);
其中,h1(·)将任意长度的字符串映射为固定长度的字符串),h2(·)将任意长度的字符串映射为一个整数;
S1.3:服务器选择第一随机数
Figure BDA0003361621950000031
作为服务器私钥,其中,
Figure BDA0003361621950000032
(gcd(a,p)=1表示a与p互素),
再将该私钥s与基点Q进行点乘运算得到其公钥Ppub,即Ppub=s·Q;
S1.4:服务器选择模糊提取器生成函数Gen(·),模糊提取器生成函数Gen(·)的输入为用户的生物特征,输出为用户的生物特征密钥和相应的公共复制参数,和模糊提取器再现函数Rep(·),模糊提取器再现函数Rep(·)的输入为用户的生物特征和公共复制参数,模糊提取器再现函数Rep(·)的输出为用户生物特征密钥;
用两个函数是因为就算是同一个人,每次输入的指纹不会一模一样(比如角度不同,清晰度不同,手指上有污渍等等),必须从指纹中提取出来一些稳定不变的值才可以用来做计算,否者每次指纹不一样,计算的结果也不一样。第一次注册的时候用户使用Gen(·)函数,把指纹作为输入,得到一个稳定的特征值(用户生物特征密钥)和相应的复制参数。当用户再次登录时,输入指纹和参数,用到函数Rep(·),即使指纹和注册时不是完全一样,但是在参数的帮助下,只要是同一个人的指纹,也能得到相同的生物特征密钥。
S1.5:所述椭圆曲线Ep(α,β)、基点Q、服务器公钥Ppub、两个哈希函数(h1(·)和h2(·))、模糊提取器生成函数Gen(·)和模糊提取器再现函数Rep(·)被公开,所述私钥s被服务器保密。
如图1所示,优选的,所述S2包括以下步骤:
S2.1:假设一共有m架无人机,每架无人机选择一个挑战Cj作为嵌入在无人机中的PUF的输入,输出对应的响应Rj=Pu(Cj),注册信息为无人机产生的挑战响应对<Cj,Rj>,将<Cj,Rj>通过安全通道发送给服务器;
S2.2:服务器收到所述挑战响应对后,为每架无人机选择一个特有的假名FIDj(1≤j≤m)和第二随机数
Figure BDA0003361621950000041
将第二随机数kj与所述基点Q进行点乘运算得到
Figure BDA0003361621950000042
将无人机的假名FIDj、/>
Figure BDA0003361621950000043
和/>
Figure BDA0003361621950000044
合并后利用所述哈希函数h2(·)生成第一哈希值,其中,/>
Figure BDA0003361621950000045
是前面的点乘算法计算出来的点Kj的x轴上的数据,/>
Figure BDA0003361621950000046
是点Kj对应的y轴上的数据。
该第一哈希值和所述服务器私钥s的乘积加上第二随机数kj得到的结果再模p得到Dj,即计算
Figure BDA0003361621950000047
S2.3:服务器把收到的响应Rj分成两个部分,分别为
Figure BDA0003361621950000048
和/>
Figure BDA0003361621950000049
再用由所述服务器私钥s和/>
Figure BDA00033616219500000410
合并后利用所述哈希函数h1(·)生成的第二哈希值与响应的两个部分异或得到Aj,即/>
Figure BDA00033616219500000411
S2.4:服务器在数据库中为每架无人机存储无人机认证信息,所述无人机认证信息包括所述无人机的假名FIDj、选择的挑战Cj、Kj和Aj,并将假名FIDj和Dj通过安全通道发送给对应的无人机;
S2.5:无人机收到假名FIDj和Dj后,将这两个数据存储在内存中。
如图2所示,优选的,所述S3包括以下步骤:
S3.1:用户选择自己的身份IDi,选择第三随机数fi,再将由该随机数fi与用户身份IDi合并后利用所述哈希函数h1(·)生成的第三哈希值UIDi作为用户的假名,即计算UIDi=h1(IDi||fi),所述注册信息为用户的假名,将UIDi通过安全通道发送给服务器;
S3.2:服务器收到所述注册信息后,将所述用户的假名UIDi和服务器私钥s合并后利用所述哈希函数h1(·)生成第四哈希值
Figure BDA00033616219500000412
即计算/>
Figure BDA00033616219500000413
第四哈希值
Figure BDA00033616219500000414
作为服务器的假名,并将/>
Figure BDA00033616219500000415
通过安全通道发送给用户;
S3.3:用户收到所述服务器假名
Figure BDA00033616219500000416
后,选择自己的密码PWi,并将密码PWi和生物特征BIOi输入到移动设备中;
S3.4:移动设备将所述用户的生物特征BIOi作为所述模糊提取器生成函数Gen(·)的输入值,经过运算输出用户的生物特征密钥σi和相应的公共复制参数τi,即Gen(BIOi)=(σii);
S3.5:移动设备将所述第三随机数fi、用户的生物特征密钥σi和服务器假名FIDsi合并后利用所述哈希函数h1(·)生成第五哈希值Bi
即计算
Figure BDA00033616219500000420
S3.6:移动设备使用由所述用户的密码PWi和生物特征密钥σi合并后利用所述哈希函数h1(·)生成的第六哈希值去隐藏所述服务器假名
Figure BDA00033616219500000417
得到服务器假名隐藏信息
Figure BDA00033616219500000418
即计算
Figure BDA00033616219500000419
S3.7:移动设备使用由所述用户的身份IDi、密码PWi和生物特征密钥σi合并后利用所述哈希函数h1(·)生成的第七哈希值去隐藏所述第三随机数fi得到随机数隐藏信息Fi
即计算
Figure BDA0003361621950000051
S3.8:移动设备存储用户认证信息,所述用户认证信息包括所述服务器假名隐藏信息
Figure BDA0003361621950000052
随机数隐藏信息Fi、公共复制参数τi和第五哈希值Bi
如图3所示,优选的,所述S4包括以下步骤:
S4.1:接收用户输入的用户身份ID′i、密码PW′i和生物特征BIO′i
S4.2:移动设备将用户输入的生物特征BIO′i和存储的公共复制参数τi作为所述模糊提取器再现函数Rep(·)的输入值,经过运算输出用户的生物特征密钥σ′i,即σ′i=Rep(BIO′ii);
S4.3:移动设备将用户输入的用户身份ID′i、密码PW′i和用户的生物特征密钥σ′i合并后利用所述哈希函数h1(·)生成的第八哈希值与存储的随机数隐藏信息Fi异或得到第三随机数f′i,再用由用户输入的密码PW′i和用户的生物特征密钥σ′i合并后利用所述哈希函数h1(·)生成的第九哈希值与存储的服务器假名隐藏信息
Figure BDA0003361621950000053
异或得到服务器假名
Figure BDA0003361621950000054
即计算
Figure BDA0003361621950000055
和/>
Figure BDA0003361621950000056
S4.4:移动设备将计算得到的第三随机数f′i、生物特征密钥σ′i和服务器假名
Figure BDA0003361621950000057
合并后利用所述哈希函数h1(·)生成第十哈希值/>
Figure BDA0003361621950000058
将该哈希值与存储的第五哈希值Bi进行比较,如果两者相等,则用户通过移动设备的认证,继续S4.5,否则终止认证;
S4.5:无人机广播自己的假名FIDj,用户根据任务需求选取多架无人机,假设用户选择的多架无人机的假名为FIDg到FIDq(1≤g≤q≤m),这些编号g到q是连续的或者不连续的;
S4.6:移动设备选择第四随机数u1和第五随机数r1,产生第一当前时间戳T1,将所述用户的身份ID′i和第三随机数f′i合并后利用所述哈希函数h1(·)生成第十一哈希值UIDi,即计算UIDi=h1(ID′i||f′i),再将选择的多架无人机假名FIDg到FIDq和第十一哈希值UIDi合并得到M1,即M1=FIDg||···||FIDq||UIDi
S4.7:移动设备将所述第四随机数u1与服务器假名
Figure BDA0003361621950000059
异或得到M2,再将所述第五随机数r1、第四随机数u1、M1、服务器假名/>
Figure BDA00033616219500000510
和第一当前时间戳T1合并后利用所述哈希函数h1(·)生成第十二哈希值M3,即/>
Figure BDA00033616219500000511
和/>
Figure BDA00033616219500000512
S4.8:移动设备把所述M1、M2、第十二哈希值M3、第五随机数r1和第一当前时间戳T1通过公共通道发送给服务器;
S4.9:服务器收到信息后,检查接收信息的时间T′1与收到的第一当前时间戳T1的差值是否在可接受范围ΔT内,即检查是否|T′1-T1|<ΔT,如果在,则继续S4.10,否则终止认证;
S4.10:服务器从收到的M1中提取出第十一哈希值UID′i,将该哈希值UID′i和所述服务器私钥s合并后利用所述哈希函数h1(·)生成第十三哈希值
Figure BDA0003361621950000061
再将收到的M2与第十三哈希值/>
Figure BDA0003361621950000062
异或得到第四随机数u′1,即/>
Figure BDA0003361621950000063
和/>
Figure BDA0003361621950000064
S4.11:服务器检查由收到的第五随机数r1、计算得到的第四随机数u′1、收到的M1、第十三哈希值
Figure BDA0003361621950000065
和收到的第一当前时间戳T1合并后利用所述哈希函数h1(·)生成的第十四哈希值/>
Figure BDA0003361621950000066
与收到的第十二哈希值M3是否相等。如果不相等,则服务器终止该会话,否则认证用户成功,继续S4.12;
S4.12:服务器从M1中提取出多架无人机的假名(FIDg到FIDq),在数据库中搜索这些假名,如果全部假名都被搜索到,则根据每架无人机的假名FIDj(g≤j≤q)从数据库中提取出对应的无人机选择的挑战Cj、Aj和Kj,继续S4.13;如果有部分假名没有搜索到,则返回给用户这些假名非法的信息,再根据剩余合法的无人机假名FIDj从数据库中提取出对应的无人机选择的挑战Cj、Aj和Kj,继续S4.13;如果全部假名都没有被搜索到,则终止认证;
S4.13:服务器选择第六随机数N和第七随机数r2,产生第二当前时间戳T2,将所述第十一哈希值UID′i和第四随机数u′1合并后利用所述哈希函数h1(·)生成第十五哈希值M4,将第六随机数N与第十五哈希值M4异或得到M5,即M4=h1(UID′i||u′1)和
Figure BDA0003361621950000067
S4.14:对于用户选择的每架合法无人机,服务器将所述服务器私钥s和
Figure BDA0003361621950000068
合并后利用所述哈希函数h1(·)生成第十六哈希值Mj1,将所述第十五哈希值M4与第十六哈希值Mj1异或得到Mj2,再将/>
Figure BDA0003361621950000069
所述第六随机数N、第十六哈希值Mj1、第七随机数r2和第二当前时间戳T2合并后利用所述哈希函数h1(·)生成第十七哈希值Mj3
Figure BDA00033616219500000610
和/>
Figure BDA00033616219500000611
S4.15:服务器通过公共通道发送所述无人机选择的挑战Cj、Aj、Kj、M5、Mj2、第十七哈希值Mj3、第七随机数r2和第二当前时间戳T2给对应的无人机;
S4.16:无人机收到信息后,检查接收信息的时间T′2与收到的第二当前时间戳T2的差值是否在可接受范围ΔT内,即检查是否|T′2-T2|<ΔT,如果在,则继续S4.17,否则终止认证;
S4.17:无人机将收到的挑战Cj作为PUF的输入,PUF输出相应的响应Rj=Pu(Cj),再将该响应分成两个部分,分别为
Figure BDA00033616219500000612
和/>
Figure BDA00033616219500000613
S4.18:无人机将收到的A′j与所述响应的两个部分异或得到所述第二哈希值M′j1,将收到的Mj2与所述第二哈希值M′j1异或得到第十五哈希值M′4,将收到的M5与第十五哈希值M′4异或得到第六随机数N′,再比较收到的第十七哈希值Mj3是否等于由收到的
Figure BDA00033616219500000614
计算得到的第六随机数N′、所述第二哈希值M′j1、收到的第七随机数r2和第二当前时间戳T2合并后利用所述哈希函数h1(·)生成的第十八哈希值/>
Figure BDA0003361621950000079
若不等,则认证服务器失败,终止认证,否则认证服务器成功,继续S4.19,即
Figure BDA0003361621950000071
Figure BDA0003361621950000072
和/>
Figure BDA0003361621950000073
S4.19:无人机把所述第十五哈希值M′4作为所述哈希函数h2(·)的输入,输出第十九哈希值h2(M′4),将所述第六随机数N′和存储在内存中的假名FIDj合并后利用所述哈希函数h2(·)生成第二十哈希值h2(N′||FIDj),再用第十九哈希值h2(M′4)与存储在内存中的Dj相乘,该乘积加上第二十哈希值h2(N′||FIDj)得到的结果再模p得到Vj,即Vj=h2(M′4)·Dj+h2(N′||FIDj)mod p;
S4.20:无人机将所述第十五哈希值M′4和第六随机数N′合并后利用所述哈希函数h1(·)生成第二十一哈希值SK,并将该哈希值作为协商出来的第一会话密钥,即SK=h1(M′4||N′);
S4.21:多架无人机通过公共通道将M5、自己的假名FIDj、Vj和Kj发送给用户;
S4.22:用户收到来自多架无人机的信息后,将所述第十一哈希值UIDi″和第四随机数u1″合并后利用所述哈希函数h1(·)生成第二十二哈希值M4″,即计算M4″=h1(UIDi″||u1″),再将第二十二哈希值M4″作为所述哈希函数h2(·)的输入,输出第二十三哈希值h2(M4″);
S4.23:对于收到的每架无人机的信息,用户从中提取出M5,将M5与所述第二十二哈希值M′4′异或得到第六随机数N″,即计算
Figure BDA0003361621950000074
将收到的无人机的假名FIDj
Figure BDA0003361621950000075
和/>
Figure BDA0003361621950000076
合并后利用所述哈希函数h2(·)生成第二十四哈希值/>
Figure BDA0003361621950000077
再将第六随机数N″和收到的无人机的假名FIDj合并后利用所述哈希函数h2(·)生成第二十五哈希值h2(N″||FIDj);
S4.24:用户为每架无人机随机选择一个向量xj∈[1,3t](g≤j≤q),其中t是一个随机整数,执行以下公式认证多架无人机:
Figure BDA0003361621950000078
如果以上认证公式成立,则多架无人机通过用户的认证,进行S4.25;如果不成立,则进行S4.26;
需要说明的是即使无人机的编号g到q是不连续的,但是不影响认证公式的正确性,用户仍然可以使用该公式同时认证多架无人机。
S4.25:用户将所述第二十二哈希值M4″和第六随机数N″合并后利用所述哈希函数h1(·)生成第二十六哈希值SK,即计算SK=h1(M4″||N″),并将该哈希值作为协商出来的第二会话密钥,之后用户使用第二会话密钥与多架无人机通信,至此认证和密钥协商结束;
所述S4还包括:
S4.26:使用二分法查找无效的无人机信息,删除无效的无人机信息,将由所述第二十二哈希值M4″和第六随机数N″合并后利用所述哈希函数h1(·)生成的第二十七哈希值SK作为协商出来的第三会话密钥,即计算SK=h1(M4″||N″),之后用户使用所述第三会话密钥与剩余的合法无人机通信,至此认证和密钥协商结束。
如图4所示,优选的,所述方法还包括更新移动设备上的密码和生物特征,具体包括:
S5.1:首先输入用户的用户身份ID′i、旧密码PW′i和旧生物特征BIO′i到移动设备中;
S5.2:移动设备将用户输入的旧生物特征BIO′i和存储的公共复制参数τi作为所述模糊提取器再现函数Rep(·)的输入值,经过运算输出用户的旧生物特征密钥σ′i,即σ′i=Rep(BIO′ii);
S5.3:移动设备使用由用户输入的身份ID′i、旧密码PW′i和用户的旧生物特征密钥σ′i合并后利用所述哈希函数h1(·)生成的第二十八哈希值与存储的随机数隐藏信息Fi异或得到第三随机数f′i,再用由用户输入的旧密码PW′i和用户的旧生物特征密钥σ′i合并后利用所述哈希函数h1(·)生成的第二十九哈希值与存储的服务器假名隐藏信息
Figure BDA0003361621950000081
异或得到服务器假名/>
Figure BDA0003361621950000082
Figure BDA0003361621950000083
和/>
Figure BDA00033616219500000817
S5.4:移动设备比较存储的第五哈希值Bi是否等于由计算得到的第三随机数f′i、旧生物特征密钥σ′i和服务器假名
Figure BDA0003361621950000084
合并后利用所述哈希函数h1(·)生成的第三十哈希值/>
Figure BDA0003361621950000085
若不等,则认证用户失败,终止更新,否则认证用户成功,移动设备提示用户输入新的密码和生物特征,继续S5.5;
S5.5:用户输入新的密码PWi new和生物特征
Figure BDA0003361621950000086
到移动设备中;
S5.6:移动设备将所述新的生物特征
Figure BDA0003361621950000087
输入至所述模糊提取器生成函数Gen(·)中,该函数输出用户新的生物特征密钥/>
Figure BDA0003361621950000088
和相应的公共复制参数/>
Figure BDA0003361621950000089
Figure BDA00033616219500000810
S5.7:移动设备将所述第三随机数f′i、新的生物特征密钥
Figure BDA00033616219500000811
和服务器假名
Figure BDA00033616219500000812
合并后利用所述哈希函数h1(·)生成第三十一哈希值/>
Figure BDA00033616219500000813
Figure BDA00033616219500000814
S5.8:移动设备将由所述新的密码PWi new和生物特征密钥
Figure BDA00033616219500000815
合并后利用所述哈希函数h1(·)生成的第三十二哈希值去隐藏服务器假名/>
Figure BDA00033616219500000816
得到服务器假名隐藏信息
Figure BDA0003361621950000091
即/>
Figure BDA0003361621950000092
S5.9:移动设备将由所述用户的身份ID′i、新的密码PWi new和生物特征密钥
Figure BDA0003361621950000093
合并后利用所述哈希函数h1(·)生成的第三十三哈希值去隐藏第三随机数f′i得到随机数隐藏信息Fi new,即/>
Figure BDA0003361621950000094
S5.10:移动设备将新生成的服务器假名隐藏信息
Figure BDA0003361621950000095
随机数隐藏信息Fi new、公共复制参数/>
Figure BDA0003361621950000096
和第三十一哈希值/>
Figure BDA0003361621950000097
取代之前存储的服务器假名隐藏信息/>
Figure BDA0003361621950000098
随机数隐藏信息Fi、公共复制参数τi和第五哈希值Bi
如图5所示,进一步的,所述方法还包括包括在网络中添加新的无人机:
S6.1:该无人机预先在服务器上注册;
S6.2:新的无人机选择一个挑战
Figure BDA0003361621950000099
并将该挑战/>
Figure BDA00033616219500000910
输入至内部的PUF中,PUF经过计算输出相应的响应/>
Figure BDA00033616219500000911
把挑战响应对/>
Figure BDA00033616219500000912
通过安全通道发送给服务器;
S6.3:服务器收到挑战响应对后,为新的无人机选择一个特有的假名
Figure BDA00033616219500000913
和第八随机数/>
Figure BDA00033616219500000914
将该随机数/>
Figure BDA00033616219500000915
与所述基点Q进行点乘运算得到
Figure BDA00033616219500000916
再用由新的无人机的假名/>
Figure BDA00033616219500000917
和/>
Figure BDA00033616219500000918
合并后利用所述哈希函数h2(·)生成的第三十四哈希值与所述服务器私钥s相乘,该乘积加上第八随机数/>
Figure BDA00033616219500000919
得到的结果再模p得到/>
Figure BDA00033616219500000920
即计算
Figure BDA00033616219500000921
S6.4:服务器把收到的响应
Figure BDA00033616219500000922
分成/>
Figure BDA00033616219500000923
和/>
Figure BDA00033616219500000924
再用由所述服务器私钥s和
Figure BDA00033616219500000925
合并后利用所述哈希函数h1(·)生成的第三十五哈希值与响应的两个部分异或得到
Figure BDA00033616219500000926
即/>
Figure BDA00033616219500000927
S6.5:服务器存储所述新的无人机的假名
Figure BDA00033616219500000928
选择的挑战/>
Figure BDA00033616219500000929
和/>
Figure BDA00033616219500000930
到数据库中,并将假名/>
Figure BDA00033616219500000931
和/>
Figure BDA00033616219500000932
通过安全通道发送给新的无人机;
S6.6:新的无人机收到假名
Figure BDA00033616219500000933
和/>
Figure BDA00033616219500000934
后,将这两个数据存储在内存中。
请参考图6,其示出了本申请一个实施例提供的计算设备1500的结构示意图。该计算设备1500可用于实施上述实施例中提供的用户与多架无人机进行相互认证的方法。
具体来讲:
所述计算设备1500包括中央处理单元(CPU)1501、包括随机存取存储器(RAM)1502和只读存储器(ROM)1503的系统存储器1504,以及连接系统存储器1504和中央处理单元1501的系统总线1505。所述计算设备1500还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)1506,和用于存储操作系统1513、应用程序1514和其他程序模块1515的大容量存储设备1507。
所述基本输入/输出系统1506包括有用于显示信息的显示器1508和用于用户输入信息的诸如鼠标、键盘之类的输入设备1509。其中,所述显示器1508和输入设备1509都通过连接到系统总线1505的输入输出控制器1510连接到中央处理单元1501。所述基本输入/输出系统1506还可以包括输入输出控制器1510以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1510还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1507通过连接到系统总线1505的大容量存储控制器(未示出)连接到中央处理单元1501。所述大容量存储设备1507及其相关联的计算机可读介质为计算设备1500提供非易失性存储。也就是说,所述大容量存储设备1507可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。
当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1504和大容量存储设备1507可以统称为存储器。
根据本申请的各种实施例,所述计算设备1500还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算设备1500可以通过连接在所述系统总线1505上的网络接口单元1511连接到网络1512,或者说,也可以使用网络接口单元1511来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于实现上述用户与多架无人机进行相互认证的方法。
在示例性实施例中,还提供了一种计算设备,所述计算设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集。所述至少一条指令、至少一段程序、代码集或指令集经配置以由所述处理器执行,以实现上述用户与多架无人机进行相互认证的方法。
在示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被终端的处理器执行时实现上述实施例的用户与多架无人机进行相互认证的方法。可选地,上述计算机可读存储介质可以是ROM(Read-Only Memory,只读存储器)、RAM(RandomAccess Memory,随机存取存储器)、CD-ROM(Compact Disc Read-OnlyMemory,只读光盘)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,当该计算机程序产品被执行时,其用于实现上述用户与多架无人机进行相互认证的方法。
两个以上“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种用户与多架无人机进行相互认证的方法,其特征在于,所述方法包括以下步骤:
S1.对服务器的公共参数和服务器私钥进行初始化,具体包括:
S1.1:设
Figure QLYQS_1
为有限域,/>
Figure QLYQS_2
是一大素数,表示该有限域的大小,服务器在/>
Figure QLYQS_3
上选择椭圆曲线/>
Figure QLYQS_4
,其中/>
Figure QLYQS_5
,/>
Figure QLYQS_6
是/>
Figure QLYQS_7
上的一个基点;
S1.2:服务器选择两个哈希函数分别为
Figure QLYQS_8
和/>
Figure QLYQS_9
,其中,/>
Figure QLYQS_10
将任意长度的字符串映射为固定长度的字符串,/>
Figure QLYQS_11
将任意长度的字符串映射为一个整数;
S1.3:服务器选择第一随机数
Figure QLYQS_12
作为服务器私钥/>
Figure QLYQS_13
,其中,
Figure QLYQS_14
再将该服务器私钥
Figure QLYQS_15
与基点/>
Figure QLYQS_16
进行点乘运算得到其公钥/>
Figure QLYQS_17
,即/>
Figure QLYQS_18
S1.4:服务器选择模糊提取器生成函数
Figure QLYQS_19
,其中,函数/>
Figure QLYQS_20
的输入为用户的生物特征,输出为生物特征密钥和相应的公共复制参数,和模糊提取器再现函数/>
Figure QLYQS_21
,函数/>
Figure QLYQS_22
的输入为用户的生物特征和公共复制参数,输出为生物特征密钥;
S1.5:所述椭圆曲线
Figure QLYQS_24
、基点/>
Figure QLYQS_27
、服务器公钥/>
Figure QLYQS_29
、两个哈希函数/>
Figure QLYQS_23
和/>
Figure QLYQS_26
、模糊提取器生成函数/>
Figure QLYQS_28
和模糊提取器再现函数/>
Figure QLYQS_30
被公开,所述私钥/>
Figure QLYQS_25
被服务器保存;
S2.每架无人机向服务器发送无人机注册信息,根据所述无人机注册信息、公共参数和服务器私钥,生成无人机认证信息,具体包括:
S2.1:假设共有
Figure QLYQS_31
架无人机,每架无人机选择一个挑战/>
Figure QLYQS_32
作为嵌入在无人机中的PUF的输入,输出对应的响应/>
Figure QLYQS_33
,无人机注册信息为无人机产生的挑战响应对
Figure QLYQS_34
,将/>
Figure QLYQS_35
通过安全通道发送给服务器;
S2.2:服务器收到所述无人机注册信息后,为每架无人机选择一个特有的假名
Figure QLYQS_38
和第二随机数/>
Figure QLYQS_41
,将第二随机数/>
Figure QLYQS_45
与所述基点/>
Figure QLYQS_37
进行点乘运算得到/>
Figure QLYQS_40
,将无人机的假名/>
Figure QLYQS_44
、/>
Figure QLYQS_47
和/>
Figure QLYQS_36
合并后利用所述哈希函数/>
Figure QLYQS_43
生成第一哈希值,该第一哈希值和所述服务器私钥/>
Figure QLYQS_46
的乘积加上第二随机数/>
Figure QLYQS_48
得到的结果再模/>
Figure QLYQS_39
得到/>
Figure QLYQS_42
,即
Figure QLYQS_49
S2.3:服务器把收到的响应
Figure QLYQS_51
分成两个部分,分别为/>
Figure QLYQS_54
和/>
Figure QLYQS_55
,再用由所述服务器私钥
Figure QLYQS_52
和/>
Figure QLYQS_53
合并后利用所述哈希函数/>
Figure QLYQS_56
生成的第二哈希值与响应的两个部分异或得到/>
Figure QLYQS_57
,即/>
Figure QLYQS_50
S2.4:服务器在数据库中为每架无人机存储无人机认证信息,所述无人机认证信息包括所述无人机假名
Figure QLYQS_58
、选择的挑战/>
Figure QLYQS_59
、/>
Figure QLYQS_60
和/>
Figure QLYQS_61
,并将假名/>
Figure QLYQS_62
和/>
Figure QLYQS_63
通过安全通道发送给对应的无人机;
S2.5:无人机收到自己的无人机假名
Figure QLYQS_64
和/>
Figure QLYQS_65
后,将这两个数据存储在内存中;
S3.移动设备向服务器发送用户注册信息,根据所述用户注册信息、公共参数和服务器私钥,生成用户认证信息;
S4.用户通过根据所述服务器私钥、无人机认证信息和用户认证信息,与多架无人机同时进行认证和密钥协商。
2.如权利要求1所述的用户与多架无人机进行相互认证的方法,其特征在于,所述S3包括以下步骤:
S3.1:为用户选择用户身份
Figure QLYQS_67
,选择第三随机数/>
Figure QLYQS_69
,再将由该随机数/>
Figure QLYQS_72
与用户身份
Figure QLYQS_68
合并后利用所述哈希函数/>
Figure QLYQS_70
生成的第三哈希值/>
Figure QLYQS_71
作为用户的假名,即
Figure QLYQS_73
用户注册信息为用户的假名,将用户注册信息/>
Figure QLYQS_66
通过安全通道发送给服务器;
S3.2:服务器收到所述用户注册信息后,将所述用户的假名
Figure QLYQS_74
和服务器私钥/>
Figure QLYQS_75
合并后利用所述哈希函数/>
Figure QLYQS_76
生成第四哈希值/>
Figure QLYQS_77
,即/>
Figure QLYQS_78
,第四哈希值
Figure QLYQS_79
作为服务器的假名,并将/>
Figure QLYQS_80
通过安全通道发送给用户;
S3.3:用户收到所述服务器假名
Figure QLYQS_81
后,选择自己的密码/>
Figure QLYQS_82
,并将密码/>
Figure QLYQS_83
和生物特征/>
Figure QLYQS_84
输入到移动设备中;
S3.4:移动设备将所述用户的生物特征
Figure QLYQS_85
作为所述模糊提取器生成函数/>
Figure QLYQS_86
的输入值,经过/>
Figure QLYQS_87
运算输出用户的生物特征密钥/>
Figure QLYQS_88
和相应的公共复制参数/>
Figure QLYQS_89
,即
Figure QLYQS_90
S3.5:移动设备将所述第三随机数
Figure QLYQS_91
、用户的生物特征密钥/>
Figure QLYQS_92
和服务器假名/>
Figure QLYQS_93
合并后利用所述哈希函数/>
Figure QLYQS_94
生成第五哈希值/>
Figure QLYQS_95
,即
Figure QLYQS_96
S3.6:移动设备使用由所述用户的密码
Figure QLYQS_97
和生物特征密钥/>
Figure QLYQS_98
合并后利用所述哈希函数/>
Figure QLYQS_99
生成的第六哈希值去隐藏所述服务器假名/>
Figure QLYQS_100
得到服务器假名隐藏信息/>
Figure QLYQS_101
,即/>
Figure QLYQS_102
S3.7:移动设备使用由所述用户的身份
Figure QLYQS_103
、密码/>
Figure QLYQS_104
和生物特征密钥/>
Figure QLYQS_105
合并后利用所述哈希函数/>
Figure QLYQS_106
生成的第七哈希值去隐藏所述第三随机数/>
Figure QLYQS_107
得到随机数隐藏信息/>
Figure QLYQS_108
,即/>
Figure QLYQS_109
S3.8:移动设备存储用户认证信息,所述用户认证信息包括所述服务器假名隐藏信息
Figure QLYQS_110
、随机数隐藏信息/>
Figure QLYQS_111
、公共复制参数/>
Figure QLYQS_112
和第五哈希值/>
Figure QLYQS_113
3.如权利要求1所述的用户与多架无人机进行相互认证的方法,其特征在于,所述S4包括以下步骤:
S4.1:移动设备接收用户输入的用户身份
Figure QLYQS_114
、密码/>
Figure QLYQS_115
和生物特征/>
Figure QLYQS_116
S4.2:移动设备将用户输入的生物特征
Figure QLYQS_117
和存储的公共复制参数/>
Figure QLYQS_118
作为所述模糊提取器再现函数/>
Figure QLYQS_119
的输入值,经过运算输出用户的生物特征密钥/>
Figure QLYQS_120
,即
Figure QLYQS_121
S4.3:移动设备将用户输入的用户身份
Figure QLYQS_122
、密码/>
Figure QLYQS_123
和用户的生物特征密钥/>
Figure QLYQS_124
合并后利用所述哈希函数/>
Figure QLYQS_125
生成的第八哈希值与存储的随机数隐藏信息/>
Figure QLYQS_126
异或得到第三随机数/>
Figure QLYQS_127
,即/>
Figure QLYQS_128
再用由用户输入的密码
Figure QLYQS_129
和用户的生物特征密钥/>
Figure QLYQS_130
合并后利用所述哈希函数
Figure QLYQS_131
生成的第九哈希值与存储的服务器假名隐藏信息/>
Figure QLYQS_132
异或得到服务器假名/>
Figure QLYQS_133
,即/>
Figure QLYQS_134
S4.4:移动设备将计算得到的第三随机数
Figure QLYQS_135
、生物特征密钥/>
Figure QLYQS_136
和服务器假名/>
Figure QLYQS_137
合并后利用所述哈希函数/>
Figure QLYQS_138
生成第十哈希值/>
Figure QLYQS_139
,将该第十哈希值与存储的第五哈希值/>
Figure QLYQS_140
进行比较,如果两者相等,则用户通过移动设备的认证,继续S4.5,否则终止认证;
S4.5:无人机广播自己的假名
Figure QLYQS_141
,用户根据任务需求选择多架无人机,设用户选择的多架无人机的假名为/>
Figure QLYQS_142
到/>
Figure QLYQS_143
,编号/>
Figure QLYQS_144
到/>
Figure QLYQS_145
是连续的或者不连续的;
S4.6:移动设备选择第四随机数
Figure QLYQS_147
和第五随机数/>
Figure QLYQS_153
,产生第一当前时间戳/>
Figure QLYQS_156
,将所述用户身份/>
Figure QLYQS_149
和第三随机数/>
Figure QLYQS_151
合并后利用所述哈希函数/>
Figure QLYQS_155
生成第十一哈希值/>
Figure QLYQS_158
,即
Figure QLYQS_146
,再将选择的多架无人机假名/>
Figure QLYQS_150
到/>
Figure QLYQS_154
和第十一哈希值/>
Figure QLYQS_157
合并得到/>
Figure QLYQS_148
,即/>
Figure QLYQS_152
S4.7:移动设备将所述第四随机数
Figure QLYQS_160
与服务器假名/>
Figure QLYQS_164
异或得到/>
Figure QLYQS_167
,再将所述第五随机数/>
Figure QLYQS_161
、第四随机数/>
Figure QLYQS_163
、/>
Figure QLYQS_166
、服务器假名/>
Figure QLYQS_169
和第一当前时间戳/>
Figure QLYQS_159
合并后利用所述哈希函数/>
Figure QLYQS_165
生成第十二哈希值/>
Figure QLYQS_168
,即/>
Figure QLYQS_170
和/>
Figure QLYQS_162
S4.8:移动设备把所述
Figure QLYQS_171
、/>
Figure QLYQS_172
、第十二哈希值/>
Figure QLYQS_173
、第五随机数/>
Figure QLYQS_174
和第一当前时间戳/>
Figure QLYQS_175
通过公共通道发送给服务器;
S4.9:服务器收到后,检查接收的时间
Figure QLYQS_176
与收到的第一当前时间戳/>
Figure QLYQS_177
的差值是否在可接受范围/>
Figure QLYQS_178
内,即检查是否/>
Figure QLYQS_179
,如果在,则继续S4.10,否则终止认证;
S4.10:服务器从收到的
Figure QLYQS_181
中提取出第十一哈希值/>
Figure QLYQS_185
,将该第十一哈希值/>
Figure QLYQS_188
和所述服务器私钥/>
Figure QLYQS_182
合并后利用所述哈希函数/>
Figure QLYQS_184
生成第十三哈希值/>
Figure QLYQS_187
,即
Figure QLYQS_190
,再将收到的/>
Figure QLYQS_180
与第十三哈希值/>
Figure QLYQS_183
异或得到第四随机数/>
Figure QLYQS_186
,即
Figure QLYQS_189
S4.11:服务器检查由收到的第五随机数
Figure QLYQS_192
、计算得到的第四随机数/>
Figure QLYQS_195
、收到的/>
Figure QLYQS_197
、第十三哈希值/>
Figure QLYQS_193
和收到的第一当前时间戳/>
Figure QLYQS_194
合并后利用所述哈希函数/>
Figure QLYQS_196
生成的第十四哈希值/>
Figure QLYQS_198
与收到的第十二哈希值/>
Figure QLYQS_191
是否相等,如果不相等,则服务器终止该会话,否则认证用户成功,继续S4.12;
S4.12:服务器从
Figure QLYQS_200
中提取出多架无人机的假名,在数据库中搜索这些假名,如果全部假名都被搜索到,则根据每架无人机的假名/>
Figure QLYQS_204
从数据库中提取出对应的无人机选择的挑战/>
Figure QLYQS_206
、/>
Figure QLYQS_201
和/>
Figure QLYQS_203
,继续S4.13;如果有部分假名没有搜索到,则返回给用户这些假名非法的信息,再根据剩余合法的无人机假名/>
Figure QLYQS_205
从数据库中提取出对应的无人机选择的挑战/>
Figure QLYQS_207
、/>
Figure QLYQS_199
和/>
Figure QLYQS_202
,继续S4.13;如果全部假名都没有被搜索到,则终止认证;
S4.13:服务器选择第六随机数
Figure QLYQS_209
和第七随机数/>
Figure QLYQS_212
,产生第二当前时间戳/>
Figure QLYQS_215
,将所述第十一哈希值/>
Figure QLYQS_210
和第四随机数/>
Figure QLYQS_214
合并后利用所述哈希函数/>
Figure QLYQS_217
生成第十五哈希值/>
Figure QLYQS_219
,将第六随机数/>
Figure QLYQS_208
与第十五哈希值/>
Figure QLYQS_213
异或得到/>
Figure QLYQS_216
,即/>
Figure QLYQS_218
和/>
Figure QLYQS_211
S4.14:对于用户选择的每架合法无人机,服务器将所述服务器私钥
Figure QLYQS_230
和/>
Figure QLYQS_221
合并后利用所述哈希函数/>
Figure QLYQS_226
生成第十六哈希值/>
Figure QLYQS_227
,即/>
Figure QLYQS_231
,将所述第十五哈希值
Figure QLYQS_229
与第十六哈希值/>
Figure QLYQS_233
异或得到/>
Figure QLYQS_228
,即/>
Figure QLYQS_232
,再将/>
Figure QLYQS_220
、/>
Figure QLYQS_224
、所述第六随机数/>
Figure QLYQS_234
、第十六哈希值/>
Figure QLYQS_236
、第七随机数/>
Figure QLYQS_235
和第二当前时间戳/>
Figure QLYQS_237
合并后利用所述哈希函数/>
Figure QLYQS_222
生成第十七哈希值/>
Figure QLYQS_225
,即/>
Figure QLYQS_223
S4.15:服务器通过公共通道发送所述无人机的挑战
Figure QLYQS_240
、/>
Figure QLYQS_242
、/>
Figure QLYQS_244
、/>
Figure QLYQS_239
、/>
Figure QLYQS_241
、第十七哈希值/>
Figure QLYQS_243
、第七随机数/>
Figure QLYQS_245
和第二当前时间戳/>
Figure QLYQS_238
给对应的无人机;
S4.16:无人机收到信息后,检查接收信息的时间
Figure QLYQS_246
与收到的第二当前时间戳/>
Figure QLYQS_247
的差值是否在可接受范围/>
Figure QLYQS_248
内,即检查是否/>
Figure QLYQS_249
,如果在,则继续S4.17,否则终止认证;
S4.17:无人机将收到的挑战
Figure QLYQS_250
作为PUF的输入,PUF输出相应的响应/>
Figure QLYQS_251
,再将该响应分成两个部分,分别为/>
Figure QLYQS_252
和/>
Figure QLYQS_253
S4.18:无人机将收到的
Figure QLYQS_254
与所述响应的两个部分异或得到所述第二哈希值/>
Figure QLYQS_255
,即
Figure QLYQS_256
将收到的
Figure QLYQS_257
与所述第二哈希值/>
Figure QLYQS_258
异或得到第十五哈希值/>
Figure QLYQS_259
,即
Figure QLYQS_260
将收到的
Figure QLYQS_261
与第十五哈希值/>
Figure QLYQS_262
异或得到第六随机数/>
Figure QLYQS_263
,即/>
Figure QLYQS_264
再比较收到的第十七哈希值
Figure QLYQS_266
是否等于由收到的/>
Figure QLYQS_269
、/>
Figure QLYQS_271
、计算得到的第六随机数
Figure QLYQS_267
、所述第二哈希值/>
Figure QLYQS_270
、收到的第七随机数/>
Figure QLYQS_272
和第二当前时间戳/>
Figure QLYQS_273
合并后利用所述哈希函数/>
Figure QLYQS_265
生成的第十八哈希值/>
Figure QLYQS_268
,若不等,则认证服务器失败,终止认证,否则认证服务器成功,继续S4.19;
S4.19:无人机把所述第十五哈希值
Figure QLYQS_274
作为所述哈希函数/>
Figure QLYQS_278
的输入,输出第十九哈希值/>
Figure QLYQS_282
,将所述第六随机数/>
Figure QLYQS_277
和存储在内存中的假名/>
Figure QLYQS_281
合并后利用所述哈希函数/>
Figure QLYQS_284
生成第二十哈希值/>
Figure QLYQS_286
,再用第十九哈希值/>
Figure QLYQS_276
与存储在内存中的/>
Figure QLYQS_279
相乘,该乘积加上第二十哈希值/>
Figure QLYQS_283
得到的结果再模/>
Figure QLYQS_285
得到/>
Figure QLYQS_275
,即
Figure QLYQS_280
S4.20:无人机将所述第十五哈希值
Figure QLYQS_287
和第六随机数/>
Figure QLYQS_288
合并后利用所述哈希函数
Figure QLYQS_289
生成第二十一哈希值/>
Figure QLYQS_290
,并将该第二十一哈希值/>
Figure QLYQS_291
作为协商出来的第一会话密钥,即/>
Figure QLYQS_292
S4.21:多架无人机通过公共通道将
Figure QLYQS_293
、自己的假名/>
Figure QLYQS_294
、/>
Figure QLYQS_295
和/>
Figure QLYQS_296
发送给用户;
S4.22:用户收到来自多架无人机的信息后,将所述第十一哈希值
Figure QLYQS_298
和第四随机数
Figure QLYQS_301
合并后利用所述哈希函数/>
Figure QLYQS_303
生成第二十二哈希值/>
Figure QLYQS_299
,即/>
Figure QLYQS_300
,再将第二十二哈希值/>
Figure QLYQS_302
作为所述哈希函数/>
Figure QLYQS_304
的输入,输出第二十三哈希值/>
Figure QLYQS_297
S4.23:对于收到的每架无人机的信息,从中提取出
Figure QLYQS_306
,将/>
Figure QLYQS_309
与所述第二十二哈希值
Figure QLYQS_314
异或得到第六随机数/>
Figure QLYQS_308
,即/>
Figure QLYQS_312
,将收到的无人机的假名/>
Figure QLYQS_316
、/>
Figure QLYQS_318
Figure QLYQS_305
合并后利用所述哈希函数/>
Figure QLYQS_311
生成第二十四哈希值/>
Figure QLYQS_315
,再将第六随机数/>
Figure QLYQS_317
和收到的无人机的假名/>
Figure QLYQS_307
合并后利用所述哈希函数/>
Figure QLYQS_310
生成第二十五哈希值/>
Figure QLYQS_313
S4.24:为每架无人机随机选择一个向量
Figure QLYQS_319
,其中,/>
Figure QLYQS_320
是一个随机整数,执行以下公式认证多架无人机:
Figure QLYQS_321
如果以上认证公式成立,则多架无人机通过用户的认证,进行S4.25;
S4.25:用户将所述第二十二哈希值
Figure QLYQS_322
和第六随机数/>
Figure QLYQS_323
合并后利用所述哈希函数
Figure QLYQS_324
生成第二十六哈希值/>
Figure QLYQS_325
,即/>
Figure QLYQS_326
,并将该第二十六哈希值作为协商出来的第二会话密钥,之后用户使用第二会话密钥与多架无人机通信,至此认证和密钥协商结束。
4.如权利要求3所述的用户与多架无人机进行相互认证的方法,其特征在于,当认证公式成立不成立,则使用二分法查找无效的无人机信息,删除无效的无人机信息,将由所述第二十二哈希值
Figure QLYQS_327
和第六随机数/>
Figure QLYQS_328
合并后利用所述哈希函数/>
Figure QLYQS_329
生成的第二十七哈希值/>
Figure QLYQS_330
作为协商出来的第三会话密钥,即计算/>
Figure QLYQS_331
,之后用户使用所述第三会话密钥与剩余的合法无人机通信,至此认证和密钥协商结束。
5.如权利要求1所述的用户与多架无人机进行相互认证的方法,其特征在于,所述方法还包括以下步骤:
S5.1:在移动设备上输入用户的用户身份
Figure QLYQS_332
、旧密码/>
Figure QLYQS_333
和旧生物特征/>
Figure QLYQS_334
到移动设备中;
S5.2:移动设备将用户输入的旧生物特征
Figure QLYQS_335
和存储的公共复制参数/>
Figure QLYQS_336
作为所述模糊提取器再现函数/>
Figure QLYQS_337
的输入值,经过运算输出用户的旧生物特征密钥/>
Figure QLYQS_338
,即
Figure QLYQS_339
S5.3:移动设备将由用户输入的身份
Figure QLYQS_341
、旧密码/>
Figure QLYQS_347
和用户的旧生物特征密钥/>
Figure QLYQS_350
合并后利用所述哈希函数/>
Figure QLYQS_343
生成的第二十八哈希值与存储的随机数隐藏信息/>
Figure QLYQS_346
异或得到第三随机数/>
Figure QLYQS_349
,即/>
Figure QLYQS_352
,再用由用户输入的旧密码/>
Figure QLYQS_340
和用户的旧生物特征密钥/>
Figure QLYQS_345
合并后利用所述哈希函数/>
Figure QLYQS_348
生成的第二十九哈希值与存储的服务器假名隐藏信息/>
Figure QLYQS_351
异或得到服务器假名/>
Figure QLYQS_342
,即/>
Figure QLYQS_344
S5.4:移动设备比较存储的第五哈希值
Figure QLYQS_353
是否等于由计算得到的第三随机数/>
Figure QLYQS_354
、旧生物特征密钥/>
Figure QLYQS_355
和服务器假名/>
Figure QLYQS_356
合并后利用所述哈希函数/>
Figure QLYQS_357
生成的第三十哈希值
Figure QLYQS_358
,若不等,则认证用户失败,终止更新,否则认证用户成功,移动设备提示用户输入新的密码和生物特征,继续S5.5;
S5.5:用户输入新的密码
Figure QLYQS_359
和生物特征/>
Figure QLYQS_360
到移动设备中;
S5.6:移动设备将所述新的生物特征
Figure QLYQS_361
输入至所述模糊提取器生成函数/>
Figure QLYQS_362
中,该函数输出用户新的生物特征密钥/>
Figure QLYQS_363
和相应的公共复制参数/>
Figure QLYQS_364
,即
Figure QLYQS_365
S5.7:移动设备将所述第三随机数
Figure QLYQS_366
、新的生物特征密钥/>
Figure QLYQS_367
和服务器假名/>
Figure QLYQS_368
合并后利用所述哈希函数/>
Figure QLYQS_369
生成第三十一哈希值/>
Figure QLYQS_370
,即/>
Figure QLYQS_371
S5.8:移动设备将由所述新的密码
Figure QLYQS_372
和生物特征密钥/>
Figure QLYQS_373
合并后利用所述哈希函数/>
Figure QLYQS_374
生成的第三十二哈希值去隐藏服务器假名/>
Figure QLYQS_375
得到服务器假名隐藏信息
Figure QLYQS_376
,即/>
Figure QLYQS_377
S5.9:移动设备将由所述用户的身份
Figure QLYQS_378
、新的密码/>
Figure QLYQS_379
和生物特征密钥/>
Figure QLYQS_380
合并后利用所述哈希函数/>
Figure QLYQS_381
生成的第三十三哈希值去隐藏第三随机数/>
Figure QLYQS_382
得到随机数隐藏信息/>
Figure QLYQS_383
,即/>
Figure QLYQS_384
S5.10:移动设备将新生成的服务器假名隐藏信息
Figure QLYQS_386
、随机数隐藏信息/>
Figure QLYQS_388
、公共复制参数/>
Figure QLYQS_390
和第三十一哈希值/>
Figure QLYQS_387
取代之前存储的服务器假名隐藏信息/>
Figure QLYQS_389
、随机数隐藏信息/>
Figure QLYQS_391
、公共复制参数/>
Figure QLYQS_392
和第五哈希值/>
Figure QLYQS_385
6.如权利要求1所述的用户与多架无人机进行相互认证的方法,其特征在于,所述方法还包括以下步骤:
S6.1:新的无人机预先在服务器上注册;
S6.2:所述新的无人机选择一个挑战
Figure QLYQS_393
,并将该挑战/>
Figure QLYQS_394
输入至内部的PUF中,PUF经过计算输出相应的响应/>
Figure QLYQS_395
,把挑战响应对/>
Figure QLYQS_396
通过安全通道发送给服务器;
S6.3:服务器收到信息后,为新的无人机选择一个特有的假名
Figure QLYQS_399
和第八随机数
Figure QLYQS_402
,将该随机数/>
Figure QLYQS_406
与所述基点/>
Figure QLYQS_400
进行点乘运算得到/>
Figure QLYQS_403
,再用由新的无人机的假名/>
Figure QLYQS_407
、/>
Figure QLYQS_410
和/>
Figure QLYQS_397
合并后利用所述哈希函数/>
Figure QLYQS_401
生成的第三十四哈希值与所述服务器私钥/>
Figure QLYQS_405
相乘,该乘积加上第八随机数/>
Figure QLYQS_409
得到的结果再模/>
Figure QLYQS_398
得到/>
Figure QLYQS_404
,即计算/>
Figure QLYQS_408
S6.4:服务器把收到的响应
Figure QLYQS_412
分成/>
Figure QLYQS_415
和/>
Figure QLYQS_417
,再用由所述服务器私钥/>
Figure QLYQS_413
和/>
Figure QLYQS_414
合并后利用所述哈希函数/>
Figure QLYQS_416
生成的第三十五哈希值与响应的两个部分异或得到/>
Figure QLYQS_418
,即
Figure QLYQS_411
S6.5:服务器存储所述新的无人机的假名
Figure QLYQS_419
、选择的挑战/>
Figure QLYQS_420
、/>
Figure QLYQS_421
和/>
Figure QLYQS_422
到数据库中,并将假名/>
Figure QLYQS_423
和/>
Figure QLYQS_424
通过安全通道发送给新的无人机;
S6.6:新的无人机收到假名
Figure QLYQS_425
和/>
Figure QLYQS_426
后,将这两个数据存储在内存中。
7.一种计算设备,其特征在于,所述计算设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至6任一项所述的用户与多架无人机进行相互认证的方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至6任一项所述的用户与多架无人机进行相互认证的方法。
CN202111368944.0A 2021-11-18 2021-11-18 用户与多架无人机进行相互认证的方法、可存储介质 Active CN114063651B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111368944.0A CN114063651B (zh) 2021-11-18 2021-11-18 用户与多架无人机进行相互认证的方法、可存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111368944.0A CN114063651B (zh) 2021-11-18 2021-11-18 用户与多架无人机进行相互认证的方法、可存储介质

Publications (2)

Publication Number Publication Date
CN114063651A CN114063651A (zh) 2022-02-18
CN114063651B true CN114063651B (zh) 2023-07-04

Family

ID=80278038

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111368944.0A Active CN114063651B (zh) 2021-11-18 2021-11-18 用户与多架无人机进行相互认证的方法、可存储介质

Country Status (1)

Country Link
CN (1) CN114063651B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679268B (zh) * 2022-03-29 2023-07-21 湖北工业大学 无人机间相互认证与密钥协商的方法、可存储介质
CN114710348B (zh) * 2022-03-31 2023-07-04 湖北工业大学 用户使用家庭智能设备的授权认证与密钥协商方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516267B2 (en) * 2009-12-18 2013-08-20 Adrian Spalka Computer readable storage medium for generating an access key, computer implemented method and computing device
US9674158B2 (en) * 2015-07-28 2017-06-06 International Business Machines Corporation User authentication over networks
CN108400962B (zh) * 2017-02-08 2022-03-29 格尔软件股份有限公司 一种多服务器架构下的认证和密钥协商方法
CN109379176B (zh) * 2018-12-10 2021-12-03 湖北工业大学 一种抗口令泄露的认证与密钥协商方法
CN112073964B (zh) * 2020-10-26 2021-11-19 河南大学 一种基于椭圆曲线加密的无人机与基站通信身份认证方法
CN112527808A (zh) * 2020-11-20 2021-03-19 河南科技大学 一种云存储服务中支持动态更新的数据完整性验证方法
CN112688941B (zh) * 2020-12-23 2022-05-31 湖北工业大学 一种电子医疗认证与密钥协商方法及终端设备及存储介质
CN113194469B (zh) * 2021-04-28 2022-05-13 四川师范大学 基于区块链的5g无人机跨域身份认证方法、系统及终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Amassing the Security: An ECC-Based Authentication Scheme for Internet of Drones;Sajid Hussain;《IEEE SYSTEMS JOURNAL》;正文第4433-4434页 *

Also Published As

Publication number Publication date
CN114063651A (zh) 2022-02-18

Similar Documents

Publication Publication Date Title
JP6882254B2 (ja) 生体特徴に基づく安全性検証方法、クライアント端末、及びサーバ
JP6555073B2 (ja) プライバシーを保護する集合ベースのバイオメトリック認証
JP6498358B2 (ja) 使い捨て乱数を利用して認証する統合認証システム
US20150172272A1 (en) Distributed storage of password data
US9485098B1 (en) System and method of user authentication using digital signatures
US20240015150A1 (en) Authenticating devices via tokens and verification computing devices
US20160219046A1 (en) System and method for multi-modal biometric identity verification
CN114063651B (zh) 用户与多架无人机进行相互认证的方法、可存储介质
KR20110020921A (ko) 개선된 생체 인증 및 신원확인
CN103929425B (zh) 一种身份注册、身份认证的方法、设备和系统
US9660981B2 (en) Strong authentication method
JP2023504569A (ja) プライバシ保存バイオメトリック認証
CN114547589A (zh) 保护隐私的用户注册、用户认证方法及装置
Sethuraman et al. Metasecure: A passwordless authentication for the metaverse
Meshram et al. An efficient remote user authentication with key agreement procedure based on convolution-Chebyshev chaotic maps using biometric
De Silva et al. Authdna: An adaptive authentication service for any identity server
Verma et al. A novel model to enhance the data security in cloud environment
CN111628985A (zh) 安全访问控制方法、装置、计算机设备和存储介质
JP2007188194A (ja) 認証システム、変換関数生成装置、変換関数生成方法、この変換関数生成方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムをコンピュータが実行することが可能にて記録した記録媒体
JP2022533979A (ja) ユーザのバイオメトリクスを利用したユーザ認証および署名装置、並びにその方法
Nogia et al. Multifactor Authentication Schemes for Multiserver Based Wireless Application: A Review
Alsultan et al. A comparative study of biometric authentication in cloud computing
Guo et al. Extending registration and authentication processes of FIDO2 external authenticator with qr codes
CN114036485A (zh) 公用网络下人脸特征协同保护安全认证系统
Edwards et al. FFDA: A novel four-factor distributed authentication mechanism

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