一种基于量子密钥卡的消息认证方法和系统与流程

文档序号:14717641发布日期:2018-06-16 01:53阅读:266来源:国知局
一种基于量子密钥卡的消息认证方法和系统与流程

本发明涉及量子通信技术领域,特别涉及一种基于量子密钥卡的消息认证系统和方法。



背景技术:

信息安全从古至今一直受到人们的广泛关注,信息已经毫无疑问的成为国家的重要战略资源,系统的安全性直接关系到国家的政治、经济、军事、社会甚至对外战略等诸多领域的成败。现如今量子保密通信技术在数据传输安全方面有着明显的优势,并已经逐渐实用化。消息认证码是在密码学中通信实体双方使用的一种验证机制,保证消息数据完整性的一种工具。构造方法由M.Bellare提出,完全依赖于Hash函数,故也称为带密钥的Hash函数。消息认证可以应用在广播等只需认证的情况或者文档的持续保护中(例如解密后的保护)。

专利申请201210443964.4公开了一种用于量子密钥分配系统的经典信道的消息认证,主要结合CRC编码和一次一密的加密方式,生成原始消息M的消息认证码MAC,其过程为消息用HASH函数作用得到其散列值,然后用一次一密密钥填充散列值作为MAC,后将MAC按照事先约定好的位置插入到原始消息M中,生成数据比特串,进行纠错发送到接收方。接收方按照事先约定好的译码方式对数据进行相应译码,译码后提取相应的消息M和消息认证码MAC,计算译码后所提取的消息M的MAC值,进行比较算得的MAC值和译码后所提取到的MAC值是否相等,若相等则确定原始消息未被篡改,反之视为未通过认证。

专利申请201610842873.6公开了一种利用量子密钥卡对量子密钥种子运算,生成密钥参与信息的消息认证方法。这种方法是量子密钥卡和网络侧的用户侧密钥在客户端与客户端通信时分别在客户端与对应的量子网络服务站进行消息认证。这样的方法存在的缺点是对量子网络服务站的压力比较大,当通信用户量庞大时,服务站上的资源可能无法满足需求,导致消息堵塞等多种问题。

现有技术存在的问题:

当消息量庞大时,消息认证对服务站的压力过大,计算资源消耗严重。需要将非关键信息通过两用户端建立点对点通信的方法传输以缓解服务站的压力。

用户侧点对点通信所用的密钥是基于数学复杂性问题的经典算法,这种算法理论上不被破译的可能性未得到正明,它们局限性在于当前的计算能力。需要通过安全的用户侧会话密钥产生方法以保证通信加密的密钥的安全性。



技术实现要素:

本发明提供一种可降低网络侧资源消耗并且保障安全性的消息认证系统。

一种基于量子密钥卡的消息认证系统,包括配置于网络侧的量子网络服务站以及配置于用户侧参与消息认证的两客户端,各客户端均配置有量子密钥卡,两客户端进行消息认证时,通过网络侧的量子网络服务站直接或间接获得共有密钥种子;两客户端分别在相应的量子密钥卡内利用所拥有的共有密钥种子生成消息认证码,并相应的在用户侧实施消息认证。

本发明中消息认证码的生成以及对比认证均在用户侧进行,参与消息认证的两客户端一者生成消息认证码,连同消息(并不限消息数据的具体格式)不经由网络侧的量子网络服务站而直接发送至另一客户端,在另一客户端内,也生成相应的消息认证码并与接收到的消息认证码进行对比,即实施认证。

由于两客户端拥有相同的共有密钥种子,且该共有密钥种子为安全性较高的量子密钥,因此保障了数据传输的安全性,消息认证码的生成以及对比认证均在用户侧进行也降低了对网络侧的数据处理资源的消耗。

共有密钥种子可以直接使用,用于两客户端生成消息认证码以及消息的加解密;作为优选,针对共有密钥种子,基于预定的算法进行运算分别生成认证密钥以及传输密钥,认证密钥用于生成消息认证码,传输密钥用于消息的加解密传输。

作为优选,两客户端间接获得共有密钥种子时,量子网络服务站先利用与两客户端量子密钥卡中相应的部分量子密钥计算获得生成共有密钥种子的信息,再将生成共有密钥种子的信息分发给两客户端,两客户端分别依据该生成共有密钥种子的信息在所匹配的量子密钥卡内生成共有密钥种子。

共有密钥种子的分发与获得可以采用直接方式,量子网络服务站生成量子随机数并直接作为共有密钥种子分发给两客户端。

共有密钥种子的分发与获得也可以采用间接方式,两客户端的量子密钥卡中本身就存储有量子密钥,且量子密钥卡与网络侧相应的量子网络服务站之间是共享的,即相应的量子网络服务站也存储有该部分量子密钥,因此可通过量子网络服务站交互共享一部分量子密钥,即分别通过量子网络服务站获得一部分对方的量子密钥,将对方的这部分量子密钥与己方共享给对方的部分量子密钥相结合,通过预定算法运算可生成共有密钥种子。

作为优选,量子网络服务站利用与两客户端量子密钥卡中相应的部分量子密钥通过异或运算得到生成共有密钥种子的信息。

为了提高安全性,量子网络服务站与各客户端通信时,首先要进行身份认证,作为优选,所述量子密钥卡与量子网络服务站之间存储有相应的量子密钥,客户端与量子网络服务站之间通信时,先利用所匹配量子密钥卡内的量子密钥与量子网络服务站之间进行身份认证。

量子网络服务站向客户端发送共有密钥种子或生成共有密钥种子的信息时,采用密文方式,通过与客户端的量子密钥卡中相应的量子密钥进行加解密。

作为优选,参与消息认证的两客户端中一者为发送待认证消息的主动方,另一者为接收待认证消息的被动方,主动方向量子网络服务站发送消息认证请求,量子网络服务站响应于该消息认证请求并生成所述共有密钥种子,再将该共有密钥种子分发给两客户端。

主动方向量子网络服务站发送的消息认证请求中,携带有被动方的信息,以便于量子网络服务站获得被动方的地址,以及根据需要取得与被动方的量子密钥卡相应的量子密钥,供量子网络服务站与被动方之间进行身份认证以及加密传输。

本发明提及的主动方、被动方为相对而言,仅为了便于表述和区分,并不限制某一客户端一定是主动方或被动方,依据发送待认证消息以及进行认证的关系不同,身份可以互换。

就身份认证本身而言,可以采用从现有技术,身份认证可以是单向的,也可以是双向的。

作为优选,量子网络服务站先将共有密钥种子发送给被动方,经被动方接收确认后,再将共有密钥种子发送给主动方。

