首页 / 专利库 / 人工智能 / 量子计算机 / 基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法和系统

基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法和系统

阅读:933发布:2020-05-17

专利汇可以提供基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法和系统专利检索,专利查询,专利分析的服务。并且本 申请 涉及一种基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法和系统,本申请中,使用的密钥卡是独立的 硬件 隔离设备。公钥、私钥和其他相关参数均存储在密钥卡中的数据安全区,被恶意 软件 或恶意操作窃取密钥的可能性大大降低,也不会被 量子计算 机 获取并破解。本申请对基于对称密钥 算法 的认证流程进行改进,使得认证流程中的数据,例如B和服务站之间交互的随机数和TICKET,被DH算法得到的对称密钥加密保护。由于DH算法得到的对称密钥只能被通信双方计算所得,即认证流程中的数据只能被DH私钥拥有者解密,其他任何人均无法解密,因此提升了基于对称密钥算法的认证流程的安全性。,下面是基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法和系统专利的具体信息内容。

1.基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在主动方,其特征在于,所述量子通信服务站密钥协商方法包括:
生成并向被动方发送信息M1,所述信息M1包括认证参数NA和设备参数IDA;
获取来自被动方的票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA,所述票据TICKETA利用加密参数Ka加密且包含有认证参数NA;利用服务站公钥PKQa和主动方私钥SKA生成加密参数Ka,利用加密参数Ka解密票据TICKETA并验证认证参数NA后信任会话密钥KAB,利用会话密钥KAB验证认证参数NA后认证所述被动方;向所述被动方发送利用会话密钥KAB加密的认证参数NC;
所述认证参数NC供所述被动方认证所述主动方。
2.基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在服务站,其特征在于,所述量子通信服务站密钥协商方法包括:
获取来自被动方的利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;所述加密密钥EK2利用服务站公钥PKQ2生成,所述认证码MAC(M2_0,AK2)利用服务站公钥PKQ2制作并包含所述被动方生成的认证参数NB,所述消息M1以及被动方的设备参数IDB,所述信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;
解密并验证认证码MAC(M2_0,AK2)后生成会话密钥KAB,利用服务站私钥SKQa和主动方公钥PKA生成加密参数Ka,利用服务站私钥SKQb和被动方公钥PKB生成加密参数Kb,制作票据TICKETA和票据TICKETB,所述票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;所述票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;
利用服务站私钥SKQ3生成加密参数K3,拆分加密参数K3为认证密钥AK3,加密密钥EK3,生成包含票据TICKETA和票据TICKETB的信息M3_0,利用认证密钥AK3对所述信息M3_0制作认证码MAC(M3_0,AK3),向被动方发送利用加密密钥EK3加密的所述信息M3_0和认证码MAC(M3_0,AK3);
所述认证码MAC(M3_0,AK3)内的票据TICKETA和票据TICKETB分别用于供主动方和被动方验证并信任会话密钥KAB。
3.基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在被动方,其特征在于,所述量子通信服务站密钥协商方法包括:
获取来自主动方的消息M1,所述信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;生成认证参数NB和消息M2_0,所述消息M2_0包括所述认证参数NB,所述消息M1以及被动方的设备参数IDB;利用自身存储的服务站公钥PKQ2生成加密参数K2,拆分加密参数K2为认证密钥AK2,加密密钥EK2,利用认证密钥AK2对所述消息M2_0制作认证码MAC(M2_0,AK2),向服务站发送利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;
获取来自服务站的利用加密密钥EK3加密的所述信息M3_0和认证码MAC(M3_0,AK3),所述加密密钥EK3利用服务站私钥SKQ3生成,所述认证码MAC(M3_0,AK3)利用服务站私钥SKQ3制作并包含票据TICKETA和票据TICKETB,所述票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;所述票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;其中加密参数Ka利用利用服务站私钥SKQa和主动方公钥PKA生成,加密参数Ka利用利用服务站私钥SKQb和被动方公钥PKB生成,会话密钥KAB由所述服务站生成;解密后获得票据TICKETA和票据TICKETB,验证票据TICKETB中认证参数NB后信任会话密钥KAB,生成认证参数NC,向所述主动方发送信息M4,所述信息M4包括票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA;
获取来自主动方的利用会话密钥KAB加密的认证参数NC,解密验证所述认证参数NC后完成对所述主动方的验证。
4.基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,其特征在于,所述量子通信服务站密钥协商方法包括:
主动方生成并向被动方发送信息M1,所述信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;
被动方获取后生成认证参数NB和消息M2_0,所述消息M2_0包括所述认证参数NB,所述消息M1以及被动方的设备参数IDB;利用自身存储的服务站公钥PKQ2生成加密参数K2,拆分加密参数K2为认证密钥AK2,加密密钥EK2,利用认证密钥AK2对所述消息M2_0制作认证码MAC(M2_0,AK2),向服务站发送利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;
所述服务站获取、解密并验证认证码MAC(M2_0,AK2)后生成会话密钥KAB,利用服务站私钥SKQa和主动方公钥PKA生成加密参数Ka,利用服务站私钥SKQb和被动方公钥PKB生成加密参数Kb,制作票据TICKETA和票据TICKETB,所述票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;所述票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;利用服务站私钥SKQ3生成加密参数K3,拆分加密参数K3为认证密钥AK3和加密密钥EK3,生成包含票据TICKETA和票据TICKETB的信息M3_0,利用认证密钥AK3对所述信息M3_0制作认证码MAC(M3_0,AK3),向被动方发送利用加密密钥EK3加密的所述信息M3_0和认证码MAC(M3_0,AK3);
所述被动方获取、解密后获得票据TICKETA和票据TICKETB,验证票据TICKETB中认证参数NB后信任会话密钥KAB,生成认证参数NC,向所述主动方发送信息M4,所述信息M4包括票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA;
所述主动方获取、解密票据TICKETA并验证认证参数NA后信任会话密钥KAB,利用会话密钥KAB验证认证参数NA后认证所述被动方;向所述被动方发送利用会话密钥KAB加密的认证参数NC;
所述被动方获取来自主动方的利用会话密钥KAB加密的认证参数NC,解密验证所述认证参数NC后完成对所述主动方的验证。
5.如权利要求1至4任一项所述的量子通信服务站密钥协商方法,其特征在于,所述服务站分为服务站QA和服务站QB,所述主动方为所述服务站QA的子设备,所述被动方为所述服务站QB的子设备;
所述服务站QB获取来自所述被动方的利用加密密钥EK2’加密的认证码MAC(M2_0,AK2’),被动方的设备参数IDB;利用服务站QB私钥SKQB2和被动方公钥生成加密参数K2’,拆分加密参数K2’为认证密钥AK2’和加密密钥EK2’,利用加密密钥EK2’解密并利用认证密钥AK2’验证认证码MAC(M2_0,AK2’)后生成信息M3’,信息M3’包括信息M2_0,与服务站QA加密通信获得加密参数K3’,拆分加密参数K3’为认证密钥AK3’和加密密钥EK3’,向服务站QA加密发送利用加密参数K3’加密的信息M3’和认证码MAC(M3’,AK3’),认证码MAC(M3’,AK3’)为利用认证密钥AK3’与信息M3’制作;
所述服务站QA获取、解密后验证认证码MAC(M3’,AK3’);利用主动方公钥PKA和服务站QA私钥SKQAa生成加密参数Ka’,生成会话密钥KAB;生成票据TICKETA’,票据TICKETA’包括利用加密参数Ka’加密的设备参数IDB,认证参数NA,设备参数IDA,会话密钥KAB;生成信息M4’,信息M4’包括利用票据TICKETA’和会话密钥KAB;与服务站QB加密通信获得加密参数K4’,拆分加密参数K4’为认证密钥AK4’和加密密钥EK4’,向服务站QB加密发送利用加密参数K4’加密的信息M4’和认证码MAC(M4’,AK4’),认证码MAC(M4’,AK4’)为利用认证密钥AK4’与信息M4’制作;
所述服务站QB获取、解密后验证认证码MAC(M4’,AK4’),利用被动方公钥PKB和服务站QB私钥SKQBb生成加密参数Kb’,生成会话密钥KAB;生成票据TICKETB’,票据TICKETB’包括利用加密参数Kb’加密的设备参数IDB,认证参数NB,设备参数IDA,会话密钥KAB;利用服务站私钥SKQB5和被动方公钥PKB,生成加密参数K5’,拆分加密参数K5’为认证密钥AK5’和加密密钥EK5’,生成包含票据TICKETB’和票据TICKETA’的信息M5’_0,向被动端发送利用加密密钥EK5’加密的信息M5’_0和认证码MAC(M5’_0,AK5’),认证码MAC(M5’_0,AK5’)利用认证密钥AK5’和信息M5’_0生成;
所述票据TICKETA’用于供主动方信任会话密钥KAB,所述票据TICKETB’用于供被动方信任会话密钥KAB。
6.如权利要求1至4任一项所述的量子通信服务站密钥协商方法,其特征在于,所述会话密钥KAB拆分成消息加解密密钥KABE和消息认证密钥KABA。
7.一种主动方设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1中所述量子通信服务站密钥协商方法的步骤。
8.一种服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求2中所述量子通信服务站密钥协商方法的步骤。
9.一种被动方设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求3中所述量子通信服务站密钥协商方法的步骤。
10.基于非对称密钥池对和DH协议的量子通信服务站密钥协商系统,其特征在于,包括设有主动方,被动方,服务站以及通信网络;所述主动方配置有主动方密钥卡,所述主动方密钥卡内存储有服务站公钥池,主动方公钥以及主动方私钥;所述被动方配置有被动方密钥卡,所述动方密钥卡内存储有服务站公钥池,被动方公钥以及被动方私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有服务站私钥池,主动方公钥池以及被动方公钥池;
所述主动方,被动方以及服务站通过所述通信网络实现权利要求4中所述量子通信服务站密钥协商方法的步骤。

