CN108429717B - 一种身份认证方法及装置 - Google Patents
一种身份认证方法及装置 Download PDFInfo
- Publication number
- CN108429717B CN108429717B CN201710075759.XA CN201710075759A CN108429717B CN 108429717 B CN108429717 B CN 108429717B CN 201710075759 A CN201710075759 A CN 201710075759A CN 108429717 B CN108429717 B CN 108429717B
- Authority
- CN
- China
- Prior art keywords
- authentication
- authenticated
- information
- quantum key
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 230000004044 response Effects 0.000 claims abstract description 40
- 238000012795 verification Methods 0.000 claims description 73
- 230000006854 communication Effects 0.000 claims description 29
- 238000004891 communication Methods 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 6
- 230000006872 improvement Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000005610 quantum mechanics Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0852—Quantum cryptography
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Electromagnetism (AREA)
- Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种身份认证方法及装置,涉及网络安全技术领域,用以提高认证效率。该方法包括:生成认证请求,在所述认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;向第二设备发送所述认证请求,以使所述第二设备将所述认证请求发送给认证服务器,由所述认证服务器根据所述认证请求进行认证;接收所述第二设备发送的认证响应,在所述认证响应中包括所述认证服务器的认证报文。本发明主要用于身份认证技术中。
Description
技术领域
本发明涉及网络安全技术领域,尤其涉及一种身份认证方法及装置。
背景技术
身份认证是指确认用户身份的过程,是网络安全防护的第一道关口。在设备身份认证领域,目前主要有预共享密钥和公钥证书两种认证方式。其中预共享密钥要求认证双方事前预置一个相同的根密钥,在认证过程中基于根密钥采用一系列的密码运算进行认证。公钥证书方式要求被认证方拥有一张数字证书,同时自身需内置与证书对应的私钥。
其中,预共享密钥是目前采用较多的认证方式之一,该方式要求双方预置一个相同的根密钥,为了保护根密钥,在认证过程中需要对根密钥进行多次密码运算,且认证双方需要进行多次交互,需要占用一定的计算资源和网络资源。
数字证书认证要求被认证方向证书机构申请一张数字证书,同时自身存储与证书相对应的私钥,认证中需要使用公钥算法。由于公钥算法与对称密码算法相比效率低,需要较多的计算资源,对终端能力要求较高。此外,随着计算机计算能力的提高和量子计算机的发展,RSA等主流的公钥算法已被逐渐攻破,不能满足安全要求。
随着量子通信技术的快速发展,量子保密通信技术利用量子力学的基本原理可以保证密钥的绝对安全,即,任何对量子系统的测量都会产生干扰,因此如果有攻击者试图对系统进行测量以获取密钥信息,通信双方便会知晓。量子保密通信技术通过量子网络可以实现密钥的安全分发,这些密钥称为量子密钥。通常量子网络中应包括量子密钥收发装置和量子信道,量子密钥收发装置用于产生和分发密钥,量子信道用于量子密钥的传输,量子密钥可使用现有加密算法在经典通信网络中实现信息的安全传输。由于使用量子网络可以产生大量量子密钥,因此,使用这些密钥实现身份认证和数据加密成为新的研究热点。
发明内容
有鉴于此,本发明提供一种身份认证方法及装置,用以提高认证效率。
为解决上述技术问题,本发明提供一种身份认证方法,应用于第一设备,包括:
生成认证请求,在所述认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
向第二设备发送所述认证请求,以使所述第二设备将所述认证请求发送给认证服务器,由所述认证服务器根据所述认证请求进行认证;
接收所述第二设备发送的认证响应,在所述认证响应中包括所述认证服务器的认证报文。
其中,所述认证服务器的认证报文包括针对所述第一设备的第一认证报文,所述第一认证报文中包括所述认证服务器用于当前身份认证的第二量子密钥的标识,利用所述第二量子密钥对认证结果和第三待认证信息加密后的第二加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;所述方法还包括:
根据所述认证响应分别对所述第二设备、所述认证服务器进行认证。
其中,所述根据所述认证响应分别对所述第二设备、所述认证服务器进行认证,包括:
根据所述第二量子密钥的标识查找对应的第三量子密钥;
若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第二加密密文,获得所述第三待认证信息和所述认证结果;
将所述第三待认证信息和所述第二待认证信息进行比较;
若所述第三待认证信息和所述第二待认证信息一致,则通过对所述认证服务器的认证;
若所述认证结果表示所述认证服务器对所述第二设备的认证通过,则通过对所述第二设备的认证。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;
当所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数时,所述将所述第三待认证信息和所述第二待认证信息进行比较,包括:
将所述第三待认证信息和所述第二待认证信息中的任一随机数进行比较。
其中,所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;
所述将所述第三待认证信息和所述第二待认证信息进行比较,包括:
将所述第三待认证信息和所述第二待认证信息中的所述任一随机数进行比较。
其中,所述方法还包括:
计算共享量子密钥,所述共享量子密钥用于与所述第二设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示第四大整数,X表示所述第一验证数,Y表示第二验证数。
其中,所述方法还包括:
从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储所述量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识。
其中,所述方法还包括:
更新所述量子密钥集合。
第二方面,本发明提供一种身份认证方法,应用于第二设备,包括:
接收第一设备的第一认证请求,在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
向认证服务器发送身份认证请求,在所述身份认证请求中包括所述第一认证请求,以使所述认证服务器根据所述身份认证请求进行认证;
接收所述认证服务器的认证报文,根据所述认证报文对所述第一设备进行认证;
根据所述认证报文向所述第一设备发送认证响应。
其中,在所述接收第一设备的第一认证请求之后,所述方法还包括:
生成第二认证请求,在所述第二认证请求中包括第三待认证信息、所述第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;
在所述身份认证请求中还包括所述第二认证请求。
其中,所述认证服务器的认证报文包括针对所述第二设备的第二认证报文,所述第二认证报文中包括所述认证服务器用于当前身份认证的第三量子密钥的标识,利用所述第三量子密钥对认证结果和第五待认证信息加密后的第三加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
所述方法还包括:根据所述认证报文对所述认证服务器进行认证。
其中,所述根据所述认证报文对所述认证服务器进行认证,包括:
根据所述第三量子密钥的标识查找对应的第四量子密钥;
若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第三加密密文,获得所述第五待认证信息和所述认证结果;
将所述第五待认证信息和所述第四待认证信息进行比较;
若所述第五待认证信息和所述第四待认证信息一致,则通过对所述认证服务器的认证;
所述根据所述认证报文对所述第一设备进行认证,包括:
若所述认证结果表示所述认证服务器对所述第一设备的认证通过,则通过对所述第一设备的认证。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息和任一随机数;
或者
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息,任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的。
其中,所述方法还包括:
计算共享量子密钥,所述共享量子密钥用于与所述第一设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示所述第四大整数,X表示所述第一验证数,Y表示所述第二验证数。
其中,所述方法还包括:
从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储所述量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
其中,所述方法还包括:
更新所述量子密钥集合。
第三方面,本发明提供一种身份认证方法,应用于认证服务器,包括:
接收第二设备的身份认证请求;其中,所述身份认证请求包括第一设备的第一认证请求;在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
根据所述身份认证请求进行认证;
向所述第二设备发送认证报文。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;或者
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的。
其中,所述根据所述身份认证请求进行认证,包括:
根据所述第一量子密钥的标识查找对应的第三量子密钥;
若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第一加密密文,获得所述第二待认证信息;
将所述第二待认证信息和所述第一认证请求中包括的第一待认证信息进行比较;
若所述第二待认证信息和所述第一认证请求中包括的第一待认证信息一致,则通过对所述第一设备的认证。
其中,所述将所述第二待认证信息和所述第一认证请求中包括的第一待认证信息进行比较,包括:
将所述第二待认证信息中的任一随机数和所述第一待认证信息进行比较。
其中,所述身份认证请求中还包括所述第二设备的第二认证请求,在所述第二认证请求中包括第三待认证信息、所述第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;
所述根据所述身份认证请求进行认证,包括:
根据所述第二量子密钥的标识查找对应的第四量子密钥;
若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第二加密密文,获得所述第四待认证信息;
将所述第四待认证信息和所述第三待认证信息进行比较;
若所述第四待认证信息和所述第三待认证信息一致,则通过对所述第二设备的认证。
其中,所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息,任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的;
所述将所述第四待认证信息和所述第三待认证信息进行比较,包括:
将所述第四待认证信息中的任一随机数和所述第三待认证信息进行比较。
其中,所述方法还包括:
从量子密钥分发设备分别获取与所述第一设备、第二设备共享的第一量子密钥集合和第二量子密钥集合;
按照预定方式为所述第一量子密钥集合和所述第二量子密钥集合中的密钥设置密钥标识;
存储所述第一量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识;
存储所述第二量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
其中,所述方法还包括:
更新所述量子密钥集合。
第四方面,本发明提供一种身份认证装置,包括:
生成模块,用于生成认证请求,在所述认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
发送模块,用于向第二设备发送所述认证请求,以使所述第二设备将所述认证请求发送给认证服务器,由所述认证服务器根据所述认证请求进行认证;
接收模块,用于接收所述第二设备发送的认证响应,在所述认证响应中包括所述认证服务器的认证报文。
其中,所述认证服务器的认证报文包括针对第一设备的第一认证报文,所述第一认证报文中包括所述认证服务器用于当前身份认证的第二量子密钥的标识,利用所述第二量子密钥对认证结果和第三待认证信息加密后的第二加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
所述装置还包括:认证模块,用于根据所述认证响应分别对所述第二设备、所述认证服务器进行认证。
其中,所述认证模块包括:
查找子模块,用于根据所述第二量子密钥的标识查找对应的第三量子密钥;
读取子模块,用于若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
解密子模块,用于若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第二加密密文,获得所述第三待认证信息和所述认证结果;
比较子模块,用于将所述第三待认证信息和所述第二待认证信息进行比较;
第一认证子模块,用于若所述第三待认证信息和所述第二待认证信息一致,则通过对所述认证服务器的认证;
第二认证子模块,用于若所述认证结果表示所述认证服务器对所述第二设备的认证通过,则通过对所述第二设备的认证。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;
所述比较子模块具体用于,将所述第三待认证信息和所述第二待认证信息中的任一随机数进行比较。
其中,所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;
所述比较子模块具体用于,将所述第三待认证信息和所述第二待认证信息中的所述任一随机数进行比较。
其中,所述装置还包括:
密钥计算模块,用于计算共享量子密钥,所述共享量子密钥用于与所述第二设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示第四大整数,X表示所述第一验证数,Y表示第二验证数。
其中,所述装置还包括:
密钥获取模块,用于从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
设置模块,用于按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储模块,用于存储所述量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识。
其中,所述装置还包括:
更新模块,更新所述量子密钥集合。
第五方面,本发明提供一种身份认证装置,包括:
第一接收模块,用于接收第一设备的第一认证请求,在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
第一发送模块,用于向认证服务器发送身份认证请求,在所述身份认证请求中包括所述第一认证请求,以使所述认证服务器根据所述身份认证请求进行认证;
第二接收模块,用于接收所述认证服务器的认证报文,根据所述认证报文对所述第一设备进行认证;
第二发送模块,用于根据所述认证报文向所述第一设备发送认证响应。
其中,所述装置还包括:
生成模块,用于生成第二认证请求,在所述第二认证请求中包括第三待认证信息、第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;
在所述身份认证请求中还包括所述第二认证请求。
其中,所述认证服务器的认证报文包括针对所述第二设备的第二认证报文,所述第二认证报文中包括所述认证服务器用于当前身份认证的第三量子密钥的标识,利用所述第三量子密钥对认证结果和第五待认证信息加密后的第三加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
所述装置还包括:认证模块,用于根据所述认证报文对所述认证服务器进行认证。
其中,所述认证模块包括:
查找子模块,用于根据所述第三量子密钥的标识查找对应的第四量子密钥;
读取子模块,用于若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
解密子模块,用于若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第三加密密文,获得所述第五待认证信息和所述认证结果;
比较子模块,用于将所述第五待认证信息和所述第四待认证信息进行比较;
第一认证子模块,用于若所述第五待认证信息和所述第四待认证信息一致,则通过对所述认证服务器的认证;
第二认证子模块,用于若所述认证结果表示所述认证服务器对所述第一设备的认证通过,则通过对所述第一设备的认证。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息和任一随机数;
或者
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息、任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的。
其中,所述装置还包括:
密钥计算模块,用于计算共享量子密钥,所述共享量子密钥用于与所述第一设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示所述第四大整数,X表示所述第一验证数,Y表示所述第二验证数。
其中,所述装置还包括:
密钥获取模块,用于从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
设置模块,用于按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储模块,用于存储所述量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
其中,所述装置还包括:
更新模块,用于更新所述量子密钥集合。
第六方面,本发明提供一种身份认证装置,包括:
接收模块,用于接收第二设备的身份认证请求;其中,所述身份认证请求包括第一设备的第一认证请求;在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
认证模块,用于根据所述身份认证请求进行认证;
发送模块,用于向所述第二设备发送认证报文。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;或者
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的。
其中,所述认证模块包括:
第一查找子模块,用于根据所述第一量子密钥的标识查找对应的第三量子密钥;
第一读取子模块,用于若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
第一解密子模块,用于若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第一加密密文,获得所述第二待认证信息;
第一比较子模块,用于将所述第二待认证信息和所述第一认证请求中包括的第一待认证信息进行比较;
第一认证子模块,用于若所述第二待认证信息和所述第一认证请求中包括的第一待认证信息一致,则通过对所述第一设备的认证。
其中,所述第一比较子模块具体用于,将所述第二待认证信息中的任一随机数和所述第一待认证信息进行比较。
其中,所述身份认证请求中还包括所述第二设备的第二认证请求,在所述第二认证请求中包括第三待认证信息、所述第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;所述认证模块包括:
第二查找子模块,用于根据所述第二量子密钥的标识查找对应的第四量子密钥;
第二读取子模块,用于若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
第二解密子模块,用于若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第二加密密文,获得所述第四待认证信息;
第二比较子模块,用于将所述第四待认证信息和所述第三待认证信息进行比较;
第二认证子模块,用于若所述第四待认证信息和所述第三待认证信息一致,则通过对所述第二设备的认证。
其中,所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息,任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的;
所述第二比较子模块具体用于,将所述第四待认证信息中的任一随机数和所述第三待认证信息进行比较。
其中,所述装置还包括:
密钥获取模块,用于从量子密钥分发设备分别获取与所述第一设备、第二设备共享的第一量子密钥集合和第二量子密钥集合;
设置模块,用于按照预定方式为所述第一量子密钥集合和所述第二量子密钥集合中的密钥设置密钥标识;
第一存储模块,用于存储所述第一量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识;
第二存储模块,用于存储所述第二量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
其中,所述装置还包括:
更新模块,用于更新所述量子密钥集合。
本发明的上述技术方案的有益效果如下:
在本发明实施例中,通过一次交互即可实现对设备的认证,因此利用本发明实施例的方案认证速度快,认证效率高。
附图说明
图1为基于量子密钥分发机制的安全保密通信的流程图;
图2为本发明实施例一的身份认证方法的流程图;
图3为本发明实施例二的身份认证方法的流程图;
图4为本发明实施例三的身份认证方法的流程图;
图5为本发明实施例四的身份认证方法的流程图;
图6为本发明实施例五的身份认证方法的流程图;
图7为本发明实施例六的身份认证方法的流程图;
图8为本发明实施例七的身份认证装置的示意图;
图9为本发明实施例七的身份认证装置的结构图;
图10为本发明实施例八的身份认证装置的示意图;
图11为本发明实施例八的身份认证装置的结构图;
图12为本发明实施例九的身份认证装置的示意图;
图13为本发明实施例九的身份认证装置的结构图。
具体实施方式
下面将结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
在本发明实施例中,首先对量子保密通信的基本原理做一简单介绍。
实用保密通信的工作原理主要基于安全的密钥分发和安全的数据加密传输。即首先需要在通信双方之间使用某种安全的机制进行共享密钥的分发,然后在通信双方间使用该共享密钥对需要安全传输的数据分别进行加密和解密操作,从而实现通信双方的数据保密传输。
其中,加密算法可使用商用标准算法SM4以及国际上一些主流加密算法如AES等,结合通过某种安全密钥分发机制进行分发的密钥,能够有效保障通信过程中数据传输的安全。由于SM4、AES等主流加密算法具有极高的安全强度,足以抵抗现有的所有分析和攻击方法,因此寻找一种安全高效的密钥分发机制就成为了保障安全通信的最关键最核心的问题。
在现实应用中,大多数密钥分发机制都是基于数字证书体系来实现。这类机制很大程度上依赖于RSA、椭圆曲线、Diffie-Hellman密钥交换体系等公钥加密体制的安全性。这些公钥加密体制的底层安全性通常基于大整数因子分解、离散对数等公认困难的数学问题。但是,虽然目前尚未发现任何有效实用的算法可以快速解决这些困难的数学问题,但是绝对不能排除未来发现能够有效解决这些困难问题的高效算法的可能性。此外,伴随着软硬件计算能力的迅速提升和分布式计算等计算方法的不断改进,现有计算能力已经可以实现768位大整数的快速分解。值得一提的是,大整数因子分解问题也已经被证明在量子计算模型下是不安全的。更为实际和严重的问题是基于公钥加密体系的密钥分发机制在现实应用中如果配置使用不当,也会带来严重的安全问题。
如最近对于OpenSSL协议中低于1024位整数Diffie-Hellman协议的快速破解,以及NIST发布的伪随机数算法Dual_EC后门的利用等,都暴露出实用公钥加密体制所存在的一些极为严重的安全漏洞。长远来看,基于公钥加密体系的密钥分发机制也无法提供有效的可证明安全结果,不具备无条件安全性。
伴随着量子保密通信技术的发展、进步以及实用化,量子密钥分发提供了另外一种安全高效实用的理想密钥分发方法。量子密钥分发的不可再分、不可测量、不可复制以及理想随机等显著的技术优点,从底层量子力学基本原理的角度保证了量子密钥分发系统的无条件安全性。如图1所示,基于量子密钥分发机制的安全保密通信主要包括两个主要步骤:
步骤101、对应图1中的1,2。通信双方之间使用专用的量子网络和相应的收发量子设备进行量子共享密钥的协商和分发,同时通信双方分别将该共享密钥传输到本地的加密设备中,这一步能够保证密钥分发和传输过程的无条件安全性。
步骤102、对应图1中的3,4,5。通信双方完成量子共享密钥的安全分发后,发送方使用共享密钥和安全的加密算法对需要传输的数据进行加密,并使用传统网络传输加密数据到接收方;接收方再使用相同的共享密钥和算法对接收到的加密数据进行解密,从而实现通信双方的安全保密通信。
实施例一
如图2所示,本发明实施例一的身份认证方法,应用于第一设备,包括:
步骤201、生成认证请求,在所述认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文。
在本发明实施例中,第一设备从与认证服务器共享的量子密钥集合中,获取所述第一量子密钥。同时,第一设备获取第一待认证信息和第二待认证信息。然后,利用所述第一量子密钥加密所述第二待认证信息,获得所述第一加密密文。最后,利用所述第一待认证信息、所述第一量子密钥的标识和所述第一加密密文生成所述认证请求。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数,二者可相等。
其中,所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数。该任一随机数可不同于所述第一待认证信息。
其中,所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的。
为进一步保证安全性,所述第一量子密钥为未被使用过的量子密钥。
步骤202、向第二设备发送所述认证请求,以使所述第二设备将所述认证请求发送给认证服务器,由所述认证服务器根据所述认证请求进行认证。
步骤203、接收所述第二设备发送的认证响应,在所述认证响应中包括所述认证服务器的认证报文。
由上可以看出,在本发明实施例中,通过设备之间的一次交互即可实现双向认证,因此利用本发明实施例的方案认证速度快,认证效率高。
实施例二
如图3所示,本发明实施例二的身份认证方法,应用于第二设备,包括:
步骤301、接收第一设备的第一认证请求,在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文。
步骤302、向认证服务器发送身份认证请求,在所述身份认证请求中包括所述第一认证请求,以使所述认证服务器根据所述身份认证请求进行认证。
步骤303、接收所述认证服务器的认证报文,根据所述认证报文对所述第一设备进行认证。
步骤304、根据所述认证报文向所述第一设备发送认证响应。
由上可以看出,在本发明实施例中,通过设备之间的一次交互即可实现双向认证,因此利用本发明实施例的方案认证速度快,认证效率高。
实施例三
如图4所示,本发明实施例三的身份认证方法,应用于认证服务器,包括:
步骤401、接收第二设备的身份认证请求;其中,所述身份认证请求包括第一设备的第一认证请求;在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文。
步骤402、根据所述身份认证请求进行认证。
步骤403、向所述第二设备发送认证报文。
由上可以看出,在本发明实施例中,通过设备之间的一次交互即可实现双向认证,因此利用本发明实施例的方案认证速度快,认证效率高。
实施例四
如图5所示,本发明实施例四的身份认证方法,包括:
步骤501、设备初始化。
设备初始化的目的是为了使认证双方分别与认证中心产生量子密钥,认证和密钥协商阶段使用存储的量子密钥进行双向认证,并在认证双方产生共享密钥。
被认证的实体需要预先通过量子密钥分发网络与认证服务器产生若干共享密钥,并将这些共享密钥进行存储,其中需要存储密钥标识、密钥等信息。过程如下:
(1)将被认证的实体设备A通过量子网络连接至认证服务器,利用量子网络在收发两端产生大量无条件安全的共享密钥集合。密钥记做K,其中包含密钥K1,K2,…。
(2)设备A中密钥存储模块的密钥接收单元从量子网络接收量子密钥集合K;认证服务器从量子网络接收量子密钥集合K。
(3)设备A和认证服务器采用相同的方式为密钥定义密钥标识,密钥Ki的标识记为IDKi。
(4)设备A和认证服务器存储密钥、密钥标识、设备A和认证服务器的身份等信息。将设备A和认证服务器的身份分别记为IDA和IDAuth,那么密钥存储方式如下:(IDKi,Ki,IDA,IDAuth)。
步骤502、设备A向设备B发送认证请求。
设备A选择一个未曾使用的密钥KA1,随机产生一个随机数N1,向设备B发送认证请求M1,其中包含设备A选择使用的密钥标识IDKA1,随机数N1,以及使用KA1加密N1之后的密文信息(EKA1(N1))。
步骤503、设备B向认证服务器发送认证请求。
设备B将设备A的认证请求转发给认证服务器。
步骤504、认证服务器对设备A进行认证。
在本发明实施例中,共享密钥集合中的每个密钥都可有对应的状态标识。如果某个密钥仍位于该集合中,其对应的状态标识可为被使用或者未被使用。因此,在此,若查找到Kj,可通过读取其状态标识确定是否被使用过。
认证服务器根据IDKA1在量子密钥集合中查找KA1,若KA1已被删除或标记为已使用,则返回密钥错误;若KA1未曾使用,则使用KA1解密密文,得到N1。若解密后得到的N1与M1中明文传输的N1一致,则认为设备A确实拥有密钥KA1,实现对设备A的认证。
步骤505、认证服务器将认证结果作为认证响应返回给设备B。
步骤506、设备B将认证结果作为认证响应返回给设备A。
根据认证服务器对设备A的认证结果,设备B可以实现对设备A的认证。即,如果认证结果表示认证服务器通过了对设备A的认证,那么设备B对设备A的认证通过。如果认证结果表示认证服务器未通过对设备A的认证,那么设备B对设备A的认证不通过。
此外,设备A或者认证服务器还可更新所述量子密钥集合。例如,将密钥KA1删除,或更新密钥KA1的状态标识,将其标记为已使用。认证过程结束。
实施例五
如图6所示,本发明实施例五的身份认证方法,包括:
步骤601、设备初始化。
此步骤可参照步骤501的描述。在本发明实施例中,涉及到的认证主体包括设备A,设备B和认证服务器。设备B和认证服务器之间,也可按照设备A和认证服务器之前获取量子密钥集合的方式获得设备B和认证服务器之间的量子密钥集合。
步骤602、设备A向设备B发送认证请求。
设备A选择一个未曾使用的密钥KA1,随机产生两个随机数N1和N2,向设备B发送认证请求M1,其中包含设备A选择使用的密钥标识IDKA1,随机数N1,以及使用KA1加密N1和N2之后的密文信息。设备A需要临时存储N2,直至认证过程结束。可选的,N1和N2可以相等。
步骤603、设备B生成认证请求。
设备B接收到设备A的认证请求后,从它存储的量子密钥集合中选择一个未曾使用的密钥KB1,随机产生两个随机数N3和N4,组织认证请求M2,其中包括设备B选择使用的密钥标识IDKB1,以及使用KB1加密N3和N4之后的密文信息。设备B需要临时存储N4,直至认证过程结束。可选的,N3和N4可以相等。
步骤604、设备B向认证服务器发送身份认证请求。
设备B向认证服务器发送身份认证请求,其中包含M1和M2。
步骤605、认证服务器分别对设备A、设备B进行认证。
具体过程如下:
(1)认证服务器分别根据密钥标识IDKA1和IDKB1,在存储的量子密钥集合中分别查找相应的密钥KA1和KB1。若KA1或KB1已被删除或标记为已使用,则返回密钥错误;若KA1和KB1未曾使用,则分别使用KA1和KB1解密M1和M2中的密文。
(2)认证服务器验证解密后的N1和N3是否与M1和M2中明文传输的N1和N3是否一致。若不一致,则认证失败,返回认证失败消息;若一致,则认为设备A和设备B分别拥有密钥KA1和KB1,其身份得到验证。之后组织如下认证响应报文。
(3)认证服务器分别选择一个与设备A和设备B的共享且未曾使用的密钥KA2和KB2,组织报文M3和M4。其中M3包含KB2的标识IDKB2,以及使用KB2加密随机数N4和认证结果Result的密文;其中M4包含KA2的标识IDKA2,以及使用KA2加密随机数N2和认证结果Result的密文。
其中,该认证结果包括认证服务器对设备A和设备B的认证结果。
步骤606、认证服务器向设备B发送认证响应。
步骤607、设备B对设备A和认证服务器进行认证。
设备B接收到认证服务器的认证响应后,根据M3中密钥标识IDKB2从自身存储区找到KB2,若KB2已被删除或标记为已使用,则返回密钥错误;否则,使用KB2解密M3中的密文。验证解密后得到的N4是否与自己缓存的、认证请求M2中的N4是否一致。若一致,则说明认证服务器拥有KB1和KB2,实现了对认证服务器的身份认证;否则认证失败。
设备B根据Result得知认证服务器对设备A的认证结果。
此外,设备B还可更新所述量子密钥集合,例如可将密钥KB1和KB2删除,或标记为已使用。
步骤608、设备B向设备A发送认证响应。
设备B将M4作为认证响应发送至设备A。
步骤609、设备A对设备B和认证服务器进行认证。
设备A接收到设备B的认证响应后,根据M4中密钥标识IDKA2从自身存储区找到KA2,若KA2已被删除或标记为已使用,则返回密钥错误;否则,使用KA2解密M4中的密文。验证解密后得到的N2是否与自己缓存的、认证请求M1中的N2是否一致。若一致,则说明认证服务器拥有KA1和KA2,实现了对认证服务器的身份认证;否则认证失败。设备A根据Result得知认证服务器对设备A和设备B的认证结果。
此外,设备A还可更新所述量子密钥集合,例如,将KA1和KA2删除,或标记为已使用。认证过程结束。
实施例六
实施例五中,通过将认证消息转发至认证服务器,通过认证服务器可以实现设备双方之间的相互认证,事实上,以该认证方法为基础,融合Diffie-Hellman(DH)协议,可以实现认证设备双方的密钥协商。Diffie-Hellman协议是一种密钥协商协议,允许两个实体在不安全的媒介中协商密钥。
如图7所示,本发明实施例六的身份认证方法,包括:
步骤701、设备初始化。
此步骤可参照步骤501的描述。在本发明实施例中,涉及到的认证主体包括设备A,设备B和认证服务器。设备B和认证服务器之间,也可按照设备A和认证服务器之前获取量子密钥集合的方式获得设备B和认证服务器之间的量子密钥集合。
步骤702、设备A向设备B发送认证请求。
设备A选择一个未曾使用的密钥KA1,随机产生两个随机数N1和N2,选择两个大整数n和g,随机选择一个大整数x,计算X=gx mod n。设备A向设备B发送认证请求M1,其中包含设备A选择使用的密钥标识IDKA1,随机数N1、使用KA1加密随机数N1、N2、X的密文信息,以及设备A选择的整数n和g。设备A需要临时存储x和N2,直至认证过程结束。
步骤703、设备B生成认证请求。
设备B接收到设备A的认证请求后,选择一个未曾使用的密钥KB1,随机产生两个随机数N3和N4,选择一个大随机数y,计算Y=gy mod n,组织自己的认证请求M2,其中包括设备B选择使用的密钥标识IDKB1,随机数N3、以及使用KB1加密N3、N4、Y之后的密文信息。设备B需要临时存储y和N4,直至认证过程结束。
步骤704、设备B向认证服务器发送身份认证请求。
设备B向认证服务器发送身份认证请求,其中包含M1和M2。
步骤705、认证服务器分别对设备A、设备B进行认证。
具体过程如下:
(1)分别根据密钥标识IDKA1和IDKB1找到相应的密钥KA1和KB1,若KA1或KB1已被删除或标记为已使用,则返回密钥错误;若KA1和KB1未曾使用,则分别使用KA1和KB1解密M1和M2中的密文。
(2)认证服务器验证解密后的N1和N3是否与M1和M2中明文传输的N1和N3是否一致。若不一致,则认证失败,返回认证失败消息;若一致,则认为设备A和设备B分别拥有密钥KA1和KB1,其身份得到验证。之后组织如下认证响应报文。
(3)认证服务器分别选择一个与设备A和设备B的共享且未曾使用的密钥KA2和KB2,组织报文M3和M4。其中M3包含KB2的标识IDKB2,使用KB2加密随机数N4、认证结果Result、以及从M1中解密的X;其中M4包含KA2的标识IDKA2,使用KA2加密随机数N2、认证结果Result、以及从M2中解密得到的Y。
其中,该认证结果包括认证服务器对设备A和设备B的认证结果。
步骤706、认证服务器向设备B发送认证响应。
步骤707、设备B对设备A和认证服务器进行认证。
设备B接收到认证服务器的认证响应后,根据M3中密钥标识IDKB2从自身存储区找到KB2,若KB2已被删除或标记为已使用,则返回密钥错误;否则,使用KB2解密M3中的密文。验证解密后得到的N4是否与自己缓存的、认证请求M2中的N4是否一致。若一致,则说明认证服务器拥有KB1和KB2,实现了对认证服务器的身份认证;否则认证失败。
设备B使用从M3中解密出的X计算与设备A之间的共享密钥,K=Xy modn。
设备B根据Result得知认证服务器对设备A的认证结果。
此外,设备B还可更新所述量子密钥集合,例如可将密钥KB1和KB2删除,或标记为已使用。
步骤708、设备B向设备A发送认证响应。
设备B将M4作为认证响应发送至设备A。
步骤709、设备A对设备B和认证服务器进行认证。
设备A根据M4中密钥标识IDKA2从自身存储区找到KA2,若KA2已被删除或标记为已使用,则返回密钥错误;否则,使用KA2解密M4中的密文。
设备A验证解密后得到的N2是否与自己缓存的、认证请求M1中的N2是否一致。若一致,则说明认证服务器拥有KA1和KA2,实现了对认证服务器的身份认证;否则认证失败。
设备A根据Result得知认证服务器对设备A和设备B的认证结果。
设备A使用从M中解密出的Y计算与设备B之间的共享密钥,K=Yx modn。
此外,设备A还可更新所述量子密钥集合,例如,将KA1和KA2删除,或标记为已使用。
通过上述过程,设备A与设备B之间的共享密钥为:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n。
由上可以看出,本发明的实施例具有以下优点:
(一)安全性:
(1)三方认证:
设备A与认证服务器之间:由于标识为IDKA1和IDKA2密钥仅被设备A和认证服务器共享,因此如果设备A使用KA1正确加密N1,就实现了对设备A的认证。同理,认证服务器使用KA2正确加密N2,就说明认证服务器确实拥有IDKA1和IDKA2,即实现了设备A对认证服务器的认证。
设备B与认证服务器之间:由于标识为IDKB1和IDKB2密钥仅被设备B和认证服务器共享,因此如果设备B使用KB1正确加密N3,就实现了对设备B的认证。同理,认证服务器使用KB2正确加密N4,就说明认证服务器确实拥有IDKB1和IDKB2,即实现了设备B对认证服务器的认证。
设备A与设备B之间:设备A与设备B分别实现了对认证服务器的认证,认证服务器将设备A与设备B的认证结果Result加密发送给双方,实现设备A与设备B的相互认证。
(2)防止重放:本提案中量子密钥仅允许使用一次,之后就删除或标记为已使用过,可以实现一次一密。如果攻击者截取了认证数据,由于该认证数据中的密钥已被双方使用,因此重放该认证数据时,通信双方检测出重放消息,予以忽略。
(3)防止窃听:量子密钥仅被通信双方共享,且仅使用一次,因此即使攻击者截获通信数据,也无法进行解密。此外,方案中的加密算法可以采用现有的对称密码算法,如AES等,量子计算可以破解对称密码算法,但不能破解非对称密码算法。
(二)可行性:
(1)应用可行性:由于每个密钥仅使用一次,如果使用完需要重新进行初始化。事实上,如果使用128bits的量子密钥,可以为每个密钥分配20字节的存储空间,这样,1MB的存储空间可以存储大约50万个密钥,足够普通用户使用,通过增大存储空间还可以延长密钥的使用时间。
(2)技术实现可行性:目前量子密钥收发装置已经商用,可使用量子网络和量子密钥收发装置实现设备与认证服务器之间的密钥分配,快速部署使用。
实施例七
如图8所示,本发明实施例七的身份认证装置,包括:
生成模块801,用于生成认证请求,在所述认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;发送模块802,用于向第二设备发送所述认证请求,以使所述第二设备将所述认证请求发送给认证服务器,由所述认证服务器根据所述认证请求进行认证;接收模块803,用于接收所述第二设备发送的认证响应,在所述认证响应中包括所述认证服务器的认证报文。
其中,所述认证服务器的认证报文包括针对第一设备的第一认证报文,所述第一认证报文中包括所述认证服务器用于当前身份认证的第二量子密钥的标识,利用所述第二量子密钥对认证结果和第三待认证信息加密后的第二加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
如图9所示,所述装置还包括:认证模块804,用于根据所述认证响应分别对所述第二设备、所述认证服务器进行认证。
其中,所述认证模块804包括:查找子模块,用于根据所述第二量子密钥的标识查找对应的第三量子密钥;读取子模块,用于若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;解密子模块,用于若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第二加密密文,获得所述第三待认证信息和所述认证结果;比较子模块,用于将所述第三待认证信息和所述第二待认证信息进行比较;第一认证子模块,用于若所述第三待认证信息和所述第二待认证信息一致,则通过对所述认证服务器的认证;第二认证子模块,用于若所述认证结果表示所述认证服务器对所述第二设备的认证通过,则通过对所述第二设备的认证。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;所述比较子模块具体用于,将所述第三待认证信息和所述第二待认证信息中的任一随机数进行比较。
其中,所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;所述比较子模块具体用于,将所述第三待认证信息和所述第二待认证信息中的所述任一随机数进行比较。
再如图9所示,所述装置还包括:
密钥计算模块805,用于计算共享量子密钥,所述共享量子密钥用于与所述第二设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示第四大整数,X表示所述第一验证数,Y表示第二验证数。
再如图9所示,所述装置还包括:
密钥获取模块806,用于从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;设置模块807,用于按照预定方式为所述量子密钥集合中的密钥设置密钥标识;存储模块808,用于存储所述量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识。
进一步的,所述装置还包括:更新模块809,用于更新所述量子密钥集合。
本发明所述装置的工作原理可参照前述方法实施例的描述。
由上可以看出,在本发明实施例中,通过设备之间的一次交互即可实现双向认证,因此利用本发明实施例的方案认证速度快,认证效率高。
实施例八
如图10所示,本发明实施例八的身份认证装置,包括:
第一接收模块901,用于接收第一设备的第一认证请求,在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;第一发送模块902,用于向认证服务器发送身份认证请求,在所述身份认证请求中包括所述第一认证请求,以使所述认证服务器根据所述身份认证请求进行认证;第二接收模块903,用于接收所述认证服务器的认证报文,根据所述认证报文对所述第一设备进行认证;第二发送模块904,用于根据所述认证报文向所述第一设备发送认证响应。
如图11所示,所述装置还包括:
生成模块905,用于生成第二认证请求,在所述第二认证请求中包括第三待认证信息、第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;在所述身份认证请求中还包括所述第二认证请求。
其中,所述认证服务器的认证报文包括针对所述第二设备的第二认证报文,所述第二认证报文中包括所述认证服务器用于当前身份认证的第三量子密钥的标识,利用所述第三量子密钥对认证结果和第五待认证信息加密后的第三加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
如图11所示,所述装置还包括:认证模块906,用于根据所述认证报文对所述认证服务器进行认证。
其中,所述认证模块906包括:
查找子模块,用于根据所述第三量子密钥的标识查找对应的第四量子密钥;读取子模块,用于若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;解密子模块,用于若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第三加密密文,获得所述第五待认证信息和所述认证结果;比较子模块,用于将所述第五待认证信息和所述第四待认证信息进行比较;第一认证子模块,用于若所述第五待认证信息和所述第四待认证信息一致,则通过对所述认证服务器的认证;第二认证子模块,用于若所述认证结果表示所述认证服务器对所述第一设备的认证通过,则通过对所述第一设备的认证。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息和任一随机数;
或者
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息、任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的。
如图11所示,所述装置还包括:
密钥计算模块907,用于计算共享量子密钥,所述共享量子密钥用于与所述第一设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示所述第四大整数,X表示所述第一验证数,Y表示所述第二验证数。
如图11所示,所述装置还包括:
密钥获取模块908,用于从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;设置模块909,用于按照预定方式为所述量子密钥集合中的密钥设置密钥标识;存储模块910,用于存储所述量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
如图11所示,所述装置还包括:更新模块912,用于更新所述量子密钥集合。
本发明所述装置的工作原理可参照前述方法实施例的描述。
由上可以看出,在本发明实施例中,通过设备之间的一次交互即可实现双向认证,因此利用本发明实施例的方案认证速度快,认证效率高。
实施例九
如图12所示,本发明实施例九的身份认证装置,包括:
接收模块1201,用于接收第二设备的身份认证请求;其中,所述身份认证请求包括第一设备的第一认证请求;在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;认证模块1202,用于根据所述身份认证请求进行认证;发送模块1203,用于向所述第二设备发送认证报文。
其中,所述第一待认证信息和所述第二待认证信息为任一随机数;或者所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数;或者所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的。
其中,所述认证模块1202包括:
第一查找子模块,用于根据所述第一量子密钥的标识查找对应的第三量子密钥;第一读取子模块,用于若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;第一解密子模块,用于若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第一加密密文,获得所述第二待认证信息;第一比较子模块,用于将所述第二待认证信息和所述第一认证请求中包括的第一待认证信息进行比较;第一认证子模块,用于若所述第二待认证信息和所述第一认证请求中包括的第一待认证信息一致,则通过对所述第一设备的认证。
其中,所述第一比较子模块具体用于,将所述第二待认证信息中的任一随机数和所述第一待认证信息进行比较。
其中,所述身份认证请求中还包括所述第二设备的第二认证请求,在所述第二认证请求中包括第三待认证信息、所述第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;所述认证模块1202包括:
第二查找子模块,用于根据所述第二量子密钥的标识查找对应的第四量子密钥;第二读取子模块,用于若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;第二解密子模块,用于若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第二加密密文,获得所述第四待认证信息;第二比较子模块,用于将所述第四待认证信息和所述第三待认证信息进行比较;第二认证子模块,用于若所述第四待认证信息和所述第三待认证信息一致,则通过对所述第二设备的认证。
其中所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息、任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的;
所述第二比较子模块具体用于,将所述第四待认证信息中的任一随机数和所述第三待认证信息进行比较。
如图13所示,所述装置还包括:
密钥获取模块1204,用于从量子密钥分发设备分别获取与所述第一设备、第二设备共享的第一量子密钥集合和第二量子密钥集合;设置模块1205,用于按照预定方式为所述第一量子密钥集合和所述第二量子密钥集合中的密钥设置密钥标识;第一存储模块1206,用于存储所述第一量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识;第二存储模块1207,用于存储所述第二量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
进一步的,如图13所示,所述装置还可包括:更新模块1208,用于更新所述量子密钥集合。
在本申请所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述收发方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (48)
1.一种身份认证方法,其特征在于,应用于第一设备,包括:
生成认证请求,在所述认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
向第二设备发送所述认证请求,以使所述第二设备将所述认证请求发送给认证服务器,由所述认证服务器根据所述认证请求进行认证;
接收所述第二设备发送的认证响应,在所述认证响应中包括所述认证服务器的认证报文;
所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数。
2.根据权利要求1所述的方法,其特征在于,所述认证服务器的认证报文包括针对所述第一设备的第一认证报文,所述第一认证报文中包括所述认证服务器用于当前身份认证的第二量子密钥的标识,利用所述第二量子密钥对认证结果和第三待认证信息加密后的第二加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;所述方法还包括:
根据所述认证响应分别对所述第二设备、所述认证服务器进行认证。
3.根据权利要求2所述的方法,其特征在于,所述根据所述认证响应分别对所述第二设备、所述认证服务器进行认证,包括:
根据所述第二量子密钥的标识查找对应的第三量子密钥;
若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第二加密密文,获得所述第三待认证信息和所述认证结果;
将所述第三待认证信息和所述第二待认证信息进行比较;
若所述第三待认证信息和所述第二待认证信息一致,则通过对所述认证服务器的认证;
若所述认证结果表示所述认证服务器对所述第二设备的认证通过,则通过对所述第二设备的认证。
4.根据权利要求3所述的方法,其特征在于,
当所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数时,所述将所述第三待认证信息和所述第二待认证信息进行比较,包括:
将所述第三待认证信息和所述第二待认证信息中的任一随机数进行比较。
5.根据权利要求3所述的方法,其特征在于,所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;
所述将所述第三待认证信息和所述第二待认证信息进行比较,包括:
将所述第三待认证信息和所述第二待认证信息中的所述任一随机数进行比较。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
计算共享量子密钥,所述共享量子密钥用于与所述第二设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示第四大整数,X表示所述第一验证数,Y表示第二验证数。
7.根据权利要求1-6任一所述的方法,其特征在于,所述方法还包括:
从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储所述量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
更新所述量子密钥集合。
9.一种身份认证方法,其特征在于,应用于第二设备,包括:
接收第一设备的第一认证请求,在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
向认证服务器发送身份认证请求,在所述身份认证请求中包括所述第一认证请求,以使所述认证服务器根据所述身份认证请求进行认证;
接收所述认证服务器的认证报文,根据所述认证报文对所述第一设备进行认证;
根据所述认证报文向所述第一设备发送认证响应;
所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数。
10.根据权利要求9所述的方法,其特征在于,在所述接收第一设备的第一认证请求之后,所述方法还包括:
生成第二认证请求,在所述第二认证请求中包括第三待认证信息、所述第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;
在所述身份认证请求中还包括所述第二认证请求。
11.根据权利要求10所述的方法,其特征在于,所述认证服务器的认证报文包括针对所述第二设备的第二认证报文,所述第二认证报文中包括所述认证服务器用于当前身份认证的第三量子密钥的标识,利用所述第三量子密钥对认证结果和第五待认证信息加密后的第三加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
所述方法还包括:根据所述认证报文对所述认证服务器进行认证。
12.根据权利要求11所述的方法,其特征在于,所述根据所述认证报文对所述认证服务器进行认证,包括:
根据所述第三量子密钥的标识查找对应的第四量子密钥;
若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第三加密密文,获得所述第五待认证信息和所述认证结果;
将所述第五待认证信息和所述第四待认证信息进行比较;
若所述第五待认证信息和所述第四待认证信息一致,则通过对所述认证服务器的认证;
所述根据所述认证报文对所述第一设备进行认证,包括:
若所述认证结果表示所述认证服务器对所述第一设备的认证通过,则通过对所述第一设备的认证。
13.根据权利要求10-12任一项所述的方法,其特征在于,
所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息和任一随机数;
或者
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息,任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
计算共享量子密钥,所述共享量子密钥用于与所述第一设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示所述第四大整数,X表示所述第一验证数,Y表示所述第二验证数。
15.根据权利要求9-12任一项所述的方法,其特征在于,所述方法还包括:
从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储所述量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
更新所述量子密钥集合。
17.一种身份认证方法,其特征在于,应用于认证服务器,包括:
接收第二设备的身份认证请求;其中,所述身份认证请求包括第一设备的第一认证请求;在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
根据所述身份认证请求进行认证;
向所述第二设备发送认证报文;
所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数。
18.根据权利要求17所述的方法,其特征在于,
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的。
19.根据权利要求18所述的方法,其特征在于,所述根据所述身份认证请求进行认证,包括:
根据所述第一量子密钥的标识查找对应的第三量子密钥;
若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第一加密密文,获得所述第二待认证信息;
将所述第二待认证信息和所述第一认证请求中包括的第一待认证信息进行比较;
若所述第二待认证信息和所述第一认证请求中包括的第一待认证信息一致,则通过对所述第一设备的认证。
20.根据权利要求19所述的方法,其特征在于,所述将所述第二待认证信息和所述第一认证请求中包括的第一待认证信息进行比较,包括:
将所述第二待认证信息中的任一随机数和所述第一待认证信息进行比较。
21.根据权利要求18或19或20所述的方法,其特征在于,所述身份认证请求中还包括所述第二设备的第二认证请求,在所述第二认证请求中包括第三待认证信息、所述第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;
所述根据所述身份认证请求进行认证,包括:
根据所述第二量子密钥的标识查找对应的第四量子密钥;
若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第二加密密文,获得所述第四待认证信息;
将所述第四待认证信息和所述第三待认证信息进行比较;
若所述第四待认证信息和所述第三待认证信息一致,则通过对所述第二设备的认证。
22.根据权利要求21所述的方法,其特征在于,所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息,任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的;
所述将所述第四待认证信息和所述第三待认证信息进行比较,包括:
将所述第四待认证信息中的任一随机数和所述第三待认证信息进行比较。
23.根据权利要求17-20任一项所述的方法,其特征在于,所述方法还包括:
从量子密钥分发设备分别获取与所述第一设备、第二设备共享的第一量子密钥集合和第二量子密钥集合;
按照预定方式为所述第一量子密钥集合和所述第二量子密钥集合中的密钥设置密钥标识;
存储所述第一量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识;
存储所述第二量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
24.根据权利要求23所述的方法,其特征在于,所述方法还包括:
更新所述量子密钥集合。
25.一种身份认证装置,其特征在于,包括:
生成模块,用于生成认证请求,在所述认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
发送模块,用于向第二设备发送所述认证请求,以使所述第二设备将所述认证请求发送给认证服务器,由所述认证服务器根据所述认证请求进行认证;
接收模块,用于接收所述第二设备发送的认证响应,在所述认证响应中包括所述认证服务器的认证报文;
所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数。
26.根据权利要求25所述的装置,其特征在于,
所述认证服务器的认证报文包括针对第一设备的第一认证报文,所述第一认证报文中包括所述认证服务器用于当前身份认证的第二量子密钥的标识,利用所述第二量子密钥对认证结果和第三待认证信息加密后的第二加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
所述装置还包括:认证模块,用于根据所述认证响应分别对所述第二设备、所述认证服务器进行认证。
27.根据权利要求26所述的装置,其特征在于,所述认证模块包括:
查找子模块,用于根据所述第二量子密钥的标识查找对应的第三量子密钥;
读取子模块,用于若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
解密子模块,用于若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第二加密密文,获得所述第三待认证信息和所述认证结果;
比较子模块,用于将所述第三待认证信息和所述第二待认证信息进行比较;
第一认证子模块,用于若所述第三待认证信息和所述第二待认证信息一致,则通过对所述认证服务器的认证;
第二认证子模块,用于若所述认证结果表示所述认证服务器对所述第二设备的认证通过,则通过对所述第二设备的认证。
28.根据权利要求27所述的装置,其特征在于,
所述比较子模块具体用于,将所述第三待认证信息和所述第二待认证信息中的任一随机数进行比较。
29.根据权利要求27所述的装置,其特征在于,所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;
所述比较子模块具体用于,将所述第三待认证信息和所述第二待认证信息中的所述任一随机数进行比较。
30.根据权利要求29所述的装置,其特征在于,所述装置还包括:
密钥计算模块,用于计算共享量子密钥,所述共享量子密钥用于与所述第二设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示第四大整数,X表示所述第一验证数,Y表示第二验证数。
31.根据权利要求25-30任一项所述的装置,其特征在于,所述装置还包括:
密钥获取模块,用于从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
设置模块,用于按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储模块,用于存储所述量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识。
32.根据权利要求31所述的装置,其特征在于,所述装置还包括:
更新模块,更新所述量子密钥集合。
33.一种身份认证装置,其特征在于,包括:
第一接收模块,用于接收第一设备的第一认证请求,在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
第一发送模块,用于向认证服务器发送身份认证请求,在所述身份认证请求中包括所述第一认证请求,以使所述认证服务器根据所述身份认证请求进行认证;
第二接收模块,用于接收所述认证服务器的认证报文,根据所述认证报文对所述第一设备进行认证;
第二发送模块,用于根据所述认证报文向所述第一设备发送认证响应;
所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数。
34.根据权利要求33所述的装置,其特征在于,所述装置还包括:
生成模块,用于生成第二认证请求,在所述第二认证请求中包括第三待认证信息、第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;
在所述身份认证请求中还包括所述第二认证请求。
35.根据权利要求34所述的装置,其特征在于,所述认证服务器的认证报文包括针对所述第二设备的第二认证报文,所述第二认证报文中包括所述认证服务器用于当前身份认证的第三量子密钥的标识,利用所述第三量子密钥对认证结果和第五待认证信息加密后的第三加密密文;所述认证结果中包括所述认证服务器对所述第一设备的认证结果以及所述认证服务器对所述第二设备的认证结果;
所述装置还包括:认证模块,用于根据所述认证报文对所述认证服务器进行认证。
36.根据权利要求35所述的装置,其特征在于,所述认证模块包括:
查找子模块,用于根据所述第三量子密钥的标识查找对应的第四量子密钥;
读取子模块,用于若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
解密子模块,用于若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第三加密密文,获得所述第五待认证信息和所述认证结果;
比较子模块,用于将所述第五待认证信息和所述第四待认证信息进行比较;
第一认证子模块,用于若所述第五待认证信息和所述第四待认证信息一致,则通过对所述认证服务器的认证;
第二认证子模块,用于若所述认证结果表示所述认证服务器对所述第一设备的认证通过,则通过对所述第一设备的认证。
37.根据权利要求34-36任一项所述的装置,其特征在于,所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息和任一随机数;
或者
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的;所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息、任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的。
38.根据权利要求37所述的装置,其特征在于,所述装置还包括:
密钥计算模块,用于计算共享量子密钥,所述共享量子密钥用于与所述第一设备之间的通信;
所述共享量子密钥按如下方式计算:
K=Xy=Yx=gxy mod n,Y=gy mod n,X=gx mod n;
其中,K表示共享量子密钥,g表示所述第一大整数,n表示所述第二大整数,x表示所述第三大整数,y表示所述第四大整数,X表示所述第一验证数,Y表示所述第二验证数。
39.根据权利要求33-36任一项所述的装置,其特征在于,所述装置还包括:
密钥获取模块,用于从量子密钥分发设备获取与所述认证服务器共享的量子密钥集合;
设置模块,用于按照预定方式为所述量子密钥集合中的密钥设置密钥标识;
存储模块,用于存储所述量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
40.根据权利要求39所述的装置,其特征在于,所述装置还包括:
更新模块,用于更新所述量子密钥集合。
41.一种身份认证装置,其特征在于,包括:
接收模块,用于接收第二设备的身份认证请求;其中,所述身份认证请求包括第一设备的第一认证请求;在所述第一认证请求中包括第一待认证信息、用于当前身份认证的第一量子密钥的标识、利用所述第一量子密钥对第二待认证信息加密后的第一加密密文;
认证模块,用于根据所述身份认证请求进行认证;
发送模块,用于向所述第二设备发送认证报文;
所述第一待认证信息和所述第二待认证信息为任一随机数;或者
所述第一待认证信息为任一随机数,所述第二待认证信息包括所述第一待认证信息和任一随机数。
42.根据权利要求41所述的装置,其特征在于,
所述第一待认证信息为任一随机数;所述第二待认证信息包括所述第一待认证信息、任一随机数和第一验证数;所述认证请求中还包括:第一大整数和第二大整数;所述第一验证数是根据所述第一大整数、所述第二大整数、第三大整数计算得到的。
43.根据权利要求42所述的装置,其特征在于,所述认证模块包括:
第一查找子模块,用于根据所述第一量子密钥的标识查找对应的第三量子密钥;
第一读取子模块,用于若查找到所述第三量子密钥,则读取所述第三量子密钥的状态标识;
第一解密子模块,用于若所述第三量子密钥的状态标识表示所述第三量子密钥未被使用,则利用所述第三量子密钥解密所述第一加密密文,获得所述第二待认证信息;
第一比较子模块,用于将所述第二待认证信息和所述第一认证请求中包括的第一待认证信息进行比较;
第一认证子模块,用于若所述第二待认证信息和所述第一认证请求中包括的第一待认证信息一致,则通过对所述第一设备的认证。
44.根据权利要求43所述的装置,其特征在于,所述第一比较子模块具体用于,将所述第二待认证信息中的任一随机数和所述第一待认证信息进行比较。
45.根据权利要求42或43或44所述的装置,其特征在于,所述身份认证请求中还包括所述第二设备的第二认证请求,在所述第二认证请求中包括第三待认证信息、所述第二设备用于当前身份认证的第二量子密钥的标识、利用所述第二量子密钥对第四待认证信息加密后的第二加密密文;所述认证模块包括:
第二查找子模块,用于根据所述第二量子密钥的标识查找对应的第四量子密钥;
第二读取子模块,用于若查找到所述第四量子密钥,则读取所述第四量子密钥的状态标识;
第二解密子模块,用于若所述第四量子密钥的状态标识表示所述第四量子密钥未被使用,则利用所述第四量子密钥解密所述第二加密密文,获得所述第四待认证信息;
第二比较子模块,用于将所述第四待认证信息和所述第三待认证信息进行比较;
第二认证子模块,用于若所述第四待认证信息和所述第三待认证信息一致,则通过对所述第二设备的认证。
46.根据权利要求45所述的装置,其特征在于,所述第三待认证信息为任一随机数,所述第四待认证信息包括所述第三待认证信息、任一随机数和第二验证数;所述第二验证数是所述第二设备根据所述第一大整数、所述第二大整数和第四大整数生成的;
所述第二比较子模块具体用于,将所述第四待认证信息中的任一随机数和所述第三待认证信息进行比较。
47.根据权利要求41-44任一项所述的装置,其特征在于,所述装置还包括:
密钥获取模块,用于从量子密钥分发设备分别获取与所述第一设备、第二设备共享的第一量子密钥集合和第二量子密钥集合;
设置模块,用于按照预定方式为所述第一量子密钥集合和所述第二量子密钥集合中的密钥设置密钥标识;
第一存储模块,用于存储所述第一量子密钥集合、所述密钥标识、第一设备的标识和所述认证服务器的标识;
第二存储模块,用于存储所述第二量子密钥集合、所述密钥标识、第二设备的标识和所述认证服务器的标识。
48.根据权利要求47所述的装置,其特征在于,所述装置还包括:
更新模块,用于更新所述量子密钥集合。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710075759.XA CN108429717B (zh) | 2017-02-13 | 2017-02-13 | 一种身份认证方法及装置 |
PCT/CN2018/071514 WO2018127118A1 (zh) | 2017-01-06 | 2018-01-05 | 一种身份认证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710075759.XA CN108429717B (zh) | 2017-02-13 | 2017-02-13 | 一种身份认证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108429717A CN108429717A (zh) | 2018-08-21 |
CN108429717B true CN108429717B (zh) | 2020-02-21 |
Family
ID=63154904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710075759.XA Active CN108429717B (zh) | 2017-01-06 | 2017-02-13 | 一种身份认证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108429717B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112448970A (zh) * | 2019-08-29 | 2021-03-05 | 阿里巴巴集团控股有限公司 | 设备连接方法、系统及相应的物联网设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103532713A (zh) * | 2012-07-04 | 2014-01-22 | 中国移动通信集团公司 | 传感器认证和共享密钥产生方法和系统以及传感器 |
CN108347404A (zh) * | 2017-01-24 | 2018-07-31 | 中国移动通信有限公司研究院 | 一种身份认证方法及装置 |
-
2017
- 2017-02-13 CN CN201710075759.XA patent/CN108429717B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103532713A (zh) * | 2012-07-04 | 2014-01-22 | 中国移动通信集团公司 | 传感器认证和共享密钥产生方法和系统以及传感器 |
CN108347404A (zh) * | 2017-01-24 | 2018-07-31 | 中国移动通信有限公司研究院 | 一种身份认证方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108429717A (zh) | 2018-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108347404B (zh) | 一种身份认证方法及装置 | |
CN108111301B (zh) | 基于后量子密钥交换实现ssh协议的方法及其系统 | |
WO2018127118A1 (zh) | 一种身份认证方法及装置 | |
CN108282329B (zh) | 一种双向身份认证方法及装置 | |
US10785019B2 (en) | Data transmission method and apparatus | |
US8670563B2 (en) | System and method for designing secure client-server communication protocols based on certificateless public key infrastructure | |
US7814320B2 (en) | Cryptographic authentication, and/or establishment of shared cryptographic keys, using a signing key encrypted with a non-one-time-pad encryption, including (but not limited to) techniques with improved security against malleability attacks | |
US12010216B2 (en) | Computer-implemented system and method for highly secure, high speed encryption and transmission of data | |
CN110020524B (zh) | 一种基于智能卡的双向认证方法 | |
US9130744B1 (en) | Sending an encrypted key pair and a secret shared by two devices to a trusted intermediary | |
JP2012019511A (ja) | 無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法 | |
JP2011501585A (ja) | キー配信用の方法、システムおよび機器 | |
US20200195446A1 (en) | System and method for ensuring forward & backward secrecy using physically unclonable functions | |
US11528127B2 (en) | Computer-implemented system and method for highly secure, high speed encryption and transmission of data | |
TWI804179B (zh) | 量子安全金鑰交換方案 | |
CN114268439A (zh) | 一种基于格的身份基认证密钥协商方法 | |
Noh et al. | Secure authentication and four-way handshake scheme for protected individual communication in public wi-fi networks | |
Niu et al. | A novel user authentication scheme with anonymity for wireless communications | |
WO2020042023A1 (zh) | 一种即时通信的数据加密方法及装置 | |
Yao et al. | Post Quantum KEM authentication in SPDM for secure session establishment | |
CN108429717B (zh) | 一种身份认证方法及装置 | |
WO2022135393A1 (zh) | 身份鉴别方法、鉴别接入控制器、请求设备、鉴别服务器、存储介质、程序、及程序产品 | |
TWI761243B (zh) | 群組即時通訊的加密系統和加密方法 | |
KR101793528B1 (ko) | 무인증서 공개키 암호 시스템 | |
CN116233843A (zh) | 面向工业互联网的b5g/6g网络切片认证方法 |
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 |