CN110535632B - 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和*** - Google Patents

基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和*** Download PDF

Info

Publication number
CN110535632B
CN110535632B CN201910591318.4A CN201910591318A CN110535632B CN 110535632 B CN110535632 B CN 110535632B CN 201910591318 A CN201910591318 A CN 201910591318A CN 110535632 B CN110535632 B CN 110535632B
Authority
CN
China
Prior art keywords
key
client
message
authentication
service station
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
CN201910591318.4A
Other languages
English (en)
Other versions
CN110535632A (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.)
Ruban Quantum Technology Co Ltd
Original Assignee
Ruban Quantum Technology Co Ltd
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 Ruban Quantum Technology Co Ltd filed Critical Ruban Quantum Technology Co Ltd
Priority to CN201910591318.4A priority Critical patent/CN110535632B/zh
Publication of CN110535632A publication Critical patent/CN110535632A/zh
Application granted granted Critical
Publication of CN110535632B publication Critical patent/CN110535632B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请涉及一种基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法和***,本申请中,客户端A、服务站以及客户端B均配备有密钥卡,使用密钥卡存储密钥,密钥卡是独立的硬件设备,被恶意软件或恶意操作窃取密钥的可能性大大降低。

Description

基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协 商方法和***
技术领域
本申请涉及安全通信技术领域,特别是涉及基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法和***。
背景技术
迅速发展的Internet给人们的生活、工作带来了巨大的方便,人们可以坐在家里通过Internet收发电子邮件、打电话、进行网上购物、银行转账等活动。同时网络消息安全也逐渐成为一个潜在的巨大问题。一般来说网络消息面临着以下几种安全隐患:网络消息被窃取、消息被篡改、攻击者假冒消息、恶意破坏等。
其中身份认证是其中一种保护人们网络消息的一种手段。身份认证也称为“身份验证”或“身份鉴别”,是指在计算机及计算机网络***中确认操作者身份的过程,从而确定该用户是否具有对某种资源的访问和使用权限,进而使计算机和网络***的访问策略能够可靠、有效地执行,防止攻击者假冒合法用户获得资源的访问权限,保证***和数据的安全,以及授权访问者的合法利益。
而当前确保身份认证成功的主要是依靠密码技术,而在如今的密码学领域中,主要有两种密码***,一是对称密钥密码***,即加密密钥和解密密钥使用同一个。另一个是公开密钥密码***,即加密密钥和解密密钥不同,其中一个可以公开。目前大部分的身份认证使用算法的主要依靠公钥密码体系。
公开密钥加密***采用的加密钥匙(公钥)和解密钥匙(私钥)是不同的。由于加密钥匙是公开的,密钥的分配和管理就很简单,公开密钥加密***还能够很容易地实现数字签名。
自公钥加密问世以来,学者们提出了许多种公钥加密方法,它们的安全性都是基于复杂的数学难题。根据所基于的数学难题来分类,有以下三类***目前被认为是安全和有效的:大整数因子分解***(代表性的有RSA)、离散对数***(代表性的有DSA)和椭圆离散对数***(ECC)。
但是随着量子计算机的发展,经典非对称密钥加密算法将不再安全,无论加解密还是密钥交换方法,量子计算机都可以通过公钥计算得到私钥,因此目前常用的非对称密钥将在量子时代变得不堪一击。目前量子密钥分发设备QKD可确保协商的密钥无法被获取。但是QKD主要用于量子干线,用户端设备到量子通信服务站依旧为经典网络,因此依靠非对称算法很难保证身份认证过程的安全。
目前在移动通信领域比较常用的鉴权方法之一的AKA机制(全称“Authenticationand Key Agreement”,即鉴权和密钥协商。)可实现对称密钥的协商和分发。但是在计算认证向量上的密钥固定,存在一定的风险,但如果使用大量的对称密钥池又对量子通信服务站有较大的存储负担。
现有技术存在的问题:
1.量子通信服务站与量子密钥卡之间使用对称密钥池,其容量巨大,对量子通信服务站的密钥存储带来压力;
2.由于对称密钥池密钥容量巨大,量子通信服务站不得不将密钥加密存储于普通存储介质例如硬盘内,而无法存储于量子通信服务站的密钥卡内;
3.由于对称密钥池密钥容量巨大,给密钥备份造成麻烦。
发明内容
基于此,有必要针对上述技术问题,提供基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法和***。
本申请公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,实施在客户端A,所述量子通信服务站AKA密钥协商方法包括:
获取来自客户端B生成的第一随机参数后生成第二随机参数、第一中间参数以及第一密钥,所述第一密钥利用客户端A第一私钥与服务站第一公钥根据DH协议生成;生成第一消息,所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及所述第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;向所述客户端B发送包含所述第一认证码的第一消息;
获取来自客户端B的包含网络认证令牌的第四消息,所述网络认证令牌由所述服务站利用向量密钥计算得到,所述向量密钥利用所述第一中间参数和服务站第一私钥生成;生成所述向量密钥并计算得到认证向量中的消息认证码,认证应答,保密性密钥以及完整性密钥;对比消息认证码与所述网络认证令牌并通过后,利用所述完整性密钥和认证应答生成第四认证码,生成第五消息,所述第五消息包括利用保密性密钥加密的认证应答和第四认证码;向客户端B发送所述第五消息;
获取来自客户端B的第六消息,所述第六消息包括利用保密性密钥加密的第五认证码和对比结果;所述第五认证码是由客户端B利用完整性密钥和对比结果生成,所述对比结果是客户端B对比认证应答和客户端B存储的认证应答之后生成,解密并读取对比结果,若对比结果为真,则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,实施在服务站,所述量子通信服务站AKA密钥协商方法包括:
获取来自客户端B的第二消息,所述第二消息包括第一消息,客户端B的设备参数,第一随机参数,第二中间参数以及第三随机参数;所述第二消息的至少一部分内容利用第二密钥加密并制作第二认证码;所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;其中,所述第二随机参数,第一中间参数由所述客户端A生成,所述第一密钥由客户端A利用客户端A第一私钥与服务站第一公钥根据DH协议生成,所述第二密钥利用客户端B第一私钥与服务站第二公钥根据DH协议生成,所述第二随机参数和第一中间参数由所述客户端A生成,所述第三随机参数,第一随机参数以及第二中间参数由所述客户端B生成;
解密并依次验证所述第二认证码,第一认证码后,生成向量密钥,第四随机参数以及第三密钥,所述向量密钥利用所述第一中间参数和服务站第一私钥生成,所述第三密钥利用服务站第二私钥和所述第二中间参数根据DH协议生成;利用所述向量密钥生成认证向量,所述认证向量包含消息认证码,认证应答,保密性密钥,完整性密钥以及网络认证令牌;生成第三消息,所述第三消息包括第四随机参数,认证向量;所述第三消息的至少一部分内容利用第三密钥加密并制作第三认证码;向所述客户端B发送包含第三认证码的所述第三消息;
所述认证向量用于供所述客户端A和客户端B完成AKA鉴权。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,实施在客户端B,所述量子通信服务站AKA密钥协商方法包括:
生成第一随机参数,并将所述第一随机参数发送给客户端A;
获取来自所述客户端A的第一消息,所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;其中,所述第二随机参数,第一中间参数由所述客户端A生成,所述第一密钥由客户端A利用客户端A第一私钥与服务站第一公钥根据DH协议生成;解密后生成第二中间参数,第三随机参数,以及第二密钥,所述第二密钥利用客户端B第一私钥与服务站第二公钥根据DH协议生成,生成第二消息,所述第二消息包括所述第一消息,客户端B的设备参数,所述第一随机参数,第二中间参数以及第三随机参数;所述第二消息的至少一部分内容利用第二密钥加密并制作第二认证码;向服务站发送包含所述第二认证码的所述第二消息;
获取来自服务站的第三消息,所述第三消息包括第四随机参数,认证向量;所述第三消息的至少一部分内容利用第三密钥加密并制作第三认证码;所述第三密钥由所述服务站利用服务站第二私钥和所述第二中间参数根据DH协议生成,所述认证向量由所述服务站利用向量密钥生成且包含消息认证码,认证应答,保密性密钥,完整性密钥以及网络认证令牌;所述向量密钥利用所述第一中间参数和服务站第一私钥生成;解密并验证第三认证码后解析并存储所述认证向量,生成包含网络认证令牌的第四消息并将所述第四消息发送给客户端A;
获取来自客户端A的第五消息,所述第五消息包括利用保密性密钥加密的认证应答,第四认证码;其中第四认证码由客户端A利用完整性密钥和认证应答生成,其中认证应答,保密性密钥,完整性密钥由客户端A利用向量密钥生成;解密后对比认证应答和存储的认证应答并生成对比结果,若认证应答和的认证应答相等则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥;利用对比结果和完整性密钥生成第五认证码;生成第六消息,所述第六消息包括利用保密性密钥加密的第五认证码和对比结果;将所述第六消息发送给客户端A。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,所述量子通信服务站AKA密钥协商方法包括:
客户端B生成第一随机参数,并将所述第一随机参数发送给客户端A;
客户端A获取来自客户端B生成的第一随机参数后生成第二随机参数、第一中间参数以及第一密钥,所述第一密钥利用客户端A第一私钥与服务站第一公钥根据DH协议生成;生成第一消息,所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及所述第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;向所述客户端B发送包含所述第一认证码的第一消息;
客户端B获取所述第一消息,解密后生成第二中间参数,第三随机参数,以及第二密钥,所述第二密钥利用客户端B第一私钥与服务站第二公钥根据DH协议生成,生成第二消息,所述第二消息包括所述第一消息,客户端B的设备参数,所述第一随机参数,第二中间参数以及第三随机参数;所述第二消息的至少一部分内容利用第二密钥加密并制作第二认证码;向服务站发送包含所述第二认证码的所述第二消息;
服务站获取第二消息,解密并依次验证所述第二认证码,第一认证码后,生成向量密钥,第四随机参数以及第三密钥,所述向量密钥利用所述第一中间参数和服务站第一私钥生成,所述第三密钥利用服务站第二私钥和所述第二中间参数根据DH协议生成;利用所述向量密钥生成认证向量,所述认证向量包含消息认证码,认证应答,保密性密钥,完整性密钥以及网络认证令牌;生成第三消息,所述第三消息包括第四随机参数,认证向量;所述第三消息的至少一部分内容利用第三密钥加密并制作第三认证码;向所述客户端B发送包含第三认证码的所述第三消息;
客户端B获取所述第三消息,解密并验证第三认证码后解析并存储所述认证向量,生成包含网络认证令牌的第四消息并将所述第四消息发送给客户端A;
客户端A获取所述所述第四消息,生成所述向量密钥并计算得到认证向量中的消息认证码,认证应答,保密性密钥以及完整性密钥;对比消息认证码与所述网络认证令牌并通过后,利用所述完整性密钥和认证应答生成第四认证码,生成第五消息,所述第五消息包括利用保密性密钥加密的认证应答和第四认证码;向客户端B发送所述第五消息;
客户端B获取所述第五消息,解密后对比认证应答和存储的认证应答并生成对比结果,若认证应答和的认证应答相等则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥;利用对比结果和完整性密钥生成第五认证码;生成第六消息,所述第六消息包括利用保密性密钥加密的第五认证码和对比结果;将所述第六消息发送给客户端A;
客户端A获取所述第六消息,解密并读取对比结果,若对比结果为真,则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥。
优选的,所述服务站包括服务站Qa和服务站Qb,所述客户端A为所述服务站Qa的子设备,所述客户端B为所述服务站Qb的子设备;
所述服务站Qb获取来自客户端B的第二消息,其中第二密钥由所述客户端B利用客户端B第一私钥与服务站Qb第一公钥根据DH协议生成;所述第一消息还包括服务站Qa的设备参数,所述第一密钥由客户端A利用客户端A第一私钥与服务站Qa第一公钥根据DH协议生成;解密并验证第二认证码后与所述服务站Qa加密通信获得第一站间密钥,生成第一站间消息,所述第一站间消息包括服务站Qb的设备参数,所述第一消息以及第一随机参数;利用所述第一站间密钥将所述第一站间消息加密发送给服务站Qa;
服务站Qa获取、解密并验证所述第一认证码后,利用第一中间参数,以及服务站Qa第一私钥生成向量密钥,所述向量密钥用于生成所述认证向量,与所述服务站Qb加密通信获得第二站间密钥,生成包含所述认证向量的第二站间消息,利用第二站间密钥将所述第二站间消息加密发送给所述服务站Qb;
服务站Qb获取、解密并验证后,生成第四随机参数,利用第二中间参数,服务站Qb第一私钥生成第五密钥,生成第七消息,所述第七消息包括第四随机参数,和第二站间消息,其中所述第七消息的至少一部分利用第五密钥加密;向所述客户端B发送第七消息;
所述第七消息用于供所述客户端A和客户端B完成AKA鉴权。
优选的,所述客户端A和客户端B配置有客户端密钥卡,所述客户端密钥卡内存储有服务站公钥池,自身的客户端公钥和客户端私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有包括各客户端公钥的客户端公钥池和服务站私钥池。
本申请还公开了一种客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤。
本申请还公开了一种服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤。
本申请还公开了一种客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商***,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤;所述客户端A和客户端B配置有客户端密钥卡,所述客户端密钥卡内存储有服务站公钥池,自身的客户端公钥和客户端私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有包括各客户端公钥的客户端公钥池和服务站私钥池。
本申请公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商***,包括存储器和处理器,所述存储器存储有计算机程序,其所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤;所述客户端A和客户端B配置有客户端密钥卡,所述客户端密钥卡内存储有服务站公钥池,自身的客户端公钥和客户端私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有包括各客户端公钥的客户端公钥池和服务站私钥池。
本申请中的密钥卡是结合了密码学技术、硬件安全隔离技术、量子物理学技术(搭载量子随机数发生器的情况下)的身份认证和加解密产品。密钥卡的内嵌芯片和操作***可以提供密钥的安全存储和密码算法等功能。由于其具有独立的数据处理能力和良好的安全性,密钥卡成为私钥和密钥池的安全载体。每一个密钥卡可以有硬件PIN码保护,PIN码和硬件构成了用户使用密钥卡的两个必要因素,即所谓“双因子认证”,用户只有同时取得保存了相关认证信息的密钥卡和用户PIN码,才可以登录***。即使用户的PIN码被泄露,只要用户持有的密钥卡不被盗取,合法用户的身份就不会被仿冒;如果用户的密钥卡遗失,拾到者由于不知道用户PIN码,也无法仿冒合法用户的身份。总之,密钥卡使得密钥等绝密信息不以明文形式出现在主机的磁盘及内存中,从而能有效保证绝密信息的安全。
各成员均配备有密钥卡,使用密钥卡存储密钥,密钥卡是独立的硬件设备,被恶意软件或恶意操作窃取密钥的可能性大大降低。同时,各所述成员利用随机数结合所述非对称密钥池提取所需各成员的公钥,且各成员的公钥存储在密钥卡内,保证量子计算机无法得到用户公钥,进而无法得到对应的私钥,因此降低被量子计算机破解风险。
作为通信中心的量子通信服务站无需存储多个大容量对称密钥池,仅需存储客户端公钥池,极大节省量子通信服务站的存储空间,也为密钥备份提供了方便。
附图说明
图1为本申请中服务站密钥卡的密钥池分布示意图;
图2为本申请中客户端密钥卡的密钥池分布示意图;
图3为实施例1中客户端A与客户端B位于同一个服务站Q下的AKA鉴权流程图;
图4为实施例2中客户端A与客户端B分别位于服务站QA和服务站QB下的AKA鉴权流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。其中本申请中的服务站在未做特殊说明的情况下均为量子通信服务站,本申请中的各名称以字母和数字组合为准,例如设备参数IDA,设备信息IDA,身份参数IDA,IDA在下文表示同一含义,即设备参数IDA;再例如认证密钥AK2,消息认证密钥AK2,信息认证密钥AK2,AK2在下文中表示同一含义,即认证密钥AK2,其余名称同理。
本申请公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,实施在客户端A,所述量子通信服务站AKA密钥协商方法包括:
获取来自客户端B生成的第一随机参数后生成第二随机参数、第一中间参数以及第一密钥,所述第一密钥利用客户端A第一私钥与服务站第一公钥根据DH协议生成;生成第一消息,所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及所述第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;向所述客户端B发送包含所述第一认证码的第一消息;
获取来自客户端B的包含网络认证令牌的第四消息,所述网络认证令牌由所述服务站利用向量密钥计算得到,所述向量密钥利用所述第一中间参数和服务站第一私钥生成;生成所述向量密钥并计算得到认证向量中的消息认证码,认证应答,保密性密钥以及完整性密钥;对比消息认证码与所述网络认证令牌并通过后,利用所述完整性密钥和认证应答生成第四认证码,生成第五消息,所述第五消息包括利用保密性密钥加密的认证应答和第四认证码;向客户端B发送所述第五消息;
获取来自客户端B的第六消息,所述第六消息包括利用保密性密钥加密的第五认证码和对比结果;所述第五认证码是由客户端B利用完整性密钥和对比结果生成,所述对比结果是客户端B对比认证应答和客户端B存储的认证应答之后生成,解密并读取对比结果,若对比结果为真,则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,实施在服务站,所述量子通信服务站AKA密钥协商方法包括:
获取来自客户端B的第二消息,所述第二消息包括第一消息,客户端B的设备参数,第一随机参数,第二中间参数以及第三随机参数;所述第二消息的至少一部分内容利用第二密钥加密并制作第二认证码;所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;其中,所述第二随机参数,第一中间参数由所述客户端A生成,所述第一密钥由客户端A利用客户端A第一私钥与服务站第一公钥根据DH协议生成,所述第二密钥利用客户端B第一私钥与服务站第二公钥根据DH协议生成,所述第二随机参数和第一中间参数由所述客户端A生成,所述第三随机参数,第一随机参数以及第二中间参数由所述客户端B生成;
解密并依次验证所述第二认证码,第一认证码后,生成向量密钥,第四随机参数以及第三密钥,所述向量密钥利用所述第一中间参数和服务站第一私钥生成,所述第三密钥利用服务站第二私钥和所述第二中间参数根据DH协议生成;利用所述向量密钥生成认证向量,所述认证向量包含消息认证码,认证应答,保密性密钥,完整性密钥以及网络认证令牌;生成第三消息,所述第三消息包括第四随机参数,认证向量;所述第三消息的至少一部分内容利用第三密钥加密并制作第三认证码;向所述客户端B发送包含第三认证码的所述第三消息;
所述认证向量用于供所述客户端A和客户端B完成AKA鉴权。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,实施在客户端B,所述量子通信服务站AKA密钥协商方法包括:
生成第一随机参数,并将所述第一随机参数发送给客户端A;
获取来自所述客户端A的第一消息,所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;其中,所述第二随机参数,第一中间参数由所述客户端A生成,所述第一密钥由客户端A利用客户端A第一私钥与服务站第一公钥根据DH协议生成;解密后生成第二中间参数,第三随机参数,以及第二密钥,所述第二密钥利用客户端B第一私钥与服务站第二公钥根据DH协议生成,生成第二消息,所述第二消息包括所述第一消息,客户端B的设备参数,所述第一随机参数,第二中间参数以及第三随机参数;所述第二消息的至少一部分内容利用第二密钥加密并制作第二认证码;向服务站发送包含所述第二认证码的所述第二消息;
获取来自服务站的第三消息,所述第三消息包括第四随机参数,认证向量;所述第三消息的至少一部分内容利用第三密钥加密并制作第三认证码;所述第三密钥由所述服务站利用服务站第二私钥和所述第二中间参数根据DH协议生成,所述认证向量由所述服务站利用向量密钥生成且包含消息认证码,认证应答,保密性密钥,完整性密钥以及网络认证令牌;所述向量密钥利用所述第一中间参数和服务站第一私钥生成;解密并验证第三认证码后解析并存储所述认证向量,生成包含网络认证令牌的第四消息并将所述第四消息发送给客户端A;
获取来自客户端A的第五消息,所述第五消息包括利用保密性密钥加密的认证应答,第四认证码;其中第四认证码由客户端A利用完整性密钥和认证应答生成,其中认证应答,保密性密钥,完整性密钥由客户端A利用向量密钥生成;解密后对比认证应答和存储的认证应答并生成对比结果,若认证应答和的认证应答相等则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥;利用对比结果和完整性密钥生成第五认证码;生成第六消息,所述第六消息包括利用保密性密钥加密的第五认证码和对比结果;将所述第六消息发送给客户端A。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,所述量子通信服务站AKA密钥协商方法包括:
客户端B生成第一随机参数,并将所述第一随机参数发送给客户端A;
客户端A获取来自客户端B生成的第一随机参数后生成第二随机参数、第一中间参数以及第一密钥,所述第一密钥利用客户端A第一私钥与服务站第一公钥根据DH协议生成;生成第一消息,所述第一消息包括第一中间参数、客户端A的设备参数、服务站的设备参数以及所述第二随机参数;所述第一消息的至少一部分内容利用第一密钥加密并制作第一认证码;向所述客户端B发送包含所述第一认证码的第一消息;
客户端B获取所述第一消息,解密后生成第二中间参数,第三随机参数,以及第二密钥,所述第二密钥利用客户端B第一私钥与服务站第二公钥根据DH协议生成,生成第二消息,所述第二消息包括所述第一消息,客户端B的设备参数,所述第一随机参数,第二中间参数以及第三随机参数;所述第二消息的至少一部分内容利用第二密钥加密并制作第二认证码;向服务站发送包含所述第二认证码的所述第二消息;
服务站获取第二消息,解密并依次验证所述第二认证码,第一认证码后,生成向量密钥,第四随机参数以及第三密钥,所述向量密钥利用所述第一中间参数和服务站第一私钥生成,所述第三密钥利用服务站第二私钥和所述第二中间参数根据DH协议生成;利用所述向量密钥生成认证向量,所述认证向量包含消息认证码,认证应答,保密性密钥,完整性密钥以及网络认证令牌;生成第三消息,所述第三消息包括第四随机参数,认证向量;所述第三消息的至少一部分内容利用第三密钥加密并制作第三认证码;向所述客户端B发送包含第三认证码的所述第三消息;
客户端B获取所述第三消息,解密并验证第三认证码后解析并存储所述认证向量,生成包含网络认证令牌的第四消息并将所述第四消息发送给客户端A;
客户端A获取所述所述第四消息,生成所述向量密钥并计算得到认证向量中的消息认证码,认证应答,保密性密钥以及完整性密钥;对比消息认证码与所述网络认证令牌并通过后,利用所述完整性密钥和认证应答生成第四认证码,生成第五消息,所述第五消息包括利用保密性密钥加密的认证应答和第四认证码;向客户端B发送所述第五消息;
客户端B获取所述第五消息,解密后对比认证应答和存储的认证应答并生成对比结果,若认证应答和的认证应答相等则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥;利用对比结果和完整性密钥生成第五认证码;生成第六消息,所述第六消息包括利用保密性密钥加密的第五认证码和对比结果;将所述第六消息发送给客户端A;
客户端A获取所述第六消息,解密并读取对比结果,若对比结果为真,则信任保密性密钥为会话密钥,信任完整性密钥为认证密钥。
在一实施例中,所述服务站包括服务站Qa和服务站Qb,所述客户端A为所述服务站Qa的子设备,所述客户端B为所述服务站Qb的子设备;
所述服务站Qb获取来自客户端B的第二消息,其中第二密钥由所述客户端B利用客户端B第一私钥与服务站Qb第一公钥根据DH协议生成;所述第一消息还包括服务站Qa的设备参数,所述第一密钥由客户端A利用客户端A第一私钥与服务站Qa第一公钥根据DH协议生成;解密并验证第二认证码后与所述服务站Qa加密通信获得第一站间密钥,生成第一站间消息,所述第一站间消息包括服务站Qb的设备参数,所述第一消息以及第一随机参数;利用所述第一站间密钥将所述第一站间消息加密发送给服务站Qa;
服务站Qa获取、解密并验证所述第一认证码后,利用第一中间参数,以及服务站Qa第一私钥生成向量密钥,所述向量密钥用于生成所述认证向量,与所述服务站Qb加密通信获得第二站间密钥,生成包含所述认证向量的第二站间消息,利用第二站间密钥将所述第二站间消息加密发送给所述服务站Qb;
服务站Qb获取、解密并验证后,生成第四随机参数,利用第二中间参数,服务站Qb第一私钥生成第五密钥,生成第七消息,所述第七消息包括第四随机参数,和第二站间消息,其中所述第七消息的至少一部分利用第五密钥加密;向所述客户端B发送第七消息;
所述第七消息用于供所述客户端A和客户端B完成AKA鉴权。
在一实施例中,所述客户端A和客户端B配置有客户端密钥卡,所述客户端密钥卡内存储有服务站公钥池,自身的客户端公钥和客户端私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有包括各客户端公钥的客户端公钥池和服务站私钥池。
本申请还公开了一种客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤。
本申请还公开了一种服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤。
本申请还公开了一种客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤。
本申请还公开了基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商***,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站AKA密钥协商方法的步骤;所述客户端A和客户端B配置有客户端密钥卡,所述客户端密钥卡内存储有服务站公钥池,自身的客户端公钥和客户端私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有包括各客户端公钥的客户端公钥池和服务站私钥池。
在具体实施场景中,各参数有各种实际的表达方式。例如第一随机参数可表达为真随机数R0,第二随机参数可表达为真随机数R1,以此类推;第一中间参数可表达为真随机数xa,第二认真参数可表达为真随机数xb;第一密钥可表达为密钥K1,第二密钥可表达为密钥K2,,以次类推;各个参数本质上均为设备产生的字符串,只是在AKA过程中起到不同作用,为了方便理解加以区分。
下面根据使用场景中具体的实施过程加以阐述:
实施例1客户端A与客户端B位于同一个服务站Q下
***说明
本实施例的场景如图4所示,本图中,包括客户端A、客户端B和量子通信服务站Q,简称为服务站Q。客户端A和客户端B都配有客户端密钥卡,量子通信服务站Q配有服务站密钥卡。上述密钥卡均为同一个密钥管理服务器颁发的同一批次的密钥卡。设客户端A的ID为IDA,对应的公钥为PKA,对应的私钥为SKA;设客户端B的ID为IDB,对应的公钥为PKB,对应的私钥为SKB。
客户端与量子通信服务站协商密钥的过程如下:
客户端或量子通信服务站根据密钥指针随机数rand结合特定的非对称密钥指针函数Fp得到相应的非对称密钥指针P,通过非对称密钥池指针P从密钥卡中的服务站公钥池或服务站私钥池中提取得到相应的公私钥。
步骤1:客户端B发起与客户端A的身份认证请求
客户端B根据本地密钥卡中的随机数发生器产生一个真随机数R0。设M0=R0,客户端B将M0随着身份认证请求发送至客户端A。
步骤2:客户端A回应请求
客户端A收到后,根据本地密钥卡中的随机数发生器生成随机数产生两个真随机数xa和R1,其中xa的大小在范围[1,p-1]内。客户端A通过计算得到Xa=gxa mod p。客户端A通过R1从本地密钥卡的服务站公钥池中取出公钥PKQ1,此过程请参考上文密钥协商过程。客户端A取出自身私钥SKA与公钥PKQ1进行计算得到K1=PKQ1SKA mod p。客户端A将K1拆分为加密密钥EK1和消息认证密钥AK1。设M1_0=Xa,客户端A利用消息认证密钥AK1对M1_0||R0进行消息认证计算得到MAC(M1_0||R0,AK1)。MAC(m,k)表示以m为消息、以k为密钥的消息认证码。客户端A利用加密密钥EK1对M1_0||MAC(M1_0||R0,AK1)加密得到{M1_0||MAC(M1_0||R0,AK1)}EK1。
客户端A打包消息得到M1,可表示为M1=IDA||IDQ||R1||{M1_0||MAC(M1_0||R0,AK1)}EK1。客户端A将M1发送至客户端B。
步骤3:客户端B向量子通信服务站Q请求认证向量
客户端B收到消息后对消息解析得到IDA、IDQ、R1和{M1_0||MAC(M1_0||R0,AK1)}EK1。客户端B根据本地密钥卡中的随机数发生器生成随机数产生两个真随机数xb和R2,其中xb的大小在范围[1,p-1]内。客户端B通过R2从本地密钥卡的服务站公钥池中取出公钥PKQ2,此过程请参考上文密钥协商过程。客户端B取出自身私钥SKB与公钥PKQ2进行计算得到K2=PKQ2SKB mod p。客户端B将K2拆分为加密密钥EK2和消息认证密钥AK2。客户端B计算得到Xb=gxb mod p。设M2_0=M1||IDB||R0||Xb,客户端B利用消息认证密钥AK2对M2_0进行消息认证计算得到MAC(M2_0,AK2)。客户端B利用加密密钥EK2对M2_0||MAC(M2_0,AK2)加密得到{M2_0||MAC(M2_0,AK2)}EK2。
客户端B打包消息得到M2,可表示为M2=IDB||R2||{M2_0||MAC(M2_0,AK2)}EK2。客户端B将认证向量请求M2发送至量子服务站Q。
步骤4:量子通信服务站Q返回认证向量
服务站Q收到消息后解析得到IDB、R2和{M2_0||MAC(M2_0,AK2)}EK2。服务站Q根据R2从本地密钥卡服务站私钥池中取出私钥SKQ2,此过程请参考上文密钥协商过程。服务站Q根据IDB从客户端公钥池中取出客户端B对应的公钥PKB。服务站Q计算得到K2=PKBSKQ2 modp。服务站Q将K2拆分为加密密钥EK2和消息认证密钥AK2。
服务站Q利用加密密钥EK2对{M2_0||MAC(M2_0,AK2)}EK2解密得到M2_0和MAC(M2_0,AK2)并利用消息认证密钥对消息认证码进行验证。如果验证通过,则进行下一步,否则,AKA鉴权失败。
验证通过后,服务站Q解析M2_0得到M1||IDB||R0||Xb。服务站Q根据M2_0中的IDA和IDQ信息得到客户端A为自身群组内的设备终端。
服务站Q解析M1得到IDA、IDQ、R1、R0和{M1_0||MAC(M1_0||R0,AK1)}EK1。服务站Q根据R1从本地密钥卡服务站私钥池中取出私钥SKQ1,此过程请参考上文密钥协商过程,并根据IDA从本地密钥卡客户端公钥池中取出客户端A对应的公钥PKA。服务站Q计算得到K1=PKASKQ1 mod p。服务站Q将K1拆分为加密密钥EK1和消息认证密钥AK1。服务站Q利用EK1对{M1_0||MAC(M1_0||R0,AK1)}EK1解密得到M1_0和MAC(M1_0||R0,AK1),并利用AK1对MAC(M1_0||R0,AK1)进行消息验证。
验证通过后,服务站Q根据本地密钥卡中的随机数发生器产生一个真随机数Ra,根据Ra从本地密钥卡服务站私钥池中取出私钥SKQa。服务站Q计算得到密钥K=XaSKQa mod p。密钥K用于以下的向量计算。以下认证向量的计算参考AKA鉴权技术。
计算消息认证码(MAC):MAC=F1K(Xa||Ra||AMF);
计算期望的认证应答(XRES):XRES=F2K(Xa||Ra);
计算保密性密钥(CK):CK=F3K(Xa||Ra);
计算完整性密钥(IK):IK=F4K(Xa||Ra);
网络认证令牌(AUTN):AUTN=Ra||AMF||MAC;
整合得到认证向量AV=XRES||CK||IK||AUTN。
服务站Q根据本地密钥卡中的随机数发生器生成随机数产生一个真随机数R3。服务站Q根据R3从本地密钥卡服务站私钥池中取出私钥SKQ3,此过程请参考上文密钥协商过程。服务站Q通过计算得到K3=XbSKQ3 mod p。服务站Q将K3拆分为加密密钥EK3和消息认证密钥AK3。
服务站Q对认证向量AV进行消息认证算法得到消息认证码MAC(AV,AK3)。服务站Q利用加密密钥EK3对AV||MAC(AV,AK3)加密得到{AV||MAC(AV,AK3)}EK3并将M3=R3||{AV||MAC(AV,AK3)}EK3发送至客户端B。
步骤5:客户端B发起鉴权挑战
客户端B收到后,根据R3从本地密钥卡服务站公钥池中取出公钥PKQ3,此过程请参考上文密钥协商过程。客户端B通过计算得到K3=PKQ3xb mod p。客户端B将K3拆分为加密密钥EK3和消息认证密钥AK3。客户端B利用EK3对{AV||MAC(AV,AK3)}EK3解密得到AV||MAC(AV,AK3),并利用AK3对消息认证码MAC(AV,AK3)进行验证。验证通过后,客户端B解析AV得到XRES||CK||IK||AUTN,并将XRES||CK||IK保留在本地安全存储区域。设M4=AUTN,并将M4发送到客户端A。
步骤6:客户端A返回认证应答
客户端A收到后,根据Ra从本地密钥卡服务站公钥池中取出公钥PKQa,此过程请参考上文密钥协商过程。客户端A计算得到K=PKQaxa mod p。客户端A利用K进行以下的计算。
XMAC=F1K(Xa||Ra||AMF);
RES=F2K(Xa||Ra);
CK=F3K(Xa||Ra);
IK=F4K(Xa||Ra);
客户端A将XMAC与AUTN内的MAC进行对比,如果相同,则进行下一步;否则,鉴权失败。校验通过后,客户端A利用IK对RES进行消息认证算法得到消息认证码MAC(RES,IK),并利用CK对RES||MAC(RES,IK)加密得到{RES||MAC(RES,IK)}CK。设M5={RES||MAC(RES,IK)}CK。客户端A将M5发送至客户端B。
步骤7:客户端B验证客户端A的认证应答
客户端B收到后,利用CK解密M5得到RES||MAC(RES,IK),并利用IK对消息认证码MAC(RES,IK)进行验证。如果验证通过,客户端B验证RES与本地的XRES是否相等。如果验证通过,则REP=OK;反之,则REP=FAIL。
客户端B利用IK对REP进行消息认证算法得到消息认证码MAC(REP,IK),并利用CK对REP||MAC(REP,IK)加密得到M6,可表示为M6={REP||MAC(REP,IK)}CK。客户端B将M6发送至客户端A。客户端A利用CK和IK解密并认证后解析鉴权结果REP。
鉴权结束,客户端A和客户端B获得了会话密钥即加密密钥CK和消息认证密钥IK。
实施例2客户端A与客户端B分别位于服务站QA和服务站QB下
***说明
本实施例的场景如图3所示,本图中,包括客户端A、客户端B、量子通信服务站QA和量子通信服务站QB,简称为服务站QA和服务站QB。客户端A和客户端B都配有客户端密钥卡,量子通信服务站QA和量子通信服务站QB配有服务站密钥卡。上述客户端A归属于量子通信服务站QA,客户端B归属于量子通信服务站QB。设客户端A的ID为IDA,对应的公钥为PKA,对应的私钥为SKA;设客户端B的ID为IDB,对应的公钥为PKB,对应的私钥为SKB。
客户端与量子通信服务站协商密钥的过程如下:
客户端或量子通信服务站根据密钥指针随机数rand结合特定的非对称密钥指针函数Fp得到相应的非对称密钥指针P,通过非对称密钥池指针P从密钥卡中的服务站公钥池或服务站私钥池中提取得到相应的公钥或私钥。
步骤1:客户端B发起与客户端A的身份认证请求
客户端B根据本地密钥卡中的随机数发生器生成随机数产生一个真随机数R0。设M0=R0,客户端B将M0随着身份认证请求发送至客户端A。
步骤2:客户端A回应请求
客户端A收到后,根据本地密钥卡中的随机数发生器产生两个真随机数xa和R1,其中xa的大小在范围[1,p-1]内。客户端A通过计算得到Xa=gxa mod p。客户端A通过R1从本地密钥卡的服务站公钥池中取出公钥PKQA1,此过程请参考上文密钥协商过程。客户端A取出自身私钥SKA与公钥PKQA1进行计算得到K1=PKQA1SKA mod p。客户端A将K1拆分为加密密钥EK1和消息认证密钥AK1。设M1_0=Xa,客户端A利用消息认证密钥AK1对M1_0||R0进行消息认证计算得到MAC(M1_0||R0,AK1)。MAC(m,k)表示以m为消息、以k为密钥的消息认证码。客户端A利用加密密钥EK1对M1_0||MAC(M1_0||R0,AK1)加密得到{M1_0||MAC(M1_0||R0,AK1)}EK1。
客户端A打包消息得到M1,可表示为M1=IDA||IDQA||R1||{M1_0||MAC(M1_0||R0,AK1)}EK1。客户端A将M1发送至客户端B。
步骤3:客户端B向量子通信服务站QB请求认证向量
客户端B收到消息后对消息解析得到IDA、IDQA、R1和{M1_0||MAC(M1_0||R0,AK1)}EK1。客户端B根据本地密钥卡中的随机数发生器生成随机数产生两个真随机数xb和R2,其中xb的大小在范围[1,p-1]内。客户端B通过R2从本地密钥卡的服务站公钥池中取出公钥PKQB2,此过程请参考上文密钥协商过程。客户端B取出自身私钥SKB与公钥PKQB2进行计算得到K2=PKQB2SKB mod p。客户端B将K2拆分为加密密钥EK2和消息认证密钥AK2。客户端B计算得到Xb=gxb mod p。设M2_0=M1||IDB||R0||Xb,客户端B利用消息认证密钥AK2对M2_0进行消息认证计算得到MAC(M2_0,AK2)。客户端B利用加密密钥EK2对M2_0||MAC(M2_0,AK2)加密得到{M2_0||MAC(M2_0,AK2)}EK2。
客户端B打包消息得到M2,可表示为M2=IDB||R2||{M2_0||MAC(M2_0,AK2)}EK2。客户端B将认证向量请求M2发送至量子服务站QB。
步骤4:量子通信服务站QB请求量子通信服务站QA
服务站QB收到消息后解析得到IDB、R2和{M2_0||MAC(M2_0,AK2)}EK2。服务站QB根据R2从本地密钥卡服务站私钥池中取出私钥SKQB2,此过程请参考上文密钥协商过程。服务站QB根据IDB从客户端公钥池中取出客户端B对应的公钥PKB。服务站QB计算得到K2=PKBSKQB2 mod p。服务站QB将K2拆分为加密密钥EK2和消息认证密钥AK2。
服务站QB利用加密密钥EK2对{M2_0||MAC(M2_0,AK2)}EK2解密得到M2_0和MAC(M2_0,AK2)并利用消息认证密钥对消息认证码进行验证。如果验证通过,则进行下一步,否则,AKA鉴权失败。
验证通过后,服务站QB解析M2_0得到M1||IDB||R0||Xb。服务站QB与服务站QA通过量子密钥分发协商得到加密密钥EK3’和消息认证密钥AK3’。设M3’=IDQB||M1||R0,服务站QB利用AK3’对M3’进行消息认证计算得到MAC(M3’,AK3’)。服务站QB利用加密密钥EK3’对M3’||MAC(M3’,AK3’)加密得到{M3’||MAC(M3’,AK3’)}EK3’。
服务站QB根据M2_0中的IDQA信息将{M3’||MAC(M3’,AK3’)}EK3’发送至服务站QA。
步骤5:量子通信服务站QA返回认证向量
服务站QA收到后,利用协商得到的EK3’对{M3’||MAC(M3’,AK3’)}EK3’解密得到M3’||MAC(M3’,AK3’),并利用AK3’验证消息认证码MAC(M3’,AK3’)。验证通过后,服务站QA解析M3’得到IDQB、IDA、IDQA、R1、R0和{M1_0||MAC(M1_0||R0,AK1)}EK1。服务站QA根据R1从本地密钥卡服务站私钥池中取出私钥SKQA1,此过程请参考上文密钥协商过程,并根据IDA从本地密钥卡客户端公钥池中取出客户端A对应的公钥PKA。服务站QA计算得到K1=PKASKQA1mod p。服务站QA将K1拆分为加密密钥EK1和消息认证密钥AK1。服务站QA利用EK1对{M1_0||MAC(M1_0||R0,AK1)}EK1解密得到M1_0和MAC(M1_0||R0,AK1),并利用AK1对MAC(M1_0||R0,AK1)进行消息验证。
验证通过后,服务站QA根据本地密钥卡中的随机数发生器产生一个真随机数Ra,根据Ra从本地密钥卡服务站私钥池中取出私钥SKQAa。服务站QA计算得到密钥K=XaSKQAamod p。密钥K用于以下的向量计算。以下认证向量的计算参考AKA鉴权技术。
计算消息认证码(MAC):MAC=F1K(Xa||Ra||AMF);
计算期望的认证应答(XRES):XRES=F2K(Xa||Ra);
计算保密性密钥(CK):CK=F3K(Xa||Ra);
计算完整性密钥(IK):IK=F4K(Xa||Ra);
网络认证令牌(AUTN):AUTN=Ra||AMF||MAC;
整合得到认证向量AV=M4’=XRES||CK||IK||AUTN。服务站QA与服务站QB协商得到加密密钥EK4’和消息认证密钥AK4’。服务站QA对M4’进行消息认证算法得到消息认证码MAC(M4’,AK4’)。服务站QA利用加密密钥EK4’对M4’||MAC(M4’,AK4’)加密得到{M4’||MAC(M4’,AK4’)}EK4’并发送至服务站QB。
步骤6:量子通信服务站QB转发认证向量
服务站QB收到后,利用EK4’对{M4’||MAC(M4’,AK4’)}EK4’解密得到M4’||MAC(M4’,AK4’),并利用AK4’对消息认证码MAC(M4’,AK4’)进行验证。验证通过后,服务站QB根据本地密钥卡中的随机数发生器生成随机数产生一个真随机数R3。服务站QB根据R3从本地密钥卡服务站私钥池中取出私钥SKQB3,此过程请参考上文密钥协商过程。服务站QB通过计算得到K5=XbSKQB3 mod p。服务站QB将K5拆分为加密密钥EK5和消息认证密钥AK5。
服务站QB对M4’进行消息认证算法得到消息认证码MAC(M4’,AK5)。服务站QB利用加密密钥EK5对M4’||MAC(M4’,AK5)加密得到{M4’||MAC(M4’,AK5)}EK5并将M5’=R3||{M4’||MAC(M4’,AK5)}EK5发送至客户端B。
步骤7:客户端B发起鉴权挑战
客户端B收到后,根据R3从本地密钥卡服务站公钥池中取出公钥PKQB3,此过程请参考上文密钥协商过程。客户端B通过计算得到K5=PKQB3xb mod p。客户端B将K5拆分为加密密钥EK5和消息认证密钥AK5。客户端B利用EK5对{M4’||MAC(M4’,AK5)}EK5解密得到M4’||MAC(M4’,AK5),并利用AK5对消息认证码MAC(M4’,AK5)进行验证。验证通过后,客户端B解析M4’得到XRES||CK||IK||AUTN,并将XRES||CK||IK保留在本地安全存储区域。设M6’=AUTN,并将M6’发送到客户端A。
步骤8:客户端A返回认证应答
客户端A收到后,根据Ra从本地密钥卡服务站公钥池中取出公钥PKQAa,此过程请参考上文密钥协商过程。客户端A计算得到K=PKQAaxa mod p。客户端A利用K进行以下的计算。
XMAC=F1K(Xa||Ra||AMF);
RES=F2K(Xa||Ra);
CK=F3K(Xa||Ra);
IK=F4K(Xa||Ra);
客户端A将XMAC与AUTN内的MAC进行对比,如果相同,则进行下一步;否则,鉴权失败。校验通过后,客户端A利用IK对RES进行消息认证算法得到消息认证码MAC(RES,IK),并利用CK对RES||MAC(RES,IK)加密得到{RES||MAC(RES,IK)}CK。设M7={RES||MAC(RES,IK)}CK。客户端A将M7发送至客户端B。
步骤9:客户端B验证客户端A的认证应答
客户端B收到后,利用CK解密M7得到RES||MAC(RES,IK),并利用IK对消息认证码MAC(RES,IK)进行验证。如果验证通过,客户端B验证RES与本地的XRES是否相等。如果验证通过,则REP=OK;反之,则REP=FAIL。
客户端B利用IK对REP进行消息认证算法得到消息认证码MAC(REP,IK),并利用CK对REP||MAC(REP,IK)加密得到M8,可表示为M8={REP||MAC(REP,IK)}CK。客户端B将M8发送至客户端A。客户端A利用CK和IK解密并认证后解析鉴权结果REP。
鉴权结束,客户端A和客户端B获得了会话密钥即加密密钥CK和消息认证密钥IK。
关于客户端A设备、客户端B设备、服务站Q设备以及***的具体限定可以参见上文中对于量子通信服务站认证方法的限定,在此不再赘述。上述各个设备中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务站Q,其内部结构图可以如图1所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储身份认证的相关数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法。
其中根据上述公开的技术方案的具体步骤的归纳可以得到权利要求中实施在客户端A的基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,实施在服务站的基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法以及实施在客户端B的基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,因此不再赘述。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (2)

