首页 / 专利库 / 人工智能 / 量子计算机 / 基于身份的量子通信服务站保密通信方法和系统

基于身份的量子通信服务站保密通信方法和系统

阅读:675发布:2020-05-13

专利汇可以提供基于身份的量子通信服务站保密通信方法和系统专利检索,专利查询,专利分析的服务。并且本 申请 涉及一种基于身份的量子通信服务站保密通信方法和系统,本 发明 中,使用的密钥卡是独立的 硬件 隔离设备。公钥、私钥和群组对称密钥池以及其他相关参数均存储在密钥卡中的数据安全区,被恶意 软件 或恶意操作窃取密钥的可能性大大降低,也不会被 量子计算 机 获取并破解。由于在经典网络中均无涉及公私钥及 算法 参数的明文传递,因此非对称密钥被破解的 风 险很低,另外,服务站与服务站之间采用QKD进行加密传输消息,所以消息的安全性得到极大的保障。,下面是基于身份的量子通信服务站保密通信方法和系统专利的具体信息内容。

1.基于身份的量子通信服务站保密通信方法,其特征在于,所述量子通信服务站保密通信方法包括:
各客户端、服务站均能进行保密运算,所述保密运算过程如下:
利用目标设备信息进行哈希计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行密钥指针函数计算得到相应的密钥指针地址,利用所述密钥指针地址密钥卡中的群组对称密钥池中取出第一密钥,将目标设备信息和第一密钥进行预设运算得到{0,1}n范围内的保密参数,利用所述保密参数计算得到目标公钥;利用所述目标公钥对第一消息进行预设的加密,得到第一密文,所述第一密文包括第一密文参数和第二密文参数,对第二密文参数进行哈希算法得到第二哈希值;利用所述保密参数对所述第二哈希值进行计算得到第一认证码,利用所述第一认证码对所述第一密文参数进行偏移量计算得到第三密文参数,生成第二密文,所述第二密文包括第三密文参数和第二密文参数;
第一客户端加密通信获得第二客户端的第二设备信息,将所述第二设备信息作为目标设备信息,将第二消息作为所述第一消息进行所述保密计算,得到作为第二密文的第一加密包;向第二客户端发送所述第一加密包,第一客户端的第一设备信息以及第二客户端的第二设备信息;
所述第二客户端获取所述第一设备信息后判断所述第一客户端是否为同群组成员,若所述第一客户端不是同群组成员,对所述第一加密包的第二密文参数进行哈希算法得到第三哈希值,生成第三消息,所述第三消息包括所述第一设备信息,所述第二设备信息以及所述第三哈希值;获取作为上位服务站的第二服务站的第四设备信息;将所述第四设备信息作为目标设备信息,将所述第三消息作为所述第一消息进行所述保密计算,得到作为第二密文的第二加密包;将所述第二加密包发送至所述第二服务站;
所述第二服务站获取所述第二加密包后,将所述第四设备信息作为目标设备信息进行所述保密计算的解密计算获得所述第三消息,将所述第三消息加密发送给所述第一客户端的上位服务站,即第一服务站;
所述第一服务站获取、解密所述第三消息后,将第二设备信息作为目标设备信息进行所述保密计算,得到第一客户端进行所述保密计算时得到第一私钥和偏移量计算信息,所述第一私钥与所述第一客户端进行所述保密计算时所用的所述目标公钥为密钥对,所述偏移量计算信息为所述第一客户端进行所述保密计算的偏移量计算时的关键信息;将所述第一私钥和偏移量计算信息加密发送给所述第二服务站;
所述第二服务站获取、解密来自所述第一服务站的所述第一私钥和偏移量计算信息后,将所述第二设备信息作为目标设备信息,将所述第一私钥和偏移量计算信息作为所述第一消息进行所述保密计算,得到作为第二密文的第三加密包;将所述第三加密包发送至所述第二客户端;
所述第二客户端获取所述第三加密包后,将所述第二设备信息作为目标设备信息,进行所述保密计算的解密计算获得所述第一私钥和偏移量计算信息,利用所述第一私钥和偏移量计算信息解密所述第一加密包后获得所述第一客户端发送的第二消息。
2.如权利要求1所述的量子通信服务站保密通信方法,其特征在于,所述第二客户端获取所述第一设备信息后判断所述第一客户端是否为同群组成员,若所述第一客户端是同群组成员,将所述第二设备信息作为目标设备信息,进行所述保密计算的解密计算获得所述第二消息。
3.如权利要求1所述的量子通信服务站保密通信方法,其特征在于,所述客户端通过目标设备信息判断目标客户端是否为同群组成员时,加密通信所述第二服务站。
4.一种第一客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1中所述量子通信服务站保密通信方法的中的第一客户端的步骤。
5.一种第二客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1中所述量子通信服务站保密通信方法的中的第二客户端的步骤。
6.一种第一服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1中所述量子通信服务站保密通信方法的中的第一服务站的步骤。
7.一种第二服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1中所述量子通信服务站保密通信方法的中的第二服务站的步骤。
8.基于身份的量子通信服务站保密通信系统,其特征在于,包括第一客户端,第二客户端,服务站以及通信网络;所述第一客户端和第二客户端均配置有客户端密钥卡,所述客户端密钥卡内存储有与自身群组相同的群组对称密钥池;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有与自身群组相同的群组对称密钥池;
所述第一客户端,第二客户端,服务站通过所述通信网络实现权利要求1中所述量子通信服务站保密通信方法的步骤。
9.如权利要求8所述的量子通信服务站保密通信系统,其特征在于,所述服务站包括第一服务站和第二服务站,所述第一服务站为所述第一客户端的上位设备,所述第二服务站为所述第二客户端的上位设备;所述第一服务站和第二服务站通过量子干线通信。
10.如权利要求8所述的量子通信服务站保密通信系统,其特征在于,所述第一客户端和第二客户端均为同一服务站的下位设备,所述第一客户端、第二客户端以及服务站之间通过经典网络通信。