说明书全文

基于非对称密钥池对和DH协议的量子通信服务站密钥协商方

法和系统

技术领域

背景技术

[0002] 迅速发展的Internet给人们的生活、工作带来了巨大的方便,人们可以坐在家里通过Internet收发电子邮件、打电话、进行网上购物、行转账等活动。同时网络信息安全也逐渐成为一个潜在的巨大问题。一般来说网络信息面临着以下几种安全隐患:网络信息被窃取、信息被篡改、攻击者假冒信息、恶意破坏等。
[0003] 其中身份认证是其中一种保护人们网络信息的一种手段。身份认证也称为“身份验证”或“身份鉴别,”是指在计算机及计算机网络系统中确认操作者身份的过程,从而确定该用户是否具有对某种资源的访问和使用权限,进而使计算机和网络系统的访问策略能够可靠、有效地执行,防止攻击者假冒合法用户获得资源的访问权限,保证系统和数据的安全,以及授权访问者的合法利益。
[0004] 而当前确保身份认证成功的主要是依靠密码技术,而在如今的密码学领域中,主要有两种密码系统,一是对称密钥密码系统,即加密密钥和解密密钥使用同一个。另一个是公开密钥密码系统,即加密密钥和解密密钥不同,其中一个可以公开。目前大部分的身份认证使用算法的主要依靠公钥密码体系。
[0005] 公开密钥加密系统采用的加密钥匙(公钥)和解密钥匙(私钥)是不同的。由于加密钥匙是公开的,密钥的分配和管理就很简单,公开密钥加密系统还能够很容易地实现数字签名。
[0006] 自公钥加密问世以来,学者们提出了许多种公钥加密方法,它们的安全性都是基于复杂的数学难题。根据所基于的数学难题来分类,有以下三类系统目前被认为是安全和有效的:大整数因子分解系统(代表性的有RSA)、离散对数系统(代表性的有DSA)和椭圆离散对数系统(ECC)。
[0007] 但是随着量子计算机的发展,经典非对称密钥加密算法将不再安全,无论加解密还是密钥交换方法,量子计算机都可以通过公钥计算得到私钥,因此目前常用的非对称密钥将在量子时代变得不堪一击。目前量子密钥分发设备QKD可确保协商的密钥无法被获取。但是QKD主要用于量子干线,用户端设备到量子通信服务站依旧为经典网络,因此依靠非对称算法很难保证身份认证过程的安全。
[0008] 现有技术存在的问题:
[0009] 1.量子通信服务站与量子密钥卡之间使用对称密钥池,其容量巨大,对量子通信服务站的密钥存储带来压
[0010] 2.由于对称密钥池密钥容量巨大,量子通信服务站不得不将密钥加密存储于普通存储介质例如硬盘内,而无法存储于量子通信服务站的密钥卡内;
[0011] 3.由于对称密钥池密钥容量巨大,给密钥备份造成麻烦。发明内容
[0012] 基于此,有必要针对上述技术问题,提供基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法和系统。
[0013] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在主动方,所述量子通信服务站密钥协商方法包括:
[0014] 生成并向被动方发送信息M1,所述信息M1包括认证参数NA和设备参数IDA;所述信息M1供所述服务站生成会话密钥KAB和用于供所述主动方验证的票据TICKETA;
[0015] 获取来自被动方的票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA,所述票据TICKETA利用加密参数Ka加密且包含有认证参数NA;利用服务站公钥PKQa和主动方私钥SKA生成加密参数Ka,利用加密参数Ka解密票据TICKETA并验证认证参数NA后信任会话密钥KAB,利用会话密钥KAB验证认证参数NA后认证所述被动方;向所述被动方发送利用会话密钥KAB加密的认证参数NC;
[0016] 所述认证参数NC供所述被动方认证所述主动方。
[0017] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在服务站,所述量子通信服务站密钥协商方法包括:
[0018] 获取来自被动方的利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;所述加密密钥EK2利用服务站公钥PKQ2生成,所述认证码MAC(M2_0,AK2)利用服务站公钥PKQ2制作并包含所述被动方生成的认证参数NB,所述消息M1以及被动方的设备参数IDB,所述信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;
[0019] 解密并验证认证码MAC(M2_0,AK2)后生成会话密钥KAB,利用服务站私钥SKQa和主动方公钥PKA生成加密参数Ka,利用服务站私钥SKQb和被动方公钥PKB生成加密参数Kb,制作票据TICKETA和票据TICKETB,所述票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;所述票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;
[0020] 利用服务站私钥SKQ3生成加密参数K3,拆分加密参数K3为认证密钥AK3,加密密钥EK3,生成包含票据TICKETA和票据TICKETB的信息M3_0,利用认证密钥AK3对所述信息M3_0制作认证码MAC(M3_0,AK3),向被动方发送利用加密密钥EK3加密的所述信息M3_0和认证码MAC(M3_0,AK3);
[0021] 所述认证码MAC(M3_0,AK3)内的票据TICKETA和票据TICKETB用于供主动方和被动方验证并信任会话密钥KAB。
[0022] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在被动方,所述量子通信服务站密钥协商方法包括:
[0023] 获取来自主动方的消息M1,所述信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;生成认证参数NB和消息M2_0,所述消息M2_0包括所述认证参数NB,所述消息M1以及被动方的设备参数IDB;利用自身存储的服务站公钥PKQ2生成加密参数K2,拆分加密参数K2为认证密钥AK2,加密密钥EK2,利用认证密钥AK2对所述消息M2_0制作认证码MAC(M2_0,AK2),向服务站发送利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;
[0024] 获取来自服务站的利用加密密钥EK3加密的所述信息M3_0和认证码MAC(M3_0,AK3),所述加密密钥EK3利用服务站私钥SKQ3生成,所述认证码MAC(M3_0,AK3)利用服务站私钥SKQ3制作并包含票据TICKETA和票据TICKETB,所述票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;所述票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;其中加密参数Ka利用利用服务站私钥SKQa和主动方公钥PKA生成,加密参数Ka利用利用服务站私钥SKQb和被动方公钥PKB生成,会话密钥KAB由所述服务站生成;解密后获得票据TICKETA和票据TICKETB,验证票据TICKETB中认证参数NB后信任会话密钥KAB,生成认证参数NC,向所述主动方发送信息M4,所述信息M4包括票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA;
[0025] 获取来自主动方的利用会话密钥KAB加密的认证参数NC,解密验证所述认证参数NC后完成对所述主动方的验证。
[0026] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,所述量子通信服务站密钥协商方法包括:
[0027] 主动方生成并向被动方发送信息M1,所述信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;
[0028] 被动方获取后生成认证参数NB和消息M2_0,所述消息M2_0包括所述认证参数NB,所述消息M1以及被动方的设备参数IDB;利用自身存储的服务站公钥PKQ2生成加密参数K2,拆分加密参数K2为认证密钥AK2,加密密钥EK2,利用认证密钥AK2对所述消息M2_0制作认证码MAC(M2_0,AK2),向服务站发送利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;
[0029] 所述服务站获取、解密并验证认证码MAC(M2_0,AK2)后生成会话密钥KAB,利用服务站私钥SKQa和主动方公钥PKA生成加密参数Ka,利用服务站私钥SKQb和被动方公钥PKB生成加密参数Kb,制作票据TICKETA和票据TICKETB,所述票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;所述票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;利用服务站私钥SKQ3生成加密参数K3,拆分加密参数K3为认证密钥AK3和加密密钥EK3,生成包含票据TICKETA和票据TICKETB的信息M3_0,利用认证密钥AK3对所述信息M3_0制作认证码MAC(M3_0,AK3),向被动方发送利用加密密钥EK3加密的所述信息M3_0和认证码MAC(M3_0,AK3);
[0030] 所述被动方获取、解密后获得票据TICKETA和票据TICKETB,验证票据TICKETB中认证参数NB后信任会话密钥KAB,生成认证参数NC,向所述主动方发送信息M4,所述信息M4包括票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA;
[0031] 所述主动方获取、解密票据TICKETA并验证认证参数NA后信任会话密钥KAB,利用会话密钥KAB验证认证参数NA后认证所述被动方;向所述被动方发送利用会话密钥KAB加密的认证参数NC;
[0032] 所述被动方获取来自主动方的利用会话密钥KAB加密的认证参数NC,解密验证所述认证参数NC后完成对所述主动方的验证。
[0033] 进一步的,服务站分为服务站QA和服务站QB,主动方为服务站QA的子设备,被动方为服务站QB的子设备;
[0034] 服务站QB获取来自被动方的利用加密密钥EK2’加密的认证码MAC(M2_0,AK2’),被动方的设备参数IDB;利用服务站QB私钥SKQB2和被动方公钥生成加密参数K2’,拆分加密参数K2’为认证密钥AK2’和加密密钥EK2’,利用加密密钥EK2’解密并利用认证密钥AK2’验证认证码MAC(M2_0,AK2’)后生成信息M3’,信息M3’包括信息M2_0,与服务站QA加密通信获得加密参数K3’,拆分加密参数K3’为认证密钥AK3’和加密密钥EK3’,向服务站QA加密发送利用加密参数K3’加密的信息M3’和认证码MAC(M3’,AK3’),认证码MAC(M3’,AK3’)为利用认证密钥AK3’与信息M3’制作;
[0035] 服务站QA获取、解密后验证认证码MAC(M3’,AK3’);利用主动方公钥PKA和服务站QA私钥SKQAa生成加密参数Ka’,生成会话密钥KAB;生成票据TICKETA’,票据TICKETA’包括利用加密参数Ka’加密的设备参数IDB,认证参数NA,设备参数IDA,会话密钥KAB;生成信息M4’,信息M4’包括利用票据TICKETA’和会话密钥KAB;与服务站QB加密通信获得加密参数K4’,拆分加密参数K4’为认证密钥AK4’和加密密钥EK4’,向服务站QB加密发送利用加密参数K4’加密的信息M4’和认证码MAC(M4’,AK4’),认证码MAC(M4’,AK4’)为利用认证密钥AK4’与信息M4’制作;
[0036] 服务站QB获取、解密后验证认证码MAC(M4’,AK4’),利用被动方公钥PKB和服务站QB私钥SKQBb生成加密参数Kb’,生成会话密钥KAB;生成票据TICKETB’,票据TICKETB’包括利用加密参数Kb’加密的设备参数IDB,认证参数NB,设备参数IDA,会话密钥KAB;利用服务站私钥SKQB5和被动方公钥PKB,生成加密参数K5’,拆分加密参数K5’为认证密钥AK5’和加密密钥EK5’,生成包含票据TICKETB’和票据TICKETA’的信息M5’_0,向被动端发送利用加密密钥EK5’加密的信息M5’_0和认证码MAC(M5’_0,AK5’),认证码MAC(M5’_0,AK5’)利用认证密钥AK5’和信息M5’_0生成;
[0037] 票据TICKETA’用于供主动方信任会话密钥KAB,票据TICKETB’用于供被动方信任会话密钥KAB。
[0038] 进一步的,所述会话密钥KAB拆分成消息加解密密钥KABE和消息认证密钥KABA。
[0039] 本申请公开了一种主动方设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站密钥协商方法的步骤。
[0040] 本申请公开了一种服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站密钥协商方法的步骤。
[0041] 本申请公开了一种被动方设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站密钥协商方法的步骤。
[0042] 本申请公开了基于非对称密钥池的量子通信服务站身份认证系统,包括设有主动方,被动方,服务站以及通信网络;所述主动方配置有主动方密钥卡,所述主动方密钥卡内存储有服务站公钥池,主动方公钥以及主动方私钥;所述被动方配置有被动方密钥卡,所述动方密钥卡内存储有服务站公钥池,被动方公钥以及被动方私钥;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有服务站私钥池,主动方公钥池以及被动方公钥池;
[0043] 所述主动方,被动方以及服务站通过所述通信网络实现上述技术方案中所述量子通信服务站密钥协商方法的步骤。
[0044] 本申请中,使用的密钥卡是独立的硬件隔离设备。公钥、私钥和其他相关参数均存储在密钥卡中的数据安全区,被恶意软件或恶意操作窃取密钥的可能性大大降低,也不会被量子计算机获取并破解。由于在经典网络中均无涉及公私钥及算法参数的传递,因此非对称密钥被破解的险很低,另外,服务站与服务站之间采用QKD进行加密传输消息,所以消息的安全性得到极大的保障。密钥卡保障了通信双方在群组中的通信安全,也极大的提高了身份认证的安全性。同时非对称密钥池解决了对称密钥池给量子通信服务站带来密钥存储压力,降低了存储成本。例如,原先用户的对称密钥池大小均为1G,用户个数为N,则量子通信服务站需要存储N G的密钥池,而如果存储非对称密钥池,客户端存储密钥池大小同样为1G,量子通信服务站同样只需要存储1G大小的密钥池。
[0045] 同时,本申请对基于对称密钥算法的认证流程进行改进,使得认证流程中的数据,例如B和服务站之间交互的随机数和TICKET,被DH算法得到的对称密钥加密保护。由于DH算法得到的对称密钥只能被通信双方计算所得,即认证流程中的数据只能被DH私钥拥有者解密,其他任何人均无法解密,因此提升了基于对称密钥算法的认证流程的安全性。附图说明
[0046] 图1为本发明中服务站密钥卡的密钥池分布示意图;
[0047] 图2为本发明中客户端密钥卡的密钥池分布示意图;
[0048] 图3为实施例1的身份认证流程图
[0049] 图4为实施例2的身份认证流程图。