1.基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商方法,其特征在于,所述客户端A和客户端B配置有客户端密钥卡,所述客户端密钥卡内存储有服务站公钥池,自身的客户端公钥和客户端私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有包括各客户端公钥的客户端公钥池和服务站私钥池,所述量子通信服务站AKA密钥协商方法包括:
客户端B生成第一随机参数R0,并将所述第一随机参数R0发送给客户端A;
客户端A获取来自客户端B生成的第一随机参数R0后生成第二随机参数R1、第一中间参数Xa以及第一密钥K1,所述第一密钥K1利用客户端A第一私钥SKA与服务站第一公钥PKQ1根据DH协议生成;
客户端A将第一密钥K1拆分为加密密钥EK1和消息认证密钥AK1,设M1_0等于第一中间参数Xa,客户端A利用消息认证密钥AK1对M1_0||R0,进行消息认证计算得到以M1_0||R0为消息、以消息认证密钥AK1为密钥的第一认证码MAC(M1_0||R0,AK1);客户端A利用加密密钥EK1对M1_0||MAC(M1_0||R0,AK1)加密得到{M1_0||MAC(M1_0||R0,AK1)}EK1;
客户端A生成第一消息M1,M1 = IDA||IDQ||R1|| {M1_0||MAC(M1_0||R0,AK1)}EK1,其中IDA为客户端A的设备参数,IDQ为服务站的设备参数,R1为所述第二随机参数;向所述客户端B发送包含所述第一认证码MAC(M1_0||R0,AK1)的第一消息M1;
客户端B获取所述第一消息M1,解密后生成第二中间参数Xb,第三随机参数R2,以及第二密钥K2,所述第二密钥K2利用客户端B第一私钥SKB与服务站第二公钥PKQ2根据DH协议生成;
客户端B将第二密钥K2拆分为加密密钥EK2和消息认证密钥AK2,设M2_0等于M1||IDB||R0||Xb,客户端B利用消息认证密钥AK2对M2_0进行消息认证计算得到第二认证码MAC(M2_0,AK2);客户端B利用加密密钥EK2对M2_0||MAC(M2_0,AK2)加密得到{M2_0||MAC(M2_0,AK2)}EK2;
客户端B生成第二消息M2,M2 = IDB||R2||{M2_0||MAC(M2_0,AK2)}EK2,其中IDB为客户端B的设备参数,R2为所述第三随机参数;向服务站发送包含所述第二认证码MAC(M2_0,AK2)的所述第二消息M2;
服务站获取第二消息M2,解密并依次验证所述第二认证码M2_0||MAC(M2_0,AK2),第一认证码MAC(M1_0||R0,AK1)后,生成向量密钥K,第四随机参数R3以及第三密钥K3,所述向量密钥K为服务站利用所述第一中间参数Xa和服务站第一私钥SKQa生成,所述第三密钥K3为服务站利用服务站第二私钥SKQ3和所述第二中间参数Xb根据DH协议生成;
利用所述向量密钥K生成认证向量AV,所述认证向量AV包括认证应答XRES,保密性密钥,完整性密钥以及网络认证令牌,网络认证令牌包括消息验证码;
生成第三消息M3,M3等于R3||{ AV|| MAC(AV,AK3)}EK3,其中R3为第四随机参数,AV为认证向量,AK3和EK3分别为服务站将第三密钥K3拆分获得的加密密钥和消息认证密钥;MAC(AV,AK3)为第三认证码;向所述客户端B发送包含第三认证码MAC(AV,AK3)的所述第三消息M3;
客户端B获取所述第三消息M3,解密并验证第三认证码MAC(AV,AK3)后解析并存储所述认证向量AV,生成包含网络认证令牌的第四消息M4并将所述第四消息M4发送给客户端A;
客户端A获取所述所述第四消息M4,生成所述向量密钥K并计算得到认证向量中AV的认证应答RES,保密性密钥以及完整性密钥,以及网络认证令牌;
对比第四消息M4中网络认证令牌的消息验证码、以及第三消息M3中网络认证令牌内的消息验证码,如果相同则验证通过,利用所述完整性密钥IK和认证应答RES生成第四认证码MAC(RES,IK),生成第五消息M5,所述第五消息包括利用保密性密钥加密的认证应答RES和第四认证码MAC(RES,IK);向客户端B发送所述第五消息;
客户端B获取所述第五消息M5,解密后对比认证应答RES和存储的认证应答XRES并生成对比结果,若第五消息M5内的认证应答RES和第五消息M5内的认证应答XRES相等,则得到对比结果REP=OK;
客户端B利用第五消息M5内的完整性密钥结合对比结果REP生成消息认证码MAC(REP,IK),并利用第五消息M5内的保密性密钥对REP||MAC(REP,IK)加密得到第六消息M6,第六消息M6等于{REP||MAC(REP,IK)}CK,其中IK表示第五消息M5内的完整性密钥,CK表示第五消息M5内的保密性密钥;将所述第六消息M6发送给客户端A;
客户端A获取所述第六消息M6,客户端A利用CK和IK解密并认证后解析获得对比结果REP,对比结果REP作为鉴权结果。
2.基于非对称密钥池对和DH协议的量子通信服务站AKA密钥协商***,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1中所述量子通信服务站AKA密钥协商方法的步骤。
CN201910591318.4A 2019-07-02 2019-07-02 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和*** Active CN110535632B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910591318.4A CN110535632B (zh) 2019-07-02 2019-07-02 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910591318.4A CN110535632B (zh) 2019-07-02 2019-07-02 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和***