说明书全文

基于身份的量子通信服务站保密通信方法和系统

技术领域

[0001] 本申请涉及安全通信技术领域,特别是涉及基于身份的量子通信服务站保密通信方法和系统。

背景技术

[0002] 迅速发展的Internet给人们的生活、工作带来了巨大的方便,人们可以坐在家里通过Internet收发电子邮件、打电话、进行网上购物、行转账等活动。同时网络信息安全也逐渐成为一个潜在的巨大问题。一般来说网络信息面临着以下几种安全隐患:网络信息被窃取、信息被篡改、攻击者假冒信息、恶意破坏等。
[0003] 其中保密通信是其中一种保护人们网络信息的手段,一般通过密码学加密的方法来实现,加密之前通信双方需要共享保密通信密钥。而当前进行保密通信主要是依靠密码技术,而在如今的密码学领域中,主要有两种密码系统,一是对称密钥密码系统,即加密密钥和解密密钥使用同一个。另一个是公开密钥密码系统,即加密密钥和解密密钥不同,其中一个可以公开。目前大部分的保密通信使用算法时,一般先依靠公钥密码体系获取共享对称密钥,然后使用对称密钥对消息进行加密。
[0004] 公开密钥加密系统采用的加密钥匙(公钥)和解密钥匙(私钥)是不同的。由于加密钥匙是公开的,密钥的分配和管理就很简单,公开密钥加密系统还能够很容易地实现数字签名。
[0005] 自公钥加密问世以来,学者们提出了许多种公钥加密方法,它们的安全性都是基于复杂的数学难题。但是在传统的公钥密码学中,公钥是与身份无关的字符串,存在如何确认公钥真实性的问题。公钥基础设施PKI运用可信任第三方——认证中心(Certification Authority,CA)颁发公钥证书的方式来绑定公钥和身份信息。但是PKI证书办理复杂,需搭建复杂的CA系统,证书发布、吊销、验证和保存需求占用较多资源,这就限制PKI在实时和低带宽环境中的广泛应用。
[0006] 2001年,斯坦福大学的密码学专家Dan Boneh和加州大学戴维斯分校的教授Matt Franklin设计出了实用的基于身份的加密方案IBE。IBE不但加密机制简单易用,而且形成了数据加密和身份认证相互独立的一个安全的通信环境,为网络应用提供了灵活的身份认证机制。IBE(identity based encryption)认证技术有两种实现方式:一种是Doneh和Matthew Franklin(D.B/M.F)算法;另一种是组合公钥算法CP(Combined Public Key)。IBE不仅可以解决对称密钥加密存在的密钥管理复杂性问题,同时也可以解决PKI证书管理复杂问题。
[0007] 但是随着量子计算机的发展,经典非对称密钥加密算法将不再安全,无论加解密还是密钥交换方法,量子计算机都可以通过公钥计算得到私钥,因此目前常用的非对称密钥将在量子时代变得不堪一击。目前量子密钥分发设备QKD可确保协商的密钥无法被获取。但是QKD主要用于量子通信网络内部,用户端设备到量子通信网络之间依旧为经典网络,因此依靠非对称算法很难保证身份认证过程的安全。
[0008] 由于量子计算机的潜在威胁,现有基于对称密钥池进行保密通信的方案,利用量子通信服务站与量子密钥卡之间的对称密钥进行身份认证和密钥协商,并继而进行保密通信,放弃使用公钥密码学,以避免保密通信系统被量子计算机破解。
[0009] 现有技术存在的问题:
[0010] 1.现有基于对称密钥池进行保密通信的方案,量子通信服务站与量子密钥卡之间使用对称密钥池,其容量巨大,对量子通信服务站的密钥存储带来压
[0011] 2.现有基于对称密钥池进行保密通信的方案,由于对称密钥池密钥容量巨大,量子通信服务站不得不将密钥加密存储于普通存储介质例如硬盘内,而无法存储于量子通信服务站的密钥卡内;
[0012] 3.现有基于对称密钥池进行保密通信的方案,由于对称密钥池密钥容量巨大,给密钥备份造成麻烦。
[0013] 4.现有基于对称密钥池进行保密通信的方案,基于密钥卡ID进行身份识别,实际通信过程中,由于通信对方的密钥卡ID不直观且难以记忆,用户使用不便。而现有基于身份的密码学,容易被量子计算机破解。发明内容
[0014] 基于此,有必要针对上述技术问题,提供一种能够减少服务站存储数据量的基于身份的量子通信服务站保密通信方法。
[0015] 本申请公开了基于身份的量子通信服务站保密通信方法,所述量子通信服务站保密通信方法包括:
[0016] 各客户端、服务站均能进行保密运算,所述保密运算过程如下:
[0017] 利用目标设备信息进行哈希计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行密钥指针函数计算得到相应的密钥指针地址,利用所述密钥指针地址密钥卡中的群组对称密钥池中取出第一密钥,将目标设备信息和第一密钥进行预设运算得到范围内的保密参数,利用所述保密参数计算得到目标公钥;利用所述目标公钥对第一消息进行预设的加密,得到第一密文,所述第一密文包括第一密文参数和第二密文参数,对第二密文参数进行哈希算法得到第二哈希值;利用所述保密参数对所述第二哈希值进行计算得到第一认证码,利用所述第一认证码对所述第一密文参数进行偏移量计算得到第三密文参数,生成第二密文,所述第二密文包括第三密文参数和第二密文参数;
[0018] 第一客户端加密通信获得第二客户端的第二设备信息,将所述第二设备信息作为目标设备信息,将第二消息作为所述第一消息进行所述保密计算,得到作为第二密文的第一加密包;向第二客户端发送所述第一加密包,第一客户端的第一设备信息以及第二客户端的第二设备信息;
[0019] 所述第二客户端获取所述第一设备信息后判断所述第一客户端是否为同群组成员,若所述第一客户端不是同群组成员,对所述第一加密包的第二密文参数进行哈希算法得到第三哈希值,生成第三消息,所述第三消息包括所述第一设备信息,所述第二设备信息以及所述第三哈希值;获取作为上位服务站的第二服务站的第四设备信息;将所述第四设备信息作为目标设备信息,将所述第三消息作为所述第一消息进行所述保密计算,得到作为第二密文的第二加密包;将所述第二加密包发送至所述第二服务站;
[0020] 所述第二服务站获取所述第二加密包后,将所述第四设备信息作为目标设备信息进行所述保密计算的解密计算获得所述第三消息,将所述第三消息加密发送给所述第一客户端的上位服务站,即第一服务站;
[0021] 所述第一服务站获取、解密所述第三消息后,将第二设备信息作为目标设备信息进行所述保密计算,得到第一客户端进行所述保密计算时得到第一私钥和偏移量计算信息,所述第一私钥与所述第一客户端进行所述保密计算时所用的所述目标公钥为密钥对,所述偏移量计算信息为所述第一客户端进行所述保密计算的偏移量计算时的关键信息;将所述第一私钥和偏移量计算信息加密发送给所述第二服务站;
[0022] 所述第二服务站获取、解密来自所述第一服务站的所述第一私钥和偏移量计算信息后,将所述第二设备信息作为目标设备信息,将所述第一私钥和偏移量计算信息作为所述第一消息进行所述保密计算,得到作为第二密文的第三加密包;将所述第三加密包发送至所述第二客户端;
[0023] 所述第二客户端获取所述第三加密包后,将所述第二设备信息作为目标设备信息,进行所述保密计算的解密计算获得所述第一私钥和偏移量计算信息,利用所述第一私钥和偏移量计算信息解密所述第一加密包后获得所述第一客户端发送的第二消息。
[0024] 优选的,所述第二客户端获取所述第一设备信息后判断所述第一客户端是否为同群组成员,若所述第一客户端是同群组成员,将所述第二设备信息作为目标设备信息,进行所述保密计算的解密计算获得所述第二消息。
[0025] 优选的,所述客户端通过目标设备信息判断目标客户端是否为同群组成员时,加密通信所述第二服务站。
[0026] 本申请公开了一种第一客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第一客户端的步骤。
[0027] 本申请公开了一种第二客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第二客户端的步骤。
[0028] 本申请公开了一种第一服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第一服务站的步骤。
[0029] 本申请公开了一种第二服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第二服务站的步骤。
[0030] 本申请公开了基于身份的量子通信服务站保密通信系统,包括第一客户端,第二客户端,服务站以及通信网络;所述第一客户端和第二客户端均配置有客户端密钥卡,所述客户端密钥卡内存储有与自身群组相同的群组对称密钥池;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有与自身群组相同的群组对称密钥池;
[0031] 所述第一客户端,第二客户端,服务站通过所述通信网络实现上述技术方案中所述量子通信服务站保密通信方法的步骤。
[0032] 优选的,所述服务站包括第一服务站和第二服务站,所述第一服务站为所述第一客户端的上位设备,所述第二服务站为所述第二客户端的上位设备;所述第一服务站和第二服务站通过量子干线通信。
[0033] 优选的,所述第一客户端和第二客户端均为同一服务站的下位设备,所述第一客户端、第二客户端以及服务站之间通过经典网络通信。
[0034] 本发明中,使用的密钥卡是独立的硬件隔离设备。公钥、私钥和群组对称密钥池以及其他相关参数均存储在密钥卡中的数据安全区,被恶意软件或恶意操作窃取密钥的可能性大大降低,也不会被量子计算机获取并破解。由于在经典网络中均无涉及公私钥及算法参数的明文传递,因此非对称密钥被破解的险很低,另外,服务站与服务站之间采用QKD进行加密传输消息,所以消息的安全性得到极大的保障。
[0035] 密钥卡保障了通信双方在群组中的通信安全,极大的提高了消息的安全性。同时非对称算法和群组对称密钥池的结合使用,解决了对称密钥池给量子通信服务站带来密钥存储压力,降低了存储成本。例如,原先用户的对称密钥池大小均为1G,用户个数为N,则量子通信服务站需要存储N G的密钥池,而如果存储群组对称密钥池,用户端存储密钥池大小同样为1G,量子通信服务站同样只需要存储1G大小的密钥池。
[0036] 同时,本专利不再基于密钥卡ID进行身份识别,实际通信过程中,由于通信对方的身份直观且容易记忆,因此用户使用方便。
[0037] 同时,本专利对基于身份的加密流程进行改进,使得公私钥的计算和消息的加解密不仅仅自身身份ID和算法的系统参数,还涉及到相应群组的对称密钥池,不拥有对称密钥池的敌方将难以计算得到用户的公钥。另外,对容易被量子计算机破解的密文参数(r*P)进行偏移量计算,该偏移量只能被基于加密者群组的对称密钥池计算得到的密钥进行偏移量恢复,即使量子计算机也无法得到r,即本文的非对称加密方式具有抗量子计算的特性。而常规做法是,对密文参数(r*P)进行对称加密计算,其计算量大大高于本专利的偏移量计算。因此本专利的偏移量计算是一种更优的抗量子计算方式。
附图说明
[0038] 图1为本发明公钥计算流程图
[0039] 图2为实施例1的设备场景图;
[0040] 图3为实施例2的设备场景图。

