CN117061100A - 一种双向认证系统、方法、装置、设备及介质 - Google Patents
一种双向认证系统、方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN117061100A CN117061100A CN202310974923.6A CN202310974923A CN117061100A CN 117061100 A CN117061100 A CN 117061100A CN 202310974923 A CN202310974923 A CN 202310974923A CN 117061100 A CN117061100 A CN 117061100A
- Authority
- CN
- China
- Prior art keywords
- key
- communication device
- authentication
- identifier
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 118
- 230000002457 bidirectional effect Effects 0.000 title abstract description 41
- 238000004891 communication Methods 0.000 claims abstract description 614
- 238000013475 authorization Methods 0.000 claims description 155
- 238000004422 calculation algorithm Methods 0.000 claims description 116
- 238000009826 distribution Methods 0.000 claims description 24
- 230000008569 process Effects 0.000 description 53
- 238000010586 diagram Methods 0.000 description 20
- 238000004590 computer program Methods 0.000 description 16
- 230000015654 memory Effects 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time 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/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请公开了一种双向认证系统、方法、装置、设备及介质,用以快捷高效安全的进行双向认证。本申请第一通信设备可以向第一密钥设备发送第一密钥申请,第一密钥设备与第二密钥设备之间进行密钥分发,生成至少一个目标密钥,并将第一目标密钥及第一目标密钥标识发送给第一通信设备;第一通信设备生成第一认证数据,将第一认证数据及第一目标密钥标识发送给第二通信设备;第二通信设备对第一通信设备进行认证,若认证通过,基于从第二密钥设备处获得的第二目标密钥,生成第二认证数据,将第二认证数据及第二目标密钥标识发送给第一通信设备;第一通信设备对第二通信设备进行认证,基于此,可以实现快捷高效安全的进行双向认证的目的。
Description
技术领域
本申请涉及网络安全技术领域,尤其涉及一种双向认证系统、方法、装置、设备及介质。
背景技术
双向认证是对信息的收发方双方进行真实身份的认证(验证),是保护网络安全的措施之一。现有身份认证技术主要包括:基于口令、基于生物特征、基于密码的认证。基于密码的认证技术包括:基于对称密码的认证和基于公钥密码的认证。其中,基于对称密码的双向认证主要采取预共享对称密钥的方式实现,在管理上存在预共享对称密钥分发困难的问题,即便引入了密钥中心,通信方和密钥中心共享的密钥也需要预先人工分发,应用成本较高的同时,还存在安全风险。
因此,亟需一种可以快捷高效安全的进行双向认证的技术方案。
发明内容
本申请提供了一种双向认证系统、方法、装置、设备及介质,用以快捷高效安全的进行双向认证。
第一方面,本申请提供了一种双向认证系统,所述系统包括:
第一通信设备,用于向第一密钥设备发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;
所述第一密钥设备,用于与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;并基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备;
所述第一通信设备,还用于基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备;
所述第二通信设备,还用于基于从所述第二密钥设备处获得的所述第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备进行认证,若认证通过,基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;
所述第一通信设备,还用于基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
第二方面,本申请提供了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第一通信设备,所述方法包括:
向第一密钥设备发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;使所述第一密钥设备与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
接收所述第一密钥设备发送的第一目标密钥及第一目标密钥标识;基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备;使所述第二通信设备基于从所述第二密钥设备处获得的所述第一目标密钥标识的密钥,生成第一认证比对数据,并使所述第二通信设备基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备进行认证,若认证通过,使所述第二通信设备基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,并将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;
接收所述第二通信设备发送的第二认证数据及第二目标密钥标识,基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
第三方面,本申请公开了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第二通信设备,所述方法包括:
基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及从第一通信设备处接收到的第一认证数据,对所述第一通信设备进行认证;
若认证通过,基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;使所述第一通信设备基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,使所述第一通信设备基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
第四方面,本申请公开了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第一密钥设备,所述方法包括:
接收第一通信设备发送的第一密钥申请,所述第一密钥申请中携带第一通信设备标识及对应第二通信设备的第二密钥设备标识;
与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备。
第五方面,本申请公开了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第二密钥设备,所述方法包括:
接收第二通信设备发送的第二密钥申请,所述第二密钥申请中携带第一密钥授权码、第一目标密钥标识、第二通信设备标识;
基于所述第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若所述第一密钥授权比对码与所述第一密钥授权码一致,且用于生成所述第一密钥授权比对码的通信设备标识与发送所述第二密钥申请的通信设备的标识相同时,则将所述第一目标密钥标识及第一目标密钥发送给所述第二通信设备标识对应的第二通信设备。
第六方面,本申请提供了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第一通信设备,所述装置包括:
第一发送模块,用于向第一密钥设备发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;使所述第一密钥设备与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
第一接收模块,用于接收所述第一密钥设备发送的第一目标密钥及第一目标密钥标识;基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备;使所述第二通信设备基于从所述第二密钥设备处获得的所述第一目标密钥标识的密钥,生成第一认证比对数据,并使所述第二通信设备基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备进行认证,若认证通过,使所述第二通信设备基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,并将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;
第一认证模块,用于接收所述第二通信设备发送的第二认证数据及第二目标密钥标识,基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
第七方面,本申请公开了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第二通信设备,所述装置包括:
第二认证模块,用于基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及从第一通信设备处接收到的第一认证数据,对所述第一通信设备进行认证;
第二发送模块,用于若认证通过,基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;使所述第一通信设备基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,使所述第一通信设备基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
第八方面,本申请公开了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第一密钥设备,所述装置包括:
第二接收模块,用于接收第一通信设备发送的第一密钥申请,所述第一密钥申请中携带第一通信设备标识及对应第二通信设备的第二密钥设备标识;
密钥生成模块,用于与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
第三发送模块,用于基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备。
第九方面,本申请公开了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第二密钥设备,所述装置包括:
第二接收模块,用于接收第二通信设备发送的第二密钥申请,所述第二密钥申请中携带第一密钥授权码、第一目标密钥标识、第二通信设备标识;
比对模块,用于基于所述第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若所述第一密钥授权比对码与所述第一密钥授权码一致,且用于生成所述第一密钥授权比对码的通信设备标识与发送所述第二密钥申请的通信设备的标识相同时,则将所述第一目标密钥标识及第一目标密钥发送给所述第二通信设备标识对应的第二通信设备。
第十方面,本申请提供了一种电子设备,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现如上述任一所述方法的步骤。
第十一方面,本申请提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一所述方法的步骤。
由于本申请可以在第一通信设备和第二通信设备每次需要进行双向认证时,才向相应的密钥设备发送密钥申请,相应的密钥设备才进行生成密钥、下发密钥的步骤,通信双方(如第一通信设备、第二通信设备)无需事先共享密钥或者分别与可信第三方预共享密钥,基于此,可以实现快捷高效安全的进行双向认证的目的。而且,本申请可以在每次需要进行双向认证时均采用新生成(新申请)的密钥进行认证,做到“一次认证一密”,相较于长期使用一个固定密钥,本申请可以防止攻击者窃取密钥信息,具有更高的安全性。
附图说明
为了更清楚地说明本申请实施例或相关技术中的实施方式,下面将对实施例或相关技术描述中所需要使用的附图进行简单的介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1示出了一些实施例提供的一种双向认证系统示意图;
图2示出了一些实施例提供的第一种双向认证过程示意图;
图3示出了一些实施例提供的第二种双向认证过程示意图;
图4示出了一些实施例提供的第三种双向认证过程示意图;
图5示出了一些实施例提供的第四种双向认证过程示意图;
图6示出了一些实施例提供的第五种双向认证过程示意图;
图7示出了一些实施例提供的第六种双向认证过程示意图;
图8示出了一些实施例提供的第七种双向认证过程示意图;
图9示出了一些实施例提供的第八种双向认证过程示意图;
图10示出了一些实施例提供的第一种双向认证装置示意图;
图11示出了一些实施例提供的第二种双向认证装置示意图;
图12示出了一些实施例提供的第三种双向认证装置示意图;
图13示出了一些实施例提供的第四种双向认证装置示意图;
图14示出了一些实施例提供的一种电子设备结构示意图。
具体实施方式
为了快捷高效安全的进行双向认证,本申请提供了一种双向认证系统、方法、装置、设备及介质。
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
术语“模块”是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
实施例1:
图1示出了一些实施例提供的一种双向认证系统示意图,如图1所示,该系统包括:
第一通信设备11,用于向第一密钥设备12发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;
所述第一密钥设备12,用于与对应所述第二密钥设备标识的第二密钥设备14之间进行密钥分发,生成至少一个目标密钥;并基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备11;
所述第一通信设备11,还用于基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备13;
所述第二通信设备13,还用于基于从所述第二密钥设备14处获得的所述第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备11进行认证,若认证通过,基于从所述第二密钥设备14处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备11;
所述第一通信设备11,还用于基于从所述第一密钥设备12处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备13进行认证。
在一种可能的实施方式中,将需要进行双向认证的设备称为第一通信设备11(如通信设备-A)和第二通信设备13(如通信设备-B),为了快捷高效安全的进行双向认证,第一通信设备11对应有第一密钥设备12(如QKD设备-X),第二通信设备13对应有第二密钥设备14(如QKD设备-Y)。可选的,第一通信设备和第一密钥设备之间可以采用专用线路直连,位于同一安全域内,可以有效提升通信的安全性。同样的,第二通信设备和第二密钥设备之间也可以采用专用线路直连,位于同一安全域内。通信设备和密钥设备之间可以预先互信互通相应的通信设备信息、密钥设备信息、信息传输协议、加解密算法、初始密钥及密钥更新策略等内容,可以保证量子密钥等密钥不以明文形式传输。可选的,考虑到公钥密码算法可能会受到量子计算的影响,为了提高认证过程的安全性,本申请中的密钥设备(第一密钥设备12、第二密钥设备14)可以为量子密钥分发(quantum key distribution,QKD)设备。
第一通信设备11(通信设备-A)和第二通信设备13(通信设备-B)之间需要进行双向认证时,第一通信设备11可以先向第二通信设备13发送认证请求,该认证请求中可以携带第一通信设备的标识(第一通信设备标识,如IDA)。其中,通信设备标识可以根据需求灵活设置,本申请对此不作具体限定。
第二通信设备13接收到第一通信设备11发送的认证请求后,可以向第一通信设备11返回一个挑战信息,该挑战信息中可以包含第二通信设备13自身的标识(第二通信设备标识,如IDB)以及第二通信设备13对应的第二密钥设备标识(如IDY)。
第一通信设备11接收到第二通信设备13返回的挑战信息后,可以向预先建立连接的第一密钥设备12(如QKD设备-X)发送第一密钥申请,该第一密钥申请中可以携带第一通信设备标识(如IDA)以及第二密钥设备标识(如IDY)。
第一密钥设备12(如QKD设备-X)接收到第一密钥申请后,第一密钥设备12与第二密钥设备14之间可以进行密钥分发,如进行量子密钥分发过程,从而生成至少一个目标密钥,例如,生成若干个量子密钥。其中,第一密钥设备12和第二密钥设备14之间进行密钥分发的过程可以采用现有技术,在此不再赘述。第一密钥设备12和第二密钥设备14可以均对这若干个目标密钥进行保存。
第一密钥设备12(如QKD设备-X)可以将生成的若干个目标密钥中的其中任意一个目标密钥(为方便描述,称为第一目标密钥,如QK1)以及该第一目标密钥对应的标识(第一目标密钥标识,如IDQK1)发送给第一通信设备11。其中,为了保证密钥的安全性,第一密钥设备12可以采用设定的第一加密算法对第一目标密钥QK1及第一目标密钥标识IDQK1进行加密,将加密后的第一目标密钥QK1及第一目标密钥标识IDQK1发送给第一通信设备11。
第一通信设备11接收到采用第一加密算法加密后的第一目标密钥及第一目标密钥标识后,可以采用与第一加密算法对应的第一解密算法,对第一目标密钥QK1及第一目标密钥标识IDQK1进行解密后,获得解密后的第一目标密钥QK1及第一目标密钥标识IDQK1。第一通信设备11可以基于第一目标密钥,生成第一认证数据。可选的,第一通信设备11可以基于第一目标密钥以及设定的认证数据加密算法,生成第一认证数据。示例性的,第一通信设备11可以基于第一目标密钥QK1和设定的认证数据加密算法对第一通信设备标识IDA(本端通信设备标识)、第二通信设备标识IDB(对端通信设备标识)进行加密计算,生成第一认证数据。其中,认证数据加密算法中所用的密码加密算法可以为带密钥的杂凑函数(Keyed-HashMessage Authentication Code,HMAC)、分组密码、流密码、可鉴别的加密技术等。密码加密算法用E表示,可以基于第一目标密钥QK1和设定的认证数据加密算法E对第一通信设备标识IDA、第二通信设备标识IDB进行加密计算,生成第一认证数据:Token1=EQK1(IDA||IDB)。其中,当密码加密算法为HMAC时,可以基于第一目标密钥QK1和HMAC对第一通信设备标识IDA、第二通信设备标识IDB进行加密计算,获得第一认证数据:Token1=HMAC(QK1,IDA||IDB)。其中,还可以基于其他方式获得第一认证数据,在此先不赘述,在后续实施例中再进行详细介绍。
可选的,第一通信设备11生成第一认证数据Token1后,可以将第一认证数据及第一目标密钥标识IDQK1发送给第二通信设备13。
可选的,第二通信设备13接收到第一认证数据和第一目标密钥标识后,可以向第二密钥设备14发送获取第一目标密钥标识对应的密钥的密钥申请,第二密钥设备14可以采用设定的第二加密算法,对第一目标密钥标识对应的密钥加密,将加密后的第一目标密钥标识对应的密钥发送给第二通信设备13。其中,第二通信设备13从第二密钥设备14处获取第一目标密钥标识的密钥的方式还可以采用其他方式,在此先不赘述,在后续实施例中再进行详细介绍。
第二通信设备13可以采用与第二加密算法对应的第二解密算法,对采用第二加密算法加密后的第一目标密钥标识对应的密钥进行解密,获得第一目标密钥标识对应的密钥(第一目标密钥)。第二通信设备13可以基于第一目标密钥,生成第一认证比对数据。示例性的,与第一通信设备11生成第一认证数据的过程类似,第二通信设备13可以基于第一目标密钥以及设定的认证数据加密算法,生成第一认证比对数据。示例性的,第二通信设备13可以基于第一目标密钥QK1和设定的认证数据加密算法对第一通信设备标识IDA、第二通信设备标识IDB进行加密计算,生成第一认证比对数据。示例性的,第一认证比对数据可以表示为:EQK1(IDA||IDB),或者HMAC(QK1,IDA||IDB)等,在此不再赘述。另外,第二通信设备13还可以基于其他方式获得第一认证比对数据,在此先不赘述,在后续实施例中再进行详细介绍。
第二通信设备13生成第一认证比对数据(如HMAC(QK1,IDA||IDB))后,可以将该第一认证比对数据与收到的第一认证数据(Token1=HMAC(QK1,IDA||IDB))进行比对,根据比对结果,对第一通信设备11进行认证。具体的,若比对结果为两者一致,则可以认为第一通信设备11是安全的设备,可以对第一通信设备11认证通过。而如果比对结果为两者不一致,则可以认为第一通信设备11不安全,可以对第一通信设备11认证不通过,示例性的,可以向第一通信设备11发送认证不通过的提示信息。
可选的,第二通信设备13对第一通信设备11认证通过后,第二通信设备13可以进行生成第二认证数据,从而使得第一通信设备11可以进行基于第二认证数据对第二通信设备13进行认证的过程。具体的,第二通信设备13可以基于从第二密钥设备14处获得的目标密钥,生成第二认证数据。其中,第二通信设备13生成第二认证数据时所用的目标密钥可以与第一目标密钥是同一个密钥,也可以是两个不同的密钥,为方便描述,将第二通信设备13生成第二认证数据时所用的目标密钥称为第二目标密钥,且当第二目标密钥与第一目标密钥是同一个密钥时,将第二目标密钥用QK1表示,当第二目标密钥与第一目标密钥是两个不同的密钥时,将第二目标密钥用QK2表示。当第二目标密钥与第一目标密钥是同一个密钥时,第二通信设备13可以直接基于已经从第二密钥设备14处获得的密钥QK1来生成第二认证数据。当第二目标密钥与第一目标密钥是两个不同的密钥时,第二通信设备13可以再次向第二密钥设备14发送获取密钥申请,第二密钥设备14可以再发送给第二通信设备13一个目标密钥QK2及该目标密钥的密钥标识IDQK2。
可选的,第二通信设备13生成第二认证数据后,可以将第二认证数据以及第二目标密钥标识发送给第一通信设备11。第一通信设备11可以基于从第一密钥设备12处获得的对应第二目标密钥标识的密钥,生成第二认证比对数据。其中,生成第二认证比对数据的过程与生成第一认证数据的过程类似,例如,可以基于从第一密钥设备12处获得的第二目标密钥标识对应的密钥(第二目标密钥),生成第二认证比对数据。示例性的,第一通信设备11可以基于第二目标密钥以及设定的认证数据加密算法,生成第二认证比对数据。示例性的,第一通信设备11可以基于第二目标密钥和设定的认证数据加密算法对第二通信设备标识IDB(对端通信设备标识)、第一通信设备标识IDA(本端通信设备标识)进行加密计算,生成第二认证比对数据。示例性的,当第二目标密钥与第一目标密钥相同时,第二认证比对数据可以为EQK1(IDB||IDA),或者,HMAC(QK1,IDB||IDA)。当第二目标密钥与第一目标密钥不同时,第二认证比对数据可以为EQK2(IDB||IDA),或者,HMAC(QK2,IDB||IDA)。其中,还可以基于其他方式获得第二认证比对数据,在此先不赘述,在后续实施例中再进行详细介绍。
第一通信设备11可以将第二认证比对数据与第二认证数据进行比对,根据比对结果,来对第二通信设备13进行认证。可选的,当比对结果为两者一致时,可以对第二通信设备13认证通过;当比对结果为两者不一致时,可以对第二通信设备13认证不通过。
由于本申请可以在第一通信设备和第二通信设备每次需要进行双向认证时,才向相应的密钥设备发送密钥申请,相应的密钥设备才进行生成密钥、下发密钥的步骤,通信双方(第一通信设备、第二通信设备)无需事先共享密钥或者分别与可信第三方预共享密钥,基于此,可以实现快捷高效安全的进行双向认证的目的。而且,本申请可以在每次需要进行双向认证时均采用新生成(新申请)的密钥进行认证,做到“一次认证一密”,相较于长期使用一个固定密钥,本申请可以防止攻击者窃取密钥信息,具有更高的安全性。
实施例2:
为了提高安全性,在上述实施例的基础上,在本申请实施例中,所述第二通信设备13,还用于将获得的第一随机因子发送给第一通信设备11;
所述第一通信设备11,具体用于基于所述第一目标密钥、第一随机因子及设定的认证数据加密算法,生成第一认证数据;
所述第二通信设备13,具体用于基于所述第一随机因子、设定的认证数据加密算法以及从所述第二密钥设备14处获得的所述第一目标密钥标识对应的密钥,生成第一认证比对数据。
在一种可能的实施方式中,第二通信设备13接收到第一通信设备11发送的认证请求后,向第一通信设备11返回挑战信息时,该挑战信息中除了可以包含第二通信设备标识(IDB)以及第二通信设备13对应的第二密钥设备标识(如IDY)之外,还可以包含获得的第一随机因子,也即,第二通信设备13还可以将获得的第一随机因子发送给第一通信设备11。其中,第一随机因子可以是随机数R、计数器当前生成的计数counter、时间戳timestamp、或者其他可以共享的信息等,本申请对此不作具体限定。
可选的,第一通信设备11接收到包含第一随机因子、第二通信设备标识(IDB)以及第二通信设备13对应的第二密钥设备标识(如IDY)的挑战信息后,可以向第一密钥设备12发送第一密钥申请。第一密钥设备12接收到第一密钥申请后,可以与对应第二密钥设备标识的第二密钥设备14之间进行密钥分发,生成至少一个目标密钥;并可以将采用第一加密算法加密后的第一目标密钥及第一目标密钥标识发送给第一通信设备11,在此不再赘述。
可选的,为了提高安全性,第一通信设备11在接收到第一目标密钥后,生成第一认证数据时,可以基于第一目标密钥、第一随机因子以及设定的认证数据加密算法,生成第一认证数据。示例性的,以第一随机因子为随机数R1为例,第一认证数据可以为基于第一目标密钥和设定的认证数据加密算法,对第一随机因子、第一通信设备标识、第二通信设备标识进行加密计算后生成的,示例性的,第一认证数据Token1可以表示为:HMAC(QK1,R1||IDA||IDB),或者Token1还可以表示为:EQK1(R1||IDA||IDB),在此不再赘述。
再示例性的,以第一随机因子为计数器生成的计数counter1为例,第一认证数据Token1可以表示为:HMAC(QK1,counter1||IDA||IDB),或者Token1还可以标识为:EQK1(counter1||IDA||IDB)。再示例性的,以第一随机因子为时间戳timestamp1为例,第一认证数据Token1可以表示为:HMAC(QK1,timestamp1||IDA||IDB),或者Token1还可以表示为:EQK1(timestamp1||IDA||IDB)。
可选的,第二通信设备13在生成第一认证比对数据时,也可以基于第一随机因子(如R1)、设定的认证数据加密算法以及从第二密钥设备14处获得的第一目标密钥标识对应的密钥(第一目标密钥),生成第一认证比对数据。其中,生成第一认证比对数据的过程与生成第一认证数据的过程类似,示例性的,第一认证比对数据可以表示为:HMAC(QK1,R1||IDA||IDB)、EQK1(R1||IDA||IDB)、HMAC(QK1,counter1||IDA||IDB)、EQK1(counter1||IDA||IDB)、HMAC(QK1,timestamp1||IDA||IDB)、或者EQK1(timestamp1||IDA||IDB)等,在此不再赘述。
其中,生成第一认证比对数据后,第二通信设备13可以将第一认证比对数据与第一认证数据进行比对,从而对第一通信设备11进行认证,其中对第一通信设备11进行认证的过程与上述实施例相同,在此不再赘述。
由于本申请可以基于第一随机因子生成第一认证数据以及第一认证比对数据,从而可以进一步提高认证过程的安全性。
实施例4:
为了提高认证过程的安全性,在上述各实施例的基础上,在本申请实施例中,所述第一通信设备11,还用于将获得的第二随机因子发送给第二通信设备13;
所述第二通信设备13,具体用于基于所述第二随机因子、设定的认证数据加密算法以及从所述第二密钥设备14处获得的第二目标密钥,生成第二认证数据;
所述第一通信设备11,具体用于基于所述第二随机因子、设定的认证数据加密算法以及从所述第一密钥设备12处获得的所述第二目标密钥标识对应的密钥,生成第二认证比对数据。
在一种可能的实施方式中,第一通信设备11除了可以将第一认证数据、第一目标密钥标识等发送给第二通信设备13,还可以将获得的第二随机因子也发送给第二通信设备13。示例性的,第一通信设备11在将第一认证数据、第一目标密钥标识等发送给第二通信设备13的同时,可以一并将生成的第二随机因子发送给第二通信设备13。其中,第二随机因子可以是随机数R、计数器生成的计数counter、时间戳timestamp、或者其他可以共享的信息等,本申请对此不作具体限定。
可选的,为了提高安全性,第二通信设备13接收到第二随机因子之后,在生成第二认证数据时,可以基于第二目标密钥、第二随机因子以及设定的认证数据加密算法,生成第二认证数据。示例性的,以第二随机因子为随机数R2为例,第二认证数据可以为基于第二目标密钥和设定的认证数据加密算法,对第二随机因子、第二通信设备标识、第一通信设备标识进行加密计算后生成的。示例性的,当第二目标密钥与第一目标密钥相同时,第二认证数据Token2可以为:HMAC(QK1,R2||IDB||IDA)、EQK1(R2||IDB||IDA)、HMAC(QK1,counter2||IDB||IDA)、EQK1(counter2||IDB||IDA)、HMAC(QK1,timestamp2||IDB||IDA)、EQK1(timestamp2||IDB||IDA)等。
再示例性的,当第二目标密钥与第一目标密钥不同时,第二认证数据Token2可以为:HMAC(QK2,R2||IDB||IDA)、EQK2(R2||IDB||IDA)、HMAC(QK2,counter2||IDB||IDA)、EQK2(counter2||IDB||IDA)、HMAC(QK2,timestamp2||IDB||IDA)、EQK2(timestamp2||IDB||IDA)等。
可选的,第一通信设备11在生成第二认证比对数据时,也可以基于第二随机因子(如R2)、设定的认证数据加密算法以及从第一密钥设备12处获得的第二目标密钥标识对应的密钥(第二目标密钥),生成第二认证比对数据。其中,生成第二认证比对数据的过程与生成第二认证数据的过程类似,示例性的,第二认证比对数据可以为:HMAC(QK1,R2||IDB||IDA)等,在此不再赘述。
其中,生成第二认证比对数据后,将第二认证比对数据与第二认证数据进行比对,从而对第二通信设备13进行认证的过程与上述实施例相同,在此不再赘述。
由于本申请可以基于第二随机因子生成第二认证数据以及第二认证比对数据,从而可以进一步提高认证过程的安全性。
为方便理解,下面通过一个具体实施例对本申请提供的双向认证过程进行解释说明。参阅图2,图2示出了一些实施例提供的第一种双向认证过程示意图,该过程包括以下步骤:
S201:第一通信设备(通信设备-A)向第二通信设备(通信设备-B)发送认证请求,认证请求中携带第一通信设备标识IDA。
S202:第二通信设备接收认证请求,并向第一通信设备返回挑战信息,挑战信息中包含第二通信设备标识IDB、第二通信设备对应的第二密钥设备标识IDY、第一随机因子R1。
S203:第一通信设备向第一密钥设备(QKD设备-X)发送第一密钥申请,第一密钥申请中携带第一通信设备标识IDA及获得的对应第二通信设备的第二密钥设备标识IDY。
S204:第一密钥设备(QKD设备-X)与对应第二密钥设备标识的第二密钥设备(QKD设备-Y)之间进行密钥分发,生成至少一个目标密钥。
S205:第一密钥设备(QKD设备-X)基于第一通信设备标识,将采用第一加密算法加密后的第一目标密钥QK1及第一目标密钥标识IDQK1发送给第一通信设备。
S206:第一通信设备采用与第一加密算法对应的第一解密算法,对加密后的第一目标密钥QK1及第一目标密钥标识IDQK1进行解密,获得解密后的第一目标密钥QK1及第一目标密钥标识IDQK1,基于第一目标密钥、第一随机因子及设定的认证数据加密算法,生成第一认证数据Token1(如HMAC(QK1,R1||IDA||IDB)),将第一认证数据Token1、第二随机因子R2、及第一目标密钥标识IDQK1发送给第二通信设备。
S207:第二通信设备基于从第二密钥设备处获得的第一目标密钥标识对应的密钥(QK1),生成第一认证比对数据,比对第一认证比对数据与第一认证数据是否一致,若一致,则对第一通信设备认证通过,并基于第二随机因子、设定的认证数据加密算法以及从第二密钥设备处获得的第二目标密钥,生成第二认证数据Token2(如HMAC(QK2,R2||IDB||IDA)),将第二认证数据及第二目标密钥标识IDQK2发送给第一通信设备。
S208:第一通信设备基于从第一密钥设备处获得的对应第二目标密钥标识的密钥QK2,生成第二认证比对数据,比对第二认证比对数据与第二认证数据是否一致,若一致,则对第二通信设备认证通过。
实施例5:
为了提高安全性,在上述各实施例的基础上,在本申请实施例中,所述第一通信设备11,还用于基于所述第一目标密钥、所述第二通信设备标识以及设定密钥授权码加密算法,生成第一密钥授权码,将所述第一密钥授权码发送给第二通信设备13;
所述第二通信设备13,还用于向所述第二密钥设备14发送第二密钥申请,所述第二密钥申请中携带所述第一密钥授权码、第一目标密钥标识、第二通信设备标识;
所述第二密钥设备14,还用于接收所述第二密钥申请,基于所述第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若所述第一密钥授权比对码与所述第一密钥授权码一致,且用于生成所述第一密钥授权比对码的通信设备标识与发送所述第二密钥申请的通信设备的标识相同时,则将所述第一目标密钥标识及第一目标密钥发送给所述第二通信设备标识对应的第二通信设备13。
在一种可能的实施方式中,考虑到同一个密钥设备可能会同时服务多个通信设备,例如QKD设备-Y可以在为通信设备B服务的同时,还可以为其他通信设备服务,如为通信设备-C服务,为了防止通信设备-C等其他通信设备从QKD设备-Y处获取到第一目标密钥QK1,保证认证过程的安全性,第一通信设备11还可以基于第一目标密钥QK1、第二通信设备标识IDB以及设定密钥授权码加密算法,生成第一密钥授权码,将第一密钥授权码发送给第二通信设备13,使得第二通信设备13在向第二密钥设备14申请要第一密钥时,可以将该第一密钥授权码一并发送给第二密钥设备14,第二密钥设备14基于第一密钥授权码对第二通信设备13进行验证,验证通过后,才将第一目标密钥发送给第二通信设备13,从而保证认证过程的安全性。
具体的,在生成第一密钥授权码时,第一密钥授权码可以为基于第一目标密钥和设定密钥授权码加密算法对第二通信设备标识进行加密计算后生成的,如第一密钥授权码KeyAuth1可以为:HMAC(QK1,IDB)。可选的,密钥授权码加密算法中所用的密码加密算法除了可以为HMAC之外,还可以为高级加密标准(Advanced Encryption Standard,AES)、SM4等分组密码,还可以为祖冲之算法(ZUC)、RC4(Rivest Cipher 4)等流密码,还可以为AES-CCM(Counter with CBC-MAC)、AES-GCM(Galois/Counter Mode)、SM4-CCM、SM4-GCM等可鉴别的加密技术等,与上述实施例中认证数据、认证比对数据类似,第一密钥授权码KeyAuth1还可以表示为:EQK1(IDB),在此不再赘述。另外,在生成第一密钥授权码时,还可以将第二通信设备标识IDB与相应会话标识等其他能获取到的信息一并基于第一目标密钥和设定密钥授权码加密算法进行加密计算后生成第一密钥授权码,本申请对密钥授权码的生成方式及其中包含的信息不作具体限定。
可选的,生成第一密钥授权码之后,第一通信设备11可以将第一密钥授权码发送给第二通信设备13。示例性的,第一通信设备11可以在向第二通信设备13发送第一目标密钥标识IDQK1、第一认证数据Token1以及第二随机因子R2时,一并把第一密钥授权码KeyAuth1发送给第二通信设备13。
第二通信设备13接收到第一密钥授权码等之后,可以向第二密钥设备14发送第二密钥申请,该第二密钥申请中可以携带第一密钥授权码KeyAuth1、第一目标密钥标识IDQK1以及第二通信设备标识IDB。
可选的,第二密钥设备14接收到第二密钥申请后,可以获取第二密钥申请中携带的第二通信设备标识IDB,第二密钥设备14可以基于第一目标密钥标识对应的密钥QK1、第二通信设备标识IDB以及设定的密钥授权码加密算法,生成第一密钥授权比对码。其中,生成密钥授权比对码的过程与生成密钥授权码的过程类似,在此不再赘述,示例性的,第一密钥授权比对码可以表示为HMAC(QK1,IDB)或者EQK1(IDB)。
可选的,生成第一密钥授权比对码之后,第二密钥设备14可以将生成的第一密钥授权比对码与接收到的第一密钥授权码进行比对,若生成的第一密钥授权码与接收到的第一密钥授权码一致,为了保证安全性,第二密钥设备14可以进一步判断其用于生成该第一密钥授权码的通信设备标识与向其发送第二密钥申请的通信设备的标识是否相同,若其用于生成该第一密钥授权码的通信设备标识与向其发送第二密钥申请的通信设备的标识相同,则可以认为第二通信设备标识对应的通信设备确实为需要第一目标密钥的安全的设备,则可以将第一目标密钥及对应的第一目标密钥标识一并发送给第二通信设备13。
为方便理解,下面通过一个具体实施例对本申请提供的双向认证过程进行解释说明。在本实施例中,第一目标密钥与第二目标密钥为相同的密钥,为方便描述,均称为目标密钥。图3示出了一些实施例提供的第二种双向认证过程示意图,图4示出了一些实施例提供的第三种双向认证过程示意图,参阅图3和图4,该过程包括以下步骤:
S300:第一通信设备(通信设备-A)向第一密钥设备(QKD设备-X)发送QKD服务注册请求,第一密钥设备(QKD设备-X)响应于该QKD服务注册请求,为第一通信设备进行QKD服务注册。同样的,第二通信设备(通信设备-B)向第一密钥设备(QKD设备-Y)发送QKD服务注册请求,第二密钥设备(QKD设备-Y)响应于该QKD服务注册请求,为第二通信设备进行QKD服务注册。
其中,第一通信设备和第一密钥设备之间可以采用专用线路直连,位于同一安全域内,可以有效提升通信的安全性。第二通信设备和第二密钥设备之间也可以采用专用线路直连,位于同一安全域内。为通信设备进行QKD服务注册时,通信设备和密钥设备之间可以互信互通相应的通信设备信息、密钥设备信息、信息传输协议、加解密算法、初始密钥及密钥更新策略等内容,可以保证量子密钥等密钥不以明文形式传输。其中,进行QKD服务注册的过程可以采用现有技术,在此不再赘述。
S301:第一通信设备(通信设备-A)向第二通信设备(通信设备-B)发送认证请求,该认证请求中携带第一通信设备标识IDA。
S302:第二通信设备(通信设备-B)接收认证请求,并向第一通信设备返回挑战信息,挑战信息中包含第二通信设备标识IDB、第一随机因子R1、第二通信设备对应的第二密钥设备标识IDY。
S303:第一通信设备(通信设备-A)向第一密钥设备(QKD设备-X)发送第一密钥申请,申请量子密钥,第一密钥申请中携带第一通信设备标识IDA及获得的对应第二通信设备的第二密钥设备标识IDY。
S304:第一密钥设备(QKD设备-X)与对应所述第二密钥设备标识的第二密钥设备(QKD设备-Y)之间进行密钥分发(如量子密钥分发),生成目标密钥。
S305:第一密钥设备(QKD设备-X)基于第一通信设备标识,将采用第一加密算法加密后的目标密钥QK及目标密钥标识IDQK发送给第一通信设备(通信设备-A)。
其中,也可以将S305称为量子密钥下发过程。
S306:第一通信设备(通信设备-A)采用第一解密算法对加密后的目标密钥QK及目标密钥标识IDQK进行解密,获得解密后的目标密钥QK及目标密钥标识IDQK。第一通信设备基于目标密钥QK、第一随机因子R1以及设定的认证数据加密算法,生成第一认证数据Token1(如HMAC(QK,R1||IDA||IDB))。同时,第一通信设备可以基于目标密钥、第二通信设备标识以及设定密钥授权码加密算法,生成第一密钥授权码KeyAuth1(如HMAC(QK,IDB)),第一通信设备将第一密钥授权码KeyAuth1、第一认证数据Token1、第二随机因子R2、及目标密钥标识(量子密钥标识)IDQK发送(响应)给第二通信设备(通信设备-B)。
S307:第二通信设备(通信设备-B)向第二密钥设备(QKD设备-Y)发送获取第二密钥申请,第二密钥申请中携带第一密钥授权码KeyAuth1、目标密钥标识IDQK、第二通信设备标识IDB。
S308:第二密钥设备(QKD设备-Y)接收第二密钥申请,验证第一授权码有效,且用于生成第一密钥授权比对码的通信设备标识与发送第二密钥申请的通信设备的标识相同时,将采用第二加密算法加密后的目标密钥标识IDQK及目标密钥QK发送给第二通信设备。
其中,验证第一授权码有效的过程为:第二密钥设备基于第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若生成的第一密钥授权比对码与第一密钥授权码一致,则确定第一授权码有效。
可以理解的,若生成的密钥授权比对码与第一密钥授权码不一致,则验证第一密钥授权码无效,可以不将目标密钥标识IDQK及目标密钥QK发送给第二通信设备。
其中,也可以将S308称为量子密钥下发过程。
S309:第二通信设备(通信设备-B)采用第二解密算法对加密后的目标密钥标识IDQK及目标密钥QK进行解密,获得解密后的目标密钥标识IDQK及目标密钥QK。第二通信设备基于目标密钥标识对应的密钥QK、第一随机因子R1及设定的认证数据加密算法,生成第一认证比对数据,将第一认证比对数据与第一认证数据进行比对,若第一认证比对数据与第一认证数据一致,则对第一通信设备认证通过,即认证结果为通过。
S310:第二通信设备(通信设备-B)基于目标密钥QK、第二随机因子R2及设定的认证数据加密算法,生成第二认证数据Token2(如HMAC(QK,R2||IDB||IDA)),将第二认证数据Token2及目标密钥标识IDQK发送(响应)给第一通信设备。
S311:第一通信设备(通信设备-A)基于目标密钥标识对应的密钥QK、第二随机因子R2及设定的认证数据加密算法,生成第二认证比对数据,将第二认证比对数据与收到的第二认证数据Token2进行比对,若第二认证比对数据与收到的第二认证数据Token2一致,则对第二通信设备认证通过,即认证结果为通过。
请再次参阅图4,通信设备中可以包含有密钥授权码生成模块、QKD服务注册模块、量子密钥申请模块。可以基于密钥授权码生成模块来生成密钥授权码。基于QKD服务注册模块向密钥设备发送QKD服务注册请求,完成通信设备和QKD设备的首次互信互通。基于量子密钥申请模块向密钥设备发送密钥申请等,在此不再赘述。密钥设备(如QKD设备)中可以包含密钥授权码校验模块。可以基于密钥授权码生成模块验证密钥授权码是否有效等。在此不再赘述。
本申请中认证数据加密算法中的密码加密算法可以不限于带密钥的杂凑函数(HMAC),也无需各通信设备间事先预共享密钥等。通信设备无需具备QKD能力,而是通过QKD设备使用QKD服务,对通信设备改造需求小,应用场景广泛。
本申请中量子密钥(目标密钥)可以用来加解密,也可以用于通过在每次需要双向认证时向QKD设备申请新的实时量子密钥来作为生成认证数据时的对称密钥,本申请中目标密钥可以在一次双向认证完成后即删除,仅用于一次双向认证,做到“一次认证一密”,可以防止攻击者窃取密钥信息,比长期使用同一密钥具有更高的安全性。
另外,由于本申请通信双方无需事先共享密钥,或是分别与可信第三方预共享密钥,而是通过向各自对应的密钥设备(QKD设备)获得双方一致的实时目标密钥(如量子密钥),即便通信设备方数量增加,也不影响密钥管理难度。本申请的双向认证方法可以应用于数据中心之间、高安全专线节点等通信设备之间的双向认证。
为方便理解,下面通过一个具体实施例对本申请提供的双向认证过程进行解释说明。在本实施例中,第一目标密钥与第二目标密钥为不同的密钥。参阅图5,图5示出了一些实施例提供的第四种双向认证过程示意图,该过程包括以下步骤:
S500:第一通信设备(通信设备-A)向第一密钥设备(QKD设备-X)发送QKD服务注册请求,第一密钥设备(QKD设备-X)响应于该QKD服务注册请求,为第一通信设备进行QKD服务注册。同样的,第二通信设备(通信设备-B)向第一密钥设备(QKD设备-Y)发送QKD服务注册请求,第二密钥设备(QKD设备-Y)响应于该QKD服务注册请求,为第二通信设备进行QKD服务注册。
S501:第一通信设备(通信设备-A)向第二通信设备(通信设备-B)发送认证请求,该认证请求中携带第一通信设备标识IDA。
S502:第二通信设备(通信设备-B)接收认证请求,并向第一通信设备返回挑战信息,挑战信息中包含第二通信设备标识IDB、第一随机因子R1、第二通信设备对应的第二密钥设备标识IDY。
S503:第一通信设备(通信设备-A)向第一密钥设备(QKD设备-X)发送第一密钥申请,申请量子密钥,第一密钥申请中携带第一通信设备标识IDA及获得的对应第二通信设备的第二密钥设备标识IDY。
S504:第一密钥设备(QKD设备-X)与对应所述第二密钥设备标识的第二密钥设备(QKD设备-Y)之间进行密钥分发,生成至少一个目标密钥。
S505:第一密钥设备(QKD设备-X)基于第一通信设备标识,将采用第一加密算法加密后的第一目标密钥QK1及第一目标密钥标识IDQK1发送给第一通信设备(通信设备-A)。
S506:第一通信设备(通信设备-A)接收到采用设定的第一加密算法加密的第一目标密钥QK1及第一目标密钥标识IDQK1后,可以采用与第一加密算法对应的第一解密算法,对第一目标密钥QK1及第一目标密钥标识IDQK1进行解密后,获得解密后的第一目标密钥QK1及第一目标密钥标识IDQK1。第一通信设备基于第一目标密钥QK1、第一随机因子R1以及设定的认证数据加密算法,生成第一认证数据Token1(如HMAC(QK1,R1||IDA||IDB))。同时,第一通信设备可以基于第一目标密钥、第二通信设备标识以及设定密钥授权码加密算法,生成第一密钥授权码KeyAuth1(如HMAC(QK1,IDB)),第一通信设备将第一密钥授权码KeyAuth1、第一认证数据Token1、第二随机因子R2、及目标密钥标识IDQK发送给第二通信设备(通信设备-B)。
S507:第二通信设备(通信设备-B)向第二密钥设备(QKD设备-Y)发送第二密钥申请,第二密钥申请中携带第一密钥授权码KeyAuth1、第一目标密钥标识IDQK1、第二通信设备标识IDB。
其中,第二通信设备可以采用设定的第二加密算法对第一密钥授权码KeyAuth1、第一目标密钥标识IDQK1、第二通信设备标识IDB进行加密,将加密后的第一密钥授权码KeyAuth1、第一目标密钥标识IDQK1、第二通信设备标识IDB发送给第二密钥设备。
S508:第二密钥设备(QKD设备-Y)接收第二密钥申请,验证第一授权码有效,且用于生成第一密钥授权比对码的通信设备标识与发送第二密钥申请的通信设备的标识相同时,将采用第二加密算法加密后的第一目标密钥标识IDQK1及第一目标密钥QK1发送给第二通信设备,同时,还可以将采用第二加密算法加密后的第二目标密钥标识IDQK2及第二目标密钥QK2一并发送给第二通信设备。
其中,第二密钥设备可以采用与第二加密算法对应的第二解密算法,对采用第二加密算法加密的第一密钥授权码KeyAuth1、第一目标密钥标识IDQK1、第二通信设备标识IDB进行解密,获得解密后的第一密钥授权码KeyAuth1、第一目标密钥标识IDQK1、第二通信设备标识IDB。
S509:第二通信设备(通信设备-B)采用第二解密算法对加密后的第一目标密钥标识IDQK1、第一目标密钥QK1、第二目标密钥标识IDQK2、第二目标密钥QK2进行解密,获得解密后的第一目标密钥标识IDQK1、第一目标密钥QK1、第二目标密钥标识IDQK2、第二目标密钥QK2。第二通信设备基于第一目标密钥标识对应的密钥QK1、第一随机因子R1及设定的认证数据加密算法,生成第一认证比对数据,将第一认证比对数据与第一认证数据进行比对,若第一认证比对数据与第一认证数据一致,则对第一通信设备认证通过。
S510:第二通信设备(通信设备-B)基于第二目标密钥QK2、第二随机因子R2及设定的认证数据加密算法,生成第二认证数据Token2(如HMAC(QK2,R2||IDB||IDA))。同时,第二通信设备可以基于第二目标密钥、第一通信设备标识以及设定密钥授权码加密算法,生成第二密钥授权码KeyAuth2(如HMAC(QK2,IDA)),将第二密钥授权码KeyAuth2、第二认证数据Token2及第二目标密钥标识IDQK2发送给第一通信设备。
S511:第一通信设备(通信设备-A)向第一密钥设备(QKD设备-X)发送第三密钥申请,第三密钥申请中携带第二密钥授权码KeyAuth2、第二目标密钥标识IDQK2、第一通信设备标识IDA。
其中,第一通信设备可以采用第一加密算法对第二密钥授权码KeyAuth2、第二目标密钥标识IDQK2、第一通信设备标识IDA进行加密,将加密后的第二密钥授权码KeyAuth2、第二目标密钥标识IDQK2、第一通信设备标识IDA发送给第一密钥设备。
S512:第一密钥设备(QKD设备-X)接收第三密钥申请,验证第二授权码有效,且用于生成第二密钥授权比对码的通信设备标识与发送第三密钥申请的通信设备的标识相同时,将采用第一加密算法加密后的第二目标密钥标识IDQK2及第二目标密钥QK2发送给第一通信设备。
其中,验证第二密钥授权码有效的过程为:第一密钥设备基于第二目标密钥标识对应的密钥、第一通信设备标识以及设定的密钥授权码加密算法,生成第二密钥授权比对码,若生成的第二密钥授权比对码与第二密钥授权码一致,则确定第二密钥授权码有效。验证第二密钥授权码有效的过程与验证第一密钥授权码有效的过程类似,在此不再赘述。
其中,第一密钥设备可以采用与第一加密算法对应的第一解密算法,对采用第一加密算法加密后的第二密钥授权码KeyAuth2、第二目标密钥标识IDQK2、第一通信设备标识IDA进行解密,获得解密后的第二密钥授权码KeyAuth2、第二目标密钥标识IDQK2、第一通信设备标识IDA。
S513:第一通信设备(通信设备-A)可以采用与第一加密算法对应的第一解密算法,对加密的第二目标密钥标识IDQK2及第二目标密钥QK2进行解密,获得解密后的第二目标密钥标识IDQK2及第二目标密钥QK2。第一通信设备基于第二目标密钥标识对应的密钥QK2、第二随机因子R2及设定的认证数据加密算法,生成第二认证比对数据,将第二认证比对数据与收到的第二认证数据Token2进行比对,若第二认证比对数据与收到的第二认证数据Token2一致,则对第二通信设备认证通过。
实施例6:
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第一通信设备,参阅图6,图6示出了一些实施例提供的第五种双向认证过程示意图,该过程包括以下步骤:
S601:向第一密钥设备发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;使所述第一密钥设备与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥。
S602:接收所述第一密钥设备发送的第一目标密钥及第一目标密钥标识;基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备;使所述第二通信设备基于从所述第二密钥设备处获得的所述第一目标密钥标识的密钥,生成第一认证比对数据,并使所述第二通信设备基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备进行认证,若认证通过,使所述第二通信设备基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,并将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备。
S603:接收所述第二通信设备发送的第二认证数据及第二目标密钥标识,基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
在一种可能的实施方式中,所述向第一密钥设备发送第一密钥申请之前,所述方法还包括:
向所述第二通信设备发送认证请求,所述认证请求中携带所述第一通信设备标识。
在一种可能的实施方式中,所述基于所述第一目标密钥,生成第一认证数据,包括:
基于所述第一目标密钥、从所述第二通信设备处接收到的第一随机因子及设定的认证数据加密算法,生成第一认证数据。
在一种可能的实施方式中,所述接收所述第一密钥设备发送的第一目标密钥及第一目标密钥标识之后,所述接收所述第二通信设备发送的第二认证数据及第二目标密钥标识之前,所述方法还包括:
将获得的第二随机因子发送给第二通信设备;
所述基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,包括:
基于所述第二随机因子、设定的认证数据加密算法以及从所述第一密钥设备处获得的所述第二目标密钥标识对应的密钥,生成第二认证比对数据。
在一种可能的实施方式中,所述接收所述第一密钥设备发送的第一目标密钥及第一目标密钥标识之后,所述接收所述第二通信设备发送的第二认证数据及第二目标密钥标识之前,所述方法还包括:
基于所述第一目标密钥、所述第二通信设备标识以及设定密钥授权码加密算法,生成第一密钥授权码,将所述第一密钥授权码发送给第二通信设备。
在一种可能的实施方式中,所述接收所述第二通信设备发送的第二认证数据及第二目标密钥标识之后,所述基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,所述方法还包括:
若所述第一目标密钥与所述第二目标密钥为不同的密钥,向所述第一密钥设备发送第三密钥申请,所述第三密钥申请中携带第二目标密钥标识、第一通信设备标识以及从第二通信设备处接收到的第二密钥授权码。
在一种可能的实施方式中,接收所述第一密钥设备发送的目标密钥及目标密钥标识之后,所述方法还包括:
若接收到所述第一密钥设备发送的采用第一加密算法加密后的目标密钥及目标密钥标识,则采用与所述第一加密算法对应的第一解密算法,对加密后的目标密钥及目标密钥标识进行解密,获得解密后的目标密钥及目标密钥标识。
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第二通信设备,参阅图7,图7示出了一些实施例提供的第六种双向认证过程示意图,该过程包括以下步骤:
S701:基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及从第一通信设备处接收到的第一认证数据,对所述第一通信设备进行认证。
S702:若认证通过,基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;使所述第一通信设备基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,使所述第一通信设备基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
在一种可能的实施方式中,所述基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据之前,所述方法还包括:
接收所述第一通信设备发送的认证请求,所述认证请求中携带第一通信设备标识;
向所述第一通信设备返回挑战信息,所述挑战信息中包含第二通信设备标识、所述第二通信设备对应的第二密钥设备标识。
在一种可能的实施方式中,所述挑战信息中包含第二通信设备标识、所述第二通信设备对应的第二密钥设备标识、获得的第一随机因子;
所述基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据,包括:
基于所述第一随机因子、设定的认证数据加密算法以及从所述第二密钥设备处获得的所述第一目标密钥标识对应的密钥,生成第一认证比对数据。
在一种可能的实施方式中,所述基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,包括:
基于从所述第二密钥设备处获得的第二目标密钥、从第一通信设备处接收到的第二随机因子及设定的认证数据加密算法,生成第二认证数据。
在一种可能的实施方式中,所述基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据之前,所述方法还包括:
向所述第二密钥设备发送第二密钥申请,所述第二密钥申请中携带所述第一密钥授权码、第一目标密钥标识、第二通信设备标识。
在一种可能的实施方式中,所述认证通过之后,所述方法还包括:
若所述第一目标密钥与所述第二目标密钥为不同的密钥,则基于所述第二目标密钥、所述第一通信设备标识以及设定密钥授权码加密算法,生成第二密钥授权码,将所述第二密钥授权码发送给第一通信设备。
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第一密钥设备,参阅图8,图8示出了一些实施例提供的第七种双向认证过程示意图,该过程包括以下步骤:
S801:接收第一通信设备发送的第一密钥申请,所述第一密钥申请中携带第一通信设备标识及对应第二通信设备的第二密钥设备标识。
S802:与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥。
S803:基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备。
在一种可能的实施方式中,所述方法还包括:
接收第一通信设备发送的第三密钥申请,其中,所述第三密钥申请中携带所述第二密钥授权码、第二目标密钥标识、第一通信设备标识;
基于所述第二目标密钥标识对应的密钥、第一通信设备标识以及设定的密钥授权码加密算法,生成第二密钥授权比对码,若所述第二密钥授权比对码与所述第二密钥授权码一致,且用于生成所述第二密钥授权比对码的通信设备标识与发送所述第三密钥申请的通信设备的标识相同时,则将所述第二目标密钥标识及第二目标密钥发送给所述第一通信设备标识对应的第一通信设备。
在一种可能的实施方式中,将目标密钥标识及目标密钥发送给第一通信设备,包括:
采用设定的第一加密算法,对目标密钥及目标密钥标识进行加密,将加密后的目标密钥及目标密钥标识发送给所述第一通信设备。
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证方法,所述方法应用于第二密钥设备,参阅图9,图9示出了一些实施例提供的第八种双向认证过程示意图,该过程包括以下步骤:
S901:接收第二通信设备发送的第二密钥申请,所述第二密钥申请中携带第一密钥授权码、第一目标密钥标识、第二通信设备标识。
S902:基于所述第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若生成的第一密钥授权比对码与所述第一密钥授权码一致,且用于生成所述第一密钥授权比对码的通信设备标识与发送所述第二密钥申请的通信设备的标识相同时,则将所述第一目标密钥标识及第一目标密钥发送给所述第二通信设备标识对应的第二通信设备。
实施例7:
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第一通信设备,参阅图10,图10示出了一些实施例提供的第一种双向认证装置示意图,该过程包括以下步骤:
第一发送模块101,用于向第一密钥设备发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;使所述第一密钥设备与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
第一接收模块102,用于接收所述第一密钥设备发送的第一目标密钥及第一目标密钥标识;基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备;使所述第二通信设备基于从所述第二密钥设备处获得的所述第一目标密钥标识的密钥,生成第一认证比对数据,并使所述第二通信设备基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备进行认证,若认证通过,使所述第二通信设备基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,并将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;
第一认证模块103,用于接收所述第二通信设备发送的第二认证数据及第二目标密钥标识,基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
在一种可能的实施方式中,所述第一发送模块101,还用于向所述第二通信设备发送认证请求,所述认证请求中携带所述第一通信设备标识。
在一种可能的实施方式中,所述第一接收模块102,具体用于基于所述第一目标密钥、从所述第二通信设备处接收到的第一随机因子及设定的认证数据加密算法,生成第一认证数据。
在一种可能的实施方式中,所述第一认证模块103,还用于将获得的第二随机因子发送给第二通信设备;
基于所述第二随机因子、设定的认证数据加密算法以及从所述第一密钥设备处获得的所述第二目标密钥标识对应的密钥,生成第二认证比对数据。
在一种可能的实施方式中,所述第一认证模块103,还用于基于所述第一目标密钥、所述第二通信设备标识以及设定密钥授权码加密算法,生成第一密钥授权码,将所述第一密钥授权码发送给第二通信设备。
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第二通信设备,参阅图11,图11示出了一些实施例提供的第二种双向认证装置示意图,该过程包括以下步骤:
第二认证模块111,用于基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及从第一通信设备处接收到的第一认证数据,对所述第一通信设备进行认证;
第二发送模块112,用于若认证通过,基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;使所述第一通信设备基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,使所述第一通信设备基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
在一种可能的实施方式中,所述第二认证模块111,还用于接收所述第一通信设备发送的认证请求,所述认证请求中携带第一通信设备标识;
向所述第一通信设备返回挑战信息,所述挑战信息中包含第二通信设备标识、所述第二通信设备对应的第二密钥设备标识。
在一种可能的实施方式中,所述第二认证模块111,具体用于若所述挑战信息中包含第二通信设备标识、所述第二通信设备对应的第二密钥设备标识、获得的第一随机因子,基于所述第一随机因子、设定的认证数据加密算法以及从所述第二密钥设备处获得的所述第一目标密钥标识对应的密钥,生成第一认证比对数据。
在一种可能的实施方式中,所述第二发送模块112,具体用于基于从所述第二密钥设备处获得的第二目标密钥、从第一通信设备处接收到的第二随机因子及设定的认证数据加密算法,生成第二认证数据。
在一种可能的实施方式中,所述第二认证模块111,还用于向所述第二密钥设备发送第二密钥申请,所述第二密钥申请中携带所述第一密钥授权码、第一目标密钥标识、第二通信设备标识。
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第一密钥设备,参阅图12,图12示出了一些实施例提供的第三种双向认证装置示意图,该过程包括以下步骤:
第二接收模块121,用于接收第一通信设备发送的第一密钥申请,所述第一密钥申请中携带第一通信设备标识及对应第二通信设备的第二密钥设备标识;
密钥生成模块122,用于与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
第三发送模块123,用于基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备。
基于相同的技术构思,本申请提供了一种基于上述任一项所述的系统的双向认证装置,所述装置应用于第二密钥设备,参阅图13,图13示出了一些实施例提供的第四种双向认证装置示意图,该过程包括以下步骤:
第二接收模块131,用于接收第二通信设备发送的第二密钥申请,所述第二密钥申请中携带第一密钥授权码、第一目标密钥标识、第二通信设备标识;
比对模块132,用于基于所述第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若生成的第一密钥授权比对码与所述第一密钥授权码一致,且用于生成所述第一密钥授权比对码的通信设备标识与发送所述第二密钥申请的通信设备的标识相同时,则将所述第一目标密钥标识及第一目标密钥发送给所述第二通信设备标识对应的第二通信设备。
实施例8:
基于相同的技术构思,本申请还提供了一种电子设备,图14示出了一些实施例提供的一种电子设备结构示意图,如图14所示,电子设备包括:处理器141、通信接口142、存储器143和通信总线144,其中,处理器141,通信接口142,存储器143通过通信总线144完成相互间的通信;
所述存储器143中存储有计算机程序,当所述程序被所述处理器141执行时,使得所述处理器141执行存储器中存储的计算机程序时,实现如上述任一所述的双向认证方法的步骤,在此不再赘述。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口142用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例9:
基于相同的技术构思,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如上述任一方法实施例所述的双向认证方法的步骤,在此不再赘述。
上述计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(MO)等、光学存储器如CD、DVD、BD、HVD等、以及半导体存储器如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD)等。
基于相同的技术构思,本申请提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行时实现上述应用于电子设备的任一方法实施例所述的双向认证评估方法的步骤,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (12)
1.一种双向认证系统,其特征在于,所述系统包括:
第一通信设备,用于向第一密钥设备发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;
所述第一密钥设备,用于与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;并基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备;
所述第一通信设备,还用于基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备;
所述第二通信设备,还用于基于从所述第二密钥设备处获得的所述第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备进行认证,若认证通过,基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;
所述第一通信设备,还用于基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
2.根据权利要求1所述的系统,其特征在于,所述第一通信设备,还用于向所述第二通信设备发送认证请求,所述认证请求中携带所述第一通信设备标识;
所述第二通信设备,还用于接收所述认证请求,并向所述第一通信设备返回挑战信息,所述挑战信息中包含第二通信设备标识、所述第二通信设备对应的第二密钥设备标识。
3.根据权利要求1或2所述的系统,其特征在于,所述第二通信设备,还用于将获得的第一随机因子发送给第一通信设备;
所述第一通信设备,具体用于基于所述第一目标密钥、第一随机因子及设定的认证数据加密算法,生成第一认证数据;
所述第二通信设备,具体用于基于所述第一随机因子、设定的认证数据加密算法以及从所述第二密钥设备处获得的所述第一目标密钥标识对应的密钥,生成第一认证比对数据。
4.根据权利要求1或2所述的系统,其特征在于,所述第一通信设备,还用于将获得的第二随机因子发送给第二通信设备;
所述第二通信设备,具体用于基于所述第二随机因子、设定的认证数据加密算法以及从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据;
所述第一通信设备,具体用于基于所述第二随机因子、设定的认证数据加密算法以及从所述第一密钥设备处获得的所述第二目标密钥标识对应的密钥,生成第二认证比对数据。
5.根据权利要求1所述的系统,其特征在于,所述第一通信设备,还用于基于所述第一目标密钥、所述第二通信设备标识以及设定密钥授权码加密算法,生成第一密钥授权码,将所述第一密钥授权码发送给第二通信设备;
所述第二通信设备,还用于向所述第二密钥设备发送第二密钥申请,所述第二密钥申请中携带所述第一密钥授权码、第一目标密钥标识、第二通信设备标识;
所述第二密钥设备,还用于接收所述第二密钥申请,基于所述第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若所述第一密钥授权比对码与所述第一密钥授权码一致,且用于生成所述第一密钥授权比对码的通信设备标识与发送所述第二密钥申请的通信设备的标识相同时,则将所述第一目标密钥标识及第一目标密钥发送给所述第二通信设备标识对应的第二通信设备。
6.根据权利要求1所述的系统,其特征在于,所述第一目标密钥与所述第二目标密钥为相同的密钥;或者,所述第一目标密钥与所述第二目标密钥为不同的密钥。
7.根据权利要求6所述的系统,其特征在于,若所述第一目标密钥与所述第二目标密钥为不同的密钥,所述第二通信设备,还用于基于所述第二目标密钥、所述第一通信设备标识以及设定密钥授权码加密算法,生成第二密钥授权码,将所述第二密钥授权码发送给第一通信设备;
所述第一通信设备,还用于向所述第一密钥设备发送第三密钥申请,所述第三密钥申请中携带所述第二密钥授权码、第二目标密钥标识、第一通信设备标识;
所述第一密钥设备,还用于接收所述第三密钥申请,基于所述第二目标密钥标识对应的密钥、第一通信设备标识以及设定的密钥授权码加密算法,生成第二密钥授权比对码,若所述第二密钥授权比对码与所述第二密钥授权码一致,且用于生成所述第二密钥授权比对码的通信设备标识与发送所述第三密钥申请的通信设备的标识相同时,则将所述第二目标密钥标识及第二目标密钥发送给所述第一通信设备标识对应的第一通信设备。
8.根据权利要求1或6所述的系统,其特征在于,所述第一密钥设备,具体用于采用设定的第一加密算法,对目标密钥及目标密钥标识进行加密,将加密后的目标密钥及目标密钥标识发送给所述第一通信设备;
所述第一通信设备,还用于接收所述加密后的目标密钥及目标密钥标识,采用与所述第一加密算法对应的第一解密算法,对加密后的目标密钥及目标密钥标识进行解密,获得解密后的目标密钥及目标密钥标识。
9.一种基于权利要求1-8任一项所述的系统的双向认证方法,其特征在于,所述方法应用于第一通信设备,所述方法包括:
向第一密钥设备发送第一密钥申请,所述第一密钥申请中携带第一通信设备标识及获得的对应第二通信设备的第二密钥设备标识;使所述第一密钥设备与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
接收所述第一密钥设备发送的第一目标密钥及第一目标密钥标识;基于所述第一目标密钥,生成第一认证数据,将所述第一认证数据及所述第一目标密钥标识发送给所述第二通信设备;使所述第二通信设备基于从所述第二密钥设备处获得的所述第一目标密钥标识的密钥,生成第一认证比对数据,并使所述第二通信设备基于所述第一认证比对数据及所述第一认证数据,对所述第一通信设备进行认证,若认证通过,使所述第二通信设备基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,并将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;
接收所述第二通信设备发送的第二认证数据及第二目标密钥标识,基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
10.一种基于权利要求1-8任一项所述的系统的双向认证方法,其特征在于,所述方法应用于第二通信设备,所述方法包括:
基于从第二密钥设备处获得的第一目标密钥标识对应的密钥,生成第一认证比对数据,基于所述第一认证比对数据及从第一通信设备处接收到的第一认证数据,对所述第一通信设备进行认证;
若认证通过,基于从所述第二密钥设备处获得的第二目标密钥,生成第二认证数据,将所述第二认证数据及第二目标密钥标识发送给所述第一通信设备;使所述第一通信设备基于从所述第一密钥设备处获得的对应所述第二目标密钥标识的密钥,生成第二认证比对数据,使所述第一通信设备基于所述第二认证比对数据及所述第二认证数据,对所述第二通信设备进行认证。
11.一种基于权利要求1-8任一项所述的系统的双向认证方法,其特征在于,所述方法应用于第一密钥设备,所述方法包括:
接收第一通信设备发送的第一密钥申请,所述第一密钥申请中携带第一通信设备标识及对应第二通信设备的第二密钥设备标识;
与对应所述第二密钥设备标识的第二密钥设备之间进行密钥分发,生成至少一个目标密钥;
基于所述第一通信设备标识,将任一第一目标密钥及第一目标密钥标识发送给所述第一通信设备。
12.一种基于权利要求1-8任一项所述的系统的双向认证方法,其特征在于,所述方法应用于第二密钥设备,所述方法包括:
接收第二通信设备发送的第二密钥申请,所述第二密钥申请中携带第一密钥授权码、第一目标密钥标识、第二通信设备标识;
基于所述第一目标密钥标识对应的密钥、第二通信设备标识以及设定的密钥授权码加密算法,生成第一密钥授权比对码,若所述第一密钥授权比对码与所述第一密钥授权码一致,且用于生成所述第一密钥授权比对码的通信设备标识与发送所述第二密钥申请的通信设备的标识相同时,则将所述第一目标密钥标识及第一目标密钥发送给所述第二通信设备标识对应的第二通信设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310974923.6A CN117061100A (zh) | 2023-08-03 | 2023-08-03 | 一种双向认证系统、方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310974923.6A CN117061100A (zh) | 2023-08-03 | 2023-08-03 | 一种双向认证系统、方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117061100A true CN117061100A (zh) | 2023-11-14 |
Family
ID=88660110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310974923.6A Pending CN117061100A (zh) | 2023-08-03 | 2023-08-03 | 一种双向认证系统、方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117061100A (zh) |
-
2023
- 2023-08-03 CN CN202310974923.6A patent/CN117061100A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10015159B2 (en) | Terminal authentication system, server device, and terminal authentication method | |
EP3386163B1 (en) | Apparatuses and methods for use in a can system | |
CN110380852B (zh) | 双向认证方法及通信系统 | |
CN110750803B (zh) | 数据提供和融合的方法及装置 | |
WO2018076365A1 (zh) | 密钥协商方法及装置 | |
CN108599925B (zh) | 一种基于量子通信网络的改进型aka身份认证系统和方法 | |
JP2020202594A (ja) | セキュアセッションの確立と暗号化データ交換のためのコンピュータ利用システム及びコンピュータ利用方法 | |
US20180131511A1 (en) | Systems and Methods for Dynamic Cypher Key Management | |
CN108683501B (zh) | 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法 | |
US9917692B2 (en) | Key exchange system, key exchange method, key exchange device, control method thereof, and recording medium for storing control program | |
KR100981419B1 (ko) | 디지털 권한 관리를 위한 사용자 도메인 가입방법 및 그정보 교환 방법 | |
CN108650028B (zh) | 基于量子通信网络与真随机数的多次身份认证系统和方法 | |
JP6548172B2 (ja) | 端末認証システム、サーバ装置、及び端末認証方法 | |
CN109309566B (zh) | 一种认证方法、装置、系统、设备及存储介质 | |
CN104113409A (zh) | 一种sip视频监控联网系统的密钥管理方法及系统 | |
CN112532580B (zh) | 一种基于区块链及代理重加密的数据传输方法及系统 | |
JP2020530726A (ja) | サプライチェーン資産管理を保護するアプリケーションを有する遠隔サーバへのnfcタグ認証 | |
WO2018137225A1 (zh) | 指纹数据的处理方法及处理装置 | |
US11853465B2 (en) | Securing data stored in a memory of an IoT device during a low power mode | |
JPWO2019093478A1 (ja) | 鍵交換装置、鍵交換システム、鍵交換方法、及び鍵交換プログラム | |
CN109995723B (zh) | 一种域名解析系统dns信息交互的方法、装置及系统 | |
US20240113885A1 (en) | Hub-based token generation and endpoint selection for secure channel establishment | |
KR101825486B1 (ko) | Otp 기반의 보안 강화 시스템 및 그 방법 | |
CN117061100A (zh) | 一种双向认证系统、方法、装置、设备及介质 | |
KR101728281B1 (ko) | 다중 비밀번호 설정이 가능한 데이터 암호화 및 복호화 방법 |
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 |