Publications (2)

Publication Number Publication Date
CN110535632A CN110535632A (zh) 2019-12-03
CN110535632B true CN110535632B (zh) 2023-09-05

Family

ID=68659607

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910591318.4A Active CN110535632B (zh) 2019-07-02 2019-07-02 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和***

Country Status (1)

Country Link
CN (1) CN110535632B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314856B (zh) * 2020-02-13 2020-12-15 广州爱浦路网络技术有限公司 一种5g用户位置信息服务的分级审查与跟踪装置和方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108599926A (zh) * 2018-03-20 2018-09-28 如般量子科技有限公司 一种基于对称密钥池的HTTP-Digest改进型AKA身份认证***和方法
CN108599925A (zh) * 2018-03-20 2018-09-28 如般量子科技有限公司 一种基于量子通信网络的改进型aka身份认证***和方法
CN108718237A (zh) * 2018-03-20 2018-10-30 如般量子科技有限公司 一种基于对称密钥池的改进型aka身份认证***和方法
CN109450623A (zh) * 2018-10-16 2019-03-08 如般量子科技有限公司 基于非对称密钥池的抗量子计算密钥协商方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8296836B2 (en) * 2010-01-06 2012-10-23 Alcatel Lucent Secure multi-user identity module key exchange

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108599926A (zh) * 2018-03-20 2018-09-28 如般量子科技有限公司 一种基于对称密钥池的HTTP-Digest改进型AKA身份认证***和方法
CN108599925A (zh) * 2018-03-20 2018-09-28 如般量子科技有限公司 一种基于量子通信网络的改进型aka身份认证***和方法
CN108718237A (zh) * 2018-03-20 2018-10-30 如般量子科技有限公司 一种基于对称密钥池的改进型aka身份认证***和方法
CN109450623A (zh) * 2018-10-16 2019-03-08 如般量子科技有限公司 基于非对称密钥池的抗量子计算密钥协商方法