作为优选,参与消息认证的两客户端中一者为发送待认证消息的主动方,另一者为接收待认证消息的被动方,主动方向量子网络服务站发送消息认证请求,量子网络服务站响应于该消息认证请求,依据主动方和被动方匹配的量子密钥卡分别取相应的部分量子密钥进行运算获得生成共有密钥种子的信息并分发给双方。

此过程即为共有密钥种子的间接分发,量子网络服务站将生成共有密钥种子的信息分发给双方,而真正的共有密钥种子是客户端在各自的量子密钥卡内生成。

作为优选,量子网络服务站先将生成共有密钥种子的信息发送给被动方,经被动方接收确认后;再将生成共有密钥种子的信息发送给主动方。

作为优选,参与消息认证的两客户端中一者为发送待认证消息的主动方,另一者为接收待认证消息的被动方,主动方向量子网络服务站发送消息认证请求,量子网络服务站响应于该消息认证请求,产生共有密钥种子,或产生用于生成共有密钥种子的信息;

主动方直接从量子网络服务站获得共有密钥种子或生成共有密钥种子的信息;

被动方经由主动方间接的从量子网络服务站获得共有密钥种子或生成共有密钥种子的信息。

作为优选,被动方经由主动方间接获得共有密钥种子或生成共有密钥种子的信息后,被动方首先发起挑战,待主动方应答成功后;主动方和被动方之间再实施消息认证。

挑战和应答,即作为相互认证的方式之一。

本发明中重点在于共有密钥种子或生成共有密钥种子的信息的获得以及分发,并且尤为重要的是消息认证码的生成以及对比认证均在客户端进行,一旦获得共有密钥种子,如何进行消息认证码的生成运算,以及主动方和被动方之间的加密数据传输、消息认证码对比等可以基于现有技术实现。

本发明中,在没有特殊强调时,所述量子网络服务站并不特指某一量子网络服务站,在网络侧可能配置有多个量子网络服务站,一种情况是所述两客户端的量子密钥卡归属同一量子网络服务站,即两量子密钥卡均与该量子网络服务站共享量子密钥。

可选的情况是,所述两客户端的量子密钥卡分别归属不同的量子网络服务站,此时有关共有密钥种子或生成共有密钥种子的信息,可能需要两站甚至多站之间的交互,交互时可利用站间共享密钥来实施密文方式的数据传输,关于站间数据传输本身而言可采用现有技术。

本发明还提供一种基于量子密钥卡的消息认证方法,实施在本发明所述的基于量子密钥卡的消息认证系统中。

由于在消息认证系统的叙述中,已经表述了有关两客户端获得共有密钥种子以及进行消息认证的过程,因此在消息认证方法中不再赘述。

本发明消息认证系统,两客户端进行消息认证时,通过网络侧的量子网络服务站获得共有密钥种子,消息认证码的生成以及对比认证均在客户端进行,保障了数据传输的安全性,也降低了对网络侧的数据处理资源的消耗。

附图说明

图1为本发明中使用的消息认证算法示意图;

图2为实施例1中的消息认证方法示意图;

图3为实施例2中的消息认证方法示意图;

图4为实施例3中的消息认证方法示意图;

图5为实施例4中的消息认证方法示意图;

图6为实施例5中的消息认证方法示意图;

图7为实施例6中的消息认证方法示意图。

具体实施方式

本发明的消息认证系统包括:

信息发送客户端,用于将客户端通信共有密钥请求(以下简称“共有密钥请求”)发送至网络侧的量子网络服务站和将消息认证信息发送至信息接收客户端;

一个量子网络服务站,用于提供真随机数作为相应的用户侧密钥分别存储在量子密钥卡和量子网络服务站中,还用于利用量子网络服务站中存储的用户侧密钥对接收到的钥共有密请求生成独立密钥,对独立密钥加密后,再将新的密钥信息发送至对应的客户端;

信息接收客户端,用于接收来自量子网络服务站或信息发送客户端的本次通信密钥的加密信息和接收来自信息发送客户端的消息认证信息;

信息发送客户端和信息接收客户端分别匹配有量子密钥卡,量子密钥卡用于存储作为密钥种子的用户侧密钥,还用于利用密钥种子生成密钥进而生成消息认证信息。

本发明中信息发送客户端和信息接收客户端与量子网络服务站之间的数据交互均通过经典网络进行;信息发送客户端和信息接收客户端为客户接入量子网络设备,本发明中信息发送客户端和信息接收客户端为移动终端,或为固定终端。

本发明中,量子网络服务站包括真随机数发生器(优选为量子随机数发生器)、用户侧密钥管理服务器和量子服务中心。

真随机数发生器为量子随机数发生器,也可为基于电路的真随机数发生器、基于物理源的真随机数发生器以及其他种类的真随机发生器。本发明中使用量子随机数发生器。用户侧密钥管理服务器用于存储由量子随机数发生器生成的真随机数,还用于供量子密钥卡拷贝真随机数生成密钥种子(即用户侧密钥),并以密钥种子集的形式分别存储于量子密钥卡和量子网络服务站中;

当多个量子网络服务站构成广域网时,本发明消息认证系统可在广域网内实施,在网络侧,相连接的两量子网络服务站均设有对应的量子密钥控制中心,量子密钥控制中心与所在量子网络服务站的量子服务中心通信连接,对应的两个量子密钥控制中心通过量子网络进行密钥分发,用以在相连接的两量子网络服务站之间形成站间量子密钥。

本发明中,量子服务中心以及量子密钥控制中心可以利用现有构架以及与量子技术相结合,例如量子密钥控制中心设有实施QKD的量子密钥分发设备;

量子服务中心包括加解密服务器、数字签名验证服务器、消息认证服务器和身份认证服务器,消息认证服务器用于对接收到的消息认证信息进行消息认证,并针对验证成功的信息生成新的消息认证信息,然后将消息认证信息经由量子服务中心发送至信息接收客户端;消息认证服务器内包含随机数发生器,用以产生随机数,作为客户端与量子服务中心之间所需的消息认证过程所用密钥的生成参数。密钥的生成依靠密钥生成算法、用户侧密钥以及随机数。

身份认证服务器用于验证客户是否为合法客户。

每个量子密钥卡都具有唯一ID号,当客户在所处区域的量子网络服务站进行注册登记后,客户会得到一个具有唯一ID号的量子密钥卡。量子密钥卡存储了客户注册登记信息,至少包括一个密钥种子的密钥种子集,还内置由密钥生成算法和MAC算法等与消息认证相关的算法。量子密钥卡利用密钥生成算法、用户侧密钥、随机数发生器产生的随机数生成密钥,利用MAC算法和密钥对消息进行运算生成消息认证码。

