一种基于GHZ态的量子隐私比较方法及系统
技术领域
本发明属于数据处理技术领域,尤其涉及一种基于GHZ态的量子隐私比较方法及系统。
背景技术
目前,业内常用的现有技术是这样的:
对于经典的隐私比较,往往采用经典密码学,也就是基于大整数分解和大质数分解;多方可信计算允许一群互相不信任的用户进行正确的、分布的计算,而不用泄露自己的隐私。YAO第一个提出了“百万富翁问题”(两个百万富翁想要比较他们是否同样富有,但他们双方都不想泄露自己有多少财富)。基于此,Boudot提出了所谓的“隐私比较”问题。这个可以在很多场合都有应用,例如选举、拍卖等等。在2010年,Chen等人提出了基于GHZ态的银粉分析方案,然而,Lin等人提出这个协议不安全因为恶意的第三方可以使用截获重传攻击来获取隐私比较双方的机密信息,Tseng等人提出了一个基于Bell态的隐私比较方案,Yang等人指出了这个协议也不安全,因为如果第三方不诚实的话,同样会泄漏隐私比较者的隐私,但是,据我们所知,没有人提出过半量子的隐私比较方案。
随着量子技术,尤其是量子计算机的发展,传统的密码学变得不安全。在近三十年间,量子密码获得了大量的关注。1984年,Bennett和Brassard提出了第一个量子密钥分发协议,也就是BB84协议。自此之后,很多量子安全通信协议被人们提出:量子安全直接通信、量子秘密分享、量子隐私比较、量子保密查询等等。
量子隐私查询应当满足下面三个条件:
1)第三方不会同外部窃听者合谋,但他可能想进一切办法去获得机密信息;
2)隐私比较的参与者和非参与者不能知道秘密信息究竟是哪一些不一样,他们只能知道整体的秘密信息是否一致;
3)为了保证安全和效率,最好一次比较多个比特的秘密信息;
跟传统的密码学不同,量子隐私比较可以基于量子物理准则(不可克隆原理)来实现无条件的安全。在2010年,Chen等人提出了一个基于GHZ态的量子隐私比较协议,然而Lin却提出这个协议不安全,因为恶意的一方可以使用“截获重传”攻击来非法的获取秘密信息。Tseng等人提出了基于Bell态的量子隐私比较协议,更加的高效。Yang同样指出这个协议不安全,因为如果第三方不诚实,可能会有安全漏洞。在2013年,Yang等人提出,“半可信的第三方”这一假设不合理,因为恶意的第三方会用尽全力去获取秘密信息,他有可能不会准确的根据协议去执行。所以检测EPR对是否有效显得尤其重要。从此以后,很多基于“几乎不可信第三方”的量子隐私查询协议被提出,并且近年来还提出了一些在集体噪音下的量子隐私查询协议。
然而目前提出的量子隐私比较协议都是基于下面的假设:所有的参与者都有高端的设备(量子内存、量子寄存器、可以实施幺正操作等等)。这在一些情况下比较困难,例如在移动设备中,可能无法提供足够的电源来支持这些设备。如果一方只有“经典通信”的能力,也可以保证无条件的安全吗?2008年Mich el Boyer提出了第一个半量子密钥分发协议,从此之后许多半量子通信协议被提出。半量子密码协议的概念:如果一方有量子设备(量子内存、量子寄存器等等),另一方只能进行经典通信,我们称这类协议为“半量子”密码协议。更准确一点,假设由双方Alice(量子一方)和第二隐私持有者(经典一方),如果第二隐私持有者只能进行下面的操作,我们称他“经典一方”:(A)不加干扰的返回量子比特,这种行为被称为“REFLECT”(b)用Z基测量量子比特并且根据测量结果制备一个新的量子比特,并返回给第一隐私持有者,这种行为被称为“MEASURE”。因为第二隐私持有者永远不会产生纠缠量子态,因此他可以被看作是“经典的一方”。与Alice“量子的一方”相比,第二隐私持有者只需要更加有限的量子设备和量子能力。
综上所述,现有技术存在的问题是:
(1)目前为止量子隐私比较方案大多默认参与者都有完善的量子设备,这会加大成本,并且在一些情况下,例如用户使用的是移动设备,可能无法有足够的电量来运行这些设备。
(2)之前的一些协议无法抵御恶意第三方的攻击,恶意的第三方可能不会忠实的执行协议,从而导致隐私比较参与者隐私的泄漏。
解决上述技术问题的难度和意义:
如果能解决这些问题,首先可以大大的降低成本,因为只需要一方有量子设备,其他参与者只需要有经典的设备就可以,这样在保证安全,保证协议顺利运行的情况下降低了成本,降低了系统的需求;
并且该协议可以在恶意的第三方不忠实执行协议的情况下,依旧能够保证用户的隐私泄漏。
发明内容
针对现有技术存在的问题,本发明提供了一种基于GHZ态的量子隐私比较方法及系统。本发明提出基于GHZ态的量子隐私比较协议,然后稍加改动,此协议可以转变为半量子隐私比较协议。
本发明是这样实现的,一种基于GHZ态的量子隐私比较方法,包括:
步骤一:使用半量子密钥分发协议,第一隐私持有者和第二隐私持有者分享一对密钥K
ab,第一隐私持有者和第三方用户分享密钥K
ac,,第二隐私持有者和第三方用户分享密钥K
bc;K
ab用于加密秘密信息,K
ac和K
bc用于确定检测粒子的位置;然后,第一隐私持有者和第二隐私持有者通过异或操作分别加密各自的秘密信息
步骤二:第三方制备n个G H Z态,这些量子态随机的处于
或者
所有的A(B,C)粒子组成序列S
A(S
B,S
C).第三方记录下制备的粒子作二进制序列R
P(规则是,如果制备的是
态,就记录0,如果制备的是
态,就记录1)
步骤三:第三方用户制备一系列的蜜罐粒子DA,DB用于窃听检测,DA,、DB随机处于{|0>,|1>,|+>,|->},然后第三方用户将序列DA插入序列SA,形成新的系列SA';序列DB插入序列SB,形成新的系列SB',然后将新的系列SA'和SB'分别发送给第一隐私持有者和第二隐私持有者;
步骤四:第三方用户检测第一隐私持有者和第二隐私持有者的恶意行为;在收到SA'和SB'之后,根据Kac和Kbc,第一隐私持有者和第二隐私持有者准确的获取蜜罐粒子的位置,然后第一隐私持有者和第二隐私持有者随机的选取MEASURE操作或者REFLECT操作;在确认第三方用户收到这些检测粒子之后,第一隐私持有者和第二隐私持有者公布各自采取什么操作;
步骤五:在确保都没有窃听行为时,第一隐私持有者、第二隐私持有者和第三方用Z基去测量剩余的粒子,然后记录测量结果,形成二进制序列R
A,R
B和R
C,第一隐私持有者计算
第二隐私持有者计算
分别公布结果;
步骤六:基于M
A”,M
B”,R
C和R
P,第三方判断第一隐私持有者和第二隐私持有者的秘密信息是否相同,具体来说,第三方计算
如果计算结果有一位为1,则第三方公布第一隐私持有者和第二隐私持有者的秘密信息不相同,否则公布相同。
进一步,步骤三中,插入规则为:如果Kac的第i个bit是0,则将第i个检测粒子插入到SA第i个粒子之前,否则,插入到第i个粒子之后。
进一步,步骤五中,形成二进制序列R
A,R
B和R
C规则为:测量结果是|0>,则记录0;如果测量结果是|1>,则记录1);然后第一隐私持有者计算
第二隐私持有者计算
本发明的另一目的在于提供一种所述基于GHZ态的量子隐私比较方法的计算机程序。
本发明的另一目的在于提供一种实现所述基于GHZ态的量子隐私比较方法的信息数据处理终端。
本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的基于GHZ态的量子隐私比较方法。
本发明的另一目的在于提供一种利用所述基于GHZ态的量子隐私比较方法的多方基于GHZ态的量子隐私比较方法。
本发明的另一目的在于提供一种所述基于GHZ态的量子隐私比较方法的基于GHZ态的量子隐私比较系统。
综上所述,本发明的优点及积极效果为:
1)降低了系统的需求,参与者双方只需要一方有量子设备即可;
2)在第三方不忠实执行协议的前提下依旧能够保证安全。
本发明可以保证安全,下面是对协议的安全性证明:
首先考虑恶意第三方的攻击:在步骤五,第一隐私持有者和第二隐私持有者使用One-Ti me-Pad(OTP)加密信息,所以如果恶意的第三方可以获取加密密钥,也就是R
A,R
B,或R
C,他就可以获取秘密信息。为了实现这一点,在步骤一,第三方可以制备假的量子态|0>|0>然后分别发送给第一隐私持有者和第二隐私持有者,如果他可以成功的逃脱检测,加密密钥就不再真随机,这样第三方就可以在步骤五获取机密信息而不被发现。然而,在步骤四,第一隐私持有者,第二隐私持有者和第三方用X基测量粒子,他们会得到随机的结果,也就是.|0>or|1>。在1/4的概率下,这种恶意行为会被发现,只要检测粒子足够多,这种恶意行为可以轻易的被检测到。另外一种攻击策略是,第三方会在第一步制备
或
但是,在发送给第一隐私持有者和第二隐私持有者之前,恶意的第三方会先用Z基测量,量子态会随机的塌缩到|000>,|011>,|110>,|111>(相同概率)。如果第一隐私持有者、第二隐私持有者、第三方用X基进行测量,有3/4的概率这种恶意行为会被检测到。当检测粒子足够大时,这种恶意行为会被轻易的检测出来。恶意的第三方还有可能进行纠缠攻击,他会制备一些辅助粒子|E>={|E0>,|E1>,|E2>……},,实行幺正U操作,使这些辅助粒子与序列S
A和S
B纠缠。幺正操作U可以定义为:
U|0>|E>=α|0>|e00>+β|1>|e01>
U|1>|E>=χ|0>|e10>+δ|1>|e11>
U|+>|E>=1/2[
|+>(α|e00>+β|e01>+χ|e10>+δ|e11>)+
|->(α|e00>-β|e01>+χ|e10>-δ|e11>)]
U|->|E>=1/2[
|+>(α|e00>+β|e01>-χ|e10>-δ|e11>)+
|->(α|e00>-β|e01>-χ|e10>+δ|e11>)]
如果恶意的第三方想要逃脱掉窃听检测,他需要设定β=χ=0,α|e00>=δ|e11>。因为他无法区分α|e00>和δ|e11>,所以他无法获取有效的信息。下面来分析参与者的攻击。假设第二隐私持有者是恶意的一方,第二隐私持有者想要知道第一隐私持有者的秘密信息MA,现在他有MA',只要他获得RA,就可以完成窃听。所以在步骤二,他会截获并且测量序列SA'的粒子,然而因为第二隐私持有者不知道哪一些粒子是蜜罐粒子,他的恶意行为会被检测到。假设检测粒子的量子态是|0>,如果第二隐私持有者用Z基测量,第二隐私持有者的恶意行为不会被发现(概率是1/2),然而如果他是用X基(概率是1/2),他会得到随机的测量结果,因此有1/2的概率他的恶意行为会被检测到。综上,四方发现参与者恶意行为的概率为1-(3/4)K,当检测粒子是数量K足够大时,第二隐私持有者的恶意行为会被轻易检测到。
首先分析恶意第三方可能实施的攻击方案:在提出的半量子隐私比较协议中,参与者(第一隐私持有者和第二隐私持有者)被当作“经典的一方”,因此他们可能无法阻挡第三方的恶意行为。他们只能用Z基进行测量,或者将粒子返回给第三方。在步骤一中,第三方可能制备一个假的量子态|0>|0>,然后将他们发送给第一隐私持有者和第二隐私持有者,第一隐私持有者和第二隐私持有者无法发现这一种恶意行为,因此,第三方可以轻易的获得加密密钥,也就是RA和RB。然而尽管这么做,第三方仍然无法获有用的信息,因为在第一步,秘密信息已经被密钥Kab加密,只有第一隐私持有者和第二隐私持有者知道加密密钥。只要加密密钥是安全的,恶意的窃听者就无法获取机密信息。(半量子密钥分发已经被证明)是无条件安全的。
接下来分析参与者的攻击,假设第二隐私持有者是恶意的参与者。为了获取第一隐私持有者的测量结果,他会截获序列S
A,用Z基测量,因为他不知道蜜罐粒子的位置,他的这种恶意行为会被轻易地发现。例如,如果第三方在步骤一制备
第二隐私持有者截获序列SA,并用Z基测量。假设测量结果是|0>,,在第二隐私持有者测量完之后,量子态
会随机的塌缩到|00>或|11>。如果第一隐私持有者选取REFLECT操作,不管第二隐私持有者选取什么操作,他的这种恶意行为都会被发现。如果第一隐私持有者选取MEASURE操作,只有第二隐私持有者也选取MEASURE操作,他的这种恶意行为才能逃脱窃听检测。
本发明创造更加灵活,可以不仅仅计算双方的秘密信息是否相同,还可以拓展到多方。假设有N放想要比较他们的秘密信息是否相同,第三方用户之类N+1纠缠态:
如果Charlie制备
测量结果
永远等于0;如果Charlie制备
测量结果永远等于1.
本发明创造所需要的条件更少(更易实现),效率更高,下表是本发明创造与已有的协议的比较表。
附图说明
图1是本发明实施例提供的基于GHZ态的量子隐私比较方法示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明假设两方第一隐私持有者和第二隐私持有者想要比较他们的秘密信息MA和MB是否相同,然而他们又不想泄露自己的秘密信息。然而正如Lo所说,仅仅通过两方不能确定他们的秘密信息是否想用,因此需要第三方TP去帮助他们。一开始假设TP几乎是诚实的,也就意味着他会诚实的遵守协议,不会做非法的事情(例如发送假的量子态进行攻击)。然而Yang等人提出这种假设是不合理的,因为恶意的TP会想尽一切办法去获取机密信息。他们认为,当我们设计量子隐私比较的时候,发明应该假设TP有可能相近一切办法去获取机密信息(但是TP不会与参与者合谋,否则无法设计安全通信协议)。
三粒子GHZ态可以写作:
如图1,本发明实施例提供的基于GHZ态的量子隐私比较方法,包括:
S101:使用半量子密钥分发协议,第一隐私持有者和第二隐私持有者分享一对密钥,第一隐私持有者和第三方用户分享密钥,第二隐私持有者和第三方用户分享密钥;用于加密秘密信息,和用于确定检测粒子的位置;然后,第一隐私持有者和第二隐私持有者通过异或操作分别加密各自的秘密信息;
S102:第三方制备n个GHZ态;
S103:第三方用户制备一系列的蜜罐粒子用于窃听检测;
S104:第三方用户检测第一隐私持有者和第二隐私持有者的恶意行为;在确认第三方用户收到这些检测粒子之后,第一隐私持有者和第二隐私持有者公布各自采取什么操作;
S105:在确保都没有窃听行为时,第一隐私持有者、第二隐私持有者和第三方用Z基去测量剩余的粒子,然后记录测量结果;
S106:第三方判断第一隐私持有者和第二隐私持有者的秘密信息是否相同,第三方计算中,如果计算结果有一位为1,则第三方公布第一隐私持有者和第二隐私持有者的秘密信息不相同,否则公布相同。
具体包括:
步骤一:使用半量子密钥分发协议,第一隐私持有者和第二隐私持有者分享一对密钥K
ab,第一隐私持有者和第三方用户分享密钥K
ac,,第二隐私持有者和第三方用户分享密钥K
bc;K
ab用于加密秘密信息,K
ac和K
bc用于确定检测粒子的位置;然后,第一隐私持有者和第二隐私持有者通过异或操作分别加密各自的秘密信息
步骤二:第三方制备n个G H Z态,这些量子态随机的处于
或者
所有的A(B,C)粒子组成序列S
A(S
B,S
C).第三方记录下制备的粒子作二进制序列R
P(规则是,如果制备的是
态,就记录0,如果制备的是
态,就记录1);
步骤三:第三方用户制备一系列的蜜罐粒子DA,DB用于窃听检测,DA,DB随机处于{|0>,|1>,|+>,|->},然后第三方用户将序列DA插入序列SA,形成新的系列SA';序列DB插入序列SB,形成新的系列SB',然后将新的系列SA'和SB'分别发送给第一隐私持有者和第二隐私持有者;
步骤四:第三方用户检测第一隐私持有者和第二隐私持有者的恶意行为;在收到SA'和SB'之后,根据Kac和Kbc,第一隐私持有者和第二隐私持有者准确的获取蜜罐粒子的位置,然后第一隐私持有者和第二隐私持有者随机的选取MEASURE操作或者REFLECT操作;在确认第三方用户收到这些检测粒子之后,第一隐私持有者和第二隐私持有者公布各自采取什么操作;
步骤五:在确保都没有窃听行为时,第一隐私持有者、第二隐私持有者和第三方用Z基去测量剩余的粒子,然后记录测量结果,形成二进制序列RA,RB和RC;
步骤六:基于M
A”,M
B”,R
C和R
P,第三方判断第一隐私持有者和第二隐私持有者的秘密信息是否相同,具体来说,第三方计算
如果计算结果有一位为1,则第三方公布第一隐私持有者和第二隐私持有者的秘密信息不相同,否则公布相同。
步骤三中,插入规则为:如果Kac的第i个bit是0,则将第i个检测粒子插入到SA第i个粒子之前,否则,插入到第i个粒子之后。
步骤五中,形成二进制序列R
A,R
B和R
C规则为:测量结果是|0),则记录0;如果测量结果是|1>,则记录1);然后第一隐私持有者计算
第二隐私持有者计算
表1
Case |
第一隐私持有者 |
第二隐私持有者 |
第三方 |
1 |
REFLECT |
REFLECT |
Action1 |
2 |
REFLECT |
MEASURE |
Action2 |
3 |
MEASURE |
REFLECT |
Action2 |
4 |
MEASURE |
MEASURE |
Action3 |
Action 1:第三方通过三粒子GHZ态测量进行窃听检测;
Action 2:第三方通过Bell测量进行窃听检测;
Action 3:第三方不能够检测第一隐私持有者和第二隐私持有者的恶意行为。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。