Also Published As

Publication number Publication date
CN110535632A (zh) 2019-12-03

Similar Documents

Publication Publication Date Title
US10516527B1 (en) Split-key based cryptography system for data protection and synchronization across multiple computing devices
US10797879B2 (en) Methods and systems to facilitate authentication of a user
US9065637B2 (en) System and method for securing private keys issued from distributed private key generator (D-PKG) nodes
CN110519046B (zh) 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和***
US11063941B2 (en) Authentication system, authentication method, and program
CN109150517B (zh) 基于sgx的密钥安全管理***及方法
CN110138548B (zh) 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和***
CN110505055B (zh) 基于非对称密钥池对和密钥卡的外网接入身份认证方法和***
JP2012044670A (ja) バイオメトリック識別技術の利用に基づいたユーザー認証方法及び関連のアーキテクチャー
CN107920052B (zh) 一种加密方法及智能装置
CN110380859B (zh) 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和***
CN110659467A (zh) 一种远程用户身份认证方法、装置、***、终端及服务器
CN108471352A (zh) 基于分布式私钥的处理方法、***、计算机设备及存储介质
CN110493177B (zh) 基于非对称密钥池对和序列号的量子通信服务站aka密钥协商方法和***
CN110557246B (zh) 基于一次性非对称密钥对和可移动身份识别装置的抗量子计算门禁方法和***
CN110098925B (zh) 基于非对称密钥池对和随机数的量子通信服务站密钥协商方法和***
CN110519222B (zh) 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和***
CN110176989B (zh) 基于非对称密钥池的量子通信服务站身份认证方法和***
CN117081736A (zh) 密钥分发方法、密钥分发装置、通信方法及通信装置
CN111817850A (zh) 一种基于工业物联网的匿名群组认证方法
CN110535632B (zh) 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和***
CN113545004A (zh) 具有减少攻击面的认证***
CN110086627B (zh) 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和***
CN110138547B (zh) 基于非对称密钥池对和序列号的量子通信服务站密钥协商方法和***
CN110176997B (zh) 一种量子通信服务站aka密钥协商方法和***

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