所有量子密钥卡内置的消息认证的相关算法一致。若密钥生成算法只有一种,信息接收客户端的量子密钥卡可以直接得到密钥生成算法;若密钥生成算法存在最少两种,信息发送客户端的量子密钥卡会将密钥生成算法的标号信息传送至信息接收客户端的量子密钥卡中。量子密钥卡中的用户侧密钥可能下载自不同的量子网络服务站,因此可按不同来源存在不同的密钥种子集中,各客户端匹配的量子密钥卡可按预先设定的规则取用密钥种子以生成密钥。

不同客户端的量子密钥卡中存储的密钥种子集不同,且针对不同量子密钥卡也可设计不同的密钥生成算法,提高消息认证的安全性。在密钥种子和密钥生成算法的配合下,将能生成大量随机密钥,每次消息认证时使用一个密钥,使消息认证密钥一次一变。本发明各实施例采用加工密钥种子的方法来产生密钥消息认证密钥。密钥种子的特殊用法为,不对密钥种子做任何处理直接作为密钥使用,每次消息认证时使用一个密钥即一个密钥种子,同样使消息认证密钥一次一变。

当客户端为移动终端时,量子密钥卡优选为量子SD卡;当客户端为固定终端时,量子密钥卡优选为USBkey或主机板卡。量子密钥卡在相应的量子网络服务站经登记审核获批后颁发,具有唯一的量子密钥卡ID。合法的量子密钥卡存储有相应用户的身份信息,以及颁发该量子密钥卡的量子网络服务站的信息。

本发明各实施例的MAC算法采用HMAC运算,它的运算方法是将密钥和信息数据同时作为输入,采用二次散列迭代的方式,公式如下:HMAC(K,M)=H(K○+opad|H(K○+ipad|M)),其中K是密钥,长度为64字节,若长度小于该长度,则自动在密钥后面用0填补补充。M是消息;H是散列函数;opad和ipad分别是由若干个0x5c和0x36组成的字符串;|表示连接操作。

本发明中采用先加密消息,再进行消息认证码的生成。具体消息认证过程如图1所示。M为左端发送给右端的消息,消息M利用消息加密密钥Q1通过加密算法E生成加密消息EQ1(M)。EQ1(M)以K1为消息认证密钥进行MAC算法生成消息认证码MAC1,并附加在EQ1(M)后面得到EQ1(M)||MAC1。左端将EQ1(M)||MAC1发送到右端。右端将消息EQ1(M)||MAC1拆分成EQ1(M)和MAC1,利用对应的消息认证密钥K1’进行MAC算法得到消息认证码MAC2。右端将MAC1和MAC2进行比较,如果匹配,说明认证成功,进行下一步,否则,认证失败。认证成功后,右端将EQ1(M)通过与算法E对应的解密算法D解密得到明文消息M,所使用的密钥Q1’与Q1相同。

消息认证有两层含义:一是检验消息的来源是否为真实的,即对消息的发送者的身份进行身份认证。二是检验消息是完整的,即验证消息在传输或存储过程中是否被篡改、删除或插入。

为了使说明更简单明了,特声明本发明中各实施例中,所有的请求和消息均设为M。实施例1、2、3的信息发送客户端均设为A1,信息接收客户端均设为An,量子服务中心设为A。实施例4、5、6的信息发送客户端均设为An,其对应的量子网络服务站设为A,信息接收客户端均设为Bn,其对应的量子网络服务站设为B。

实施例1:

本实施例中客户端A1与客户端An归属同一量子网络服务站,其设有量子服务中心A,即可视为在局域网内客户端A1与客户端An进行消息认证。两个客户端之间进行直接通信时,消息认证所需的共有密钥颁发方式如图2所示。

消息认证具体包括如下步骤:

步骤1.1:量子网络服务站A接收客户端A1的共有密钥请求并进行消息认证

1.1.1消息认证开始:客户端A1首先与相匹配的量子密钥卡建立通信连接。

1.1.2用户侧消息认证密钥生成:量子密钥卡根据所存储的密钥种子SS以及卡内随机数发生器所产生的随机数结合密钥生成算法AS,得到密钥K1和密钥Q1。并将随机数以及密钥生成算法ID和密钥种子ID传递给量子网络服务站A。

网络侧消息认证密钥生成:量子网络服务站A根据密钥生成算法ID和密钥种子ID,在当前量子网络服务站内找出对应的密钥种子SS’和密钥生成算法AS’,结合随机数运算得到密钥K1’和密钥Q1’,密钥K1’也可以在步骤1.1.4生成。

1.1.3用户侧生成消息认证码并发送请求消息认证信息:量子密钥卡利用密钥Q1对所要发送的与An的会话密钥请求M1进行加密得到密文EQ1(M1),该密文EQ1(M1)和密钥K1同时作为输入,采用MAC算法生成消息认证码MAC1,并且附加在密文后以EQ1(M1)||MAC1形式经由客户端A1发送到量子网络服务站A。

1.1.4量子网络服务站A生成消息认证码:量子网络服务站A接收到以EQ1(M1)||MAC1形式传输过来的数据,将密文EQ1(M1)与消息认证码MAC1分离开,将密文EQ1(M1)和量子网络服务站的密钥K1’作为输入,采用MAC算法生成消息认证码MAC2。

1.1.5消息认证码进行比较:量子网络服务站A将生成的消息认证码MAC2与接收到的消息认证码MAC1进行比较。若相等则证明消息没有被篡改。若不相等则消息认证失败,消息已经被篡改,则消息传输停止。

1.1.6客户端直连通信共有密钥生成:量子网络服务站A根据接收到请求消息M1利用真随机数发生器产生真随机数作为本次通信业务的共有密钥种子SSQ。

步骤1.2:量子网络服务站A对客户端An发送通信通知及颁发共有密钥种子并进行消息认证

若客户端A1与客户端An进行消息认证,首先客户端A1会向量子网络服务站发出通信请求,通信请求中会携带有接收方用户的相关信息,本实施例中接收方用户对应客户端An。

1.2.1网络侧消息认证密钥生成:量子网络服务站A根据接收方对应的密钥种子ID,在当前量子网络服务站内找出与接收方用户量子密钥卡中相应的密钥种子cc’以及密钥生成算法Ac’,并结合站内消息认证服务器内随机数发生器产生的新随机数运算得到密钥K2和密钥Q2。并将密钥种子ID以及密钥生成算法ID,以及随机数提交给客户端An。

