[0046] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0047] 所举实施例是为了更好地对本发明进行说明,但并不是本发明的内容仅局限于所举实施例。所以熟悉本领域的技术人员根据上述发明内容对实施方案进行非本质的改进和调整,仍属于本发明的保护范围。
[0048] 需要注意,本实施例中的代表式的下标如无具体说明,则其仅仅用以区分不同的用户,无特殊含义。
[0049] 实施例1
[0050] 本实施例中公开一种基于傅里叶变换的高效密钥协商系统,其结构图参考图1,该系统包括全量子用户1与半量子用户2;全量子用户1包括第一子密钥生成模块11、初始粒子模块12、重排模块13、窃听检测模块14、第一协商密钥模块15;
[0051] 半量子用户包括第二子密钥生成模块21、执行操作模块22、第二协商密钥模块23;其中,
[0052] 第一子密钥生成模块11用于随机生成第一子密钥;
[0053] 第二子密钥生成模块21用于随机生成第二子密钥;
[0054] 初始粒子模块12,用于生成多个单粒子,并随机排列单粒子生成量子序列后发布;本实施例中的初始粒子模块12中生成4n个单粒子,其中,2n个粒子的状态为 ,另外2n个粒子的状态为 。
[0055] 执行操作模块22,与初始粒子模块12相连,用于当半量子用户2接收到量子序列后,随机选择执行反射或酉操作返回给全量子用户1;本实施例中执行操作模块22还包括延迟线,用于半量子用户向全量子用户返回粒子时,打乱粒子顺序。
[0056] 重排模块13,与执行操作模块22、第一子密钥生成模块11相连,用于当全量子用户接收半量子用户返回的粒子,并控制第一子密钥生成模块发布第一子密钥,同时执行操作模块发布返回给全量子用户的粒子的正确顺序以及对粒子执行的操作,重排模块根据执行操作模块发布的正确顺序重排半量子用户返回的粒子;
[0057] 窃听检测模块14,与初始粒子模块12、重排模块13相连,用于根据生成的多个单粒子的状态选择对应的基来测量半量子用户返回的粒子,并用于根据测量结果进行窃听检测,窃听检测模块14通过检测粒子在初始粒子模块生成时的状态与执行操作模块返回的粒子测量状态是否相同判断是否存在窃听者,如果同个粒子不是时间的状态相同,则不存在窃听者;否则,存在。
[0058] 第二协商密钥模块23,与窃听检测模块14、第二子密钥21生成模块相连,用于当窃听检测模块窃听不存在后通知半量子用户将用于窃听检测的粒子丢掉,半量子用户2丢掉检测粒子和相应位置的第二子密钥得到第三子密钥,半量子用户2按位计算得到协商密钥;
[0059] 第一协商密钥模块15,与窃听检测模块14相连,用于根据测量结果和对应粒子的初始生成状态获得第三子密钥,全量子用户1按位计算得到协商密钥。
[0060] 实施例2
[0061] 基于实施例1的系统,本实施例中提供一种基于傅里叶变换的高效密钥协商方法,该方法的步骤流程图可参考图2,具体包括步骤:
[0062] S1:全量子用户与半量子用户分别随机生成第一子密钥与第二子密钥;
[0063] 本实施例中的方法基于实现两个用户的之间的密钥协商,其中全量子用户(Alice)是一个全量子节点,具备完备的量子功能,而半量子用户(Bob)是半量子节点;
[0064] 本步骤中,Alice和Bob随机产生各自用于生成最终密钥的子密钥:第一子密钥和第二子密钥 ,其中 分别代表Alice和Bob密钥 和 中的第a个和第b个元素, , ,n为正整数,d是正整数,可根据需要选择,一般当d为8时就能满足实际应用需求;
[0065] S2:全量子用户生成多个单粒子,并随机排列生成量子序列后发布;
[0066] 本步骤中,Alice分别制备4n个单粒子,其中 2n个粒子的状态为 ,另外2n个粒子的状态为 ; , ,, 为傅里叶变换公式中的中间参数,i为虚数单位;随后,Alice将
随机排列这4n个单粒子,生成一个量子序列SA,最后将SA发送给Bob,进一步地,本步骤中为了抵御量子特洛伊木马攻击,可以在Alice设备前面配置量子分束器(PNS)和量子波长滤波器。
[0067] S3:半量子用户接收量子序列,并随机选择执行反射或酉操作返回给全量子用户;
[0068] 本步骤中,当Bob收到量子序列后,他随机选择执行反射或酉操作:如果选择反射操作,粒子(量子)会直接返回给Alice;如果选择酉操作,Bob根据自己的子密钥,对收到的量子执行酉操作( )操作,随后将其发回给Alice,根据酉操作的性质 ,为模d加,如果接收到的量子状态为 ,经过酉操作后量子状态变为 ;如果接收到的量子状态为 ,经过酉操作后量子状态
不变。
[0069] 优选地,本实施例中为了保证量子的安全性,Bob通过延迟线发送量子,以此打乱返回量子的顺序。
[0070] S4:全量子用户接收半量子用户返回的粒子,并发布第一子密钥;
[0071] 本步骤中,Alice存储收到的所有量子后,发布她的子密钥 ;
[0072] S5:半量子用户发布返回给全量子用户的粒子的正确顺序以及对粒子执行的操作,全量子用户根据半量子用户发布的正确顺序重排半量子用户返回的粒子;
[0073] 当Alice发布子密钥 后,Bob发布量子的正确顺序和他对粒子执行的操作,Alice重排收到量子的顺序,使其和发送量子的顺序相同;
[0074] S6:全量子用户根据生成的多个单粒子的状态选择对应的基来测量半量子用户返回的粒子,然后根据测量结果进行窃听检测;
[0075] 本实施例中,Alice根据制备量子的状态选择对应的基来测量收到的量子。
[0076] 根据测量结果和Bob公布的操作,Alice进行窃听检测,如果量子在Alice中生成的初始状态为 ,无论Bob执行反射还是酉操作,Alice对收到的量子进行测量,其测量结果应和量子的初始态相同;如果量子的初始状态为 ,Bob执行反射操作,Alice对收到的量子进行测量,其测量结果也应和量子的初始态相同,因此,本步骤中Alice测量结果和量子初始状态不同,就表明存在窃听者,则本次执行结束,否则继续执行下一步骤。
[0077] S7:窃听不存在后通知半量子用户将用于窃听检测的粒子丢掉,半量子用户丢掉检测粒子和相应位置的第二子密钥得到第三子密钥,半量子用户与全量子用户计算协商密钥。
[0078] 当步骤S6中Alice执行完窃听检测后,Alice通知Bob将用于窃听检测的量子丢掉,剩余量子的数目应为n个;Bob丢掉检测粒子和 相应位置的子密钥,由此 缩减为长度为n的密钥 ,随后,Bob按位计算,获得协商密钥 。
[0079] 同时,Alice根据剩余n个量子的测量结果 和对应量子的初始状态,也可以获得长度为n的Bob的子密钥 ,其中 分别表示
, 中的第a个元素,同时根据 ,x为Alice制备的量子的初始状态,因此Alice可计算密钥 ,至此, Alice和Bob获得了一个长度为n的密钥K。
[0080] 在一具体实施例中,假设Alice制备初始量子序列 ,然后将其发送给Bob。Bob收到后,选择执行的操作顺序为反射、酉操作 、反射、酉操作 ,其中和 是 Bo b的 子密 钥。Bo b 对收 到的 粒子 执行 操作 后 ,粒子 变 为,然后Bob重排 中各个粒子的顺序,
获得一个新的量子序列 ,并将其发回给Alice;Alice存储 后,
公布其子密钥 。随后,Bob公布 中粒子的原有顺序,Alice由此恢复粒子顺序,得到序列;Alice根据 中对应量子其制备的初始状态,选择正确的基来测量所有粒子,获得测量结果 。Bob再次公布其对各个粒子所执行的操作,Alice根据测量结果和Bob公布的操作,选择前三个粒子进行窃听检测,即Alice的测量结果应该和其制备的量子初始态相同。窃听检测后,如果没有发现窃听行为,Alice通知Bob第四个粒子用于生成密钥。最后,Alice计算 ,Bob计算 ,双方获得协商密钥 。
[0081] 本实施例中提供的一种基于傅里叶变换的高效密钥协商方法,Alice和Bob使用密钥 和 生成协商密钥K,由于 是公开的,所以最终密钥K的安全性依赖于的 安全,攻击者的最终目的也是通过获得密钥 而得到最终密钥能够抵御外部和内部攻击者的典型攻击,如截获‑重发攻击、测量重发攻击、纠缠测量攻击、特洛伊木马攻击,满足密钥协商的公平性,且有较高的通信效率,以下进行具体说明:
[0082] 当攻击者Eve发起截获‑重发攻击时:截获‑重发攻击是指攻击者Eve截获Alice发送给Bob的量子序列,然后用假冒的序列代替原有序列发送给Bob,以期通过对Bob的行为进行分析获得密钥 。在本方案中,Alice基于两种基 制备长度为4n的初始量子序列SA,其中2n个量子处在 态,2n个量子处在 ,两种态的量子随机排列组成量子序列SA,当Bob收到序列SA后,随机执行反射和酉操作,最后将粒子通过延迟线打乱量子顺序后返回给Alice,而本发明中在Alice存储收到的所有返回量子后,Bob才会公布正确的量子顺序和他所执行的操作,因此Eve执行截获‑重发攻击必然会在窃听检测中被发现,由于Eve不知道序列SA中每个量子的状态,她截获SA后只存储量子而不测量,然后伪造一个序列 发送给Bob,当Bob对 中量子执行操作并返回给Alice时,Eve再次截获返回量子,但是由于Eve不知道返回量子的正确顺序,也就没有办法从返回粒子中获得有用信息,而且当Eve将粒子返回给Alice时,由于原有量子状态被改变了,其攻击行为必然会被发现,因此本发明能够抵御截获‑重发攻击。
[0083] 当攻击者Eve发起测量‑重发攻击时:测量‑重发攻击是指攻击者Eve截获Alice发送给Bob的量子序列,经过对截获量子进行测量,再制备假冒的序列代替原有序列发送给Bob,以期通过对Bob的行为进行分析获得密钥 ,该类攻击类似于结果‑重发攻击,本发明中Alice基于两种基 制备长度为4n的初始量子序列SA,其中2n个量子处在 态,2n个量子处在 ,两种态的量子随机排列组成量子序列SA,如果Eve截获SA后选择正确的基执行测量操作,其攻击行为将不会被发现;而如果Eve选择错误的基进行测量,其攻击行为不被发现的概率为 ;综合以上两种情况,Eve的此类攻击行为不被发现的总概率为 。假设窃听量子共有l个,则针对测量‑重发攻击,攻击者行为被检测的概率为 ,当l足够长时,概率接近1。此外,即使Eve猜对了测量基,由于Bob打乱了返回量子序列的顺序,在不知道正确顺序的情况下,Eve也不能获得任何有用的信息。
[0084] 当攻击者Eve发起纠缠‑测量攻击时:纠缠‑测量攻击是指Eve截获Alice向Bob发送的量子序列SA,然后通过攻击操作 将自己的量子 与SA中量子纠缠后,发送给Bob。最后Eve通过测量Bob返回给Alice的量子序列中的附加量子 获得有用的信息。在本方案中,假设Eve分别在Alice发送Bob和Bob返回Alice的量子序列上执行了纠缠攻击 和 ,但是由于Alice和Bob双方通信的量子序列中包含检测量子,而且检测量子的位置未知,因此Eve对所有量子都执行了纠缠攻击。而量子序列由 和 ( )两类量子组成,因此在序列同一位置上每种状态的量子出现的概率为1/2。当Alice向Bob发送的量子序列SA时,Eve对其执行 操作,SA中的量子状态 和 分别变为 = 和 =,其中 为Eve的探测量子, ,根据量子傅
里叶逆变换的性质 可得:
[0085]
[0086]
[0087] 由此可得,对序列中的窃听检测量子,Eve的行为不被检测的概率为 。当检测量子的数目为l时,该行为被检测的概率为 ,当l足够长时,攻击者的行为被发现的概率接近1。
[0088] 当攻击者Eve发起特洛伊木马攻击时:本发明中Alice和Bob是双向通信的,因此攻击者Eve可通过执行特洛伊木马攻击偶的秘密信息,为了避免此类攻击,可以在Alice设备前面配置量子分束器(PNS)和量子波长滤波器设备。
[0089] 密钥协商的公平性:对于Alice来说,在Bob公布返回量子序列的正确顺序和其所做的操作前,Alice就需要公布 ,这时Alice无法获得任何关于 的信息,因此Alice就没有办法根据 来调整其发布的 的值,即Alice没有办法独自控制最终的密钥值。
[0090] 对于Bob来说,其返回给Alice的量子序列 中包含了其密钥 ,而Alice收到后才会公布 ,因此Bob就没有办法根据 来调整其发送 的值,即Bob也没有办法独自控制最终的密钥值,本发明满足密钥协商的公平性属性。
[0091] 通 信 效 率 :本 发 明 采 用 的 是 两 个 d 维 单 量 子 ,,一个量子能够表示的信息量有d个,而其他方案采用的是二维量子态{ 、 },一个量子能够表示的信息量只有2个。
[0092] 上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。