具体实施方式

[0041] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。其中本申请中的服务站在未做特殊说明的情况下均为量子通信服务站,本申请中的各名称以字母和数字组合为准,例如Q,服务站Q,服务站在下文表示同一含义,即服务站Q;再例如第一密钥KR1,KR1,真随机数KR1,第一密钥在下文中表示同一含义,即第一密钥KR1,其余名称同理。
[0042] 本申请公开了基于身份的量子通信服务站保密通信方法,所述量子通信服务站保密通信方法包括:
[0043] 各客户端、服务站均能进行保密运算,所述保密运算过程如下:
[0044] 利用目标设备信息进行哈希计算得到第一哈希值,利用所述第一哈希值作为密钥指针随机数进行密钥指针函数计算得到相应的密钥指针地址,利用所述密钥指针地址密钥卡中的群组对称密钥池中取出第一密钥,将目标设备信息和第一密钥进行预设运算得到范围内的保密参数,利用所述保密参数计算得到目标公钥;利用所述目标公钥对第一消息进行预设的加密,得到第一密文,所述第一密文包括第一密文参数和第二密文参数,对第二密文参数进行哈希算法得到第二哈希值;利用所述保密参数对所述第二哈希值进行计算得到第一认证码,利用所述第一认证码对所述第一密文参数进行偏移量计算得到第三密文参数,生成第二密文,所述第二密文包括第三密文参数和第二密文参数;
[0045] 第一客户端加密通信获得第二客户端的第二设备信息,将所述第二设备信息作为目标设备信息,将第二消息作为所述第一消息进行所述保密计算,得到作为第二密文的第一加密包;向第二客户端发送所述第一加密包,第一客户端的第一设备信息以及第二客户端的第二设备信息;
[0046] 所述第二客户端获取所述第一设备信息后判断所述第一客户端是否为同群组成员,若所述第一客户端不是同群组成员,对所述第一加密包的第二密文参数进行哈希算法得到第三哈希值,生成第三消息,所述第三消息包括所述第一设备信息,所述第二设备信息以及所述第三哈希值;获取作为上位服务站的第二服务站的第四设备信息;将所述第四设备信息作为目标设备信息,将所述第三消息作为所述第一消息进行所述保密计算,得到作为第二密文的第二加密包;将所述第二加密包发送至所述第二服务站;
[0047] 所述第二服务站获取所述第二加密包后,将所述第四设备信息作为目标设备信息进行所述保密计算的解密计算获得所述第三消息,将所述第三消息加密发送给所述第一客户端的上位服务站,即第一服务站;
[0048] 所述第一服务站获取、解密所述第三消息后,将第二设备信息作为目标设备信息进行所述保密计算,得到第一客户端进行所述保密计算时得到第一私钥和偏移量计算信息,所述第一私钥与所述第一客户端进行所述保密计算时所用的所述目标公钥为密钥对,所述偏移量计算信息为所述第一客户端进行所述保密计算的偏移量计算时的关键信息;将所述第一私钥和偏移量计算信息加密发送给所述第二服务站;
[0049] 所述第二服务站获取、解密来自所述第一服务站的所述第一私钥和偏移量计算信息后,将所述第二设备信息作为目标设备信息,将所述第一私钥和偏移量计算信息作为所述第一消息进行所述保密计算,得到作为第二密文的第三加密包;将所述第三加密包发送至所述第二客户端;
[0050] 所述第二客户端获取所述第三加密包后,将所述第二设备信息作为目标设备信息,进行所述保密计算的解密计算获得所述第一私钥和偏移量计算信息,利用所述第一私钥和偏移量计算信息解密所述第一加密包后获得所述第一客户端发送的第二消息。
[0051] 优选的,所述第二客户端获取所述第一设备信息后判断所述第一客户端是否为同群组成员,若所述第一客户端是同群组成员,将所述第二设备信息作为目标设备信息,进行所述保密计算的解密计算获得所述第二消息。
[0052] 优选的,所述客户端通过目标设备信息判断目标客户端是否为同群组成员时,加密通信所述第二服务站。
[0053] 本申请公开了一种第一客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第一客户端的步骤。
[0054] 本申请公开了一种第二客户端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第二客户端的步骤。
[0055] 本申请公开了一种第一服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第一服务站的步骤。
[0056] 本申请公开了一种第二服务站设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述技术方案中所述量子通信服务站保密通信方法的中的第二服务站的步骤。
[0057] 本申请公开了基于身份的量子通信服务站保密通信系统,包括第一客户端,第二客户端,服务站以及通信网络;所述第一客户端和第二客户端均配置有客户端密钥卡,所述客户端密钥卡内存储有与自身群组相同的群组对称密钥池;所述服务站配置有服务站密钥卡,所述服务站密钥卡内存储有与自身群组相同的群组对称密钥池;
[0058] 所述第一客户端,第二客户端,服务站通过所述通信网络实现上述技术方案中所述量子通信服务站保密通信方法的步骤。
[0059] 优选的,所述服务站包括第一服务站和第二服务站,所述第一服务站为所述第一客户端的上位设备,所述第二服务站为所述第二客户端的上位设备;所述第一服务站和第二服务站通过量子干线通信。
[0060] 优选的,所述第一客户端和第二客户端均为同一服务站的下位设备,所述第一客户端、第二客户端以及服务站之间通过经典网络通信。
[0061] 量子通信技术是基于量子物理学建立起来的新兴安全通信技术。我国的量子通信技术已经进入了实用化的阶段,其应用前景和战略意义也引起了地方政府和重要行业对其产业发展的广泛关注。除建立量子通信干线以外,一些规模化城域量子通信网络也已经建设成功并运行。基于城域量子通信网络,量子通信技术也有了初步的应用,可实现高保密性的视频语音通信等应用。量子通信干线和量子通信城域网等量子通信网络,组成量子通信网络,其本质是量子密钥分发(QKD)。因此以QKD技术为基础建立起来的量子通信网络可称为QKD网络。
[0062] 虽然目前量子城域网已经可以允许用户接入并享有量子网络的高安全特性,但是目前用户接入量子网络的部分仍然是整个量子通信网络中的软肋。一方面量子密钥分发后的密钥安全到达用户手中是一个很大的问题,存在被窃取或篡改的风险;另一方面,同一台量子密钥分发设备所能连接的用户数有限,无法同时连接大量用户。因此需要在用户接入量子网络的部分,采用量子通信服务站的方式,解决上述问题:
[0063] (1)量子通信服务站作为类似运营商的色,一方面与QKD网络建立合作关系,实现安全连接的保证,从而保证量子密钥可以安全分发到量子通信服务站;另一方面,量子通信服务站为用户颁发量子密钥卡,将量子随机数密钥颁发给用户,同时自身保存用户所拥有的密钥,可实现量子通信服务站与用户之间的安全通信。
[0064] (2)量子通信服务站可以搭建为集群服务器的模式,可以同时接入大量用户。
[0065] 本发明实现场景为在一个基于非对称密钥池体系下的任意两个对象A、B进行相互的身份认证并进行密钥协商。本发明的密钥池体系中每个对象都具有密钥卡,可存储大数据量的密钥,也具备处理信息的能力。本发明中,对象A和对象B的本地系统中都存在相应需求的算法。
[0066] 密钥卡的描述可见申请号为“201610843210.6”的专利。当为移动终端时,密钥卡优选为密钥SD卡;当为固定终端时,密钥卡优选为密钥USBkey或主机密钥板卡。
[0067] 与申请号为“201610843210.6”的专利相比,密钥卡的颁发机制有所类似。本专利的密钥卡颁发方为密钥卡的主管方,一般为群组的管理部,例如某企业或事业单位的管理部门;密钥卡被颁发方为密钥卡的主管方所管理的成员,一般为某企业或事业单位的各级员工。用户端首先到密钥卡的主管方申请开户。当用户端进行注册登记获批后,将得到密钥卡(具有唯一的密钥卡ID)。密钥卡存储了客户注册登记信息。同一量子通信服务站下的客户端密钥卡中的公钥池都下载自同一个密钥管理服务器,且其颁发的每个客户端密钥卡中存储的公钥池是完全一致的。优选为,密钥卡中存储的密钥池大小可以是1G、2G、4G、8G、16G、32G、64G、128G、256G、512G、1024G、2048G、4096G等等。
[0068] 密钥卡从智能卡技术上发展而来,是结合了真随机数发生器(优选为量子随机数发生器)、密码学技术、硬件安全隔离技术的身份认证和加解密产品。密钥卡的内嵌芯片和操作系统可以提供密钥的安全存储和密码算法等功能。由于其具有独立的数据处理能力和良好的安全性,密钥卡成为私钥和密钥池的安全载体。每一个密钥卡都有硬件PIN码保护,PIN码和硬件构成了用户使用密钥卡的两个必要因素。即所谓“双因子认证”,用户只有同时取得保存了相关认证信息的密钥卡和用户PIN码,才可以登录系统。即使用户的PIN码被泄露,只要用户持有的密钥卡不被盗取,合法用户的身份就不会被仿冒;如果用户的密钥卡遗失,拾到者由于不知道用户PIN码,也无法仿冒合法用户的身份。
[0069] 本发明中,密钥卡内存储为群组对称密钥池,即相同群组下所有密钥卡内的对称密钥池都相同。所述密钥卡由密钥管理服务器颁发。密钥管理服务器可以是量子通信服务站的组成部分,也可以是与特定量子通信服务站所配套的独立不联网系统。
[0070] 密钥管理服务器部署时会存储有IBE认证技术的D.B/M.F算法的系统参数。所有密钥管理服务器存储的D.B/M.F算法系统参数为同一套系统参数。创建原理如下:
[0071] (1)先选择一个长度大于等于1024比特的素数p,找一个满足WDH安全假设的超奇异椭圆曲线E/GF(p),E/GF(p)的q阶子群G,G的生成元P和双线性映射
[0072] (2)定义hash函数H1:GF(p2)→{0,1}n,及一个用于将用户身份ID映射到椭圆曲线上阶为q点的函数F:{0,1}n→E/GF(p);
[0073] (3)明文空间是:M={0,1}n,密文空间是:C=E/GF(p)×{0,1}n;
[0074] (4)随机地取s∈Zq*作为该算法系统的主密钥s仅保存在密钥管理服务器,计算系统公钥Ppub=s·P;
[0075] 密钥管理服务器会产生大量的真随机数组成一个文件作为群组对称密钥池。密钥管理服务器在初始化密钥卡时,会将群组对称密钥池写入到密钥卡的密钥区,同时会将D.B/M.F算法系统参数的公共部分 存储在密钥卡内。密钥管理服务器会为每个密钥卡分配一个ID,并计算该ID的哈希值得到HID=HASH(ID)作为密钥指针随机数。服务器通过密钥指针算法FP计算密钥指针随机数HID得到密钥位置PID。服务器通过PID从群组对称密钥池中找到相应的密钥KID。服务器利用指定算法计算ID和KID得到处于{0,
1}n范围内的参数CID=FC(ID,KID)。上述通过ID计算得到参数CID的过程可参考图1。服务器计算得到对应的公钥QCID=F(CID)(此处函数F即为上文系统参数(2)中提到的函数),并计算得到该密钥卡对应的私钥dCID=s·QCID。服务器会将生成的ID、公钥QCID和私钥dCID一起颁发给密钥卡。本发明实施例中使用的加解密公式请参考D.B/M.F算法。
[0076] 实施例1
[0077] 本实施例的场景如图2所示,本图中,包括客户端A、客户端B、量子通信服务站QA和量子通信服务站QB,简称为服务站QA和服务站QB。本实施例中,客户端A的密钥卡和服务站QA属于同一个群组,即密钥卡内群组对称密钥池相同;客户端B的密钥卡和服务站QB属于同一个群组,即密钥卡内群组对称密钥池相同;服务站QA的密钥卡和服务站QB的密钥卡属于不同群组,即密钥卡内群组对称密钥池不相同。
[0078] 设客户端A的密钥卡ID为IDA;设服务站QA的密钥卡ID为IDQA;设客户端B的密钥卡ID为IDB;设服务站QB的密钥卡ID为IDQB。下文中各设备端的密钥卡简称为客户端A、客户端B、服务站QA和服务站QB。
[0079] 量子通信服务站之间的加解密消息方式如下:
[0080] 量子通信服务站通过QKD与目标量子通信服务站协商得到保密性密钥和完整性密钥,利用所得完整性密钥对消息进行消息认证计算得到消息认证码。量子通信服务站利用所得保密性密钥加密消息和消息认证码得到密文消息,并发送密文消息到目标量子通信服务站。
[0081] 目标量子通信服务站利用保密性密钥解密所得密文消息得到消息和消息认证码。目标量子通信服务站利用完整性密钥对消息认证码进行验证。
[0082] 步骤1:客户端A发送消息至客户端B
[0083] 客户端A取得客户端B的ID为IDB,获取方式可以为与客户端B通信或通过量子服务站QA接入量子网络获取。客户端A对IDB进行哈希算法计算得到HIDB=HASH(IDB)。将HIDB作为密钥指针随机数,进行密钥指针函数Fp计算得到相应的密钥指针地址PIDB,通过密钥指针地址PIDB从密钥卡中的群组对称密钥池中取出密钥KIDB’。客户端A利用指定算法计算IDB和KIDB’得到处于{0,1}n范围内的参数CIDB’=FC(IDB,KIDB’),并计算得到客户端B对应的公钥QIDB’=F(CIDB’)。上述过程和上文服务器产生公钥的方式相同。公钥QIDB’是基于客户端A所属群组,并非客户端B自身密钥卡存储的公钥。
[0084] 客户端A利用客户端B对应的公钥QIDB’对明文M进行加密,计算过程如下:
[0085]
[0086]
[0087] 所得密文C0B表示为C0B=(U1,V1)。客户端A对V1进行哈希算法得到VH1=HASH(V1)。并利用参数CIDB作为密钥对VH1进行消息认证算法得到UK1=MAC(VH1,CIDB)。客户端A利用UK1作为密钥对U1进行偏移量计算得到U1-UK1*P。客户端A得到密文C1B=(U1-UK1*P,V1)。客户端A将IDA、IDB和密文C1B打包得到{IDA||IDB||C1B}并直接发送至客户端B。
[0088] 步骤2:客户端B向服务站QB请求密钥
[0089] 客户端B收到消息后得到IDA、IDB和密文C1B。客户端B通过请求服务站QB验证得知IDA为非客户端B所在群组内的ID。客户端B将密文C1B中的V1进行哈希算法得到VH1=HASH(V1)。客户端B将IDA、IDB和VH1打包得到MB=IDA||IDB||VH1。
[0090] 客户端B将IDQB进行计算得到服务站QB的对应的公钥QIDQB,计算过程请参考本实施例中步骤1。客户端B利用公钥QIDQB对MB进行加密,计算过程如步骤1中所述,先后得到和CQB=(U2-UK2*P,V2)。客户端B将密文CQB发送至服务站QB。
[0091] 步骤3:服务站QB请求服务站QA
[0092] 服务站QB接收到来自客户端QB的密钥请求CQB=(U2-UK2*P,V2)。服务站QB对V2进行哈希算法得到VH2=HASH(V2)。服务站QB将IDQB通过计算从群组对称密钥池中取得密钥KIDQB,并计算IDQB和密钥KIDQB得到处于范围{0,1}n内的参数CIDQB=FC(IDQB,KIDQB)(此处由IDQB计算最终得到CIDQB的过程请参考本实施例中步骤1)。服务站QB利用参数CIDQB作为密钥对VH2进行消息认证算法得到UK2=MAC(VH2,CIDQB)。服务站QB将UK2作为偏移量密钥对U2-UK2*P加上偏移量UK2*P得到U2。检查U2是否为E/GF(p)中的点,如果不是,则该消息为非法消息;反之,则继续解析密文。
[0093] 服务站QB利用自身私钥dIDQB对CQB进行解密,计算过程如下:
[0094]
[0095] 服务站QB将解得的MB进行解析得到IDA、IDB和VH1。服务站QB将IDB||VH1通过QKD设备协商得到的密钥加密发送至服务站QA。加密过程请参考上文服务站之间加解密方式。
[0096] 步骤4:服务站QA返回请求应答
[0097] 服务站QA收到来自服务站QB的加密消息后,利用QKD设备协商得到的密钥解密并认证消息,得到IDB和VH1。解密过程请参考上文服务站之间加解密方式。服务站QA对IDB进行计算先后得到CIDB’、dIDB’和UK1’。CIDB’和CIDB’的计算过程请参考本实施例中步骤1,dIDB’的计算过程请参考上文中私钥的生成过程。所述CIDB’、dIDB’和UK1’的生成均是基于服务站QA所属群组的对称密钥池。
[0098] 服务站QA将UK1’和dIDB’加密发送给服务站QB。加密过程请参考上文服务站之间加解密方式。
[0099] 步骤5:服务站QB转发请求应答
[0100] 服务站QB收到来量子通信服务站QA的加密消息后,利用QKD设备协商得到的密钥解密并认证消息,得到UK1’和dIDB’。解密过程请参考上文服务站之间加解密方式。
[0101] 服务站QB利用IDB计算得到客户端B的公钥QIDB(计算过程请参考本实施例中步骤1中所述)。服务站QB利用IDB加密MQB=UK1’||dIDB’,计算过程如步骤1中所述,先后得到和C2B=(U3-UK3*P,V3)。服务站QB将密文C2B发送至客户端B。
[0102] 步骤6:客户端B解密来自客户端A的消息
[0103] 客户端B接收到来自服务站QB的消息C2B=(U3-UK3*P,V3)后,经过计算去除U3的偏移量得到U3,此处计算过程请参考本实施例中步骤3。客户端B检查U3是否为E/GF(p)中的点,如果不是,则该消息为非法消息;反之,则继续解析密文。
[0104] 客户端B利用自身私钥dIDB对C2B进行解密,计算过程如下:
[0105]
[0106] 客户端B解析MQB得到UK1’和dIDB’。UK1’的生成是基于量子通信服务器QA所述群组的对称密钥池,因此,UK1’与UK1相同。客户端B利用UK1’对U1-UK1*P加上偏移量UK1’*P得到U1。客户端B检查U1是否为E/GF(p)中的点,如果不是,则该消息为非法消息;反之,则继续解析密文。
[0107] 客户端B利用私钥dIDB’对C1B进行解密,计算过程如下:
[0108]
[0109] 即客户端B得到客户端A发送的明文M。
[0110] 实施例2
[0111] 本实施例的场景如图3所述,本图中,包括客户端A、客户端B、量子通信服务站Q,简称为服务站Q。本实施例中,客户端A的密钥卡、客户端B的密钥卡和服务站Q所属同一个群组,即密钥卡内群组对称密钥池相同。设客户端A的密钥卡ID为IDA;设服务站Q的密钥卡ID为IDQ;设客户端B的密钥卡ID为IDB。下文中各设备端的密钥卡简称为客户端A、客户端B和服务站Q。
[0112] 步骤1:客户端A发送消息至客户端B
[0113] 客户端A取得客户端B的ID为IDB,获取方式可以为与客户端B通信或通过服务站Q接入量子网络获取。客户端A对IDB进行哈希算法计算得到HIDB=HASH(IDB)。将作为HIDB密钥指针随机数,进行密钥指针函数Fp计算得到相应的密钥指针地址PIDB,通过密钥指针地址PIDB从密钥卡中的群组对称密钥池中取出密钥KIDB。客户端A利用指定算法计算IDB和KIDB得到处于{0,1}n范围内的参数CIDB=FC(IDB,KIDB),并计算得到客户端B对应的公钥QIDB=F(CIDB)。上述由设备端ID计算得到公钥的过程和上文服务器产生公钥的方式相同。
[0114] 客户端A利用客户端B对应的公钥QIDB对明文M进行加密,计算过程如下:
[0115]
[0116]
[0117] 所得密文C0B表示为C0B=(U,V)。客户端A对V进行哈希算法得到VH=HASH(V)。并利用参数CIDB作为密钥对VH进行消息认证算法得到UK=MAC(VH,CIDB)。客户端A利用UK作为密钥对U进行偏移量计算得到U-UK*P。客户端A得到密文CB=(U-UK*P,V)。客户端A将IDA、IDB和密文CB打包得到{IDA||IDB||CB}并直接发送至客户端B。
[0118] 步骤2:客户端B解密来自客户端A的消息
[0119] 客户端B收到消息后得到IDA、IDB和密文CB。客户端B通过请求服务站Q验证得知IDA为服务站Q所在群组内的ID。客户端B对V进行哈希算法得到VH=HASH(V)。客户端B将IDB通过计算从群组对称密钥池中取得密钥KIDB,并计算IDB和密钥KIDB得到处于范围{0,1}n内的参数CIDB=FC(IDB,KIDB)(此处由IDB计算最终得到CIDB的过程请参考本实施例中的步骤1)。客户端B利用参数CIDB作为密钥对VH进行消息认证算法得到UK=MAC(VH,CIDB)。客户端B将UK作为偏移量密钥对U-UK*P加上偏移量UK*P得到U。客户端B检查U是否为E/GF(p)中的点,如果不是,则该消息为非法消息;反之,则继续解析密文。
[0120] 客户端B利用自身私钥dIDB对CB进行解密,计算过程如下:
[0121]
[0122] 即客户端B得到客户端A发送的明文M。
[0123] 结论
[0124] 本发明中,使用的密钥卡是独立的硬件隔离设备。公钥、私钥和群组对称密钥池以及其他相关参数均存储在密钥卡中的数据安全区,被恶意软件或恶意操作窃取密钥的可能性大大降低,也不会被量子计算机获取并破解。由于在经典网络中均无涉及公私钥及算法参数的明文传递,因此非对称密钥被破解的风险很低,另外,服务站与服务站之间采用QKD进行加密传输消息,所以消息的安全性得到极大的保障。
[0125] 密钥卡保障了通信双方在群组中的通信安全,极大的提高了消息的安全性。同时非对称算法和群组对称密钥池的结合使用,解决了对称密钥池给量子通信服务站带来密钥存储压力,降低了存储成本。例如,原先用户的对称密钥池大小均为1G,用户个数为N,则量子通信服务站需要存储NG的密钥池,而如果存储群组对称密钥池,用户端存储密钥池大小同样为1G,量子通信服务站同样只需要存储1G大小的密钥池。
[0126] 同时,本专利不再基于密钥卡ID进行身份识别,实际通信过程中,由于通信对方的身份直观且容易记忆,因此用户使用方便。
[0127] 同时,本专利对基于身份的加密流程进行改进,使得公私钥的计算和消息的加解密不仅仅自身身份ID和算法的系统参数,还涉及到相应群组的对称密钥池,不拥有对称密钥池的敌方将难以计算得到用户的公钥。另外,对容易被量子计算机破解的密文参数(r*P)进行偏移量计算,该偏移量只能被基于加密者群组的对称密钥池计算得到的密钥进行偏移量恢复,即使量子计算机也无法得到r,即本文的非对称加密方式具有抗量子计算的特性。而常规做法是,对密文参数(r*P)进行对称加密计算,其计算量大大高于本专利的偏移量计算。因此本专利的偏移量计算是一种更优的抗量子计算方式。
[0128] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0129] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