1.2.2量子网络服务站A生成消息认证码:量子网络服务站A利用密钥Q2加密附加共有密钥种子SSQ的消息M2得到密文EQ2(M2),密文EQ2(M2)和密钥K2同时作为输入,采用MAC算法生成消息认证码MAC3,并且将消息认证码MAC3附加在密文后以EQ2(M2)||MAC3形式发送到客户端An。

1.2.3用户侧消息认证密钥生成:客户端An接收到消息认证信息EQ2(M2)||MAC3以及密钥种子ID以及密钥生成算法ID,以及随机数后转发至所匹配的量子密钥卡,该量子密钥卡根据接收到的信息找到对应的密钥种子cc以及密钥生成算法Ac,进而生成密钥K2’和密钥Q2’。

1.2.4用户侧生成消息认证码:客户端An匹配的量子密钥卡从接收到的消息认证信息中提取密文EQ2(M2)与消息认证码MAC3,利用密文EQ2(M2)和密钥K2’采用MAC算法生成消息认证码MAC4。

1.2.5消息认证码进行比较:客户端An匹配的量子密钥卡将生成的消息认证码MAC4与消息认证码MAC3进行比较。若相等则证明消息没有被篡改。若不相等则消息认证失败,消息已经被篡改,则消息传输停止。消息认证完成。

1.2.6用户侧解析消息返回确认消息:客户端An匹配的量子密钥卡利用密文EQ2(M2)和Q2’解密得到消息M2,并解析得到共有密钥种子SSQ和客户端A1的相关信息。客户端An利用上述消息认证算法和消息加密算法将确认消息返回量子网络服务站A。量子网络服务站A根据上述的消息认证方法对此确认消息进行认证。若确认消息已经被篡改,则停止本次通信,并返回客户端A1失败的消息;若确认消息未被篡改,则进入下一步骤。

步骤1.3:量子网络服务站A对客户端A1颁发共有密钥种子并进行消息认证

1.3.1网络侧消息认证密钥生成:量子网络服务站A根据接收方对应的密钥种子ID,在当前量子网络服务站内找出与接收方用户量子密钥卡中相应的密钥种子SS’以及密钥生成算法AS’,并结合站内消息认证服务器内随机数发生器产生的新随机数运算得到密钥K3和密钥Q3。并将密钥种子ID以及密钥生成算法ID,以及随机数提交给客户端A1。

1.3.2量子网络服务站A生成消息认证码:量子网络服务站A利用密钥Q3加密附加共有密钥种子SSQ的消息M3得到密文EQ3(M3),密文EQ3(M3)和密钥K3同时作为输入,采用MAC算法生成消息认证码MAC5,并且将消息认证码MAC5附加在密文后以EQ3(M3)||MAC5形式发送到客户端A1。

1.3.3用户侧消息认证密钥生成:客户端A1接收到消息认证信息EQ3(M3)||MAC5以及密钥种子ID以及密钥生成算法ID,以及随机数后转发至所匹配的量子密钥卡,该量子密钥卡根据接收到的信息找到对应的密钥种子SS以及密钥生成算法AS,进而生成密钥K3’和密钥Q3’。

1.3.4用户侧生成消息认证码:客户端A1匹配的量子密钥卡从接收到的消息认证信息中提取密文EQ3(M3)与消息认证码MAC5,利用密文EQ3(M3)和密钥K3’采用MAC算法生成消息认证码MAC6。

1.3.5消息认证码进行比较:客户端A1匹配的量子密钥卡将生成的消息认证码MAC6与消息认证码MAC5进行比较。若相等则证明消息没有被篡改。若不相等则消息认证失败,消息已经被篡改,则消息传输停止。消息认证完成。

1.3.6用户侧解析消息返回确认消息:客户端A1匹配的量子密钥卡利用密文EQ3(M3)和Q3’解密得到消息M3,并解析得到共有密钥种子SSQ。客户端A1利用上述消息认证算法和消息加密算法将确认消息返回量子网络服务站A。量子网络服务站A根据上述的消息认证方法对此确认消息进行认证。若确认消息已经被篡改,则停止本次通信;若确认消息未被篡改,则进入下一步骤。

步骤1.4:用户侧点对点通信的消息认证

1.4.1用户侧A1消息认证密钥生成:客户端A1匹配的量子密钥卡根据所存储的密钥种子SSQ、随机数发生器产生的随机数通过密钥生成算法ASQ得到密钥K4和密钥Q4。同时密钥生成算法ID以及随机数提交给客户端An。

1.4.2客户端A1生成消息认证码:客户端A1匹配的量子密钥卡利用密钥Q4加密消息M4得到密文EQ4(M4),密文EQ4(M4)和密钥K4同时作为输入,采用MAC算法生成消息认证码MAC7,并且将消息认证码MAC7附加在密文后以EQ4(M4)||MAC7形式发送客户端An。

1.4.3用户侧An消息认证密钥生成:客户端An接收到消息认证信息EQ4(M4)||MAC7以及密钥生成算法ID以及随机数后转发至匹配的量子密钥卡,该量子密钥卡根据接收到的信息找到密钥生成算法ASQ’对共有密钥种子SSQ和接收到的随机数进行运算生成密钥K4’和Q4’。

1.4.4用户侧An生成消息认证码:客户端An匹配的量子密钥卡从接受到的消息认证消息中提取密文EQ4(M4)与消息认证码MAC7,利用密文EQ4(M4)和密钥K4’采用MAC算法生成消息认证码MAC8。

1.4.5消息认证码进行比较:客户端An匹配的量子密钥卡将生成的消息认证码MAC8和消息认证码MAC7进行比较。若相等则证明消息没有被篡改,再利用密钥Q4’解密,得到明文形式的消息M4,返回确认信息(确认信息同样适用上述消息认证方法);若不相等则消息认证失败,消息已经被篡改。则消息传输停止。消息认证完成。

客户在进行消息认证时,密钥种子长期使用或重复使用会有被破解的可能性,为提高本消息认证系统的安全性,密钥种子需要定时更新。

本实施例中的更新方式为:

客户端与匹配的量子密钥卡建立通信连接后,客户端通过上层应用程序向量子密钥卡发送更新申请,该更新申请同时也发送至量子网络服务站。

密钥存储卡接收更新申请后,按预先设定的规则更新密钥种子,例如将一部分使用过的密钥种子做失效标识,不再使用,而启用新的密钥种子。

