CN111245609A - 基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法 - Google Patents
基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法 Download PDFInfo
- Publication number
- CN111245609A CN111245609A CN202010056806.8A CN202010056806A CN111245609A CN 111245609 A CN111245609 A CN 111245609A CN 202010056806 A CN202010056806 A CN 202010056806A CN 111245609 A CN111245609 A CN 111245609A
- Authority
- CN
- China
- Prior art keywords
- key
- qkd
- message
- passive
- 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.)
- Granted
Links
Images
Classifications
-
- 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
-
- 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/0819—Key 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/0825—Key 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
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法,系统包括用户端、QKD从属设备和QKD设备,单台QKD设备配置若干QKD从属设备,单台QKD从属设备配置若干用户端并为用户端颁发密钥卡及进行生成票据等业务。本发明通过设置QKD从属设备,提高了单台QKD设备的最大连接数,使得整个通信系统各个设备的分工更加明确;对密钥进行秘密共享,使得每个密钥的秘密分量被分散在两个位置,同时加入了随机数密钥,即使在量子计算机存在的情况下,也难以被推导出私钥,被恶意软件或恶意操作窃取密钥的可能性大大降低,提高了QKD密钥的安全性。
Description
技术领域
本发明涉及秘密共享技术领域,尤其涉及基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法。
背景技术
量子通信技术是基于量子物理学建立起来的新兴安全通信技术。我国的量子通信技术已经进入了实用化的阶段,其应用前景和战略意义也引起了地方政府和重要行业对其产业发展的广泛关注。除建立量子通信干线以外,一些规模化城域量子通信网络也已经建设成功并运行。基于城域量子通信网络,量子通信技术也有了初步的应用,可实现高保密性的视频语音通信等应用。量子通信干线和量子通信城域网等量子通信网络,组成量子通信网络,其本质是量子密钥分发(QKD)。因此以QKD技术为基础建立起来的量子通信网络可称为QKD网络。
授权公告号为CN105357001B的专利文献中公开了一种量子密钥动态分发的管理方法及系统,量子密钥由QKD设备分发完成,在两端生成对称的密钥,密钥通过密钥池进行缓存;根据密钥用户对数和用户业务需求设定大小,分成多个密钥池,根据密钥池中密钥剩余量实时补充密钥,根据每个密钥池的状态调整调整密钥池中已有密钥的分配,根据密钥池中密钥的消耗速度和密钥使用频数,动态调整各个密钥池容量大小,对密钥的管理效率高,实用性好。但本方法中,存储密钥池的QKD设备或密钥卡一旦遭到恶意攻击,其中的对称密钥池将可能被盗取,从而丧失密钥安全性。
在Kerberos式密钥协商方案中,需要服务器为各用户端颁发许可证票据Ticket,计算量较大。Kerberos引入了时间戳timestamp来对重放攻击进行遏止,票据有生命周期,在其生命周期的有效时间内仍然可以使用。如果收到消息的时间是在规定允许的范围之内,那么就认为该消息具有新鲜性。但是,在得到许可证后的攻击者可以发送伪造的消息,这样的话,在允许的时间内是很难发现的。
公布号为CN110098925A的专利文献中公开了一种基于非对称密钥池对和随机数的量子通信服务站密钥协商方法和系统,对基于对称密钥算法的认证流程进行改进,使得认证流程中的数据被真随机数密钥加密,而真随机数密钥被非对称密钥加密保护,提升了基于对称密钥算法的认证流程的安全性,能够抗量子计算。但本方法中,单台QKD设备下连接了若干用户端,且同时承担了票据制作的业务,如果短时间内用户数量巨大或者实际业务需求量巨大,QKD设备往往无法满足需求。
由此可见,现有技术存在以下问题:
1.现有QKD(量子密钥分发)设备之间使用对称密钥池的方法,对QKD生成的密钥进行暂存,以备用户对QKD密钥的申请使用。QKD密钥一般明文存在于QKD设备的内存中,或者加密存在于QKD设备的永久存储设备中,或者明文存在于QKD设备的密钥卡中。但是,一旦QKD设备遭到恶意软件攻击,或一旦其所在的密钥卡遭到暴力破解,该QKD设备中所对应的对称密钥池将可能被盗取,从而悉数丧失密钥安全性;
2.用户对QKD密钥申请使用时,如果短时间内用户数量巨大,由于单台QKD设备的最大连接数有限,因此可能因为超过最大连接数而造成单台QKD设备无法提供密钥服务;
3.用户对QKD密钥申请使用时,往往结合实际业务需求,例如Kerberos式密钥协商需要密钥服务器即QKD进行TICKET制作等计算,由于QKD设备主要功能是密钥分发,并非为了各类实际业务需求而设计,往往无法满足用户的各类需求。
发明内容
发明目的:针对现有技术中存在的问题,本发明公开了一种基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法,在提高密钥安全性的同时,也提高了QKD设备提供密钥服务的能力,使得整个通信系统各个设备的分工更加明确,最终可以提升系统的稳定性。
技术方案:本发明采用如下技术方案:一种基于秘密共享和随机数的量子保密通信密钥分发和协商系统,其特征在于,包括若干用户端、QKD从属设备和QKD设备,单台QKD设备配置若干QKD从属设备,单台QKD从属设备配置若干用户端,当两个用户端之间进行密钥协商时,发出请求的一方作为主动方,另一方作为被动方;
所述QKD设备设有本地密钥池、QKD设备间的QKD对称密钥池;
所述QKD从属设备设有本地密钥池、QKD设备和QKD从属设备间的主从设备对称密钥池;
所述用户端的密钥卡由其所属的QKD从属设备颁发,用户端密钥卡内存有用户端私钥,QKD从属设备的本地密钥池中存储与其属下的用户端进行通信的若干QKD从属设备私钥,QKD从属设备私钥与对应的用户端公钥相同;
所述用户端的ID中带有其所属的QKD从属设备的信息,QKD从属设备的ID中带有其所属的QKD设备的信息。
优选的,所述QKD设备之间搭建有QKD通道,通过QKD通道形成对称密钥池,QKD设备配置有QKD设备密钥卡,密钥卡内存有对称密钥池;
所述QKD设备与QKD从属设备之间搭建有QKD通道,QKD从属设备配置密钥卡,密钥卡内存有通过QKD通道形成的对称密钥池或QKD设备预颁发的对称密钥池。
基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥分发方法,其特征在于,由每个QKD设备向其属下的QKD从属设备分发密钥,包括如下分发步骤:
QKD设备生成QKD密钥,记为K,K在密钥池中的存储位置记为KP;
QKD设备通过计算选择对应的QKD从属设备作为本次密钥分发对象;
将K分成高低两个值,随机取主从设备对称密钥池中的密钥,记为密钥x,其在密钥池中的位置记为xP,将其分为随机数一和随机数二,对K进行(2,2)的秘密共享,获得K的密钥分量一和密钥分量二,由随机数一和密钥分量一组成K的秘密分量一,由随机数二和密钥分量二组成K的秘密分量二;不同QKD设备对同一个K值进行(2,2)的秘密共享得到不同的秘密分量一和秘密分量二;
将K的密钥分量一存储于QKD设备中,将密钥池内的位置KP处的值修改为K的密钥分量一;将包括密钥x的位置xP和密钥分量二的密文发送给对应的QKD从属设备,密文中的加密部分采用密钥x进行加密;
QKD从属设备收到密文后,取出位置xP处的密钥x,对密文进行解密,根据密文内容得到密钥条目并存储,密钥条目包括本次密钥分发的生成K的QKD设备信息、位置KP、K的哈希值、随机数一、秘密分量二。
优选的,当主动方和被动方属于不同的QKD设备时,K为用于QKD设备间通信的对称密钥,K存储在QKD对称密钥池中;
当主动方和被动方属于同一个QKD设备但不属于同一个QKD从属设备时,或者当主动方和被动方属于同一个QKD设备且属于同一个QKD从属设备时,K为QKD设备密钥,存储在QKD设备本地密钥池中。
基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥协商方法,实施在QKD设备,包括以下步骤:
QKD设备接收QKD从属设备发送的请求密钥分量的消息,消息中含有采用主从设备对称密钥池中密钥加密后的位置KP以及使用的主从设备对称密钥池中密钥的位置,根据收到的主从设备对称密钥池中密钥的位置取出密钥对消息进行解密得到KP;
QKD设备从本地密钥池或QKD对称密钥池中提取出储存于位置KP处的K的密钥分量一,并采用主从设备对称密钥池中密钥对密钥分量一加密后发送回对应的QKD从属设备。
优选的,实施在QKD从属设备,当主动方和被动方不属于同一个QKD从属设备时,包括以下步骤:
被动方QKD从属设备接收被动方发送的消息:消息中包括采用随机数加密的申请Request,所述Request中包括被动方与主动方协商通信密钥的请求,所述随机数采用被动方私钥加密;
被动方QKD从属设备向所属QKD设备发送消息:消息包括位置KP和向QKD设备申请KP的密钥分量一的请求,消息中的密钥位置KP采用主从设备对称密钥池中密钥加密后发送;
被动方QKD从属设备接收所属QKD设备发送的消息:消息中包括QKD设备发送的采用主从设备对称密钥池中密钥加密过的K的密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;
被动方QKD从属设备向主动方QKD从属设备发送消息:消息包括采用K加密的被动方QKD从属设备生成的协商密钥KAB和消息认证码;
主动方QKD从属设备向其所属QKD设备发送消息:消息中包括申请位置为KP的密钥分量一的请求,消息中的密钥位置KP采用主从设备对称密钥池中密钥加密后发送;
主动方QKD从属设备接收所属QKD设备发送的消息:消息中包括QKD设备发送的采用主从设备对称密钥池中密钥加密过的K的密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;
主动方QKD从属设备向被动方QKD从属设备发送消息:消息中包括采用密钥K加密的主动方QKD从属设备制作的票据TICKETA,TICKETA中包括采用随机数加密的协商密钥KAB,所述随机数采用对应的主动方公钥加密;
被动方QKD从属设备向被动方发送消息:消息中包括TICKETA和被动方QKD从属设备制作的票据TICKETB,TICKETB中包括采用随机数加密的协商密钥KAB,所述随机数采用对应的被动方公钥加密。
优选的,实施在QKD从属设备,当主动方和被动方属于同一个QKD从属设备时,包括以下步骤:
QKD从属设备接收被动方发送的消息:消息中包括采用随机数加密的申请Request,所述Request中包括被动方与主动方协商通信密钥的请求,所述随机数采用被动方私钥加密;
QKD从属设备生成协商密钥KAB;
QKD从属设备向被动方发送消息:消息中包括QKD从属设备制作的票据TICKETA和TICKETB,TICKETA和TICKETB中分别包括采用不同随机数加密的协商密钥KAB,所述随机数分别采用与主动方、被动方对应的用户端公钥加密。
优选的,所述主动方和被动方属于不同的QKD从属设备,且两个QKD从属设备属于不同的QKD设备;或者所述主动方和被动方是属于不同的QKD从属设备的用户端,但两个QKD从属设备属于相同的QKD设备,包括协商步骤S1~S12如下:
S1、主动方向被动方发送消息M1:消息M1包括主动方ID、采用主动方私钥对随机数NA的加密消息,随机数NA由主动方生成;
S2、被动方向其所属QKD从属设备发送消息M2:消息M2包括消息M1、被动方ID、采用随机数KR加密的申请Request和随机数NB、采用被动方私钥加密的KR;其中,申请Request为被动方生成的用于表示与主动方协商通信密钥的消息,Request包括主动方ID和被动方ID;随机数NB和随机数KR由被动方生成;
S3、被动方QKD从属设备向其所属QKD设备发送消息M3:被动方QKD设备根据消息M2中被动方ID,找到对应的被动方公钥对消息M2进行解密,根据密文内容获得主动方所属的QKD设备及其QKD从属设备的信息,从本地存储器中提取对应的密钥条目,密钥条目中包括密钥K秘密共享生成的随机数一和秘密分量二;被动方QKD从属设备向其所属QKD设备发送消息M3,用于申请位置为KP的密钥分量一,消息中包括加密后的KP和加密密钥在主从设备对称密钥池中的位置;
S4、被动方QKD设备向QKD从属设备发送消息M4:QKD设备收到消息M3后,解密得到KP值,提取出密钥池中的K的密钥分量一,并采用主从设备对称密钥池中密钥对其加密作为消息M4发送回对应的QKD从属设备;
S5、被动方QKD从属设备向主动方QKD从属设备发送消息M5:被动方QKD设备接收到消息M4后,解密得到密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;被动方QKD从属设备生成协商密钥KAB,将信息M1、被动方ID和KAB的组合作为消息M5_0,采用K对消息M5_0进行加密,并采用K对消息M5_0计算获得消息认证码,将主动方和被动方所属的QKD设备信息、位置KP、加密后的消息M5_0和消息认证码的组合作为消息M5发送至主动方QKD从属设备;
S6、主动方QKD从属设备向其所属QKD设备发送消息M6:主动方QKD从属设备收到消息M5后,得到KP值,从本地存储器中提取对应的密钥条目,密钥条目中包括密钥K秘密共享生成的随机数一和秘密分量二;主动方QKD从属设备向其所属QKD设备发送消息M6,用于申请位置为KP的密钥分量一,消息中包括加密后的KP和加密密钥在主从设备对称密钥池中的位置;
S7:主动方QKD设备向QKD从属设备发送M7:QKD设备收到消息M6后,解密得到KP值,提取出密钥池中的K的密钥分量一,并采用主从设备对称密钥池中密钥对其加密作为消息M7发送回对应的QKD从属设备;
S8、主动方QKD从属设备向被动方QKD从属设备发送M8:主动方QKD从属设备收到消息M7后,解密得到密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;采用K解密消息M5_0,得到消息M1、被动方ID和协商密钥KAB;根据主动方ID找到对应的主动方公钥,解密M1,得到随机数NA;生成随机数KTA,使用KTA制作票据TICKETA,使用密钥K加密后得到消息M8,TICKETA中包括采用随机数KTA对主动方ID、随机数NA、被动方ID、协商密钥的组合进行的加密文、及采用对应的主动方公钥加密的随机数KTA;
S9、被动方QKD从属设备向被动方发送消息M9:被动方QKD从属设备收到消息M8后,生成随机数KTB,使用KTB制作票据TICKETB,TICKETB中包括采用随机数KTB对被动方ID、随机数NR、主动方ID、协商密钥的组合进行的加密文、及采用对应的被动方公钥加密的随机数KTB;将TICKETA和TICKETB一起作为消息M9发送至被动方;
S10、被动方向主动方发送消息M10:被动方使用自身私钥解密消息M9,得到被动方ID、随机数NB、主动方ID、KAB的信息及TICKETA;被动方验证解密得到的随机数NB是否与本地存储的随机数NR相等,若不相等则结束流程,若相等则通过验证;通过验证后,被动方信任协商密钥KAB并生成随机数NC,使用KAB对NC加密,并使用KAB对NA计算获得消息认证码,连同TICKETA一起作为消息M10发送至主动方;
S11、主动方向被动方发送消息M11:主动方收到消息M10后使用自身私钥对TICKETA解密,得到KTA,再采用KTA解密主动方ID、随机数NA、被动方ID、KAB的组合;主动方对比使用KAB对NA计算获得的消息认证码和接收到的消息M10中的消息认证码,如一致,则主动方对被动方的认证通过,同时确认协商密钥为KAB;主动方将使用KAB对NC计算获得的消息认证码作为消息M11发送给被动方;
S12、被动方对主动方进行身份认证:被动方收到消息M11后,对比使用KAB对NC计算获得的消息认证码和接收到的消息M11中的消息认证码,如一致,则被动方对主动方的认证通过,同时确认协商密钥为KAB,KAB用作所述主动方和被动方之间的通信密钥。
优选的,当主动方和被动方属于同一个QKD设备且属于同一个QKD从属设备时,包括协商步骤S1′~S6′如下:
S1′、主动方向被动方发送消息M1:消息M1包括主动方ID、采用主动方私钥对随机数NA的加密消息,随机数NA由主动方生成;
S2′、被动方向QKD从属设备发送消息M2:消息M2包括消息M1、被动方ID、采用随机数KR加密的申请Request和随机数NB、采用被动方私钥加密的KR;其中,申请Request为被动方生成的用于表示与主动方协商通信密钥的消息,Request包括主动方ID和被动方ID;随机数NB和随机数KR由被动方生成;
S3′、QKD从属设备向被动方发送消息M9:QKD从属设备根据消息M2中被动方ID找到对应的被动方公钥,对消息M2进行解密,得到Request和NB;QKD从属设备根据主动方ID找到对应的解密公钥,解密M1,得到随机数NA;
QKD从属设备生成协商密钥KAB。;
生成随机数KTA,使用KTA制作票据TICKETA,TICKETA中包括采用随机数KTA对主动方ID、随机数NA、被动方ID、协商密钥的组合进行的加密文、及采用对应的主动方公钥加密的随机数KTA;
生成随机数KTB,使用KTB制作票据TICKETB,TICKETB中包括采用随机数KTB对被动方ID、随机数NB、主动方ID、协商密钥的组合进行的加密文、及采用对应的被动方公钥加密的随机数KTB;
S4′、被动方向主动方发送消息M10:被动方使用自身私钥解密消息M9,得到被动方ID、随机数NB、主动方ID、KAB的信息及TICKETA;被动方验证解密得到的随机数NB是否与本地存储的随机数NB相等,若不相等则结束流程,若相等则通过验证;通过验证后,被动方信任协商密钥KAB并生成随机数NC,使用KAB对NC加密,并使用KAB对NA计算获得消息认证码,同TICKETA一起作为消息M10发送至主动方;
S5′、主动方向被动方发送消息M11:主动方收到消息M10后,使用自身私钥对TICKETA解密,得到KTA,再采用KTA解密得到主动方ID、随机数NA、被动方ID、KAB的组合;主动方对比使用KAB对NA计算获得的消息认证码和接收到的消息M10中的消息认证码,如一致,则主动方对被动方的认证通过,同时确认协商密钥为KAB;主动方将使用KAB对NC计算获得的消息认证码作为消息M11发送给被动方;
S6′、被动方对主动方进行身份认证:被动方收到消息M11后,对比使用KAB对NC计算获得的消息认证码和接收到的消息M11中的消息认证码,如一致,则被动方对主动方的认证通过,同时确认协商密钥为KAB,KAB用作所述主动方和被动方之间的通信密钥。
有益效果:本发明具有如下有益效果:
1、本发明使用密钥卡存储公钥和私钥,密钥卡是独立的硬件隔离设备,被恶意软件或恶意操作窃取密钥的可能性大大降低,由于量子计算机无法得到用户公钥,于是也无法得到对应的私钥,另外,本发明中,基于公私钥的抗量子计算加密也保证了所传输消息的安全性,即使在量子计算机存在的情况下,也难以被推导出私钥,因此该方案不容易被量子计算机破解;
2、本发明通过对QKD对称密钥池进行秘密共享,使得每个QKD密钥的秘密分量被分散在两个位置,秘密分量同时被盗取的可能性大大降低,从而提高了QKD密钥的安全性;
3、本发明中,用户对QKD密钥申请使用时,由于单台QKD设备配备了多台从属设备,从而提高了单台QKD设备的最大连接数,从而提高了QKD设备提供密钥服务的能力;
4、本发明中,用户对QKD密钥申请使用时,用户的实际业务需求,例如Kerberos式密钥协商需要的TICKET制作等计算,全部由QKD设备的从属设备所承担,QKD设备可以专注于密钥分发,从而使得整个通信系统各个设备的分工更加明确,最终可以提升系统的稳定性。
附图说明
图1为本发明实施例提供的系统结构图;
图2为本发明中实施例1的流程图;
图3为本发明中实施例2的流程图;
图4为本发明中实施例3的流程图。
具体实施方式
系统说明
本发明系统结构图如图1所示,成员包括QKD设备QA和QB,QAn(n∈[0,N-1])和QBm(m∈[0,M-1])分别为QA和QB的从属设备。
QA与QB均设有密钥卡,QA与QB之间搭建有QKD通道,可通过QKD形成对称密钥池,对称密钥池存储在密钥卡内。
QAn带有量子密钥卡,QA与QAn之间搭建有QKD通道,可通过QKD形成对称密钥池,密钥卡内存有QA预颁发的对称密钥池或通过QKD通道形成的对称密钥池。
QB与QBm之间的通信类似QA与QAn之间的通信。
用户端A、用户端B可为移动终端,或为固定终端,当为移动终端时,量子密钥卡优选为量子SD卡;当为固定终端时,量子密钥卡优选为USBkey或主机加密板卡,其中用户端A作为主动方,用户端B作为被动方。
本发明所用非对称算法为RSA算法。设RSA算法的非对称密钥对为E/D,其中两者都可以作为公钥,剩下一方为私钥,即可以令公钥/私钥为E/D,也可以令公钥/私钥为D/E。
用户前往所在区域的QKD从属设备进行注册登记,获批后得到量子密钥卡(具有唯一的量子密钥卡ID)。量子密钥卡存储了用户注册登记信息,还内置有身份认证协议,至少包括密钥生成算法以及认证函数,或其他与身份认证相关的算法。
QKD从属设备为用户端颁发量子密钥卡时,基于RSA算法为该用户颁发一对公私钥,以QAn为A颁发量子密钥卡为例,将PKA、SKA作为用户端A的公私钥,其中,PKA=SKQAn,SKA=PKQAn。将PKA(即SKQAn)存入QKD从属设备QAn本地公钥池中,以A的ID为索引。实际应用过程中,用户端A向QAn发送消息时,使用PKQAn对消息进行加密,QAn根据IDA提取PKA并对消息进行解密。
网络侧的各个QKD设备也相应的存有认证协议,若协议中各算法存在两种以上,量子密钥卡在与QKD设备通信时会将算法标号发送给QKD设备,供其选取。
量子密钥卡从智能卡技术上发展而来,是结合了量子物理学技术、密码学技术、智能卡技术的身份认证产品。量子密钥卡的内嵌芯片和芯片操作系统可以提供秘密信息的安全存储和密码算法等功能。由于其具有独立的数据处理能力和良好的安全性,量子密钥卡成为秘密信息的安全载体。每一个量子密钥卡都有硬件PIN码保护,PIN码和硬件构成了用户使用量子密钥卡的两个必要因素,即所谓“双因子认证”,用户只有同时取得保存了相关认证信息的量子密钥卡和用户PIN码,才可以登录系统。即使用户的PIN码被泄露,只要用户持有的量子密钥卡不被盗取,合法用户的身份就不会被仿冒;如果用户的量子密钥卡遗失,拾到者由于不知道用户PIN码,也无法仿冒合法用户的身份。
实施例1,属于不同的QKD设备的用户端进行密钥协商:
实施例中,用户端A、用户端B不属于同一个QKD设备。其中,用户端A归属于QKD从属设备QAn,以下简称QAn;同理用户端B归属于QKD从属设备QBm,以下简称QBm。
用户端A的密钥卡由QAn颁发,A的密钥卡存有SKA,也作为PKQAn;QAn的密钥卡存有SKQAn,也作为PKA。用户端B的密钥卡由QBm颁发,B的密钥卡存有SKB,也作为PKQBm;QBm的密钥卡存有SKQBm,也作为PKB。
IDA中带有QAn的信息,IDB中带有QBm的信息。
QAn的信息中带有QA的信息,QBm的信息中带有QB的信息。
阶段1:密钥分发
步骤1:
QA与QB生成QKD密钥K,K对应本地QKD对称密钥池的位置为KP。
步骤2:
QA计算n=H(K)%N,选择QAn作为密钥分发对象。其中,H(*)是一种哈希运算,“%”为取模运算。
步骤3:
QA对K进行(2,2)的秘密共享。在对信息m进行(t,n)的秘密共享时,n为m拆分共享秘密的碎片数,t为恢复m的最小碎片数,2≤t≤n。
设K=KHA||KLA,即分为高低2个部分。
随机取QA与QAn之间的对称密钥池的位置xPA,取出其中的密钥xA=x1A||x2A。其中,x1A与x2A不能相等,如相等则进行更换xPA。
构造函数fK(x)=KLA+KHA*x。
计算得到K1A=fK(x1A)=KLA+KHA*x1A,K2A=fK(x2A)=KLA+KHA*x2A。
计算得到两个秘密即秘密分量为(x1A,K1A),(x2A,K2A),凑齐2组秘密即可恢复ID,具体步骤如下:
同理,QB对K进行(2,2)的秘密共享,得到两个秘密分量为(x1B,K1B),(x2B,K2B),凑齐2组秘密即可恢复K。
步骤4:
QA、QB将秘密加密后分别发送给多个QAn和QBm。加密方式如下(以QA向QAn发送为例):
令MxP=QA||QB||KP||H(K)||K2A。QA||QB表示此密钥分量来自于QA与QB生成的QKD密钥。
使用x对MxP加密并计算消息认证码得到xPA||{MxP}x||MAC(xPA||MxP,x)。其中,MAC(m,k)是指使用密钥k对消息m计算消息认证码。同时QA将本地QKD对称密钥池中KP位置的值改为密钥分量K1A。同理,QB将本地QKD对称密钥池中KP位置的值改为密钥分量K1B。
步骤5:
每个QAn收到来自QA的密文。
根据xPA取出x,用x解密得到MxP,将密钥条目QA||QB||KP||H(K)||x1A||(x2A,K2A)存放在安全存储器中。
此阶段步骤将重复多次,因此安全存储器中将存有多组不同KP的密钥条目。
每个QBm同理,存储的密钥条目为QA||QB||KP||H(K)||x1B||(x2B,K2B)。
阶段2:密钥协商。
步骤1:A→B。
用户端A生成随机数NA,使用A对应的QKD从属设备QAn的公钥PKQAn加密NA,连同IDA一起作为M1发送至B,发送的消息可表示为M1=IDA||{NA}PKQAn。
步骤2:B→QBm。
用户端B向QBm发出与A协商通信密钥的申请Request。Request内包含IDA||IDB及其他必要信息。
用户端B生成随机数KR和NB,使用KR加密Request和NB,在使用对应的QKD从属设备QBm的公钥PKQBm加密KR。连同M1和IDB一起作为M2发送至QBm,发送的消息可表示为M2=M1||IDB||{Request||NB}KR||{KR}PKQBm。
步骤3:QBm→QB。
QBm根据IDB找到PKB,解密得到KR,进一步解密得到Request和NB。由Request得到IDA。根据IDA得到QAn、QA。根据QA、QB,从开头为QA||QB的密钥条目中随机选择一个满足H(K)%N=n的密钥条目,即QA||QB||KP||H(K)||x1B||(x2B,K2B)。
QBm通过对称密钥池密钥的保护,向QB申请位置为KP的密钥分量。通过对称密钥池密钥的保护过程如下:
即QBm提取对称密钥池中密钥,对KP进行加密后将加密的KP和密钥在对称密钥池中的位置发送给QB。
步骤4:QB→QBm。
QB根据收到的位置提取对称密钥池中密钥,解密得到KP后,在QA与QB之间的对称密钥池中的相应位置提取K1B。
QB通过对称密钥池密钥的保护,将K1B加密发送给QBm。保护过程与上文相同。
QB将KP位置的K1B标记为已使用,过一段时间将更新为新的密钥分量。
步骤5:QBm→QAn。
QBm通过对称密钥池密钥解密得到K1B,根据(x1B,K1B),(x2B,K2B)求得K。
QBm生成协商密钥KAB,令M5_0=M1||IDB||KAB,使用K对M5_0加密并计算消息认证码后,与QA、QB、KP一起发送至QAn。发送的消息可表示为QA||QB||KP||{M5_0}K||MAC(M5_0,K)。
步骤6:QAn→QA。
QAn收到后,根据QA、QB,从开头为QA||QB的密钥条目中找到KP的密钥条目。通过对称密钥池密钥的保护,向QA申请位置为KP的密钥分量。
步骤7:QA→QAn。
QA通过对称密钥池密钥解密得到KP后,将KP位置的密钥分量即K1A通过对称密钥池加密发送给QAn。
QA将KP位置的密钥分量K1A标记为已使用,过一段时间将更换为新的密钥分量。
步骤8:QAn→QBm。
QAn通过对称密钥池密钥解密得到密钥分量K1A后,根据(x1A,K1A),(x2A,K2A)求得K。
QAn使用K解密M5_0得到M1||IDB||KAB。
QAn根据IDA找到PKA,解密M1,得到NA。生成随机数KTA,使用KTA制作TICKETA,可表示为{IDA||NA||IDB||KAB}KTA||{KTA}PKA。
QAn通过K的保护,发送TICKETA到QBm。
由于PKA没有出QAn的密钥卡,所以可抗量子计算。
步骤9:QBm→B。
QBm收到TICKETA后,生成随机数KTB,使用KTB制作TICKETB,可表示为{IDB||NB||IDA||KAB}KTB||{KTB}PKB,将TICKETA和TICKETB一起作为M9发送至用户端B。
步骤10:B→A。
用户端B收到M9后,使用SKB对TICKETB进行解密得到KTB,进一步解密得到IDB||NB||IDA||KAB。
B鉴别NB是否与本地NB相等。
鉴别通过后,B生成随机数NC,使用KAB对NC加密得到{NC}KAB,使用KAB对NA计算消息认证码MAC(NA,KAB),连同TICKETA一起作为M10发送到用户端A。M10可表示为TICKETA||{NC}KAB||MAC(NA,KAB)。
步骤11:A→B。
用户端A收到M10后,使用SKA对TICKETA进行解密得到KTA,进一步解密得到IDA||NA||IDB||KAB。
A使用KAB对NA计算消息认证码MAC’(NA,KAB),与收到的MAC(NA,KAB)对比,确认NA||KAB的一致性。
至此,A对B认证通过,并确认协商密钥为KAB。
A将MAC(Nc,KAB)作为M11发送到用户端B。
步骤12:B→A。
用户端B收到M11后,使用KAB对NC计算消息认证码MAC’(NC,KAB),与收到的MAC(NC,KAB)对比,确认NC||KAB的一致性。
至此,B对A认证通过,并确认协商密钥为KAB。
后续用户端A和用户端B进行安全通信,利用KAB进行消息加解密和消息认证。可将KAB拆分为KABE和KABA,分别作为消息加解密和消息认证密钥。
实施例2,属于不同的QKD从属设备的用户端进行密钥协商。
本实施例中,用户端A、用户端B属于同一个QKD设备但不属于同一个QKD从属设备。其中,用户端A归属于QKD从属设备QAn,以下简称QAn;用户端B归属于QKD从属设备QAc,以下简称QAc。
用户端A的密钥卡由QAn颁发,A的密钥卡存有SKA,也作为PKQAn;QAn的密钥卡存有SKQAn,也作为PKA。用户端B的密钥卡由QAc颁发,B的密钥卡存有SKB,也作为PKQAc;QAc的密钥卡存有SKQAc,也作为PKB。
IDA中带有QAn的信息,IDB中带有QAc的信息。
QAn和QAc的信息中带有QA的信息。
阶段1:密钥分发
步骤1:
QA生成随机数密钥K,由大量随机数组成本地密钥池,K对应本地密钥池的位置为KP。
步骤2:
QA计算n=H(K)%N,c=H(H(K))%N,选择QAn、QAc作为密钥分发对象。其中,H(*)是一种哈希运算,“%”为取模运算。
步骤3:
QA对K进行(2,2)的秘密共享。
设K=KH||KL,即分为高低2个部分。
随机取QA与QAn之间的对称密钥池的位置xP,取出其中的密钥x=x1||x2。其中,x1与x2不能相等,如相等则进行更换xP。
构造函数fK(x)=KL+KH*x。
计算得到K1=fK(x1)=KL+KH*x1,K2=fK(x2)=KL+KH*x2。
计算得到两个秘密即秘密分量为(x1,K1),(x2,K2)。凑齐2组秘密即可恢复ID,具体步骤如下:
步骤4:
QA将秘密加密后分别发送给多个QAn、QAc。
令MxP=QA||QA||KP||H(K)||K2。QA||QA表示此密钥分量来自于QA生成的随机数密钥。
使用x对MxP加密并计算消息认证码得到xP||{MxP}x||MAC(xP||MxP,x)。同时QA将本地密钥池中KP位置的值改为密钥分量K1。
步骤5:
每个QAn、QAc收到来自QA的密文。
根据xP取出x,用x解密得到MxP,将密钥条目QA||QA||KP||H(K)||x1||(x2,K2)存放在安全存储器中。
此阶段步骤将重复多次,因此安全存储器中将存有多组不同KP的密钥条目。
阶段2:密钥协商。
步骤1:A→B。
用户端A生成随机数NA,使用A对应的QKD从属设备QAn的公钥PKQAn加密NA,连同IDA一起作为M1发送至B,发送的消息可表示为M1=IDA||{NA}PKQAn。
步骤2:B→QAc。
用户端B向QAc发出与A协商通信密钥的申请Request。Request内包含IDA||IDB及其他必要信息。
用户端B生成随机数KR和NB,使用KR加密Request和NB,在使用对应的QKD从属设备QAc的公钥PKQAc加密KR。连同M1和IDB一起作为M2发送至QAc,发送的消息可表示为M2=M1||IDB||{Request||NB}KR||{KR}PKQAc。
步骤3:QAc→QA。
QAc根据IDB找到PKB,解密得到KR,进一步解密得到Request和NB。由Request得到IDA。根据IDA得到QAn、QA。根据QA,从开头为QA||QA的密钥条目中随机选择一个满足H(H(K))%N=n的密钥条目,即QA||QA||KP||H(K)||x1||(x2,K2)。
QAc通过对称密钥池密钥的保护,向QA申请位置为KP的密钥分量。
步骤4:QA→QAc。
QA根据收到的位置提取对称密钥池中密钥,解密得到KP后,在QA的本地密钥池中的相应位置提取K1。
QA通过对称密钥池密钥的保护,将K1加密发送给QAc。保护过程与上文相同。
步骤5:QAc→QAn。
QAc通过对称密钥池密钥解密得到K1,根据(x1,K1),(x2,K2)求得K。
QAc生成协商密钥KAB,令M5_0=M1||IDB||KAB,使用K对M5_0加密并计算消息认证码后,与QA、KP一起发送至QAn。发送的消息可表示为QA||KP||{M5_0}K||MAC(M5_0,K)。
步骤6:QAn→QA。
QAn收到后,根据QA,从开头为QA||QA的密钥条目中找到KP的密钥条目。通过对称密钥池密钥的保护,向QA申请位置为KP的密钥分量。
步骤7:QA→QAn。
QA通过对称密钥池密钥解密得到KP后,将KP位置的密钥分量即K1通过对称密钥池加密发送给QAn。
QA将KP位置的密钥分量K1标记为已使用,过一段时间将更换为新的密钥分量。
步骤8:QAn→QAc。
QAn通过对称密钥池密钥解密得到密钥分量K1后,根据(x1,K1),(x2,K2)求得K。
QAn使用K解密M5_0得到M1||IDB||KAB。
QAn根据IDA找到PKA,解密M1,得到NA。生成随机数KTA,使用KTA制作TICKETA,可表示为{IDA||NA||IDB||KAB}KTA||{KTA}PKA。
QAn通过K的保护,发送TICKETA到QAc。
由于PKA没有出QAn的密钥卡,所以可抗量子计算。
步骤9:QAc→B。
QAc收到TICKETA后,生成随机数KTB,使用KTB制作TICKETB,可表示为{IDB||NB||IDA||KAB}KTB||{KTB}PKB,将TICKETA和TICKETB一起作为M9发送至用户端B。
步骤10:B→A。
用户端B收到M9后,使用SKB对TICKETB进行解密得到KTB,进一步解密得到IDB||NB||IDA||KAB。
B鉴别NB是否与本地NB相等。
鉴别通过后,B生成随机数NC,使用KAB对NC加密得到{NC}KAB,使用KAB对NA计算消息认证码MAC(NA,KAB),连同TICKETA一起作为M10发送到用户端A。M10可表示为TICKETA||{NC}KAB||MAC(NA,KAB)。
步骤11:A→B。
用户端A收到M10后,使用SKA对TICKETA进行解密得到KTA,进一步解密得到IDA||NA||IDB||KAB。
A使用KAB对NA计算消息认证码MAC’(NA,KAB),与收到的MAC(NA,KAB)对比,确认NA||KAB的一致性。
至此,A对B认证通过,并确认协商密钥为KAB。
A将MAC(NC,KAB)作为M11发送到用户端B。
步骤12:B→A。
用户端B收到M11后,使用KAB对NC计算消息认证码MAC’(NC,KAB),与收到的MAC(NC,KAB)对比,确认NC||KAB的一致性。
至此,B对A认证通过,并确认协商密钥为KAB。
后续用户端A和用户端B进行安全通信,利用KAB进行消息加解密和消息认证。可将KAB拆分为KABE和KABA,分别作为消息加解密和消息认证密钥。
实施例3:属于相同的QKD从属设备的用户端进行密钥协商。
本实施例中,用户端A、用户端B属于同一个QKD设备且属于同一个QKD从属设备。即用户端A、用户端B归属于QKD从属设备QAn,以下简称QAn。
用户端A、用户端B的密钥卡均由QAn颁发,A的密钥卡存有SKA,也作为PKQAn 1;QAn的密钥卡存有SKQAn 1,也作为PKA。B的密钥卡存有SKB,也作为PKQAn 2;QAn的密钥卡存有SKQAn 2,也作为PKB。
IDA和IDB中都带有QAn的信息,QAn的信息中带有QA的信息。
阶段1:密钥分发
此阶段过程与实施例2相同。
阶段2:密钥协商。
步骤1:A→B。
用户端A生成随机数NA,使用A对应的QKD从属设备QAn的公钥PKQAn 1加密NA,连同IDA一起作为M1发送至B,发送的消息可表示为M1=IDA||{NA}PKQAn 1。
步骤2:B→QAn。
用户端B向QAn发出与A协商通信密钥的申请Request。Request内包含IDA||IDB及其他必要信息。
用户端B生成随机数KR和NB,使用KR加密Request和NB,在使用对应的QKD从属设备QAn的公钥PKQAn 2加密KR。连同M1和IDB一起作为M2发送至QAn,发送的消息可表示为M2=M1||IDB||{Request||NB}KR||{KR}PKQAn 2。
步骤3:QAn→B。
QAn根据IDB找到PKB,解密得到KR,进一步解密得到Request和NB。
QAn生成协商密钥KAB。
QAn根据IDA找到PKA,解密M1,得到NA。生成随机数KTA,使用KTA制作TICKETA,可表示为{IDA||NA||IDB||KAB}KTA||{KTA}PKA。生成随机数KTB,使用KTB制作TICKETB,可表示为{IDB||NB||IDA||KAB}KTB||{KTB}PKB,将TICKETA和TICKETB一起作为M9发送至用户端B。
步骤4:B→A。
用户端B收到M9后,使用SKB对TICKETB进行解密得到KTB,进一步解密得到IDB||NB||IDA||KAB。
B鉴别NB是否与本地NB相等。
鉴别通过后,B生成随机数NC,使用KAB对NC加密得到{NC}KAB,使用KAB对NA计算消息认证码MAC(NA,KAB),连同TICKETA一起作为M10发送到用户端A。M10可表示为TICKETA||{NC}KAB||MAC(NA,KAB)。
步骤5:A→B。
用户端A收到M10后,使用SKA对TICKETA进行解密得到KTA,进一步解密得到IDA||NA||IDB||KAB。
A使用KAB对NA计算消息认证码MAC’(NA,KAB),与收到的MAC(NA,KAB)对比,确认NA||KAB的一致性。
至此,A对B认证通过,并确认协商密钥为KAB。
A将MAC(NC,KAB)作为M11发送到用户端B。
步骤6:B→A。
用户端B收到M11后,使用KAB对NC计算消息认证码MAC’(NC,KAB),与收到的MAC(NC,KAB)对比,确认NC||KAB的一致性。
至此,B对A认证通过,并确认协商密钥为KAB。
后续用户端A和用户端B进行安全通信,利用KAB进行消息加解密和消息认证。可将KAB拆分为KABE和KABA,分别作为消息加解密和消息认证密钥。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种基于秘密共享和随机数的量子保密通信密钥分发和协商系统,其特征在于,包括若干用户端、QKD从属设备和QKD设备,单台QKD设备配置若干QKD从属设备,单台QKD从属设备配置若干用户端,当两个用户端之间进行密钥协商时,发出请求的一方作为主动方,另一方作为被动方;
所述QKD设备设有本地密钥池、QKD设备间的QKD对称密钥池;
所述QKD从属设备设有本地密钥池、QKD设备和QKD从属设备间的主从设备对称密钥池;
所述用户端的密钥卡由其所属的QKD从属设备颁发,用户端密钥卡内存有用户端私钥,QKD从属设备的本地密钥池中存储与其属下的用户端进行通信的若干QKD从属设备私钥,QKD从属设备私钥与对应的用户端公钥相同;
所述用户端的ID中带有其所属的QKD从属设备的信息,QKD从属设备的ID中带有其所属的QKD设备的信息。
2.根据权利要求1所述的基于秘密共享和随机数的量子保密通信密钥分发和协商系统,其特征在于,所述QKD设备之间搭建有QKD通道,通过QKD通道形成对称密钥池,QKD设备配置有QKD设备密钥卡,密钥卡内存有对称密钥池;
所述QKD设备与QKD从属设备之间搭建有QKD通道,QKD从属设备配置密钥卡,密钥卡内存有通过QKD通道形成的对称密钥池或QKD设备预颁发的对称密钥池。
3.根据权利要求1所述的基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥分发方法,其特征在于,由每个QKD设备向其属下的QKD从属设备分发密钥,包括如下分发步骤:
QKD设备生成QKD密钥,记为K,K在密钥池中的存储位置记为KP;
QKD设备通过计算选择对应的QKD从属设备作为本次密钥分发对象;
将K分成高低两个值,随机取主从设备对称密钥池中的密钥,记为密钥x,其在密钥池中的位置记为xP,将其分为随机数一和随机数二,对K进行(2,2)的秘密共享,获得K的密钥分量一和密钥分量二,由随机数一和密钥分量一组成K的秘密分量一,由随机数二和密钥分量二组成K的秘密分量二;不同QKD设备对同一个K值进行(2,2)的秘密共享得到不同的秘密分量一和秘密分量二;
将K的密钥分量一存储于QKD设备中,将密钥池内的位置KP处的值修改为K的密钥分量一;将包括密钥x的位置xP和密钥分量二的密文发送给对应的QKD从属设备,密文中的加密部分采用密钥x进行加密;
QKD从属设备收到密文后,取出位置xP处的密钥x,对密文进行解密,根据密文内容得到密钥条目并存储,密钥条目包括本次密钥分发的生成K的QKD设备信息、位置KP、K的哈希值、随机数一、秘密分量二。
4.根据权利要求3所述的基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥分发方法,其特征在于:
当主动方和被动方属于不同的QKD设备时,K为用于QKD设备间通信的对称密钥,K存储在QKD对称密钥池中;
当主动方和被动方属于同一个QKD设备但不属于同一个QKD从属设备时,或者当主动方和被动方属于同一个QKD设备且属于同一个QKD从属设备时,K为QKD设备密钥,存储在QKD设备本地密钥池中。
5.根据权利要求3所述的基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥协商方法,实施在QKD设备,其特征在于,包括以下步骤:
QKD设备接收QKD从属设备发送的请求密钥分量的消息,消息中含有采用主从设备对称密钥池中密钥加密后的位置KP以及使用的主从设备对称密钥池中密钥的位置,根据收到的主从设备对称密钥池中密钥的位置取出密钥对消息进行解密得到KP;
QKD设备从本地密钥池或QKD对称密钥池中提取出储存于位置KP处的K的密钥分量一,并采用主从设备对称密钥池中密钥对密钥分量一加密后发送回对应的QKD从属设备。
6.根据权利要求3所述的基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥协商方法,实施在QKD从属设备,其特征在于,当主动方和被动方不属于同一个QKD从属设备时,包括以下步骤:
被动方QKD从属设备接收被动方发送的消息:消息中包括采用随机数加密的申请Request,所述Request中包括被动方与主动方协商通信密钥的请求,所述随机数采用被动方私钥加密;
被动方QKD从属设备向所属QKD设备发送消息:消息包括位置KP和向QKD设备申请KP的密钥分量一的请求,消息中的密钥位置KP采用主从设备对称密钥池中密钥加密后发送;
被动方QKD从属设备接收所属QKD设备发送的消息:消息中包括QKD设备发送的采用主从设备对称密钥池中密钥加密过的K的密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;
被动方QKD从属设备向主动方QKD从属设备发送消息:消息包括采用K加密的被动方QKD从属设备生成的协商密钥KAB和消息认证码;
主动方QKD从属设备向其所属QKD设备发送消息:消息中包括申请位置为KP的密钥分量一的请求,消息中的密钥位置KP采用主从设备对称密钥池中密钥加密后发送;
主动方QKD从属设备接收所属QKD设备发送的消息:消息中包括QKD设备发送的采用主从设备对称密钥池中密钥加密过的K的密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;
主动方QKD从属设备向被动方QKD从属设备发送消息:消息中包括采用密钥K加密的主动方QKD从属设备制作的票据TICKETA,TICKETA中包括采用随机数加密的协商密钥KAB,所述随机数采用对应的主动方公钥加密;
被动方QKD从属设备向被动方发送消息:消息中包括TICKETA和被动方QKD从属设备制作的票据TICKETB,TICKETB中包括采用随机数加密的协商密钥KAB,所述随机数采用对应的被动方公钥加密。
7.根据权利要求3所述的基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥协商方法,实施在QKD从属设备,其特征在于,当主动方和被动方属于同一个QKD从属设备时,包括以下步骤:
QKD从属设备接收被动方发送的消息:消息中包括采用随机数加密的申请Request,所述Request中包括被动方与主动方协商通信密钥的请求,所述随机数采用被动方私钥加密;
QKD从属设备生成协商密钥KAB;
QKD从属设备向被动方发送消息:消息中包括QKD从属设备制作的票据TICKETA和TICKETB,TICKETA和TICKETB中分别包括采用不同随机数加密的协商密钥KAB,所述随机数分别采用与主动方、被动方对应的用户端公钥加密。
8.根据权利要求3所述的基于秘密共享和随机数的量子保密通信密钥分发和协商系统的密钥协商方法,其特征在于,所述主动方和被动方属于不同的QKD从属设备,且两个QKD从属设备属于不同的QKD设备;或者所述主动方和被动方是属于不同的QKD从属设备的用户端,但两个QKD从属设备属于相同的QKD设备,包括协商步骤S1~S12如下:
S1、主动方向被动方发送消息M1:消息M1包括主动方ID、采用主动方私钥对随机数NA的加密消息,随机数NA由主动方生成;
S2、被动方向其所属QKD从属设备发送消息M2:消息M2包括消息M1、被动方ID、采用随机数KR加密的申请Request和随机数NB、采用被动方私钥加密的KR;其中,申请Request为被动方生成的用于表示与主动方协商通信密钥的消息,Request包括主动方ID和被动方ID;随机数NB和随机数KR由被动方生成;
S3、被动方QKD从属设备向其所属QKD设备发送消息M3:被动方QKD设备根据消息M2中被动方ID,找到对应的被动方公钥对消息M2进行解密,根据密文内容获得主动方所属的QKD设备及其QKD从属设备的信息,从本地存储器中提取对应的密钥条目,密钥条目中包括密钥K秘密共享生成的随机数一和秘密分量二;被动方QKD从属设备向其所属QKD设备发送消息M3,用于申请位置为KP的密钥分量一,消息中包括加密后的KP和加密密钥在主从设备对称密钥池中的位置;
S4、被动方QKD设备向QKD从属设备发送消息M4:QKD设备收到消息M3后,解密得到KP值,提取出密钥池中的K的密钥分量一,并采用主从设备对称密钥池中密钥对其加密作为消息M4发送回对应的QKD从属设备;
S5、被动方QKD从属设备向主动方QKD从属设备发送消息M5:被动方QKD设备接收到消息M4后,解密得到密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;被动方QKD从属设备生成协商密钥KAB,将信息M1、被动方ID和KAB的组合作为消息M5_0,采用K对消息M5_0进行加密,并采用K对消息M5_0计算获得消息认证码,将主动方和被动方所属的QKD设备信息、位置KP、加密后的消息M5_0和消息认证码的组合作为消息M5发送至主动方QKD从属设备;
S6、主动方QKD从属设备向其所属QKD设备发送消息M6:主动方QKD从属设备收到消息M5后,得到KP值,从本地存储器中提取对应的密钥条目,密钥条目中包括密钥K秘密共享生成的随机数一和秘密分量二;主动方QKD从属设备向其所属QKD设备发送消息M6,用于申请位置为KP的密钥分量一,消息中包括加密后的KP和加密密钥在主从设备对称密钥池中的位置;
S7:主动方QKD设备向QKD从属设备发送M7:QKD设备收到消息M6后,解密得到KP值,提取出密钥池中的K的密钥分量一,并采用主从设备对称密钥池中密钥对其加密作为消息M7发送回对应的QKD从属设备;
S8、主动方QKD从属设备向被动方QKD从属设备发送M8:主动方QKD从属设备收到消息M7后,解密得到密钥分量一,结合本地存储的随机数一和秘密分量二恢复K;采用K解密消息M5_0,得到消息M1、被动方ID和协商密钥KAB;根据主动方ID找到对应的主动方公钥,解密M1,得到随机数NA;生成随机数KTA,使用KTA制作票据TICKETA,使用密钥K加密后得到消息M8,TICKETA中包括采用随机数KTA对主动方ID、随机数NA、被动方ID、协商密钥的组合进行的加密文、及采用对应的主动方公钥加密的随机数KTA;
S9、被动方QKD从属设备向被动方发送消息M9:被动方QKD从属设备收到消息M8后,生成随机数KTB,使用KTB制作票据TICKETB,TICKETB中包括采用随机数KTB对被动方ID、随机数NR、主动方ID、协商密钥的组合进行的加密文、及采用对应的被动方公钥加密的随机数KTB;将TICKETA和TICKETB一起作为消息M9发送至被动方;
S10、被动方向主动方发送消息M10:被动方使用自身私钥解密消息M9,得到被动方ID、随机数NB、主动方ID、KAB的信息及TICKETA;被动方验证解密得到的随机数NB是否与本地存储的随机数NR相等,若不相等则结束流程,若相等则通过验证;通过验证后,被动方信任协商密钥KAB并生成随机数NC,使用KAB对NC加密,并使用KAB对NA计算获得消息认证码,连同TICKETA一起作为消息M10发送至主动方;
S11、主动方向被动方发送消息M11:主动方收到消息M10后使用自身私钥对TICKETA解密,得到KTA,再采用KTA解密主动方ID、随机数NA、被动方ID、KAB的组合;主动方对比使用KAB对NA计算获得的消息认证码和接收到的消息M10中的消息认证码,如一致,则主动方对被动方的认证通过,同时确认协商密钥为KAB;主动方将使用KAB对NC计算获得的消息认证码作为消息M11发送给被动方;
S12、被动方对主动方进行身份认证:被动方收到消息M11后,对比使用KAB对NC计算获得的消息认证码和接收到的消息M11中的消息认证码,如一致,则被动方对主动方的认证通过,同时确认协商密钥为KAB,KAB用作所述主动方和被动方之间的通信密钥。
9.根据权利要求3所述的基于秘密共享和随机数的量子保密通信密钥分发和协商方法,其特征在于:当主动方和被动方属于同一个QKD设备且属于同一个QKD从属设备时,包括协商步骤S1′~S6′如下:
S1′、主动方向被动方发送消息M1:消息M1包括主动方ID、采用主动方私钥对随机数NA的加密消息,随机数NA由主动方生成;
S2′、被动方向QKD从属设备发送消息M2:消息M2包括消息M1、被动方ID、采用随机数KR加密的申请Request和随机数NB、采用被动方私钥加密的KR;其中,申请Request为被动方生成的用于表示与主动方协商通信密钥的消息,Request包括主动方ID和被动方ID;随机数NB和随机数KR由被动方生成;
S3′、QKD从属设备向被动方发送消息M9:QKD从属设备根据消息M2中被动方ID找到对应的被动方公钥,对消息M2进行解密,得到Request和NB;QKD从属设备根据主动方ID找到对应的解密公钥,解密M1,得到随机数NA;
QKD从属设备生成协商密钥KAB。;
生成随机数KTA,使用KTA制作票据TICKETA,TICKETA中包括采用随机数KTA对主动方ID、随机数NA、被动方ID、协商密钥的组合进行的加密文、及采用对应的主动方公钥加密的随机数KTA;
生成随机数KTB,使用KTB制作票据TICKETB,TICKETB中包括采用随机数KTB对被动方ID、随机数NB、主动方ID、协商密钥的组合进行的加密文、及采用对应的被动方公钥加密的随机数KTB;
S4′、被动方向主动方发送消息M10:被动方使用自身私钥解密消息M9,得到被动方ID、随机数NB、主动方ID、KAB的信息及TICKETA;被动方验证解密得到的随机数NB是否与本地存储的随机数NB相等,若不相等则结束流程,若相等则通过验证;通过验证后,被动方信任协商密钥KAB并生成随机数NC,使用KAB对NC加密,并使用KAB对NA计算获得消息认证码,同TICKETA一起作为消息M10发送至主动方;
S5′、主动方向被动方发送消息M11:主动方收到消息M10后,使用自身私钥对TICKETA解密,得到KTA,再采用KTA解密得到主动方ID、随机数NA、被动方ID、KAB的组合;主动方对比使用KAB对NA计算获得的消息认证码和接收到的消息M10中的消息认证码,如一致,则主动方对被动方的认证通过,同时确认协商密钥为KAB;主动方将使用KAB对NC计算获得的消息认证码作为消息M11发送给被动方;
S6′、被动方对主动方进行身份认证:被动方收到消息M11后,对比使用KAB对NC计算获得的消息认证码和接收到的消息M11中的消息认证码,如一致,则被动方对主动方的认证通过,同时确认协商密钥为KAB,KAB用作所述主动方和被动方之间的通信密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010056806.8A CN111245609B (zh) | 2020-01-17 | 2020-01-17 | 基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010056806.8A CN111245609B (zh) | 2020-01-17 | 2020-01-17 | 基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111245609A true CN111245609A (zh) | 2020-06-05 |
CN111245609B CN111245609B (zh) | 2023-02-28 |
Family
ID=70879567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010056806.8A Active CN111245609B (zh) | 2020-01-17 | 2020-01-17 | 基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111245609B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112187741A (zh) * | 2020-09-14 | 2021-01-05 | 杭州安恒信息技术股份有限公司 | 基于运维审计系统的登录认证方法、装置和电子装置 |
CN114070640A (zh) * | 2021-11-25 | 2022-02-18 | 航天新通科技有限公司 | 一种安全通信方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110086627A (zh) * | 2019-04-22 | 2019-08-02 | 如般量子科技有限公司 | 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统 |
CN110113152A (zh) * | 2019-04-22 | 2019-08-09 | 如般量子科技有限公司 | 基于非对称密钥池对和数字签名的量子通信服务站密钥协商方法和系统 |
CN110138548A (zh) * | 2019-04-22 | 2019-08-16 | 如般量子科技有限公司 | 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和系统 |
-
2020
- 2020-01-17 CN CN202010056806.8A patent/CN111245609B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110086627A (zh) * | 2019-04-22 | 2019-08-02 | 如般量子科技有限公司 | 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统 |
CN110113152A (zh) * | 2019-04-22 | 2019-08-09 | 如般量子科技有限公司 | 基于非对称密钥池对和数字签名的量子通信服务站密钥协商方法和系统 |
CN110138548A (zh) * | 2019-04-22 | 2019-08-16 | 如般量子科技有限公司 | 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112187741A (zh) * | 2020-09-14 | 2021-01-05 | 杭州安恒信息技术股份有限公司 | 基于运维审计系统的登录认证方法、装置和电子装置 |
CN112187741B (zh) * | 2020-09-14 | 2022-09-13 | 杭州安恒信息技术股份有限公司 | 基于运维审计系统的登录认证方法、装置和电子装置 |
CN114070640A (zh) * | 2021-11-25 | 2022-02-18 | 航天新通科技有限公司 | 一种安全通信方法及系统 |
CN114070640B (zh) * | 2021-11-25 | 2024-02-06 | 航天新通科技有限公司 | 一种安全通信方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111245609B (zh) | 2023-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110932870B (zh) | 一种量子通信服务站密钥协商系统和方法 | |
CN110519046B (zh) | 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统 | |
CN108683501B (zh) | 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法 | |
CN111416715B (zh) | 基于秘密共享的量子保密通信身份认证系统及方法 | |
CN103124269A (zh) | 云环境下基于动态口令与生物特征的双向身份认证方法 | |
CN111314074A (zh) | 基于秘密共享和时间戳的量子保密通信密钥分发和协商系统 | |
CN111277412B (zh) | 基于区块链密钥分发的数据安全共享系统及方法 | |
CN110138548B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和系统 | |
CN102594551B (zh) | Rfid标签隐私数据可靠统计方法 | |
CN112351037B (zh) | 用于安全通信的信息处理方法及装置 | |
CN110535626B (zh) | 基于身份的量子通信服务站保密通信方法和系统 | |
CN110224816B (zh) | 基于密钥卡和序列号的抗量子计算应用系统以及近距离节能通信方法和计算机设备 | |
CN105721153A (zh) | 基于认证信息的密钥交换系统及方法 | |
CN111416712B (zh) | 基于多个移动设备的量子保密通信身份认证系统及方法 | |
CN111404664A (zh) | 基于秘密共享和多个移动设备的量子保密通信身份认证系统和方法 | |
CN110505055A (zh) | 基于非对称密钥池对和密钥卡的外网接入身份认证方法和系统 | |
CN111314083B (zh) | 基于秘密共享和非对称密码学的量子保密通信系统和方法 | |
CN111245609B (zh) | 基于秘密共享和随机数的量子保密通信密钥分发和协商系统及其方法 | |
CN110519226B (zh) | 基于非对称密钥池和隐式证书的量子通信服务端保密通信方法和系统 | |
CN104618113B (zh) | 一种移动端身份认证及安全信道建立的方法 | |
CN116388995A (zh) | 一种基于puf的轻量级智能电网认证方法 | |
CN110098925B (zh) | 基于非对称密钥池对和随机数的量子通信服务站密钥协商方法和系统 | |
CN110048852B (zh) | 基于非对称密钥池的量子通信服务站数字签密方法和系统 | |
CN110519214B (zh) | 基于在线离线签名和辅助验证签名的应用系统近距离节能通信方法、系统、设备 | |
CN110061895B (zh) | 基于密钥卡的抗量子计算应用系统近距离节能通信方法和系统 |
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 |