具体实施方式

[0050] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。其中本申请中的服务站在未做特殊说明的情况下均为量子通信服务站,本申请中的各名称以字母和数字组合为准,例如Q,服务站Q,服务站在下文表示同一含义,即服务站Q;再例如认证参数NA,NA在下文中表示同一含义,即认证参数NA,其余名称同理。
[0051] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在主动方,量子通信服务站密钥协商方法包括:
[0052] 生成并向被动方发送信息M1,信息M1包括认证参数NA和设备参数IDA;信息M1供服务站生成会话密钥KAB和用于供主动方验证的票据TICKETA;
[0053] 获取来自被动方的票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA,票据TICKETA利用加密参数Ka加密且包含有认证参数NA;利用服务站公钥PKQa和主动方私钥SKA生成加密参数Ka,利用加密参数Ka解密票据TICKETA并验证认证参数NA后信任会话密钥KAB,利用会话密钥KAB验证认证参数NA后认证被动方;向被动方发送利用会话密钥KAB加密的认证参数NC;
[0054] 认证参数NC供被动方认证主动方。
[0055] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在服务站,量子通信服务站密钥协商方法包括:
[0056] 获取来自被动方的利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;加密密钥EK2利用服务站公钥PKQ2生成,认证码MAC(M2_0,AK2)利用服务站公钥PKQ2制作并包含被动方生成的认证参数NB,消息M1以及被动方的设备参数IDB,信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;
[0057] 解密并验证认证码MAC(M2_0,AK2)后生成会话密钥KAB,利用服务站私钥SKQa和主动方公钥PKA生成加密参数Ka,利用服务站私钥SKQb和被动方公钥PKB生成加密参数Kb,制作票据TICKETA和票据TICKETB,票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;
[0058] 利用服务站私钥SKQ3生成加密参数K3,拆分加密参数K3为认证密钥AK3,加密密钥EK3,生成包含票据TICKETA和票据TICKETB的信息M3_0,利用认证密钥AK3对信息M3_0制作认证码MAC(M3_0,AK3),向被动方发送利用加密密钥EK3加密的信息M3_0和认证码MAC(M3_0,AK3);
[0059] 认证码MAC(M3_0,AK3)内的票据TICKETA和票据TICKETB用于供主动方和被动方验证并信任会话密钥KAB。
[0060] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在被动方,量子通信服务站密钥协商方法包括:
[0061] 获取来自主动方的消息M1,信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;生成认证参数NB和消息M2_0,消息M2_0包括认证参数NB,消息M1以及被动方的设备参数IDB;利用自身存储的服务站公钥PKQ2生成加密参数K2,拆分加密参数K2为认证密钥AK2,加密密钥EK2,利用认证密钥AK2对消息M2_0制作认证码MAC(M2_0,AK2),向服务站发送利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;
[0062] 获取来自服务站的利用加密密钥EK3加密的信息M3_0和认证码MAC(M3_0,AK3),加密密钥EK3利用服务站私钥SKQ3生成,认证码MAC(M3_0,AK3)利用服务站私钥SKQ3制作并包含票据TICKETA和票据TICKETB,票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;其中加密参数Ka利用利用服务站私钥SKQa和主动方公钥PKA生成,加密参数Ka利用利用服务站私钥SKQb和被动方公钥PKB生成,会话密钥KAB由服务站生成;解密后获得票据TICKETA和票据TICKETB,验证票据TICKETB中认证参数NB后信任会话密钥KAB,生成认证参数NC,向主动方发送信息M4,信息M4包括票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA;
[0063] 获取来自主动方的利用会话密钥KAB加密的认证参数NC,解密验证认证参数NC后完成对主动方的验证。
[0064] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,量子通信服务站密钥协商方法包括:
[0065] 主动方生成并向被动方发送信息M1,信息M1包括主动方生成的认证参数NA和主动方的设备参数IDA;
[0066] 被动方获取后生成认证参数NB和消息M2_0,消息M2_0包括认证参数NB,消息M1以及被动方的设备参数IDB;利用自身存储的服务站公钥PKQ2生成加密参数K2,拆分加密参数K2为认证密钥AK2,加密密钥EK2,利用认证密钥AK2对消息M2_0制作认证码MAC(M2_0,AK2),向服务站发送利用加密密钥EK2加密的认证码MAC(M2_0,AK2),被动方的设备参数IDB;
[0067] 服务站获取、解密并验证认证码MAC(M2_0,AK2)后生成会话密钥KAB,利用服务站私钥SKQa和主动方公钥PKA生成加密参数Ka,利用服务站私钥SKQb和被动方公钥PKB生成加密参数Kb,制作票据TICKETA和票据TICKETB,票据TICKETA包括利用加密参数Ka加密的认证参数NA,设备参数IDA,设备参数IDB,会话密钥KAB;票据TICKETB包括利用加密参数Kb加密的认证参数NB,设备参数IDA,设备参数IDB,会话密钥KAB;利用服务站私钥SKQ3生成加密参数K3,拆分加密参数K3为认证密钥AK3和加密密钥EK3,生成包含票据TICKETA和票据TICKETB的信息M3_0,利用认证密钥AK3对信息M3_0制作认证码MAC(M3_0,AK3),向被动方发送利用加密密钥EK3加密的信息M3_0和认证码MAC(M3_0,AK3);
[0068] 被动方获取、解密后获得票据TICKETA和票据TICKETB,验证票据TICKETB中认证参数NB后信任会话密钥KAB,生成认证参数NC,向主动方发送信息M4,信息M4包括票据TICKETA,利用会话密钥KAB加密的认证参数NC和认证参数NA;
[0069] 主动方获取、解密票据TICKETA并验证认证参数NA后信任会话密钥KAB,利用会话密钥KAB验证认证参数NA后认证被动方;向被动方发送利用会话密钥KAB加密的认证参数NC;
[0070] 被动方获取来自主动方的利用会话密钥KAB加密的认证参数NC,解密验证认证参数NC后完成对主动方的验证。
[0071] 在一实施例中,例如实施例2中,服务站分为服务站QA和服务站QB,主动方为服务站QA的子设备,被动方为服务站QB的子设备;
[0072] 服务站QB获取来自被动方的利用加密密钥EK2’加密的认证码MAC(M2_0,AK2’),被动方的设备参数IDB;利用服务站QB私钥SKQB2和被动方公钥生成加密参数K2’,拆分加密参数K2’为认证密钥AK2’和加密密钥EK2’,利用加密密钥EK2’解密并利用认证密钥AK2’验证认证码MAC(M2_0,AK2’)后生成信息M3’,信息M3’包括信息M2_0,与服务站QA加密通信获得加密参数K3’,拆分加密参数K3’为认证密钥AK3’和加密密钥EK3’,向服务站QA加密发送利用加密参数K3’加密的信息M3’和认证码MAC(M3’,AK3’),认证码MAC(M3’,AK3’)为利用认证密钥AK3’与信息M3’制作;
[0073] 服务站QA获取、解密后验证认证码MAC(M3’,AK3’);利用主动方公钥PKA和服务站QA私钥SKQAa生成加密参数Ka’,生成会话密钥KAB;生成票据TICKETA’,票据TICKETA’包括利用加密参数Ka’加密的设备参数IDB,认证参数NA,设备参数IDA,会话密钥KAB;生成信息M4’,信息M4’包括利用票据TICKETA’和会话密钥KAB;与服务站QB加密通信获得加密参数K4’,拆分加密参数K4’为认证密钥AK4’和加密密钥EK4’,向服务站QB加密发送利用加密参数K4’加密的信息M4’和认证码MAC(M4’,AK4’),认证码MAC(M4’,AK4’)为利用认证密钥AK4’与信息M4’制作;
[0074] 服务站QB获取、解密后验证认证码MAC(M4’,AK4’),利用被动方公钥PKB和服务站QB私钥SKQBb生成加密参数Kb’,生成会话密钥KAB;生成票据TICKETB’,票据TICKETB’包括利用加密参数Kb’加密的设备参数IDB,认证参数NB,设备参数IDA,会话密钥KAB;利用服务站私钥SKQB5和被动方公钥PKB,生成加密参数K5’,拆分加密参数K5’为认证密钥AK5’和加密密钥EK5’,生成包含票据TICKETB’和票据TICKETA’的信息M5’_0,向被动端发送利用加密密钥EK5’加密的信息M5’_0和认证码MAC(M5’_0,AK5’),认证码MAC(M5’_0,AK5’)利用认证密钥AK5’和信息M5’_0生成;
[0075] 票据TICKETA’用于供主动方信任会话密钥KAB,票据TICKETB’用于供被动方信任会话密钥KAB。
[0076] 进一步的,会话密钥KAB拆分成消息加解密密钥KABE和消息认证密钥KABA。
[0077] 本申请公开了一种主动方设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述技术方案中量子通信服务站密钥协商方法的步骤。
[0078] 本申请公开了一种服务站设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述技术方案中量子通信服务站密钥协商方法的步骤。
[0079] 本申请公开了一种被动方设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述技术方案中量子通信服务站密钥协商方法的步骤。
[0080] 本申请公开了基于非对称密钥池对和DH协议的量子通信服务站密钥协商系统,包括设有主动方,被动方,服务站以及通信网络;主动方配置有主动方密钥卡,主动方密钥卡内存储有服务站公钥池,主动方公钥以及主动方私钥;被动方配置有被动方密钥卡,动方密钥卡内存储有服务站公钥池,被动方公钥以及被动方私钥;服务站配置有服务站密钥卡,服务站密钥卡内存储有服务站私钥池,主动方公钥池以及被动方公钥池;
[0081] 主动方,被动方以及服务站通过通信网络实现上述技术方案中量子通信服务站密钥协商方法的步骤。
[0082] 本申请实现场景为在一个基于非对称密钥池体系下的任意两个对象A、B进行相互的身份认证。本申请的密钥池体系中每个对象都具有密钥卡,可存储大数据量的密钥,也具备处理信息的能力。本申请中,对象A和对象B的本地系统中都存在相应需求的算法。
[0083] 密钥卡的描述可见申请号为“201610843210.6”的申请。当为移动终端时,密钥卡优选为密钥SD卡;当为固定终端时,密钥卡优选为密钥USBkey或主机密钥板卡。
[0084] 与申请号为“201610843210.6”的申请相比,密钥卡的颁发机制有所类似。本申请的密钥卡颁发方为密钥卡的主管方,一般为群组的管理部,例如某企业或事业单位的管理部门;密钥卡被颁发方为密钥卡的主管方所管理的成员,一般为某企业或事业单位的各级员工。客户端首先到密钥卡的主管方申请开户。当客户端进行注册登记获批后,将得到密钥卡(具有唯一的密钥卡ID)。密钥卡存储了客户注册登记信息。同一量子通信服务站下的客户端密钥卡中的公钥池都下载自同一个密钥管理服务器,且其颁发的每个客户端密钥卡中存储的公钥池是完全一致的。优选为,密钥卡中存储的密钥池大小可以是1G、2G、4G、8G、16G、32G、64G、128G、256G、512G、1024G、2048G、4096G等等。
[0085] 密钥卡从智能卡技术上发展而来,是结合了密码学技术、硬件安全隔离技术、量子物理学技术(搭载量子随机数发生器的情况下)的身份认证和加解密产品。密钥卡的内嵌芯片和操作系统可以提供密钥的安全存储和密码算法等功能。由于其具有独立的数据处理能力和良好的安全性,密钥卡成为私钥和密钥池的安全载体。每一个密钥卡都有硬件PIN码保护,PIN码和硬件构成了用户使用密钥卡的两个必要因素。即所谓“双因子认证,”用户只有同时取得保存了相关认证信息的密钥卡和用户PIN码,才可以登录系统。即使用户的PIN码被泄露,只要用户持有的密钥卡不被盗取,合法用户的身份就不会被仿冒;如果用户的密钥卡遗失,拾到者由于不知道用户PIN码,也无法仿冒合法用户的身份。总之,密钥卡使得密钥等绝密信息不以明文形式出现在主机的磁盘及内存中,从而能有效保证绝密信息的安全。
[0086] 本申请中,密钥卡分为服务站密钥卡和客户端密钥卡。如图1所示,服务站密钥卡的密钥区主要存储有客户端公钥池和服务站私钥池;如图2所示,客户端密钥卡的密钥区主要存储有服务站公钥池和一对公私钥对。所述密钥卡均由密钥管理服务器颁发。
[0087] 密钥管理服务器在颁发密钥卡之前会选择一种既支持加解密又支持签名的算法。密钥管理服务器根据客户端的数量产生相应数量并符合该算法规范的数作为私钥和公钥。
密钥管理服务器产生相应数量的ID,并选取相应数量的公私钥对,取其中的公钥与ID进行组合得到ID/公钥,以ID/公钥的形式写入到同一文件中形成公钥池文件,即上述客户端公钥池。同时,密钥管理服务器将对应的私钥也以相同的方式写入到文件中形成私钥池文件,即客户端私钥池。客户端私钥池中各私钥的ID与客户端公钥池中对应的公钥的ID相同。密钥管理服务器再次产生大量的符合该算法规范的数作为私钥和公钥。密钥管理服务器将公私钥分别写入到两个文件内形成服务站公钥池和服务站私钥池。服务站公钥池内的公钥与服务站私钥池中相同位置的私钥对应。密钥管理服务器将颁发的首个密钥卡定义为服务站密钥卡,并将服务站私钥池和客户端公钥池以及相关算法参数写入密钥卡的密钥区。密钥管理服务器后续颁发的密钥卡均为客户端密钥卡。密钥管理服务器随机数选取一个未分配的ID分配给密钥卡,并从客户端公钥池和客户端私钥池取相同ID的公私钥与服务站公钥池写入密钥卡的密钥区,相关参数一起写入到密钥卡内。
[0088] 本文所述随机数,均为真随机数,优选为量子随机数。
[0089] 根据Diffie-Hellman协议,定义一个大素数p和一个数g,g为模p的原根,g和p均为Diffie-Hellman协议的参数。以客户端A和服务站QA为例,客户端A根据匹配的密钥卡产生真随机大整数SKA作为客户端A的DH私钥,通过计算得到DH公钥PKA=gSKA mod p。服务站QA根据匹配的密钥卡产生真随机大整数SKQAi(i∈{1,2,……,m})作为服务站QA的DH私钥,通过计算得到DH公钥PKQAi=gSKQAi mod p(i∈{1,2,……,m})。
[0090] 根据Diffie-Hellman协议,PKQAiSKA mod p=PKASKQAi mod p。下文中,省略了mod p的部分,使用PKQAiSKA指代PKQAiSKA mod p,其余同理。
[0091] 实施例1
[0092] 系统说明
[0093] 本实施例的场景如图4所示,本图中,包括客户端A对应权利要求的主动方、客户端B对应权利要求的被动方和量子通信服务站Q对应服务站,简称为服务站Q。客户端A和客户端B都配有客户端密钥卡,量子通信服务站Q配有服务站密钥卡。上述密钥卡均为同一个密钥管理服务器颁发的同一批次的密钥卡。
[0094] 步骤1:客户端A向客户端B发起协商密钥请求
[0095] 客户端A根据匹配的密钥卡中的随机数发生器生成随机数NA,与自己的ID即IDA一起作为M1发送至客户端B。
[0096] 步骤2:客户端B加密M1并转发至量子通信服务站Q。
[0097] 客户端B收到M1后,根据自己匹配的密钥卡中的随机数发生器生成随机数NB,将NB与M1、IDB一起组成M2_0,可表示为M1||IDB||NB。
[0098] 客户端B根据匹配的密钥卡中的随机数发生器生成随机数R2,使用R2结合指针函数得到指针P2,通过P2在服务站公钥池中提取PKQ2。令K2=PKQ 2SKB,然后将K2拆分为EK2和AK2。使用AK2对M2_0制作消息认证码MAC(M2_0,AK2)。其中,MAC(m,k)表示以m为消息、以k为密钥的消息认证码。然后使用EK2加密M2_0及其消息认证码,再连同R2以及IDB一起作为M2发送至服务站Q。M2可表示为R2||IDB||{M2_0||MAC(M2_0,AK2)}EK2。
[0099] 步骤3:服务站Q生成TICKETB和TICKETA并发送到客户端B。
[0100] 服务站Q收到M2后,使用R2结合指针函数得到指针P2,通过该指针在自己的私钥池中提取SKQ2,根据IDB在客户端公钥池中提取PKB,计算K2=PKBSKQ2。将K2拆分为EK2和AK2,使用EK2解密得到M2_0及其消息验证码。使用AK2对M2_0计算得到消息认证码,对比验证通过后,获得IDA、NA、IDB以及NB。
[0101] 服务站Q根据匹配的密钥卡中的随机数发生器生成随机数Ra和Rb,使用Ra、Rb结合指针函数得到指针Pa、Pb,通过Pa、Pb在服务站私钥池中分别提取SKQa和SKQb,再根据IDA和SKQaIDB在客户端公钥池中分别提取客户端A的公钥PKA和客户端B的公钥PKB,计算Ka=PKA ,Kb=PKBSKQb。
[0102] 服务站Q根据匹配的密钥卡中的随机数发生器生成会话密钥KAB,使用Ka加密KAB,同时被加密的还有IDA、NA以及IDB。将加密部分与Ra组成TICKETA,可表示为Ra||{IDA||NA||IDB||KAB}Ka。同理制作TICKETB,可表示为Rb||{IDB||NB||IDA||KAB}Kb。
[0103] 服务站Q根据匹配的密钥卡中的随机数发生器生成随机数R3,使用R3结合指针函数得到指针P3,通过P3在服务站私钥池中提取SKQ3,计算K3=PKBSKQ3。将K3拆分为EK3和AK3。令M3_0=TICKETA||TICKETB。使用AK3对M3_0制作消息认证码MAC(M3_0,AK3)。然后使用EK3加密M3_0及其消息认证码,再连同R3一起作为M3发送至客户端B。M3可表示为R3||{M3_0||MAC(M3_0,AK3)}EK3。
[0104] 步骤4:客户端B验证TICKETB。
[0105] 客户端B收到消息后。使用R3结合指针函数得到指针P3,通过P3在服务站公钥池中提取PKQ3,计算K3=PKQ3SKB。将K3拆分为EK3和AK3,使用EK3解密得到M3_0及其消息验证码。使用AK3对M3_0计算得到消息认证码,对比验证通过后,获得TICKETA和TICKETB。
[0106] 客户端B对TICKETB进行验证。客户端B使用Rb结合指针函数得到指针Pb,通过Pb在服务站公钥池中提取PKQb,计算Kb=PKQbSKB。使用Kb解密TICKETB的加密部分获得IDB、NB、IDA和KAB。客户端B鉴别NB是否与本地NB相等,若相等,则信任会话密钥KAB作为与客户端A通信的密钥。客户端B根据匹配的密钥卡中的随机数发生器生成随机数NC,使用KAB加密步骤1中收到的NA和NC,再与TICKETA一起作为M4发送至客户端A。M4可表示为TICKETA||{NA||NC}KAB。
[0107] 步骤5:客户端A验证TICKETA.
[0108] 客户端A收到M4后,使用Ra结合指针函数得到指针Pa,通过Pa在服务站公钥池中提取PKQa,计算Ka=PKQaSKA。使用Ka解密TICKETA的加密部分获得IDA、NA、IDB和KAB。客户端A鉴别NA是否与本地NA相等,若相等,则信任会话密钥KAB作为与客户端B通信的密钥。
[0109] 客户端A使用会话密钥KAB解密得到NA和NC,将NA与本地NA进行对比,若通过,则完成对客户端B的认证。
[0110] 客户端A使用KAB加密NC并作为M5发送至客户端B。M5可表示为{NC}KAB。
[0111] 步骤6:客户端B验证客户端A。
[0112] 客户端B收到M5后,使用KAB解密得到NC。将NC与本地NC进行对比,若通过,则完成对客户端A的认证。
[0113] 步骤7:客户端A与客户端B进行安全通信。
[0114] 客户端A与客户端B可利用密钥KAB进行消息加解密和消息认证。优选为,将KAB拆分成KABE和KABA,分别作为消息加解密和消息认证密钥。
[0115] 实施例2
[0116] 系统说明
[0117] 本实施例的场景如图3所示,本图中,包括客户端A对应权利要求的主动方、客户端B对应权利要求的被动方、服务站包括量子通信服务站QA和量子通信服务站QB,简称为服务站QA和服务站QB。QA和QB分别带有各自的密钥管理服务器。客户端A和客户端B都配有客户端密钥卡,量子通信服务站QA和量子通信服务站QB配有服务站密钥卡。上述客户端A归属于量子通信服务站QA,客户端B归属于量子通信服务站QB,即A、B的密钥卡分别由QA、QB的密钥管理服务器所颁发。
[0118] 步骤1:客户端A向客户端B发起协商密钥请求。
[0119] 客户端A根据匹配的密钥卡中的随机数发生器生成随机数NA,与自己的ID即IDA一起作为M1发送至客户端B。
[0120] 步骤2:客户端B加密M1并转发至量子通信服务站QB。
[0121] 客户端B收到M1后,根据自己匹配的密钥卡中的随机数发生器生成随机数NB,将NB与M1、IDB一起组成M2_0,可表示为M1||IDB||NB。
[0122] 客户端B根据匹配的密钥卡中的随机数发生器生成随机数R2,使用R2结合指针函数得到指针P2,通过P2在服务站公钥池中提取PKQB2。令K2’=PKQB2SKB,然后将K2’拆分为EK2’和AK2’。使用AK2’对M2_0制作消息认证码MAC(M2_0,AK2’)。其中,MAC(m,k)表示以m为消息、以k为密钥的消息认证码。然后使用EK2’加密M2_0及其消息认证码,再连同R2以及IDB一起作为M2发送至服务站QB。M2可表示为R2||IDB||{M2_0||MAC(M2_0,AK2’)}EK2’。
[0123] 步骤3:服务站QB验证消息后转发至服务站QA。
[0124] 服务站QB收到M2后,使用R2结合指针函数得到指针P2,通过P2在自己的私钥池中提取SKQB2,根据IDB在客户端公钥池中提取PKB,计算K2’=PKBSKQB2。将K2’拆分为EK2’和AK2’,使用EK2’解密得到M2_0及其消息验证码。使用AK2’对M2_0计算得到消息认证码,对比验证通过后,令M3’=M2_0,即M3’可表示为IDA||NA||IDB||NB。
[0125] 服务站QB与服务站QA通过QKD协商获得密钥K3’,将K3’拆分成EK3’和AK3’,使用AK3’对M3’计算消息认证码MAC(M3’,AK3’),然后使用EK3’加密M3’及其消息认证码。发送至服务站QA的消息可表示为{M3’||MAC(M3’,AK3’)}EK3’。
[0126] 步骤4:量子通信服务站QA制作TICKETA’并发送至量子通信服务站QB。
[0127] 服务站QA接收到QKD密钥加密的消息后,将QKD密钥K3’拆分成EK3’和AK3’,使用EK3’解密获得M3’及其消息认证码后对消息认证码进行验证。验证通过后,服务站QA根据匹配的密钥卡中的随机数发生器生成随机数Ra’,使用Ra’结合指针函数得到指针Pa,通过Pa在服务站私钥池中提取SKQAa,再根据IDA在客户端公钥池中提取客户端A的公钥PKA,计算Ka’=PKASKQAa。
[0128] 服务站QA根据匹配的密钥卡中的随机数发生器生成会话密钥KAB,使用Ka’加密KAB,同时被加密的还有IDA、NA以及IDB。将加密部分与Ra’组成TICKETA’,可表示为Ra’||{IDA||NA||IDB||KAB}Ka’。
[0129] 将TICKETA’与KAB组成M4’,使用QKD密钥K4加密M4’并发送至服务站QB,加密方式与上文相同。发送的消息可表示为{M4’||MAC(M4’,AK4)}EK4。
[0130] 步骤5:量子通信服务站QB向客户端B发送TICKETA’和TICKETB’。
[0131] 服务站QB接收到QKD密钥加密的消息后,使用QKD密钥解密,解密以及消息验证方式与上文相同。服务站QB获得M4’即TICKETA’和KAB。服务站QB根据匹配的密钥卡中的随机数发生器生成随机数Rb’,使用Rb’结合指针函数得到指针Pb,通过Pb在服务站私钥池中提取SKQBb,再根据IDB在客户端公钥池中提取客户端B的公钥PKB,计算Kb’=PKBSKQBb。使用Kb’加密KAB,同时被加密的还有IDB、NB以及IDA。将加密部分与Rb’组成TICKETB’,可表示为Rb’||{IDB||NB||IDA||KAB}Kb’。
[0132] 服务站QB根据匹配的密钥卡中的随机数发生器生成随机数R5’,使用R5’结合指针函数得到指针P5,通过P5在服务站私钥池中提取SKQB5,计算K5’=PKBSKQB5。将K5’拆分为EK5’和AK5’。令M5’_0=TICKETA’||TICKETB’。使用AK5’对M5’_0制作消息认证码MAC(M5’_0,AK5’)。然后使用EK5’加密M5’_0及其消息认证码,再连同R5’一起作为M5’发送至客户端B。M5’可表示为R5’||{M5’_0||MAC(M5’_0,AK5’)}EK5’。
[0133] 步骤6:客户端B验证TICKETB’。
[0134] 客户端B收到M5’后。使用R5’结合指针函数得到指针P5,通过P5在服务站公钥池中提取PKQB5,计算K5’=PKQB5SKB。将K5’拆分为EK5’和AK5’,使用EK5’解密得到M5’_0及其消息验证码。使用AK5’对M5’_0计算得到消息认证码,对比验证通过后,获得TICKETA’和TICKETB’。
[0135] 客户端B对TICKETB’进行验证。客户端B使用Rb’结合指针函数得到指针Pb,通过Pb在服务站公钥池中提取PKQBb,计算Kb’=PKQBbSKB。使用Kb’解密TICKETB’的加密部分获得IDB、NB、IDA和KAB。客户端B鉴别NB是否与本地NB相等,若相等,则信任会话密钥KAB作为与客户端A通信的密钥。客户端B根据匹配的密钥卡中的随机数发生器生成随机数NC,使用KAB加密步骤1中收到的NA和NC,再与TICKETA’一起作为M6’发送至客户端A。M6’可表示为TICKETA’||{NA||NC}KAB。
[0136] 步骤7:客户端A验证TICKETA’.
[0137] 客户端A收到M6’后,使用Ra’结合指针函数得到指针Pa,通过Pa在服务站公钥池中提取PKQAa,计算Ka’=PKQAaSKA。使用Ka’解密TICKETA’的加密部分获得IDA、NA、IDB和KAB。客户端A鉴别NA是否与本地NA相等,若相等,则信任会话密钥KAB作为与客户端B通信的密钥。
[0138] 客户端A使用会话密钥KAB解密得到NA和NC,将NA与本地NA进行对比,若通过,则完成对客户端B的认证。
[0139] 客户端A使用KAB加密NC并作为M7’发送至客户端B。M7’可表示为{NC}KAB。
[0140] 步骤8:客户端B验证客户端A。
[0141] 客户端B收到M7’后,使用KAB解密得到NC。将NC与本地NC进行对比,若通过,则完成对客户端A的认证。
[0142] 步骤9:客户端A与客户端B进行安全通信。
[0143] 客户端A与客户端B可利用密钥KAB进行消息加解密和消息认证。优选为,将KAB拆分成KABE和KABA,分别作为消息加解密和消息认证密钥。
[0144] 关于主动方设备、被动方设备、及服务站设备以及系统的具体限定可以参见上文中对于量子通信服务站认证方法的限定,在此不再赘述。上述各设备中的各个模可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0145] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储身份认证的相关数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法。
[0146] 其中根据上述公开的技术方案的具体步骤的归纳可以得到权利要求中实施在主动方的基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在被动方的基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法以及实施在服务站的基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,因此不再赘述。
[0147] 本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0148] 其中根据上述公开的技术方案的具体步骤的归纳可以得到权利要求中实施在主动方的基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,实施在被动方的基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法以及实施在服务站的基于非对称密钥池对和DH协议的量子通信服务站密钥协商方法,因此不再赘述。
[0149] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
[0150] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0151] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