量子网络服务站接收更新申请后,按预先与量子密钥卡协商一致的规则更新量子网络服务站内相应存储的密钥种子,实现与量子密钥卡的时时对应。本发明中各实施例的密钥种子的更新方法均采用上述方法。

实施例2:

如图3所示,本实施例消息认证系统与实施例1不同之处在于采用不同的共有密钥种子生成方法。本实施例中,客户端A1和客户端An通信的共有密钥来源是对A1和An分别存储在量子网络服务站A的两个对应的密钥种子进行异或、加密后分别发送到客户端A1和An。所对应的密钥种子可以是量子网络服务站A与客户端A1和客户端An通信使用的密钥种子,也可以使用另外两个密钥种子,本实施例中所使用的为前者。

本实施例消息认证包括如下步骤:

步骤2.1:量子网络服务站A接收客户端A1的共有密钥请求并进行消息认证

2.1.1消息认证开始:客户端A1首先与相匹配的量子密钥卡建立通信连接。

2.1.2用户侧消息认证密钥生成:量子密钥卡根据所存储的密钥种子SS以及卡内随机数发生器所产生的随机数结合密钥生成算法AS,得到密钥K1和密钥Q1。并将随机数以及密钥生成算法ID和密钥种子ID传递给量子网络服务站A。

2.1.3用户侧发送会话密钥请求并进行消息认证:量子密钥卡利用加密算法和MAC算法对会话密钥请求M1进行加密和生成消息认证码。客户端A1将加密请求发送到量子网络服务站A,量子网络服务站A对此加密请求进行消息认证并解密。此消息认证过程请参考实施例1中的第1.1步骤。

2.1.4客户端直连通信共有密钥生成:量子网络服务站A根据接收到请求消息M1利用与A1通信使用的密钥种子SS’和与An通信使用的密钥种子cc’进行异或生成密钥种子加密信息SS’⊕cc’。

步骤2.2:量子网络服务站A对客户端An发送通信通知及颁发密钥种子共享信息并进行消息认证

量子密钥中心A对SS’⊕cc’和客户端A1的信息处理生成消息M2,并对M2进行加密算法和消息认证算法处理发送到客户端An。

客户端An匹配的量子密钥卡对加密消息进行消息认证并解密得到消息M2。此消息认证过程请参考实施例1中的第1.2步骤。

客户端An匹配的量子密钥卡解析消息M2得到密钥种子加密信息SS’⊕cc’和客户端A1的相关信息。客户端An将信息SS’⊕cc’与对应的密钥种子cc进行异或运算得到密钥种子SS”。该量子密钥卡将密钥种子SS”和密钥种子cc同时输入,采用根据密钥复合算法ID对应的密钥复合算法得到新的密钥种子SSQ。客户端An利用上述消息认证算法和消息加密算法将确认消息返回量子网络服务站A。量子网络服务站A根据上述的消息认证方法对此确认消息进行认证。若确认消息已经被篡改,则停止本次通信,并返回客户端A1失败的消息;若确认消息未被篡改,则进入下一步骤。

步骤2.3:量子网络服务站A对客户端A1颁发共有密钥种子并进行消息认证

此步骤参考实施例1中的步骤1.3。量子网络服务站A将附加有密钥种子加密信息SS’⊕cc’的消息M3打包发送给客户端A1并进行消息认证。客户端A1匹配的量子密钥卡解密得到消息M3,并解析得到密钥种子加密信息SS’⊕cc’。客户端A1匹配的量子密钥卡将信息SS’⊕cc’与对应的密钥种子SS进行异或运算得到密钥种子cc”。该量子密钥卡将密钥种子SS和密钥种子cc”同时输入,采用对应的密钥复合算法得到新的密钥种子SSQ。该量子密钥卡利用上述消息认证算法和消息加密算法将确认消息返回量子网络服务站A。量子网络服务站A根据上述的消息认证方法对此确认消息进行认证。若确认消息已经被篡改,则停止本次通信;若确认消息未被篡改,则进入下一步骤。

步骤2.4:用户侧点对点通信的消息认证

此步骤请参考实施例1中的步骤1.4。客户端A1和客户端An利用共有密钥种子SSQ进行消息的加密和认证,实现客户端之间的点对点消息认证。

实施例3:

如图4所示,本实施例消息认证系统与实施例1不同之处在于共有密钥的颁发方式,包括如下步骤:

步骤3.1:量子网络服务站A接收客户端A1的共有密钥请求并进行消息认证

3.1.1消息认证开始:客户端A1首先与相匹配的量子密钥卡建立通信连接。

3.1.2会话密钥请求的生成:该量子密钥卡利用随机数发生器产生一个随机数N1作为本次业务的唯一识别符,附加在本次会话密钥的请求信息R后生成会话密钥请求M1。

3.1.3用户侧发送会话密钥请求并进行消息认证:客户端A1匹配的量子密钥卡将会话密钥请求打包后发送到量子网络服务站A。量子网络服务站A对会话密钥请求进行消息认证码的比对,再解密请求M1。此过程请参考实施例1中步骤1.1。

3.1.4网络侧生成用户侧共有密钥种子:此步骤参考实施例1中的1.1.6。量子网络服务站A生成客户端共有密钥种子Ks。

步骤3.2:网络侧颁发共有密钥并实现用户侧身份认证

3.2.1网络侧打包并发送会话密钥请求的返回消息:量子网络服务站A将共有密钥种子Ks和客户端A1的相关信息添加至对客户端An的请求消息中生成请求消息M2。

量子网络服务站A根据客户端An匹配的量子密钥卡中对应的密钥种子和密钥生成算法对该请求消息M2进行打包处理生成加密请求。本实施例中该加密请求并不是直接发送至客户端An,而是在后续步骤中经由客户端A1转发。

为了实现密钥同步,量子网络服务站A随后将打包处理请求消息M2涉及的密钥种子ID以及密钥生成算法ID提交给客户端An,为了实现客户端A1与客户端An相互认证,也一并发送量子网络服务站A生成的随机数。此过程请参考实施例1中的步骤1.2。

量子网络服务站A将共有密钥种子Ks、客户端A1的会话密钥请求M1和对客户端An的加密请求(在3.2.1中对该请求消息M2打包处理生成)按照规则拼接生成对A1的会话密钥请求的返回消息M3。

量子网络服务站A对该返回消息M3进行加密和消息认证码的生成并发送给客户端A1。

3.2.2用户侧认证解密消息并转发相应请求:客户端A1匹配的量子密钥卡对加密的返回消息进行消息认证并解密得到消息M3,并对消息M3解析获得用户侧共有密钥Ks和对客户端An的加密请求。上述解密过程请参考实施例1中的消息认证及解密方法。

客户端A1匹配的量子密钥卡将对客户端An的加密请求通过客户端A1发送给客户端An。3.2.3用户侧接收认证请求并认证发送客户端身份:客户端An接收到来自客户端A1的加密请求和来自量子网络服务站的密钥种子ID、密钥生成算法ID以及随机数后转发至所匹配的量子密钥卡。该量子密钥卡对加密请求进行消息认证并解密得到共有密钥种子Ks和客户端A1的相关消息。

在与客户端A1下一步交互之前,还需进行挑战认证,客户端An的量子密钥卡利用随机数发生器产生随机数N2作为本次挑战应答的唯一识别符,并直接用密钥种子Ks加密发送给客户端A1。

客户端A收到挑战后,由于也拥有密钥种子Ks,因此可以做出正确应答并反馈给客户端An。

如果客户端An的量子密钥卡收到用相应函数计算N2得到的加密应答消息,就说明客户端A1为合法用户;反之,则客户端An停止此次业务的通信。

步骤3.3:用户侧点对点通信的消息认证

此步骤请参考实施例1中的步骤1.4。客户端A1和客户端An利用共有密钥种子Ks进行消息的加密和认证,实现客户端之间的点对点消息认证。

实施例4:

参见图5,本实施例中的系统构架区别于实施例1之处为应用在两个量子网络服务站之间。量子网络服务站设有量子密钥分发设备,可通过QKD方式实现站间密钥的共享。本实施例中量子网络服务站的其他设备以及关于量子密钥卡的描述可参见实施例1。

两个量子网络服务站分别利用量子密钥分发设备实现站间量子密钥的共享,量子密钥分发设备可以是一套也可以是至少两套集成。

本实施例中,客户端An与客户端Bn之间要进行消息认证,客户端An归属于量子网络服务站A,即相对于客户端An而言,其当前量子网络服务站为与客户端An通信连接的量子网络服务站A;同理客户端Bn归属于量子网络服务站B。

客户端An匹配的量子密钥卡中,进行消息认证时所涉及的密钥种子ID并指向量子网络服务站A;客户端Bn匹配的量子密钥卡中,进行消息认证时所涉及的密钥种子ID指向量子网络服务站B。

客户端An与客户端Bn跨量子网络服务站实现点对点消息认证,具体包括如下步骤:

步骤4.1:量子网络服务站A接收客户端An的共有密钥请求并进行消息认证

4.1.1消息认证开始:客户端An首先与相匹配的量子密钥卡建立通信连接。

4.1.2用户侧消息认证密钥生成:量子密钥卡根据所存储的密钥种子SS以及卡内随机数发生器所产生的随机数结合密钥生成算法AS,得到密钥K1和密钥Q1。并将随机数以及密钥生成算法ID和密钥种子ID传递给量子网络服务站A。

网络侧消息认证密钥生成:量子网络服务站A根据密钥生成算法ID和密钥种子ID,在当前量子网络服务站内找出对应的密钥种子SS’和密钥生成算法AS’,结合随机数运算得到密钥K1’和密钥Q1’,密钥K1’也可以在步骤4.1.4生成。

4.1.3用户侧生成消息认证码并发送请求消息认证信息:量子密钥卡利用密钥Q1对所要发送的与Bn的会话密钥请求M1进行加密得到密文EQ1(M1),该密文EQ1(M1)和密钥K1同时作为输入,采用MAC算法生成消息认证码MAC1,并且附加在密文后以EQ1(M1)||MAC1形式经由客户端An发送到量子网络服务站A。

4.1.4量子网络服务站A生成消息认证码:量子网络服务站A接收到以EQ1(M1)||MAC1形式传输过来的数据,将密文EQ1(M1)与消息认证码MAC1分离开,将密文EQ1(M1)和量子网络服务站的密钥K1’作为输入,采用MAC算法生成消息认证码MAC2。

4.1.5消息认证码进行比较:量子网络服务站A将生成的消息认证码MAC2与接收到的消息认证码MAC1进行比较。若相等则证明消息没有被篡改,并利用密钥Q1’对密文EQ1(M1)进行解密得到消息M1。若不相等则消息认证失败,消息已经被篡改,则消息传输停止。

4.1.6客户端直连通信共有密钥生成:量子网络服务站A根据接收到请求消息M1利用真随机数发生器产生真随机数作为本次通信业务的共有密钥种子Ks。

步骤4.2:量子网络服务站A与量子网络服务站B之间的消息认证(量子网络服务站之间的消息认证)。

4.2.1量子密钥分发设备产生共享密钥:通过QKD方式量子网络服务站A与量子网络服务站B共享相应的站间量子密钥KQ、QQ、KQ’和QQ’。

4.2.2量子网络服务站A生成消息认证码:在量子网络服务站A上,利用密钥QQ对附加有用户侧共有密钥种子Ks和客户端An相关信息的消息M2加密得到消息EQQ(M2),将密文EQQ(M2)和密钥KQ一起输入进行MAC运算生成消息认证码MAC3,并附加在消息后以EQQ(M2)||MAC3形式发送到量子网络服务站B。

4.2.3量子网络服务站B生成消息认证码:量子网络服务站B接收到以EQQ(M2)||MAC3形式传输过来的数据,将密文EQQ(M2)与消息认证码MAC3分离开,将密文EQQ(M2)和量子网络服务站B的密钥KQ’一同作为输入,进行MAC运算生成消息认证码MAC4。

4.2.4消息认证码进行比较,解析密文:将生成的消息认证码MAC4与接收到的消息认证码MAC3进行比较。若相等则证明消息没有被篡改,并利用密钥QQ’对密文EQQ(M2)解密得到消息M2,解析消息M2;若不相等则消息认证失败,消息已经被篡改,则消息传输停止。

步骤4.3:量子网络服务站B对客户端Bn发送通信通知及颁发共有密钥种子并进行消息认证

4.3.1网络侧消息认证密钥生成:量子网络服务站B根据接收方对应的密钥种子ID,在当前量子网络服务站内找出与接收方用户量子密钥卡中相应的密钥种子cc’以及密钥生成算法Ac’,并结合站内消息认证服务器内随机数发生器产生的新随机数运算得到密钥K2和密钥Q2。并将密钥种子ID以及密钥生成算法ID,以及随机数提交给客户端Bn。

4.3.2量子网络服务站B生成消息认证码:量子网络服务站B利用密钥Q2加密附加共有密钥种子Ks和客户端An相关信息的消息M2得到密文EQ2(M2),密文EQ2(M2)和密钥K2同时作为输入,采用MAC算法生成消息认证码MAC5,并且将消息认证码MAC5附加在密文后以EQ2(M2)||MAC5形式发送到客户端Bn。

4.3.3用户侧消息认证密钥生成:客户端Bn接收到消息认证信息EQ2(M2)||MAC5以及密钥种子ID以及密钥生成算法ID,以及随机数后转发至所匹配的量子密钥卡,该量子密钥卡根据接收到的信息找到对应的密钥种子cc以及密钥生成算法Ac,进而生成密钥K2’和密钥Q2’。

4.3.4用户侧生成消息认证码:客户端Bn匹配的量子密钥卡从接收到的消息认证信息中提取密文EQ2(M2)与消息认证码MAC5,利用密文EQ2(M2)和密钥K2’采用MAC算法生成消息认证码MAC6。

4.3.5消息认证码进行比较:客户端Bn匹配的量子密钥卡将生成的消息认证码MAC6与消息认证码MAC5进行比较。若相等则证明消息没有被篡改。若不相等则消息认证失败,消息已经被篡改,则消息传输停止。消息认证完成。

4.3.6用户侧解析消息返回确认消息:客户端Bn匹配的量子密钥卡利用密文EQ2(M2)和Q2’解密得到消息M2,并解析得到共有密钥种子Ks和客户端An的相关信息。客户端Bn利用上述消息认证算法和消息加密算法将确认消息返回量子网络服务站B。量子网络服务站B根据上述的消息认证方法对此确认消息进行认证,并用同样的加密方式和MAC消息认证码通过量子干线网络将确认消息发送给量子网络服务站A,量子网络服务站对该确认消息进行消息认证和解密。若确认消息已经被篡改,则停止本次通信,并返回客户端A1失败的消息;若确认消息未被篡改,则进入下一步骤。

步骤4.4:量子网络服务站A对客户端An发送密钥种子并进行消息认证

4.4.1网络侧消息认证密钥生成:量子网络服务站A根据接收方对应的密钥种子ID,在当前量子网络服务站内找出与接收方用户量子密钥卡中相应的密钥种子SS’以及密钥生成算法AS’,并结合站内消息认证服务器内随机数发生器产生的新随机数运算得到密钥K3和密钥Q3。并将密钥种子ID以及密钥生成算法ID,以及随机数提交给客户端An。

4.4.2量子网络服务站A生成消息认证码:量子网络服务站A利用密钥Q3加密附加共有密钥种子Ks的消息M得到密文EQ3(M3),密文EQ3(M3)和密钥K3同时作为输入,采用MAC算法生成消息认证码MAC7,并且将消息认证码MAC7附加在密文后以EQ3(M3)||MAC7形式发送到客户端An。

4.4.3用户侧消息认证密钥生成:客户端An接收到消息认证信息EQ3(M3)||MAC7以及密钥种子ID以及密钥生成算法ID,以及随机数后转发至所匹配的量子密钥卡,该量子密钥卡根据接收到的信息找到对应的密钥种子SS以及密钥生成算法AS,进而生成密钥K3’和密钥Q3’。

4.4.4用户侧生成消息认证码:客户端An匹配的量子密钥卡从接收到的消息认证信息中提取密文EQ3(M3)与消息认证码MAC7,利用密文EQ3(M3)和密钥K3’采用MAC算法生成消息认证码MAC8。

4.4.5消息认证码进行比较:客户端An匹配的量子密钥卡将生成的消息认证码MAC8与消息认证码MAC7进行比较。若相等则证明消息没有被篡改。若不相等则消息认证失败,消息已经被篡改,则消息传输停止。消息认证完成。

4.4.6用户侧解析消息返回确认消息:客户端An匹配的量子密钥卡利用密文EQ3(M3)和Q3’解密得到消息M3,并解析得到共有密钥种子Ks。客户端An利用上述消息认证算法和消息加密算法将确认消息返回量子网络服务站A。量子网络服务站A根据上述的消息认证方法对此确认消息进行认证。若确认消息已经被篡改,则停止本次通信;若确认消息未被篡改,则进入下一步骤。

步骤4.5:用户侧点对点通信的消息认证

4.5.1用户侧An消息认证密钥生成:客户端An匹配的量子密钥卡根据所存储的密钥种子Ks、随机数发生器产生的随机数通过密钥生成算法ASQ得到密钥K4和密钥Q4。同时密钥生成算法ID以及随机数提交给客户端Bn。

4.5.2客户端An生成消息认证码:客户端An匹配的量子密钥卡利用密钥Q4加密消息M4得到密文EQ4(M4),密文EQ4(M4)和密钥K4同时作为输入,采用MAC算法生成消息认证码MAC9,并且将消息认证码MAC9附加在密文后以EQ4(M4)||MAC9形式发送客户端Bn。

4.5.3用户侧An消息认证密钥生成:客户端Bn接收到消息认证信息EQ4(M4)||MAC9以及密钥生成算法ID以及随机数后转发至匹配的量子密钥卡,该量子密钥卡根据接收到的信息找到密钥生成算法ASQ’对共有密钥种子Ks和接收到的随机数进行运算生成密钥K4’和Q4’。

4.5.4用户侧Bn生成消息认证码:客户端Bn匹配的量子密钥卡从接受到的消息认证消息中提取密文EQ4(M4)与消息认证码MAC9,利用密文EQ4(M4)和密钥K4’采用MAC算法生成消息认证码MAC10。

4.5.5消息认证码进行比较:客户端Bn匹配的量子密钥卡将生成的消息认证码MAC10和消息认证码MAC9进行比较。若相等则证明消息没有被篡改,再利用密钥Q4’解密,得到明文形式的消息M4,返回确认信息(确认信息同样适用上述消息认证方法);若不相等则消息认证失败,消息已经被篡改。则消息传输停止。消息认证完成。

实施例5:

如图6所示,本实施例消息认证系统与实施例4是同样的系统环境,其用户侧共有密钥种子的生成方法与实施例2类似,具体包括如下步骤:

步骤5.1:量子网络服务站A接收客户端An的共有密钥种子请求并进行消息认证

5.1.1消息认证开始:客户端An首先与相匹配的量子密钥卡建立通信连接。

5.1.2用户侧消息认证密钥生成:量子密钥卡根据所存储的密钥种子SS以及卡内随机数发生器所产生的随机数结合密钥生成算法AS,得到密钥K1和密钥Q1。并将随机数以及密钥生成算法ID和密钥种子ID传递给量子网络服务站A。

5.1.3用户侧发送会话密钥请求并进行消息认证:量子密钥卡利用加密算法和MAC算法对会话密钥请求M1进行加密和生成消息认证码。客户端An将加密请求发送到量子网络服务站A,量子网络服务站A对此加密请求进行消息认证并解密。此消息认证过程请参考实施例1中的第1.1步骤。

步骤5.2:量子网络服务站A对量子网络服务站B发送An相关信息并生成密钥种子共享信息

5.2.1网络侧对信息发送用户侧的信息打包传输:量子网络服务站A对客户端An对应的密钥种子SS’和客户端An、Bn的相关信息处理生成消息M21,并对M21进行加密算法和消息认证算法处理发送到量子网络服务站B。此量子网络服务站间的消息加密认证请参考实施例4的步骤4.2。

5.2.2量子网络服务站B进行消息认证:量子网络服务站B对加密消息进行消息认证并解密得到消息M21。此消息认证过程请参考实施例4中的步骤4.2。

5.2.3网络侧生成密钥种子共享信息:量子网络服务站B解析消息M21得到客户端An对应的密钥种子SS’和客户端An、Bn的相关信息。量子网络服务站B根据接收客户端Bn在量子网络服务站内找到对应密钥种子cc’,并将该密钥种子cc’与密钥种子SS’进行异或得到SS’⊕cc’。

步骤5.3:量子网络服务站B对客户端Bn和An进行颁发密钥种子共享信息

5.3.1量子网络服务站B对客户端Bn发送共享信息:量子网络服务站B将密钥种子共享信息SS’⊕cc’和An的相关信息附加在对客户端Bn的通信消息内生成消息M22。量子网络服务站B将消息M加密并生成消息认证码后发送给客户端Bn。

5.3.2用户侧Bn对消息进行认证并生成共有密钥种子:客户端Bn匹配的量子密钥卡对密文消息进行消息认证并解密得到明文消息M22,该量子密钥卡解析消息M22得到密钥种子共享信息SS’⊕cc’,通过对应的密钥种子cc异或得到SS”。该量子密钥卡将密钥种子cc和SS”同时输入进行密钥复合运算得到量子密钥种子SSQ。客户端Bn将确认信息返回量子服务站。此过程可以参考实施例1的步骤1.2.6。

5.3.3量子网络服务站B对客户端An发送共享信息:量子网络服务站B将密钥共享信息SS’⊕cc’附加在对量子网络服务站A的通信消息内生成消息M3。量子网络服务站B将消息处理后发送给量子网络服务站A。此加密及消息认证方式参考实施例4的步骤4.2。量子网络服务站对消息认证解密后,将密钥共享信息SS’⊕cc’以加密及消息认证的方式发送给客户端An,此过程请参考实施例1中的步骤1.3。

5.3.4客户端An对消息认证解密并生成共有密钥种子:客户端An匹配的量子密钥卡将信息SS’⊕cc’与对应的密钥种子SS进行异或运算得到密钥种子cc”。该量子密钥卡将密钥种子SS和密钥种子cc”同时输入采用密钥复合算法得到新的密钥种子SSQ。

步骤5.4:量子网络服务站A对客户端A1颁发共有密钥种子并进行消息认证

此步骤请参考实施例1中的步骤1.4。客户端A1和客户端An利用共有密钥种子SSQ进行消息的加密和认证,实现客户端之间的点对点消息认证。

实施例6:

如图7所示,本实施例消息认证系统与实施例4是同样的系统环境,其用户侧共有密钥种子的颁发方式与实施例3类似,具体包括如下步骤:

步骤6.1:量子网络服务站A接收客户端An的共有密钥请求并进行消息认证

6.1.1消息认证开始:客户端An首先与相匹配的量子密钥卡建立通信连接。

6.1.2会话密钥请求的生成:该量子密钥卡利用随机数发生器产生一个随机数N1作为本次业务的唯一识别符,附加在本次会话密钥的请求信息R后生成会话密钥请求M1。

6.1.3用户侧发送会话密钥请求并进行消息认证:客户端An匹配的量子密钥卡将会话密钥请求打包后发送到量子网络服务站A。量子网络服务站A对会话密钥请求进行消息认证码的比对,再解密请求M1。此过程请参考实施例1中步骤1.1。

6.1.4网络侧生成用户侧共有密钥种子:此步骤参考实施例中的1.1.6。量子网络服务站A生成客户端共有密钥种子Ks。

步骤6.2:量子网络服务站A向量子网络服务站B寻求对客户端Bn发送共享密钥的消息包

6.2.1量子网络服务站A对量子网络服务站B发送共享密钥的加密包:量子网络服务站A将共享密钥种子Ks和客户端An相关信息以量子网络服务站之间消息传输的方式发送给量子网络服务站B。此传输方式请参考实施例4中的步骤4.2。

6.2.2量子网络服务站B进行消息认证并生成加密包返回给量子网络服务站A:量子网络服务站B接收到量子网络服务站A发送的请求后进行消息认证并解密得到消息M1。量子网络服务站B解析消息得到的共享密钥种子Ks和客户端An相关信息。量子网络服务站B用Bn对应的密钥种子和密钥生成算法对附加有共享密钥种子Ks和客户端An相关信息消息包加密和生成消息认证码得到加密包。量子网络服务站B将加密包用量子网络服务站之间的传输规则发送给量子网络服务站A。此传输方式请参考实施例4中的步骤4.2。

6.2.3量子网络服务站A对返回消息进行消息认证:量子网络服务站A接收到量子网络服务站B的返回消息后进行消息认证并解密得到对客户端Bn发送的加密包。

步骤6.3:量子网络服务站A进行颁发共有密钥种子

6.3.1网络侧打包并发送会话密钥请求:量子网络服务站A将共有密钥种子Ks、客户端An的会话密钥请求和对客户端Bn发送的加密包按照规则拼接生成对An的会话密钥请求的返回消息。量子网络服务站A对该返回消息进行加密和消息认证码的生成并发送给客户端An。

6.3.2用户侧认证解密消息并转发相应请求:此步骤参考实施例3中的步骤3.2.2。

6.3.3用户侧接收认证请求并认证发送客户端身份:此步骤参考实施例3中的步骤3.2.3。

步骤6.4:用户侧点对点通信的消息认证

此步骤请参考实施例1中的步骤1.4。客户端An和客户端Bn利用共有密钥种子Ks进行消息的加密和认证,实现客户端之间的点对点消息认证。

以上公开的仅为本发明的具体实施例,但是本发明并非局限于此,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。显然这些改动和变型均应属于本发明要求的保护范围保护内。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对本发明构成任何特殊限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1